aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@lanedo.com>2011-12-19 14:05:59 +0100
committerAleksander Morgado <aleksander@lanedo.com>2012-03-15 14:14:34 +0100
commit9e1b2105fb9b7454774a0414fa3f5958d79e8211 (patch)
tree63c6a5d2c547c3314af712d8e96978df4718f12a
parentc2e4d9cea709d8175e475359a2a611d3b3dcf0e4 (diff)
cli: default to showing modem info if no action specified
-rw-r--r--cli/mmcli-modem.c17
-rw-r--r--cli/mmcli.c5
2 files changed, 13 insertions, 9 deletions
diff --git a/cli/mmcli-modem.c b/cli/mmcli-modem.c
index 51c942db..ce507af0 100644
--- a/cli/mmcli-modem.c
+++ b/cli/mmcli-modem.c
@@ -43,7 +43,7 @@ static Context *ctx;
/* Options */
static gchar *modem_str;
-static gboolean info_flag;
+static gboolean info_flag; /* set when no action found */
static gboolean monitor_state_flag;
static gboolean enable_flag;
static gboolean disable_flag;
@@ -55,11 +55,7 @@ static gchar *delete_bearer_str;
static GOptionEntry entries[] = {
{ "modem", 'm', 0, G_OPTION_ARG_STRING, &modem_str,
- "Specify modem by path or index",
- NULL
- },
- { "info", 'i', 0, G_OPTION_ARG_NONE, &info_flag,
- "Get information of a given modem",
+ "Specify modem by path or index. Shows modem information if no action specified.",
NULL
},
{ "monitor-state", 'w', 0, G_OPTION_ARG_NONE, &monitor_state_flag,
@@ -118,8 +114,7 @@ mmcli_modem_options_enabled (void)
{
guint n_actions;
- n_actions = (info_flag +
- monitor_state_flag +
+ n_actions = (monitor_state_flag +
enable_flag +
disable_flag +
reset_flag +
@@ -128,6 +123,12 @@ mmcli_modem_options_enabled (void)
!!delete_bearer_str +
!!factory_reset_str);
+ if (n_actions == 0 && modem_str) {
+ /* default to info */
+ info_flag = TRUE;
+ n_actions++;
+ }
+
if (n_actions > 1) {
g_printerr ("error: too many modem actions requested\n");
exit (EXIT_FAILURE);
diff --git a/cli/mmcli.c b/cli/mmcli.c
index 49c7cab5..1bd7300c 100644
--- a/cli/mmcli.c
+++ b/cli/mmcli.c
@@ -220,7 +220,10 @@ main (gint argc, gchar **argv)
else
mmcli_manager_run_synchronous (connection);
}
- /* Modem options? */
+ /* Modem options?
+ * NOTE: let this check be always the last one, as other groups also need
+ * having a modem specified, and therefore if -m is set, modem options
+ * are always enabled. */
else if (mmcli_modem_options_enabled ()) {
if (async_flag)
mmcli_modem_run_asynchronous (connection, cancellable);