Initialize winsock in main.c
authorJoseph C. Lehner <joseph.c.lehner@gmail.com>
Fri, 5 Feb 2016 18:23:16 +0000 (20:23 +0200)
committerJoseph C. Lehner <joseph.c.lehner@gmail.com>
Fri, 5 Feb 2016 18:23:16 +0000 (20:23 +0200)
ethsock.h [deleted file]
main.c

diff --git a/ethsock.h b/ethsock.h
deleted file mode 100644 (file)
index 16e3864..0000000
--- a/ethsock.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <inttypes.h>
-#include <stdint.h>
-
-struct ethsock;
-
-struct ethsock *ethsock_create(const char *intf, uint16_t protocol);
-int ethsock_close(struct ethsock *sock);
-int ethsock_send(struct ethsock *sock, void *buf, size_t len);
-ssize_t ethsock_recv(struct ethsock *sock, void *buf, size_t len);
-int ethsock_set_timeout(struct ethsock *sock, unsigned msec);
-uint8_t *ethsock_get_hwaddr(struct ethsock *sock);
-int ethsock_list_all(void);
diff --git a/main.c b/main.c
index 06158f54bf7440886661527f45c245997099603d..2dfc1670f5778c0d447119032772a0613a697b15 100644 (file)
--- a/main.c
+++ b/main.c
@@ -76,6 +76,15 @@ int main(int argc, char **argv)
                .port = 69,
                .force_root = 1
        };
+#ifdef NMRPFLASH_WINDOWS
+       WSADATA wsa;
+
+       val = WSAStartup(MAKEWORD(2, 2), &wsa);
+       if (val != 0) {
+               win_perror2("WSAStartup", val);
+               return 1;
+       }
+#endif
 
        opterr = 0;
 
@@ -145,5 +154,9 @@ int main(int argc, char **argv)
        }
 #endif
 
-       return nmrp_do(&args);
+       val = nmrp_do(&args);
+#ifdef NMRPFLASH_WINDOWS
+       WSACleanup();
+#endif
+       return val;
 }