[TSAM-9983] Registered USB vconf callback when daemon is launched 67/102567/1 accepted/tizen/common/20161207.184200 accepted/tizen/ivi/20161207.031025 accepted/tizen/mobile/20161207.030931 accepted/tizen/tv/20161207.030951 accepted/tizen/wearable/20161207.031007 submit/tizen/20161206.144124
authorSeonah Moon <seonah1.moon@samsung.com>
Tue, 6 Dec 2016 05:04:34 +0000 (14:04 +0900)
committerSeonah Moon <seonah1.moon@samsung.com>
Tue, 6 Dec 2016 06:05:52 +0000 (15:05 +0900)
Change-Id: I2d9405ac2ea8b1e1c2bffb6064c1ce30e7788943
Signed-off-by: Seonah Moon <seonah1.moon@samsung.com>
include/mobileap_usb.h
packaging/mobileap-agent.spec
src/mobileap_handler.c
src/mobileap_usb.c

index 500bd82..deff959 100644 (file)
@@ -20,6 +20,7 @@
 
 #include "mobileap_softap.h"
 
+void __handle_usb_disconnect_cb(keynode_t *key, void *data);
 mobile_ap_error_code_e _disable_usb_tethering(Tethering *obj);
 gboolean _is_trying_usb_operation(void);
 
index 6a6a61a..cd4587f 100644 (file)
@@ -1,6 +1,6 @@
 Name:          mobileap-agent
 Summary:       Mobile AP daemon for setting tethering environments
-Version:       1.0.84
+Version:       1.0.85
 Release:       1
 Group:         System/Network
 License:       Apache-2.0
index 47eb31a..92b98ac 100644 (file)
@@ -161,6 +161,8 @@ void _register_vconf_cb(void *user_data)
                        __handle_device_name_changed_cb, NULL},
                {VCONFKEY_LANGSET,
                        __handle_language_changed_cb, NULL},
+               {VCONFKEY_SYSMAN_USB_STATUS,
+                       __handle_usb_disconnect_cb, NULL},
                {NULL, NULL, NULL}
        };
 
@@ -195,6 +197,8 @@ void _unregister_vconf_cb(void)
                        __handle_device_name_changed_cb, NULL},
                {VCONFKEY_LANGSET,
                        __handle_language_changed_cb, NULL},
+               {VCONFKEY_SYSMAN_USB_STATUS,
+                       __handle_usb_disconnect_cb, NULL},
                {NULL, NULL, NULL}
        };
 
index 03da151..3ea30ca 100755 (executable)
@@ -129,7 +129,7 @@ FAIL:
        return ret;
 }
 
-static void __handle_usb_disconnect_cb(keynode_t *key, void *data)
+void __handle_usb_disconnect_cb(keynode_t *key, void *data)
 {
        if (key == NULL || data == NULL) {
                ERR("Parameter is NULL\n");
@@ -211,10 +211,6 @@ static void __handle_usb_mode_change(keynode_t *key, void *data)
                vconf_ignore_key_changed(VCONFKEY_USB_CUR_MODE,
                                __handle_usb_mode_change);
 
-               /* USB Mode change is handled while USB tethering is enabled */
-               vconf_notify_key_changed(VCONFKEY_SYSMAN_USB_STATUS,
-                               __handle_usb_disconnect_cb, (void *)obj);
-
                ret = vconf_get_int(VCONFKEY_USB_CUR_MODE, &vconf_key);
                if (ret != 0)
                        ERR("vconf_get_int is failed. but ignored [%d]\n", ret);
@@ -355,9 +351,6 @@ mobile_ap_error_code_e _disable_usb_tethering(Tethering *obj)
                conn = NULL;
        }
 
-       vconf_ignore_key_changed(VCONFKEY_SYSMAN_USB_STATUS,
-                       __handle_usb_disconnect_cb);
-
        _mobileap_clear_state(MOBILE_AP_STATE_USB);
        _del_routing_rule(USB_IF);
        _del_interface_routing(USB_IF, IP_ADDRESS_USB);