summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2018-10-06 14:57:58 +0200
committerAleksander Morgado <aleksander@aleksander.es>2018-10-06 14:57:58 +0200
commit1ac79ccdfd82af5277c6baac7760d3a9588a0bd4 (patch)
tree5fd3d83c0860df099633e8157d7013f6d228614b
parent24454b2775cfcaa77429cf5d3a72ac82bd92084f (diff)
downloadModemManager-1ac79ccdfd82af5277c6baac7760d3a9588a0bd4.tar.gz
cli,modem: print PCO as 'n/a' if not available
-rw-r--r--cli/mmcli-modem.c45
1 files changed, 25 insertions, 20 deletions
diff --git a/cli/mmcli-modem.c b/cli/mmcli-modem.c
index f78b0d1d9..8967b1d02 100644
--- a/cli/mmcli-modem.c
+++ b/cli/mmcli-modem.c
@@ -461,7 +461,7 @@ print_modem_info (void)
/* If available, 3GPP related stuff */
if (ctx->modem_3gpp) {
gchar *facility_locks;
- GList *pco_list, *l;
+ GList *pco_list;
facility_locks = (mm_modem_3gpp_facility_build_string_from_mask (
mm_modem_3gpp_get_enabled_facility_locks (ctx->modem_3gpp)));
@@ -473,8 +473,7 @@ print_modem_info (void)
" | operator name: '%s'\n"
" | subscription: '%s'\n"
" | registration: '%s'\n"
- " | EPS UE mode: '%s'\n"
- " | PCO:\n",
+ " | EPS UE mode: '%s'\n",
VALIDATE_UNKNOWN (mm_modem_3gpp_get_imei (ctx->modem_3gpp)),
facility_locks,
VALIDATE_UNKNOWN (mm_modem_3gpp_get_operator_code (ctx->modem_3gpp)),
@@ -486,25 +485,31 @@ print_modem_info (void)
mm_modem_3gpp_eps_ue_mode_operation_get_string (
mm_modem_3gpp_get_eps_ue_mode_operation (ctx->modem_3gpp)));
- for (l = pco_list; l; l = g_list_next (l)) {
- MMPco *pco = MM_PCO (l->data);
- gchar *pco_data_hex = NULL;
- const guint8 *pco_data;
- gsize pco_data_size;
-
- pco_data = mm_pco_get_data (pco, &pco_data_size);
- if (pco_data)
- pco_data_hex = mm_utils_bin2hexstr (pco_data, pco_data_size);
-
- g_print (" | %u: (%s) '%s'\n",
- mm_pco_get_session_id (pco),
- mm_pco_is_complete (pco) ? "complete" : "partial",
- pco_data_hex ? pco_data_hex : "");
- g_free (pco_data_hex);
- }
+ if (pco_list) {
+ GList *l;
+
+ g_print (" | PCO:\n");
+ for (l = pco_list; l; l = g_list_next (l)) {
+ MMPco *pco = MM_PCO (l->data);
+ gchar *pco_data_hex = NULL;
+ const guint8 *pco_data;
+ gsize pco_data_size;
+
+ pco_data = mm_pco_get_data (pco, &pco_data_size);
+ if (pco_data)
+ pco_data_hex = mm_utils_bin2hexstr (pco_data, pco_data_size);
+
+ g_print (" | %u: (%s) '%s'\n",
+ mm_pco_get_session_id (pco),
+ mm_pco_is_complete (pco) ? "complete" : "partial",
+ pco_data_hex ? pco_data_hex : "");
+ g_free (pco_data_hex);
+ }
+ mm_pco_list_free (pco_list);
+ } else
+ g_print (" | PCO: 'n/a'\n");
g_free (facility_locks);
- mm_pco_list_free (pco_list);
}
/* If available, CDMA related stuff */