Compile Windows with winsock2.h. But note that we still link with wsock32!

This works because wsock32 commonly loads ws2_32 anyway and we [intend to]
check upon presense of winsock2-specific API at run-time.
This commit is contained in:
Andy Polyakov 2006-01-02 13:44:06 +00:00
parent 4eb76e2397
commit 61aa2134a4

12
e_os.h
View file

@ -259,6 +259,18 @@ extern "C" {
*/ */
# define _WIN32_WINNT 0x0400 # define _WIN32_WINNT 0x0400
# endif # endif
# if !defined(OPENSSL_NO_SOCK) && defined(_WIN32_WINNT)
/*
* Just like defining _WIN32_WINNT including winsock2.h implies
* certain "discipline" for maintaing [broad] binary compatibility.
* As long as structures are invariant among Winsock versions,
* it's sufficient to check for specific Winsock2 API availability
* at run-time [DSO_global_lookup is recommended]...
*/
# include <winsock2.h>
# include <ws2tcpip.h>
/* yes, they have to be #included prior <windows.h> */
# endif
# include <windows.h> # include <windows.h>
# include <stddef.h> # include <stddef.h>
# include <errno.h> # include <errno.h>