X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fmain.c;h=6c4c648ec242f0886b36ad8f48bbd314831428be;hb=dde802157c07a6dcae13cd156f45fa2f72159e66;hp=77288a027e218433a004e9a172f9ad1e238eefc7;hpb=1ff4bffc29b8a263497175a45628e98601061c0d;p=platform%2Fcore%2Fconnectivity%2Fnet-config.git diff --git a/src/main.c b/src/main.c index 77288a0..6c4c648 100755 --- a/src/main.c +++ b/src/main.c @@ -24,22 +24,25 @@ #include #include "log.h" +#include "util.h" #include "wifi.h" #include "netdbus.h" #include "emulator.h" #include "neterror.h" #include "wifi-agent.h" #include "wifi-power.h" +#include "vpnsvc.h" +#include "mptcp.h" #include "network-clock.h" +#include "network-dpm.h" #include "network-state.h" #include "network-monitor.h" #include "signal-handler.h" #include "network-statistics.h" +#include "network-dump.h" static GMainLoop *main_loop = NULL; -#define ETHERNET_FEATURE "http://tizen.org/feature/network.ethernet" - /*Poll the ethernet Cable Plug-in /Plug-out status at every 1000 ms*/ #define ETH_POLLING_TIME 1000 @@ -55,13 +58,14 @@ void _got_name_cb(void) wifi_object_create_and_init(); state_object_create_and_init(); statistics_object_create_and_init(); + vpnsvc_create_and_init(); + mptcp_object_create_and_init(); register_gdbus_signal(); connman_register_agent(); -#if defined TIZEN_TV - __netconfig_set_ether_macaddr(); -#endif + if (TIZEN_TV) + __netconfig_set_ether_macaddr(); } static void _objects_deinit(void) @@ -70,13 +74,14 @@ static void _objects_deinit(void) wifi_object_deinit(); state_object_deinit(); statistics_object_deinit(); + vpnsvc_destroy_deinit(); + mptcp_object_deinit(); } int main(int argc, char *argv[]) { int ret; int check_ethernet_monitor_timer = 0; - bool ethernet_feature_supported = FALSE; umask(0077); @@ -96,7 +101,7 @@ int main(int argc, char *argv[]) ERR("Failed to create cert directory"); } -#if !GLIB_CHECK_VERSION(2,36,0) +#if !GLIB_CHECK_VERSION(2, 36, 0) g_type_init(); #endif @@ -114,46 +119,54 @@ int main(int argc, char *argv[]) netconfig_error_init(); -#if !defined TIZEN_TELEPHONY_ENABLE - netconfig_clock_init(); -#endif + if (TIZEN_NTP_ENABLE) + netconfig_clock_init(); /* If its environment uses Emulator, network configuration is set by emulator default */ emulator_test_and_start(); + /* For device policy manager */ + netconfig_dpm_init(); + + /* Start tcpdump if dump state is on */ +#if defined TIZEN_DEBUG_ENABLE + check_dump_state_and_start(); +#endif + + if (TIZEN_WLAN_BOARD_SPRD) + wifi_firmware_download(); /*In case no emulator, set the ETH0 Mac address*/ -#if defined TIZEN_TV - if (emulator_is_emulated() == FALSE) + if (TIZEN_TV && emulator_is_emulated() == FALSE) __netconfig_set_ether_macaddr(); -#endif - if (!system_info_get_platform_bool(ETHERNET_FEATURE, ðernet_feature_supported)) { - if (ethernet_feature_supported == TRUE) { - //Register the callback to check the ethernet Plug-in /Plug-out Status - check_ethernet_monitor_timer = g_timeout_add(ETH_POLLING_TIME, - __net_ethernet_cable_status_polling_callback, - &check_ethernet_monitor_timer); - } - } else { - ERR("Error - Feature getting from System Info"); + if (netconfig_check_feature_supported(NETCONFIG_SUPPORTED_FEATURE_ETHERNET)) { + /* Register the callback to check the ethernet Plug-in /Plug-out Status */ + check_ethernet_monitor_timer = g_timeout_add(ETH_POLLING_TIME, + __net_ethernet_cable_status_polling_callback, + &check_ethernet_monitor_timer); } + netconfig_plugin_init(); + g_main_loop_run(main_loop); + netconfig_plugin_deinit(); + _objects_deinit(); log_cleanup(); deregister_gdbus_signal(); -#if !defined TIZEN_TELEPHONY_ENABLE - netconfig_clock_deinit(); -#endif + netconfig_dpm_deinit(); + + if (TIZEN_NTP_ENABLE) + netconfig_clock_deinit(); /*remove the Timer*/ - if(check_ethernet_monitor_timer >0) + if (check_ethernet_monitor_timer > 0) g_source_remove(check_ethernet_monitor_timer); wifi_state_notifier_cleanup();