Mail Archives: cygwin/2003/03/19/16:49:51
In the folowing code :
If I include <stdio.h> before <windows.h> and <winsock2.h>, select() always
generate 10022 error.
If I include <stdio.h> after <windows.h> and <winsock2.h>, select() works
OK.
#include <stdio.h>
#include <windows.h>
#define USE_SYS_TYPES_FD_SET
#include <winsock2.h>
int main(int argc, char *argv[]) {
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 2, 2 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
printf("we could not find a usable WinSock DLL\n");
return -1;
}
if ( LOBYTE( wsaData.wVersion ) != 2 || HIBYTE( wsaData.wVersion ) != 2 ) {
printf("we could not find a usable WinSock DLL\n");
WSACleanup( );
return -1;
}
fd_set fds;
int s= socket(AF_INET, SOCK_STREAM, 0);
FD_ZERO(&fds);
FD_SET((unsigned)s, &fds);
if( select(s+1, &fds, NULL, NULL, 0) == -1 ) {
printf("socket error : %d\n", WSAGetLastError());
return -1;
}
return 0;
}
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -