X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=vpn%2Fmain.c;h=ae9c945bfa3e5f3e3fd2303db2502fc99985b212;hb=refs%2Ftags%2Fsubmit%2Ftizen%2F20220111.044041;hp=8fd830cfe3488adcdeaa421876bc8b2254865ba1;hpb=2eec48e8c7d3f86bfb4a1a8a6e659cb1c2ba2f10;p=platform%2Fupstream%2Fconnman.git diff --git a/vpn/main.c b/vpn/main.c old mode 100644 new mode 100755 index 8fd830c..ae9c945 --- a/vpn/main.c +++ b/vpn/main.c @@ -2,7 +2,7 @@ * * ConnMan VPN daemon * - * Copyright (C) 2012 Intel Corporation. All rights reserved. + * Copyright (C) 2012-2013 Intel Corporation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -45,6 +45,7 @@ #define CONFIGMAINFILE CONFIGDIR "/connman-vpn.conf" #define DEFAULT_INPUT_REQUEST_TIMEOUT 300 * 1000 +#define DEFAULT_BROWSER_LAUNCH_TIMEOUT 300 * 1000 static GMainLoop *main_loop = NULL; @@ -52,8 +53,10 @@ static unsigned int __terminated = 0; static struct { unsigned int timeout_inputreq; + unsigned int timeout_browserlaunch; } connman_vpn_settings = { .timeout_inputreq = DEFAULT_INPUT_REQUEST_TIMEOUT, + .timeout_browserlaunch = DEFAULT_BROWSER_LAUNCH_TIMEOUT, }; static GKeyFile *load_config(const char *file) @@ -84,14 +87,14 @@ static void parse_config(GKeyFile *config, const char *file) GError *error = NULL; int timeout; - if (config == NULL) + if (!config) return; DBG("parsing %s", file); timeout = g_key_file_get_integer(config, "General", "InputRequestTimeout", &error); - if (error == NULL && timeout >= 0) + if (!error && timeout >= 0) connman_vpn_settings.timeout_inputreq = timeout * 1000; g_clear_error(&error); @@ -103,7 +106,7 @@ static int config_init(const char *file) config = load_config(file); parse_config(config, file); - if (config != NULL) + if (config) g_key_file_free(config); return 0; @@ -188,11 +191,11 @@ static gchar *option_config = NULL; static gchar *option_debug = NULL; static gchar *option_plugin = NULL; static gchar *option_noplugin = NULL; -static gboolean option_detach = TRUE; -static gboolean option_version = FALSE; -static gboolean option_routes = FALSE; +static bool option_detach = true; +static bool option_version = false; +static bool option_routes = false; -static gboolean parse_debug(const char *key, const char *value, +static bool parse_debug(const char *key, const char *value, gpointer user_data, GError **error) { if (value) @@ -200,7 +203,7 @@ static gboolean parse_debug(const char *key, const char *value, else option_debug = g_strdup("*"); - return TRUE; + return true; } static GOptionEntry options[] = { @@ -224,13 +227,50 @@ static GOptionEntry options[] = { { NULL }, }; +bool connman_setting_get_bool(const char *key) +{ + return false; +} + +#if defined TIZEN_EXT +unsigned int connman_setting_get_uint(const char *key) +{ + return 0; +} + +int connman_setting_get_int(const char *key) +{ + return 0; +} +#endif + +char **connman_setting_get_string_list(const char *key) +{ + return NULL; +} + +unsigned int *connman_setting_get_uint_list(const char *key) +{ + return NULL; +} + /* * This function will be called from generic src/agent.c code so we have * to use connman_ prefix instead of vpn_ one. */ unsigned int connman_timeout_input_request(void) { - return connman_vpn_settings.timeout_inputreq; + return __vpn_settings_get_timeout_inputreq(); +} + +unsigned int connman_timeout_browser_launch(void) +{ + return connman_vpn_settings.timeout_browserlaunch; +} + +const char *connman_option_get_string(const char *key) +{ + return NULL; } int main(int argc, char *argv[]) @@ -244,8 +284,8 @@ int main(int argc, char *argv[]) context = g_option_context_new(NULL); g_option_context_add_main_entries(context, options, NULL); - if (g_option_context_parse(context, &argc, &argv, &error) == FALSE) { - if (error != NULL) { + if (!g_option_context_parse(context, &argc, &argv, &error)) { + if (error) { g_printerr("%s\n", error->message); g_error_free(error); } else @@ -255,30 +295,40 @@ int main(int argc, char *argv[]) g_option_context_free(context); - if (option_version == TRUE) { + if (option_version) { printf("%s\n", VERSION); exit(0); } - if (option_detach == TRUE) { + if (option_detach) { if (daemon(0, 0)) { perror("Can't start daemon"); exit(1); } } - if (mkdir(STATEDIR, S_IRUSR | S_IWUSR | S_IXUSR | + if (mkdir(VPN_STATEDIR, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) < 0) { if (errno != EEXIST) perror("Failed to create state directory"); } + /* + * At some point the VPN stuff is migrated into VPN_STORAGEDIR + * and this mkdir() call can be removed. + */ if (mkdir(STORAGEDIR, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) < 0) { if (errno != EEXIST) perror("Failed to create storage directory"); } + if (mkdir(VPN_STORAGEDIR, S_IRUSR | S_IWUSR | S_IXUSR | + S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) < 0) { + if (errno != EEXIST) + perror("Failed to create VPN storage directory"); + } + umask(0077); main_loop = g_main_loop_new(NULL, FALSE); @@ -288,8 +338,8 @@ int main(int argc, char *argv[]) dbus_error_init(&err); conn = g_dbus_setup_bus(DBUS_BUS_SYSTEM, VPN_SERVICE, &err); - if (conn == NULL) { - if (dbus_error_is_set(&err) == TRUE) { + if (!conn) { + if (dbus_error_is_set(&err)) { fprintf(stderr, "%s\n", err.message); dbus_error_free(&err); } else @@ -299,14 +349,14 @@ int main(int argc, char *argv[]) g_dbus_set_disconnect_function(conn, disconnect_callback, NULL, NULL); - __connman_log_init(argv[0], option_debug, option_detach, FALSE, + __connman_log_init(argv[0], option_debug, option_detach, false, "Connection Manager VPN daemon", VERSION); __connman_dbus_init(conn); - if (option_config == NULL) - config_init(CONFIGMAINFILE); + if (!option_config) + __vpn_settings_init(CONFIGMAINFILE); else - config_init(option_config); + __vpn_settings_init(option_config); __connman_inotify_init(); __connman_agent_init(); @@ -337,7 +387,8 @@ int main(int argc, char *argv[]) __connman_agent_cleanup(); __connman_inotify_cleanup(); __connman_dbus_cleanup(); - __connman_log_cleanup(FALSE); + __connman_log_cleanup(false); + __vpn_settings_cleanup(); dbus_connection_unref(conn);