diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-01-12 17:41:15 +0100 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-03-15 14:14:50 +0100 |
commit | 31131a1f669a9eadded03b739ec499fba4097a2f (patch) | |
tree | 54a55522aca33fb22528d971900948d24918d22f /cli/mmcli-modem-simple.c | |
parent | 5f5ad3843122f74dfd6609d84eab9621d2228446 (diff) | |
download | ModemManager-31131a1f669a9eadded03b739ec499fba4097a2f.tar.gz |
cli: print properties only if registered in the specific network(s)
If registered in the 3GPP network, print 3GPP-specific properties; and if
registered in a CDMA network, print CDMA-specific properties.
Diffstat (limited to 'cli/mmcli-modem-simple.c')
-rw-r--r-- | cli/mmcli-modem-simple.c | 92 |
1 files changed, 53 insertions, 39 deletions
diff --git a/cli/mmcli-modem-simple.c b/cli/mmcli-modem-simple.c index feea6b46b..93773157d 100644 --- a/cli/mmcli-modem-simple.c +++ b/cli/mmcli-modem-simple.c @@ -218,10 +218,6 @@ status_process_reply (MMModemSimpleStatusProperties *result, gchar *access_tech_str; guint signal_quality; gboolean signal_quality_recent = FALSE; - guint sid; - guint nid; - gchar *sid_str = NULL; - gchar *nid_str = NULL; signal_quality = (mm_modem_simple_status_properties_get_signal_quality ( result, @@ -231,44 +227,62 @@ status_process_reply (MMModemSimpleStatusProperties *result, access_tech_str = (mm_modem_get_access_technologies_string ( mm_modem_simple_status_properties_get_access_technologies (result))); - sid = mm_modem_simple_status_properties_get_cdma_sid (result); - sid_str = (sid != MM_MODEM_CDMA_SID_UNKNOWN ? - g_strdup_printf ("%u", sid) : - NULL); - nid = mm_modem_simple_status_properties_get_cdma_nid (result); - nid_str = (nid != MM_MODEM_CDMA_NID_UNKNOWN ? - g_strdup_printf ("%u", nid) : - NULL); - - g_print (" -------------------------\n" - " | signal quality: '%u' (%s)\n" + g_print (" | signal quality: '%u' (%s)\n" " | bands: '%s'\n" - " | access tech: '%s'\n" - " -------------------------\n" - " 3GPP | registration: '%s'\n" - " | operator code: '%s'\n" - " | operator name: '%s'\n" - " -------------------------\n" - " CDMA | sid: '%s'\n" - " | nid: '%s'\n" - " | registration: CDMA1x '%s'\n" - " | EV-DO '%s'\n", + " | access tech: '%s'\n", signal_quality, signal_quality_recent ? "recent" : "cached", VALIDATE_UNKNOWN (bands_str), - VALIDATE_UNKNOWN (access_tech_str), - mmcli_get_3gpp_registration_state_string ( - mm_modem_simple_status_properties_get_3gpp_registration_state (result)), - VALIDATE_UNKNOWN (mm_modem_simple_status_properties_get_3gpp_operator_code (result)), - VALIDATE_UNKNOWN (mm_modem_simple_status_properties_get_3gpp_operator_name (result)), - VALIDATE_UNKNOWN (sid_str), - VALIDATE_UNKNOWN (nid_str), - mmcli_get_cdma_registration_state_string ( - mm_modem_simple_status_properties_get_cdma_cdma1x_registration_state (result)), - mmcli_get_cdma_registration_state_string ( - mm_modem_simple_status_properties_get_cdma_evdo_registration_state (result))); - - g_free (sid_str); - g_free (nid_str); + VALIDATE_UNKNOWN (access_tech_str)); + + if ((mm_modem_simple_status_properties_get_3gpp_registration_state (result) == + MM_MODEM_3GPP_REGISTRATION_STATE_HOME) || + (mm_modem_simple_status_properties_get_3gpp_registration_state (result) == + MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING)) { + g_print (" -------------------------\n" + " 3GPP | registration: '%s'\n" + " | operator code: '%s'\n" + " | operator name: '%s'\n", + mmcli_get_3gpp_registration_state_string ( + mm_modem_simple_status_properties_get_3gpp_registration_state (result)), + VALIDATE_UNKNOWN (mm_modem_simple_status_properties_get_3gpp_operator_code (result)), + VALIDATE_UNKNOWN (mm_modem_simple_status_properties_get_3gpp_operator_name (result))); + } + + if ((mm_modem_simple_status_properties_get_cdma_cdma1x_registration_state (result) != + MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN) || + (mm_modem_simple_status_properties_get_cdma_evdo_registration_state (result) != + MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN)) { + guint sid; + guint nid; + gchar *sid_str = NULL; + gchar *nid_str = NULL; + + + sid = mm_modem_simple_status_properties_get_cdma_sid (result); + sid_str = (sid != MM_MODEM_CDMA_SID_UNKNOWN ? + g_strdup_printf ("%u", sid) : + NULL); + nid = mm_modem_simple_status_properties_get_cdma_nid (result); + nid_str = (nid != MM_MODEM_CDMA_NID_UNKNOWN ? + g_strdup_printf ("%u", nid) : + NULL); + + g_print (" -------------------------\n" + " CDMA | sid: '%s'\n" + " | nid: '%s'\n" + " | registration: CDMA1x '%s'\n" + " | EV-DO '%s'\n", + VALIDATE_UNKNOWN (sid_str), + VALIDATE_UNKNOWN (nid_str), + mmcli_get_cdma_registration_state_string ( + mm_modem_simple_status_properties_get_cdma_cdma1x_registration_state (result)), + mmcli_get_cdma_registration_state_string ( + mm_modem_simple_status_properties_get_cdma_evdo_registration_state (result))); + + g_free (sid_str); + g_free (nid_str); + } + g_free (access_tech_str); g_free (bands_str); } |