diff options
author | Lubomir Rintel <lkundrak@v3.sk> | 2015-02-06 11:54:16 +0100 |
---|---|---|
committer | Lubomir Rintel <lkundrak@v3.sk> | 2015-02-16 18:14:25 +0100 |
commit | bf6073b647598a869eb94a799f1fccecefb3d9e1 (patch) | |
tree | 8a4a7cb13c52a00e24b2784ad7025e2cb4fb042c | |
parent | 5040a8a8515b01642bd3425aae27d5b20374b8f3 (diff) | |
download | NetworkManager-bf6073b647598a869eb94a799f1fccecefb3d9e1.tar.gz |
config: add configure and quit command line option
Useful for using the feature without having to hardcode it in configuration
(container set up scripts, development).
https://bugzilla.gnome.org/show_bug.cgi?id=744241
-rw-r--r-- | src/nm-config.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/nm-config.c b/src/nm-config.c index d28ed86fbb..6b9887ad1e 100644 --- a/src/nm-config.c +++ b/src/nm-config.c @@ -46,6 +46,7 @@ struct NMConfigCmdLineOptions { char *config_dir; char *no_auto_default_file; char *plugins; + gboolean configure_and_quit; char *connectivity_uri; /* We store interval as signed internally to track whether it's @@ -357,6 +358,7 @@ _nm_config_cmd_line_options_clear (NMConfigCmdLineOptions *cli) g_clear_pointer (&cli->config_dir, g_free); g_clear_pointer (&cli->no_auto_default_file, g_free); g_clear_pointer (&cli->plugins, g_free); + cli->configure_and_quit = FALSE; g_clear_pointer (&cli->connectivity_uri, g_free); g_clear_pointer (&cli->connectivity_response, g_free); cli->connectivity_interval = -1; @@ -374,6 +376,7 @@ _nm_config_cmd_line_options_copy (const NMConfigCmdLineOptions *cli, NMConfigCmd dst->config_main_file = g_strdup (cli->config_main_file); dst->no_auto_default_file = g_strdup (cli->no_auto_default_file); dst->plugins = g_strdup (cli->plugins); + dst->configure_and_quit = cli->configure_and_quit; dst->connectivity_uri = g_strdup (cli->connectivity_uri); dst->connectivity_response = g_strdup (cli->connectivity_response); dst->connectivity_interval = cli->connectivity_interval; @@ -410,6 +413,7 @@ nm_config_cmd_line_options_add_to_entries (NMConfigCmdLineOptions *cli, { "config-dir", 0, 0, G_OPTION_ARG_FILENAME, &cli->config_dir, N_("Config directory location"), N_("/path/to/config/dir") }, { "no-auto-default", 0, G_OPTION_FLAG_HIDDEN, G_OPTION_ARG_FILENAME, &cli->no_auto_default_file, "no-auto-default.state location", NULL }, { "plugins", 0, 0, G_OPTION_ARG_STRING, &cli->plugins, N_("List of plugins separated by ','"), N_("plugin1,plugin2") }, + { "configure-and-quit", 0, 0, G_OPTION_ARG_NONE, &cli->configure_and_quit, N_("Quit after initial configuration"), NULL }, /* These three are hidden for now, and should eventually just go away. */ { "connectivity-uri", 0, G_OPTION_FLAG_HIDDEN, G_OPTION_ARG_STRING, &cli->connectivity_uri, N_("An http(s) address for checking internet connectivity"), "http://example.com" }, @@ -670,6 +674,9 @@ read_entire_config (const NMConfigCmdLineOptions *cli, } else g_strfreev (plugins_tmp); + if (cli && cli->configure_and_quit) + g_key_file_set_value (keyfile, "main", "configure-and-quit", "true"); + if (cli && cli->connectivity_uri && cli->connectivity_uri[0]) g_key_file_set_value (keyfile, "connectivity", "uri", cli->connectivity_uri); if (cli && cli->connectivity_interval >= 0) |