1 /* This file is part of Netwib. Read and honor its license. 2 */ 3 4 /*-------------------------------------------------------------*/ netwib_priv_winsock_init(void)5netwib_err netwib_priv_winsock_init(void) 6 { 7 WSADATA wsaData; 8 int major; 9 int minor; 10 int reti; 11 12 major = 1; 13 minor = 1; 14 reti = WSAStartup(MAKEWORD(major, minor), &wsaData); 15 if (reti != 0) { 16 return(NETWIB_ERR_FUWSASTARTUP); 17 } 18 19 if (HIBYTE(wsaData.wVersion) != major || LOBYTE(wsaData.wVersion) != minor) { 20 WSACleanup(); 21 return(NETWIB_ERR_FUWSASTARTUP); 22 } 23 24 return(NETWIB_ERR_OK); 25 } 26 27 /*-------------------------------------------------------------*/ netwib_priv_winsock_close(void)28netwib_err netwib_priv_winsock_close(void) 29 { 30 int reti; 31 32 reti = WSACleanup(); 33 if (reti != 0) { 34 return(NETWIB_ERR_FUWSACLEANUP); 35 } 36 37 return(NETWIB_ERR_OK); 38 } 39