diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2018-12-03 15:21:29 +0100 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2018-12-04 17:26:59 +0000 |
commit | c7af14cc80509fd05500c747bda379f93a62582d (patch) | |
tree | e0b8a0dc36a82bc90eba66364d84b789829677a5 /cli | |
parent | d0bb8d1d503f2ce01ea85625294c238aa831d298 (diff) |
api,manager: new 'Version' property
This string shows the runtime version of the ModemManager daemon.
https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/94
Diffstat (limited to 'cli')
-rw-r--r-- | cli/mmcli-manager.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/cli/mmcli-manager.c b/cli/mmcli-manager.c index 41bda211..810b0aa3 100644 --- a/cli/mmcli-manager.c +++ b/cli/mmcli-manager.c @@ -51,6 +51,7 @@ typedef struct { static Context *ctx; /* Options */ +static gboolean get_daemon_version_flag; static gboolean list_modems_flag; static gboolean monitor_modems_flag; static gboolean scan_modems_flag; @@ -62,6 +63,10 @@ static gboolean report_kernel_event_auto_scan; #endif static GOptionEntry entries[] = { + { "get-daemon-version", 'B', 0, G_OPTION_ARG_NONE, &get_daemon_version_flag, + "Get ModemManager daemon version", + NULL + }, { "set-logging", 'G', 0, G_OPTION_ARG_STRING, &set_logging_str, "Set logging level in the ModemManager daemon", "[ERR,WARN,INFO,DEBUG]", @@ -116,7 +121,8 @@ mmcli_manager_options_enabled (void) if (checked) return !!n_actions; - n_actions = (list_modems_flag + + n_actions = (get_daemon_version_flag + + list_modems_flag + monitor_modems_flag + scan_modems_flag + !!set_logging_str + @@ -131,7 +137,9 @@ mmcli_manager_options_enabled (void) exit (EXIT_FAILURE); } - if (monitor_modems_flag) { + if (get_daemon_version_flag) + mmcli_force_sync_operation (); + else if (monitor_modems_flag) { if (mmcli_output_get () != MMC_OUTPUT_TYPE_HUMAN) { g_printerr ("error: modem monitoring not available in keyvalue output\n"); exit (EXIT_FAILURE); @@ -495,6 +503,12 @@ mmcli_manager_run_synchronous (GDBusConnection *connection) ctx = g_new0 (Context, 1); ctx->manager = mmcli_get_manager_sync (connection); + /* Get daemon version? */ + if (get_daemon_version_flag) { + g_print ("ModemManager daemon %s running\n", mm_manager_get_version (ctx->manager)); + return; + } + /* Setup operation timeout */ mmcli_force_operation_timeout (mm_manager_peek_proxy (ctx->manager)); |