diff options
Diffstat (limited to 'contrib/ffmpeg/libavformat/network.h')
-rw-r--r-- | contrib/ffmpeg/libavformat/network.h | 40 |
1 files changed, 36 insertions, 4 deletions
diff --git a/contrib/ffmpeg/libavformat/network.h b/contrib/ffmpeg/libavformat/network.h index 3aa8ba836..d897722c9 100644 --- a/contrib/ffmpeg/libavformat/network.h +++ b/contrib/ffmpeg/libavformat/network.h @@ -18,20 +18,52 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#ifndef NETWORK_H -#define NETWORK_H +#ifndef FFMPEG_NETWORK_H +#define FFMPEG_NETWORK_H +#ifdef HAVE_WINSOCK2_H +#include <winsock2.h> +#include <ws2tcpip.h> + +#define ff_neterrno() WSAGetLastError() +#define FF_NETERROR(err) WSA##err +#define WSAEAGAIN WSAEWOULDBLOCK +#else #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> +#include <netdb.h> + +#define ff_neterrno() errno +#define FF_NETERROR(err) err +#endif + #ifdef HAVE_ARPA_INET_H #include <arpa/inet.h> #endif -#include <netdb.h> + +int ff_socket_nonblock(int socket, int enable); + +static inline int ff_network_init(void) +{ +#ifdef HAVE_WINSOCK2_H + WSADATA wsaData; + if (WSAStartup(MAKEWORD(1,1), &wsaData)) + return 0; +#endif + return 1; +} + +static inline void ff_network_close(void) +{ +#ifdef HAVE_WINSOCK2_H + WSACleanup(); +#endif +} #if !defined(HAVE_INET_ATON) /* in os_support.c */ int inet_aton (const char * str, struct in_addr * add); #endif -#endif +#endif /* FFMPEG_NETWORK_H */ |