From d23fa49c52e9e0310f938379c5af91f0b4e5fe46 Mon Sep 17 00:00:00 2001 From: "Wladimir J. van der Laan" Date: Sun, 28 Apr 2013 08:51:49 +0200 Subject: move WSAStartup to init WSAStartup should be called before using any other socket functions. BindListenPort is not called if not listening. Closes #2585. --- src/init.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/init.cpp') diff --git a/src/init.cpp b/src/init.cpp index f6485c3b1d..7024f3f785 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -453,6 +453,14 @@ bool AppInit2(boost::thread_group& threadGroup) typedef BOOL (WINAPI *PSETPROCDEPPOL)(DWORD); PSETPROCDEPPOL setProcDEPPol = (PSETPROCDEPPOL)GetProcAddress(GetModuleHandleA("Kernel32.dll"), "SetProcessDEPPolicy"); if (setProcDEPPol != NULL) setProcDEPPol(PROCESS_DEP_ENABLE); + + // Initialize Windows Sockets + WSADATA wsadata; + int ret = WSAStartup(MAKEWORD(2,2), &wsadata); + if (ret != NO_ERROR) + { + return InitError(strprintf("Error: TCP/IP socket library failed to start (WSAStartup returned error %d)", ret)); + } #endif #ifndef WIN32 umask(077); -- cgit v1.2.3