From c7af14cc80509fd05500c747bda379f93a62582d Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Mon, 3 Dec 2018 15:21:29 +0100 Subject: api,manager: new 'Version' property This string shows the runtime version of the ModemManager daemon. https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/94 --- cli/mmcli-manager.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'cli/mmcli-manager.c') 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)); -- cgit v1.2.3-70-g09d2