Call WSAStartup() in main().

The tinc utility defered calling WSAStartup() until it tried to connect to a
running tinc daemon. However, socket functions are now also used for other
things (like joining another VPN using an invitation). Now we just
unconditionally call WSAStartup() early in main().
This commit is contained in:
Guus Sliepen 2013-08-27 21:19:50 +02:00
parent 82575bd44d
commit f0e11cd2c5

View file

@ -68,10 +68,6 @@ bool netnamegiven = false;
char *scriptinterpreter = NULL; char *scriptinterpreter = NULL;
char *scriptextension = ""; char *scriptextension = "";
#ifdef HAVE_MINGW
static struct WSAData wsa_state;
#endif
static struct option const long_options[] = { static struct option const long_options[] = {
{"config", required_argument, NULL, 'c'}, {"config", required_argument, NULL, 'c'},
{"net", required_argument, NULL, 'n'}, {"net", required_argument, NULL, 'n'},
@ -682,14 +678,6 @@ bool connect_tincd(bool verbose) {
fclose(f); fclose(f);
#ifdef HAVE_MINGW
if(WSAStartup(MAKEWORD(2, 2), &wsa_state)) {
if(verbose)
fprintf(stderr, "System call `%s' failed: %s", "WSAStartup", winerror(GetLastError()));
return false;
}
#endif
#ifndef HAVE_MINGW #ifndef HAVE_MINGW
struct sockaddr_un sa; struct sockaddr_un sa;
sa.sun_family = AF_UNIX; sa.sun_family = AF_UNIX;
@ -2366,6 +2354,15 @@ int main(int argc, char *argv[]) {
return 0; return 0;
} }
#ifdef HAVE_MINGW
static struct WSAData wsa_state;
if(WSAStartup(MAKEWORD(2, 2), &wsa_state)) {
fprintf(stderr, "System call `%s' failed: %s", "WSAStartup", winerror(GetLastError()));
return false;
}
#endif
srand(time(NULL)); srand(time(NULL));
crypto_init(); crypto_init();