[Title] Move socket init from qemu_main() to main() in emulator.c
authormunkyu.im <munkyu.im@samsung.com>
Thu, 24 Nov 2011 12:29:49 +0000 (21:29 +0900)
committermunkyu.im <munkyu.im@samsung.com>
Thu, 24 Nov 2011 12:29:49 +0000 (21:29 +0900)
[Type]      // Commit Type: Feature / Bugfix / Enhancement
[Module]    // Module Name - (Main / Sub)
[Priority]
[CQ#]
[Redmine#]
[Problem]
[Cause]
[Solution]
[TestCase]

SLP/src/emulator.c
SLP/src/emulator.h
qemu-sockets.c
qemu_socket.h
vl.c

index aa9ee74..2b17887 100644 (file)
@@ -281,6 +281,29 @@ int emul_create_process(const gchar cmd[])
 }
 #endif
 
+#ifdef _WIN32
+void socket_cleanup(void)
+{
+    WSACleanup();
+}
+#endif
+
+int socket_init(void)
+{
+#ifdef _WIN32
+    WSADATA Data;
+    int ret, err;
+
+    ret = WSAStartup(MAKEWORD(2,2), &Data);
+    if (ret != 0) {
+        err = WSAGetLastError();
+        fprintf(stderr, "WSAStartup: %d\n", err);
+        return -1;
+    }
+    atexit(socket_cleanup);
+#endif
+    return 0;
+}
 
 /**
  * @brief       destroy emulator
@@ -731,6 +754,7 @@ int main (int argc, char** argv)
 
        init_emulator(&argc, &argv);
        startup_option_parser(&argc, &argv);
+       socket_init();
 
        /* option parsed and pass to qemu option */
 
index 37dfeb5..bca595b 100644 (file)
@@ -108,5 +108,6 @@ void emul_kill_all_process(void);
 
 extern int qemu_arch_is_arm(void); /* hack */
 int device_set_rotation(int rotation);
+int socket_init(void);
 
 #endif
index c526324..70419e9 100644 (file)
@@ -649,27 +649,3 @@ int unix_connect(const char *path)
 }
 
 #endif
-
-#ifdef _WIN32
-static void socket_cleanup(void)
-{
-    WSACleanup();
-}
-#endif
-
-int socket_init(void)
-{
-#ifdef _WIN32
-    WSADATA Data;
-    int ret, err;
-
-    ret = WSAStartup(MAKEWORD(2,2), &Data);
-    if (ret != 0) {
-        err = WSAGetLastError();
-        fprintf(stderr, "WSAStartup: %d\n", err);
-        return -1;
-    }
-    atexit(socket_cleanup);
-#endif
-    return 0;
-}
index 897a8ae..2f33e64 100644 (file)
@@ -57,6 +57,4 @@ int parse_host_port(struct sockaddr_in *saddr, const char *str);
 int parse_host_src_port(struct sockaddr_in *haddr,
                         struct sockaddr_in *saddr,
                         const char *str);
-int socket_init(void);
-
 #endif /* QEMU_SOCKET_H */
diff --git a/vl.c b/vl.c
index 437f321..da77215 100644 (file)
--- a/vl.c
+++ b/vl.c
@@ -2873,8 +2873,6 @@ int qemu_main(int argc, char **argv, char **envp)
     if (default_vga)
         vga_interface_type = VGA_CIRRUS;
 
-    socket_init();
-
     if (qemu_opts_foreach(qemu_find_opts("chardev"), chardev_init_func, NULL, 1) != 0)
         exit(1);
 #ifdef CONFIG_VIRTFS