diff options
author | Dan Williams <dcbw@redhat.com> | 2015-09-09 12:12:32 -0500 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2015-09-10 13:03:34 +0200 |
commit | fd222fc1ee05c2c0c2c21bddec65b9b02f0bc718 (patch) | |
tree | b7ff203dd0af27a5a9fd5e327bdffa02ca3d3673 | |
parent | 4e58451a744dbc3f086e9c1dd2d7469ff70d50ef (diff) | |
download | libmbim-fd222fc1ee05c2c0c2c21bddec65b9b02f0bc718.tar.gz |
mbimcli: fix parsing --query-connection-state and --disconnect args after 4e58451
From f6d10eb69eefeb190c9349fdbd3a23b0e838913e Mon Sep 17 00:00:00 2001
From: Dan Williams <dcbw@redhat.com>
Date: Wed, 9 Sep 2015 12:06:00 -0500
Subject: [PATCH] mbimcli: fix parsing --query-connection-state and
--disconnect args after 4e58451
Fixes: 4e58451a744dbc3f086e9c1dd2d7469ff70d50ef ("mbimcli: add support for Basic Connect session IDs")
Reported-by: David Ward
-rw-r--r-- | src/mbimcli/mbimcli-basic-connect.c | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/src/mbimcli/mbimcli-basic-connect.c b/src/mbimcli/mbimcli-basic-connect.c index 8fdff82..9b74677 100644 --- a/src/mbimcli/mbimcli-basic-connect.c +++ b/src/mbimcli/mbimcli-basic-connect.c @@ -67,6 +67,16 @@ static gchar *set_connect_activate_str; static gchar *set_connect_deactivate_str; static gboolean query_packet_statistics_flag; +static gboolean query_connection_state_arg_parse (const char *option_name, + const char *value, + gpointer user_data, + GError **error); + +static gboolean disconnect_arg_parse (const char *option_name, + const char *value, + gpointer user_data, + GError **error); + static GOptionEntry entries[] = { { "query-device-caps", 0, 0, G_OPTION_ARG_NONE, &query_device_caps_flag, "Query device capabilities", @@ -148,7 +158,7 @@ static GOptionEntry entries[] = { "Detach from the packet service", NULL }, - { "query-connection-state", 0, 0, G_OPTION_ARG_NONE, &query_connect_str, + { "query-connection-state", 0, G_OPTION_FLAG_OPTIONAL_ARG, G_OPTION_ARG_CALLBACK, G_CALLBACK (query_connection_state_arg_parse), "Query connection state (SessionID is optional, defaults to 0)", "[SessionID]" }, @@ -156,7 +166,7 @@ static GOptionEntry entries[] = { "Connect (allowed keys: session-id, apn, auth (PAP|CHAP|MSCHAPV2), username, password)", "[\"key=value,...\"]" }, - { "disconnect", 0, 0, G_OPTION_ARG_STRING, &set_connect_deactivate_str, + { "disconnect", 0, G_OPTION_FLAG_OPTIONAL_ARG, G_OPTION_ARG_CALLBACK, G_CALLBACK (disconnect_arg_parse), "Disconnect (SessionID is optional, defaults to 0)", "[SessionID]" }, @@ -182,6 +192,26 @@ mbimcli_basic_connect_get_option_group (void) return group; } +static gboolean +query_connection_state_arg_parse (const char *option_name, + const char *value, + gpointer user_data, + GError **error) +{ + query_connect_str = g_strdup (value ? value : "0"); + return TRUE; +} + +static gboolean +disconnect_arg_parse (const char *option_name, + const char *value, + gpointer user_data, + GError **error) +{ + set_connect_deactivate_str = g_strdup (value ? value : "0"); + return TRUE; +} + gboolean mbimcli_basic_connect_options_enabled (void) { |