proxy: Save http proxy information
authorMunkyu Im <munkyu.im@samsung.com>
Thu, 4 Sep 2014 13:43:22 +0000 (22:43 +0900)
committerMunkyu Im <munkyu.im@samsung.com>
Thu, 4 Sep 2014 13:43:22 +0000 (22:43 +0900)
It's for setting proxy in Emulator Control Panel.

Change-Id: Ica57435c08d7dbe458f36741208b39dce7428080
Signed-off-by: Munkyu Im <munkyu.im@samsung.com>
tizen/src/emul_state.c
tizen/src/emul_state.h
tizen/src/emulator.c

index 7d45b99720472f4daaa2e9aa1733467ad32ecdbf..a651d00f1354652954ca46f1176bba02755bc65f 100644 (file)
@@ -77,6 +77,7 @@ int get_emul_resolution_height(void)
     return _emul_info.resolution_h;
 }
 
+
 /* sdl bits per pixel */
 void set_emul_sdl_bpp(int bpp)
 {
@@ -294,3 +295,24 @@ char* get_emul_vm_name(void)
     return _emul_info.vm_name;
 }
 
+/* emualtor http proxy */
+void set_emul_http_proxy_addr(char *addr)
+{
+    strcpy(_emul_info.http_proxy_addr, addr);
+}
+
+char* get_emul_http_proxy_addr(void)
+{
+    return _emul_info.http_proxy_addr;
+}
+
+void set_emul_http_proxy_port(char *port)
+{
+    strcpy(_emul_info.http_proxy_port, port);
+}
+
+char* get_emul_http_proxy_port(void)
+{
+    return _emul_info.http_proxy_port;
+}
+
index 62fe4eb77ddbba60c6bafc739f46c1d84ca9acc6..737f3397ef95016bd68d9d11ad5b4c5d1786fa3e 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright (C) 2011 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
  *
- * Contact: 
+ * Contact:
  * SeokYeon Hwang <syeon.hwang@samsung.com>
  * MunKyu Im <munkyu.im@samsung.com>
  * GiWoong Kim <giwoong.kim@samsung.com>
 #ifndef __EMUL_STATE_H__
 #define __EMUL_STATE_H__
 
-
 #include "maru_common.h"
 #include "maru_finger.h"
 
+#define MAX_ADDR_LEN    128
+#define MAX_PORT_LEN    6
+
 enum {
     RESET = 0,
     BOOT_COMPLETED = 1,
@@ -91,6 +93,8 @@ typedef  struct EmulatorConfigInfo {
     int vm_base_port;
     int device_serial_number;
     int ecs_port;
+    char http_proxy_addr[MAX_ADDR_LEN];
+    char http_proxy_port[MAX_PORT_LEN];
     char *vm_name;
     /* add here */
 } EmulatorConfigInfo;
@@ -122,6 +126,8 @@ void set_emul_rotation(short rotation_type);
 void set_emul_caps_lock_state(int state);
 void set_emul_num_lock_state(int state);
 void set_emul_vm_name(char *vm_name);
+void set_emul_http_proxy_addr(char *addr);
+void set_emul_http_proxy_port(char *port);
 
 /* getter */
 bool get_emul_skin_enable(void);
@@ -144,5 +150,7 @@ int get_host_lock_key_state_darwin(int key);
 int get_emul_caps_lock_state(void);
 int get_emul_num_lock_state(void);
 char* get_emul_vm_name(void);
+char* get_emul_http_proxy_addr(void);
+char* get_emul_http_proxy_port(void);
 
 #endif /* __EMUL_STATE_H__ */
index 3ed27c68a723a86c08e39af6259ecb5c20d225f4..fa7c841f6f04ef4e740d9f601c1cd0aa91acefb6 100644 (file)
@@ -300,6 +300,13 @@ static void prepare_basic_features(gchar * const kernel_cmdline)
         http_proxy, https_proxy, ftp_proxy, socks_proxy, dns,
         get_emul_resolution_width(), get_emul_resolution_height());
 
+    if(strlen(http_proxy) > 0) {
+        gchar** proxy = g_strsplit(http_proxy, ":", 2);
+        INFO("http_proxy address: %s, port: %s\n", proxy[0], proxy[1]);
+        set_emul_http_proxy_addr(proxy[0]);
+        set_emul_http_proxy_port(proxy[1]);
+        g_strfreev(proxy);
+    }
     g_strlcat(kernel_cmdline, tmp_str, LEN_MARU_KERNEL_CMDLINE);
 
     g_free(tmp_str);