diff options
Diffstat (limited to 'cli/src/settings.c')
| -rw-r--r-- | cli/src/settings.c | 64 |
1 files changed, 58 insertions, 6 deletions
diff --git a/cli/src/settings.c b/cli/src/settings.c index bf422920..e67bd8f0 100644 --- a/cli/src/settings.c +++ b/cli/src/settings.c @@ -348,6 +348,26 @@ static NmcOutputField nmc_fields_setting_pppoe[] = { NM_SETTING_PPPOE_PASSWORD #define NMC_FIELDS_SETTING_PPPOE_COMMON NMC_FIELDS_SETTING_PPP_ALL +/* Available fields for NM_SETTING_ADSL_SETTING_NAME */ +static NmcOutputField nmc_fields_setting_adsl[] = { + SETTING_FIELD ("name", 10), /* 0 */ + SETTING_FIELD (NM_SETTING_ADSL_USERNAME, 15), /* 1 */ + SETTING_FIELD (NM_SETTING_ADSL_PASSWORD, 15), /* 2 */ + SETTING_FIELD (NM_SETTING_ADSL_VPI, 10), /* 3 */ + SETTING_FIELD (NM_SETTING_ADSL_VCI, 10), /* 4 */ + SETTING_FIELD (NM_SETTING_ADSL_ENCAPSULATION, 10), /* 5 */ + SETTING_FIELD (NM_SETTING_ADSL_PROTOCOL, 10), /* 6 */ + {NULL, NULL, 0, NULL, 0} +}; +#define NMC_FIELDS_SETTING_ADSL_ALL "name"","\ + NM_SETTING_ADSL_USERNAME","\ + NM_SETTING_ADSL_PASSWORD","\ + NM_SETTING_ADSL_VPI","\ + NM_SETTING_ADSL_VCI","\ + NM_SETTING_ADSL_ENCAPSULATION","\ + NM_SETTING_ADSL_PROTOCOL +#define NMC_FIELDS_SETTING_ADSL_COMMON NMC_FIELDS_SETTING_ADSL_ALL + /* Available fields for NM_SETTING_GSM_SETTING_NAME */ static NmcOutputField nmc_fields_setting_gsm[] = { SETTING_FIELD ("name", 10), /* 0 */ @@ -607,10 +627,11 @@ vlan_priorities_to_string (NMSettingVlan *s_vlan, NMVlanPriorityMap map) for (i = 0; i < nm_setting_vlan_get_num_priorities (s_vlan, map); i++) { guint32 from, to; - nm_setting_vlan_get_priority (s_vlan, map, i, &from, &to); - g_string_append_printf (priorities, "%d:%d,", from, to); + if (nm_setting_vlan_get_priority (s_vlan, map, i, &from, &to)) + g_string_append_printf (priorities, "%d:%d,", from, to); } - g_string_truncate (priorities, priorities->len-1); /* chop off trailing ',' */ + if (priorities->len) + g_string_truncate (priorities, priorities->len-1); /* chop off trailing ',' */ return g_string_free (priorities, FALSE); } @@ -917,11 +938,11 @@ setting_wireless_details (NMSettingWireless *s_wireless, NmCli *nmc) nmc->allowed_fields[2].value = nm_setting_wireless_get_mode (s_wireless); nmc->allowed_fields[3].value = nm_setting_wireless_get_band (s_wireless); nmc->allowed_fields[4].value = channel_str; - nmc->allowed_fields[5].value = bssid_str ? bssid_str : _("not set"); + nmc->allowed_fields[5].value = bssid_str; nmc->allowed_fields[6].value = rate_str; nmc->allowed_fields[7].value = tx_power_str; - nmc->allowed_fields[8].value = device_mac_str ? device_mac_str : _("not set"); - nmc->allowed_fields[9].value = cloned_mac_str ? cloned_mac_str : _("not set"); + nmc->allowed_fields[8].value = device_mac_str; + nmc->allowed_fields[9].value = cloned_mac_str; nmc->allowed_fields[10].value = mac_blacklist->str; nmc->allowed_fields[11].value = strcmp (mtu_str, "0") ? mtu_str : _("auto"); nmc->allowed_fields[12].value = seen_bssids->str; @@ -1715,3 +1736,34 @@ setting_vlan_details (NMSettingVlan *s_vlan, NmCli *nmc) return TRUE; } +gboolean +setting_adsl_details (NMSettingAdsl *s_adsl, NmCli *nmc) +{ + guint32 mode_flag = (nmc->print_output == NMC_PRINT_PRETTY) ? NMC_PF_FLAG_PRETTY : (nmc->print_output == NMC_PRINT_TERSE) ? NMC_PF_FLAG_TERSE : 0; + guint32 multiline_flag = nmc->multiline_output ? NMC_PF_FLAG_MULTILINE : 0; + guint32 escape_flag = nmc->escape_values ? NMC_PF_FLAG_ESCAPE : 0; + + g_return_val_if_fail (NM_IS_SETTING_ADSL (s_adsl), FALSE); + + nmc->allowed_fields = nmc_fields_setting_adsl; + nmc->print_fields.indices = parse_output_fields (NMC_FIELDS_SETTING_ADSL_ALL, nmc->allowed_fields, NULL); + nmc->print_fields.flags = multiline_flag | mode_flag | escape_flag | NMC_PF_FLAG_FIELD_NAMES; + print_fields (nmc->print_fields, nmc->allowed_fields); /* Print field names */ + + nmc->allowed_fields[0].value = NM_SETTING_ADSL_SETTING_NAME; + nmc->allowed_fields[1].value = nm_setting_adsl_get_username (s_adsl); + nmc->allowed_fields[2].value = nm_setting_adsl_get_password (s_adsl); + nmc->allowed_fields[3].value = g_strdup_printf ("%d", nm_setting_adsl_get_vpi (s_adsl)); + nmc->allowed_fields[4].value = g_strdup_printf ("%d", nm_setting_adsl_get_vci (s_adsl)); + nmc->allowed_fields[5].value = nm_setting_adsl_get_encapsulation (s_adsl); + nmc->allowed_fields[6].value = nm_setting_adsl_get_protocol (s_adsl); + + nmc->print_fields.flags = multiline_flag | mode_flag | escape_flag | NMC_PF_FLAG_SECTION_PREFIX; + print_fields (nmc->print_fields, nmc->allowed_fields); /* Print values */ + + g_free ((char*) nmc->allowed_fields[3].value); + g_free ((char*) nmc->allowed_fields[4].value); + + return TRUE; +} + |