6 #include <sys/socket.h>
7 #include <netinet/in.h>
10 #define sock_make_nonblocking(fd) fcntl(fd, F_SETFL, O_NONBLOCK)
11 #define sock_make_blocking(fd) fcntl(fd, F_SETFL, 0)
12 #define sockerr_again() (errno == EINPROGRESS || errno == EINTR)
13 void closesocket( int fd
);
15 # include <winsock2.h>
16 # include <ws2tcpip.h>
17 # if !defined(BITLBEE_CORE) && defined(_MSC_VER)
18 # pragma comment(lib,"bitlbee.lib")
21 # define sock_make_nonblocking(fd) { int non_block = 1; ioctlsocket(fd, FIONBIO, &non_block); }
22 # define sock_make_blocking(fd) { int non_block = 0; ioctlsocket(fd, FIONBIO, &non_block); }
23 # define sockerr_again() (WSAGetLastError() == WSAEINTR || WSAGetLastError() == WSAEINPROGRESS || WSAGetLastError() == WSAEWOULDBLOCK)
24 # define ETIMEDOUT WSAETIMEDOUT
25 # define sleep(a) Sleep(a*1000)