diff options
author | Martin Storsjö <martin@martin.st> | 2011-02-07 12:59:50 +0200 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2011-11-05 12:08:47 +0200 |
commit | f6d371009678e46877e6f81ab0eae475d41b1f57 (patch) | |
tree | aefecb4fd6d878922e1eeeb52b6cb80789e8d513 /libavformat/network.h | |
parent | add7b1140fdd0651d0fc9352962631807126d3d0 (diff) | |
download | ffmpeg-f6d371009678e46877e6f81ab0eae475d41b1f57.tar.gz |
avformat: Split out functions from network.h to a new file, network.c
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavformat/network.h')
-rw-r--r-- | libavformat/network.h | 55 |
1 files changed, 6 insertions, 49 deletions
diff --git a/libavformat/network.h b/libavformat/network.h index 80d094a0de..00daed8759 100644 --- a/libavformat/network.h +++ b/libavformat/network.h @@ -36,17 +36,7 @@ #define ECONNREFUSED WSAECONNREFUSED #define EINPROGRESS WSAEINPROGRESS -static inline int ff_neterrno(void) -{ - int err = WSAGetLastError(); - switch (err) { - case WSAEWOULDBLOCK: - return AVERROR(EAGAIN); - case WSAEINTR: - return AVERROR(EINTR); - } - return -err; -} +int ff_neterrno(void); #else #include <sys/types.h> #include <sys/socket.h> @@ -66,31 +56,10 @@ static inline int ff_neterrno(void) int ff_socket_nonblock(int socket, int enable); -static inline int ff_network_init(void) -{ -#if HAVE_WINSOCK2_H - WSADATA wsaData; - if (WSAStartup(MAKEWORD(1,1), &wsaData)) - return 0; -#endif - return 1; -} - -static inline int ff_network_wait_fd(int fd, int write) -{ - int ev = write ? POLLOUT : POLLIN; - struct pollfd p = { .fd = fd, .events = ev, .revents = 0 }; - int ret; - ret = poll(&p, 1, 100); - return ret < 0 ? ff_neterrno() : p.revents & (ev | POLLERR | POLLHUP) ? 0 : AVERROR(EAGAIN); -} - -static inline void ff_network_close(void) -{ -#if HAVE_WINSOCK2_H - WSACleanup(); -#endif -} +int ff_network_init(void); +void ff_network_close(void); + +int ff_network_wait_fd(int fd, int write); int ff_inet_aton (const char * str, struct in_addr * add); @@ -191,18 +160,6 @@ const char *ff_gai_strerror(int ecode); #define IN6_IS_ADDR_MULTICAST(a) (((uint8_t *) (a))[0] == 0xff) #endif -static inline int ff_is_multicast_address(struct sockaddr *addr) -{ - if (addr->sa_family == AF_INET) { - return IN_MULTICAST(ntohl(((struct sockaddr_in *)addr)->sin_addr.s_addr)); - } -#if HAVE_STRUCT_SOCKADDR_IN6 - if (addr->sa_family == AF_INET6) { - return IN6_IS_ADDR_MULTICAST(&((struct sockaddr_in6 *)addr)->sin6_addr); - } -#endif - - return 0; -} +int ff_is_multicast_address(struct sockaddr *addr); #endif /* AVFORMAT_NETWORK_H */ |