diff options
author | Thomas Haller <thaller@redhat.com> | 2017-03-26 14:30:17 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2017-03-30 13:09:56 +0200 |
commit | 9c6f70f9e0f2243ea13f1b584d04a312d82caf2e (patch) | |
tree | 8472017494d0ccd1b0fd9a9133be5177f9fcbfbe | |
parent | f34ef5d1fe3d75000fed99ad06ac1df9f744c424 (diff) | |
download | NetworkManager-9c6f70f9e0f2243ea13f1b584d04a312d82caf2e.tar.gz |
cli: add property-info for NMSettingAdsl
-rw-r--r-- | clients/cli/connections.c | 2 | ||||
-rw-r--r-- | clients/cli/nmcli.c | 2 | ||||
-rw-r--r-- | clients/cli/settings.c | 170 | ||||
-rw-r--r-- | clients/cli/settings.h | 1 |
4 files changed, 51 insertions, 124 deletions
diff --git a/clients/cli/connections.c b/clients/cli/connections.c index bb31f08664..decaf4e406 100644 --- a/clients/cli/connections.c +++ b/clients/cli/connections.c @@ -182,7 +182,7 @@ NmcOutputField nmc_fields_settings_names[] = { SETTING_FIELD (NM_SETTING_INFINIBAND_SETTING_NAME, nmc_fields_setting_infiniband + 1), /* 16 */ SETTING_FIELD (NM_SETTING_BOND_SETTING_NAME, nmc_fields_setting_bond + 1), /* 17 */ SETTING_FIELD (NM_SETTING_VLAN_SETTING_NAME, nmc_fields_setting_vlan + 1), /* 18 */ - SETTING_FIELD (NM_SETTING_ADSL_SETTING_NAME, nmc_fields_setting_adsl + 1), /* 19 */ + SETTING_FIELD_TYPE (NM_SETTING_ADSL_SETTING_NAME, NM_META_SETTING_TYPE_ADSL), /* 19 */ SETTING_FIELD (NM_SETTING_BRIDGE_SETTING_NAME, nmc_fields_setting_bridge + 1), /* 20 */ SETTING_FIELD (NM_SETTING_BRIDGE_PORT_SETTING_NAME, nmc_fields_setting_bridge_port + 1), /* 21 */ SETTING_FIELD (NM_SETTING_TEAM_SETTING_NAME, nmc_fields_setting_team + 1), /* 22 */ diff --git a/clients/cli/nmcli.c b/clients/cli/nmcli.c index d531a7fb86..5a4be31cd5 100644 --- a/clients/cli/nmcli.c +++ b/clients/cli/nmcli.c @@ -156,7 +156,7 @@ complete_fields (const char *prefix) complete_field (h, "serial", nmc_fields_setting_serial); complete_field_new (h, "ppp", NM_META_SETTING_TYPE_PPP); complete_field_new (h, "pppoe", NM_META_SETTING_TYPE_PPPOE); - complete_field (h, "adsl", nmc_fields_setting_adsl); + complete_field_new (h, "adsl", NM_META_SETTING_TYPE_ADSL); complete_field (h, "gsm", nmc_fields_setting_gsm); complete_field (h, "cdma", nmc_fields_setting_cdma); complete_field (h, "bluetooth", nmc_fields_setting_bluetooth); diff --git a/clients/cli/settings.c b/clients/cli/settings.c index 115c307f4a..08ef8c89ed 100644 --- a/clients/cli/settings.c +++ b/clients/cli/settings.c @@ -574,27 +574,6 @@ NmcOutputField nmc_fields_setting_serial[] = { NM_SETTING_SERIAL_STOPBITS","\ NM_SETTING_SERIAL_SEND_DELAY -/* Available fields for NM_SETTING_ADSL_SETTING_NAME */ -NmcOutputField nmc_fields_setting_adsl[] = { - SETTING_FIELD ("name"), /* 0 */ - SETTING_FIELD (NM_SETTING_ADSL_USERNAME), /* 1 */ - SETTING_FIELD (NM_SETTING_ADSL_PASSWORD), /* 2 */ - SETTING_FIELD (NM_SETTING_ADSL_PASSWORD_FLAGS), /* 3 */ - SETTING_FIELD (NM_SETTING_ADSL_PROTOCOL), /* 4 */ - SETTING_FIELD (NM_SETTING_ADSL_ENCAPSULATION), /* 5 */ - SETTING_FIELD (NM_SETTING_ADSL_VPI), /* 6 */ - SETTING_FIELD (NM_SETTING_ADSL_VCI), /* 7 */ - {NULL, NULL, 0, NULL, FALSE, FALSE, 0} -}; -#define NMC_FIELDS_SETTING_ADSL_ALL "name"","\ - NM_SETTING_ADSL_USERNAME","\ - NM_SETTING_ADSL_PASSWORD","\ - NM_SETTING_ADSL_PASSWORD_FLAGS","\ - NM_SETTING_ADSL_PROTOCOL","\ - NM_SETTING_ADSL_ENCAPSULATION","\ - NM_SETTING_ADSL_VPI","\ - NM_SETTING_ADSL_VCI - /* Available fields for NM_SETTING_GSM_SETTING_NAME */ NmcOutputField nmc_fields_setting_gsm[] = { SETTING_FIELD ("name"), /* 0 */ @@ -2158,16 +2137,6 @@ nmc_property_802_1X_set_phase1_auth_flags (NMSetting *setting, const char *prop, } -/* --- NM_SETTING_ADSL_SETTING_NAME property functions --- */ -DEFINE_GETTER (nmc_property_adsl_get_username, NM_SETTING_ADSL_USERNAME) -DEFINE_GETTER (nmc_property_adsl_get_password, NM_SETTING_ADSL_PASSWORD) -DEFINE_SECRET_FLAGS_GETTER (nmc_property_adsl_get_password_flags, NM_SETTING_ADSL_PASSWORD_FLAGS) -DEFINE_GETTER (nmc_property_adsl_get_protocol, NM_SETTING_ADSL_PROTOCOL) -DEFINE_GETTER (nmc_property_adsl_get_encapsulation, NM_SETTING_ADSL_ENCAPSULATION) -DEFINE_GETTER (nmc_property_adsl_get_vpi, NM_SETTING_ADSL_VPI) -DEFINE_GETTER (nmc_property_adsl_get_vci, NM_SETTING_ADSL_VCI) - -/* 'protocol' */ static const char *adsl_valid_protocols[] = { NM_SETTING_ADSL_PROTOCOL_PPPOA, NM_SETTING_ADSL_PROTOCOL_PPPOE, @@ -2181,9 +2150,6 @@ nmc_property_adsl_set_protocol (NMSetting *setting, const char *prop, const char return check_and_set_string (setting, prop, val, adsl_valid_protocols, error); } -DEFINE_ALLOWED_VAL_FUNC (nmc_property_adsl_allowed_protocol, adsl_valid_protocols) - -/* 'encapsulation' */ static const char *adsl_valid_encapsulations[] = { NM_SETTING_ADSL_ENCAPSULATION_VCMUX, NM_SETTING_ADSL_ENCAPSULATION_LLC, @@ -2196,9 +2162,6 @@ nmc_property_adsl_set_encapsulation (NMSetting *setting, const char *prop, const return check_and_set_string (setting, prop, val, adsl_valid_encapsulations, error); } -DEFINE_ALLOWED_VAL_FUNC (nmc_property_adsl_allowed_encapsulation, adsl_valid_encapsulations) - - /* --- NM_SETTING_BLUETOOTH_SETTING_NAME property functions --- */ DEFINE_GETTER (nmc_property_bluetooth_get_bdaddr, NM_SETTING_BLUETOOTH_BDADDR) DEFINE_GETTER (nmc_property_bluetooth_get_type, NM_SETTING_BLUETOOTH_TYPE) @@ -5916,57 +5879,6 @@ nmc_properties_init (void) /* create properties hash table */ nmc_properties = g_hash_table_new_full (g_str_hash, g_str_equal, NULL, g_free); - /* Add editable properties for NM_SETTING_ADSL_SETTING_NAME */ - nmc_add_prop_funcs (NM_SETTING_ADSL_SETTING_NAME""NM_SETTING_ADSL_USERNAME, - nmc_property_adsl_get_username, - nmc_property_set_string, - NULL, - NULL, - NULL, - NULL); - nmc_add_prop_funcs (NM_SETTING_ADSL_SETTING_NAME""NM_SETTING_ADSL_PASSWORD, - nmc_property_adsl_get_password, - nmc_property_set_string, - NULL, - NULL, - NULL, - NULL); - nmc_add_prop_funcs (NM_SETTING_ADSL_SETTING_NAME""NM_SETTING_ADSL_PASSWORD_FLAGS, - nmc_property_adsl_get_password_flags, - nmc_property_set_secret_flags, - NULL, - NULL, - NULL, - NULL); - nmc_add_prop_funcs (NM_SETTING_ADSL_SETTING_NAME""NM_SETTING_ADSL_PROTOCOL, - nmc_property_adsl_get_protocol, - nmc_property_adsl_set_protocol, - NULL, - NULL, - nmc_property_adsl_allowed_protocol, - NULL); - nmc_add_prop_funcs (NM_SETTING_ADSL_SETTING_NAME""NM_SETTING_ADSL_ENCAPSULATION, - nmc_property_adsl_get_encapsulation, - nmc_property_adsl_set_encapsulation, - NULL, - NULL, - nmc_property_adsl_allowed_encapsulation, - NULL); - nmc_add_prop_funcs (NM_SETTING_ADSL_SETTING_NAME""NM_SETTING_ADSL_VPI, - nmc_property_adsl_get_vpi, - nmc_property_set_uint, - NULL, - NULL, - NULL, - NULL); - nmc_add_prop_funcs (NM_SETTING_ADSL_SETTING_NAME""NM_SETTING_ADSL_VCI, - nmc_property_adsl_get_vci, - nmc_property_set_uint, - NULL, - NULL, - NULL, - NULL); - /* Add editable properties for NM_SETTING_BLUETOOTH_SETTING_NAME */ nmc_add_prop_funcs (NM_SETTING_BLUETOOTH_SETTING_NAME""NM_SETTING_BLUETOOTH_BDADDR, nmc_property_bluetooth_get_bdaddr, @@ -7792,38 +7704,6 @@ setting_vlan_details (const NmcSettingInfo *setting_info, NMSetting *setting, Nm } static gboolean -setting_adsl_details (const NmcSettingInfo *setting_info, NMSetting *setting, NmCli *nmc, const char *one_prop, gboolean secrets) -{ - NMSettingAdsl *s_adsl = NM_SETTING_ADSL (setting); - NmcOutputField *tmpl, *arr; - size_t tmpl_len; - - g_return_val_if_fail (NM_IS_SETTING_ADSL (s_adsl), FALSE); - - tmpl = nmc_fields_setting_adsl; - tmpl_len = sizeof (nmc_fields_setting_adsl); - nmc->print_fields.indices = parse_output_fields (one_prop ? one_prop : NMC_FIELDS_SETTING_ADSL_ALL, - tmpl, FALSE, NULL, NULL); - arr = nmc_dup_fields_array (tmpl, tmpl_len, NMC_OF_FLAG_FIELD_NAMES); - g_ptr_array_add (nmc->output_data, arr); - - arr = nmc_dup_fields_array (tmpl, tmpl_len, NMC_OF_FLAG_SECTION_PREFIX); - set_val_str (arr, 0, g_strdup (nm_setting_get_name (setting))); - set_val_str (arr, 1, nmc_property_adsl_get_username (setting, NMC_PROPERTY_GET_PRETTY)); - set_val_str (arr, 2, GET_SECRET (secrets, setting, nmc_property_adsl_get_password)); - set_val_str (arr, 3, nmc_property_adsl_get_password_flags (setting, NMC_PROPERTY_GET_PRETTY)); - set_val_str (arr, 4, nmc_property_adsl_get_protocol (setting, NMC_PROPERTY_GET_PRETTY)); - set_val_str (arr, 5, nmc_property_adsl_get_encapsulation (setting, NMC_PROPERTY_GET_PRETTY)); - set_val_str (arr, 6, nmc_property_adsl_get_vpi (setting, NMC_PROPERTY_GET_PRETTY)); - set_val_str (arr, 7, nmc_property_adsl_get_vci (setting, NMC_PROPERTY_GET_PRETTY)); - g_ptr_array_add (nmc->output_data, arr); - - print_data (nmc); /* Print all data */ - - return TRUE; -} - -static gboolean setting_bridge_details (const NmcSettingInfo *setting_info, NMSetting *setting, NmCli *nmc, const char *one_prop, gboolean secrets) { NMSettingBridge *s_bridge = NM_SETTING_BRIDGE (setting); @@ -8511,6 +8391,53 @@ static const NmcPropertyInfo properties_setting_802_1x[] = { }, }; +static const NmcPropertyInfo properties_setting_adsl[] = { + PROPERTY_INFO_NAME(), + { + .property_name = N_ (NM_SETTING_ADSL_USERNAME), + .property_type = &_pt_gobject_string, + }, + { + .property_name = N_ (NM_SETTING_ADSL_PASSWORD), + .is_secret = TRUE, + .property_type = &_pt_gobject_string, + }, + { + .property_name = N_ (NM_SETTING_ADSL_PASSWORD_FLAGS), + .property_type = &_pt_gobject_secret_flags, + }, + { + .property_name = N_ (NM_SETTING_ADSL_PROTOCOL), + .property_type = DEFINE_PROPERTY_TYPE ( + .get_fcn = _get_fcn_gobject, + .set_fcn = _set_fcn_nmc, + ), + .property_typ_data = DEFINE_PROPERTY_TYP_DATA_WITH_ARG1 (nmc, + .values_static = adsl_valid_protocols, + .set_fcn = nmc_property_adsl_set_protocol, + ), + }, + { + .property_name = N_ (NM_SETTING_ADSL_ENCAPSULATION), + .property_type = DEFINE_PROPERTY_TYPE ( + .get_fcn = _get_fcn_gobject, + .set_fcn = _set_fcn_nmc, + ), + .property_typ_data = DEFINE_PROPERTY_TYP_DATA_WITH_ARG1 (nmc, + .values_static = adsl_valid_encapsulations, + .set_fcn = nmc_property_adsl_set_encapsulation, + ), + }, + { + .property_name = N_ (NM_SETTING_ADSL_VPI), + .property_type = &_pt_gobject_uint, + }, + { + .property_name = N_ (NM_SETTING_ADSL_VCI), + .property_type = &_pt_gobject_uint, + }, +}; + static const NmcPropertyInfo properties_setting_connection[] = { PROPERTY_INFO_NAME(), { @@ -9383,7 +9310,8 @@ const NmcSettingInfo nmc_setting_infos[_NM_META_SETTING_TYPE_NUM] = { }, [NM_META_SETTING_TYPE_ADSL] = { .general = &nm_meta_setting_infos[NM_META_SETTING_TYPE_ADSL], - .get_setting_details = setting_adsl_details, + .properties = properties_setting_adsl, + .properties_num = G_N_ELEMENTS (properties_setting_adsl), }, [NM_META_SETTING_TYPE_BLUETOOTH] = { .general = &nm_meta_setting_infos[NM_META_SETTING_TYPE_BLUETOOTH], diff --git a/clients/cli/settings.h b/clients/cli/settings.h index 8f6f6223ea..fcae242ddb 100644 --- a/clients/cli/settings.h +++ b/clients/cli/settings.h @@ -158,7 +158,6 @@ gboolean setting_details (NMSetting *setting, NmCli *nmc, const char *one_prop, extern NmcOutputField nmc_fields_setting_wired[]; extern NmcOutputField nmc_fields_setting_wireless[]; extern NmcOutputField nmc_fields_setting_serial[]; -extern NmcOutputField nmc_fields_setting_adsl[]; extern NmcOutputField nmc_fields_setting_gsm[]; extern NmcOutputField nmc_fields_setting_cdma[]; extern NmcOutputField nmc_fields_setting_bluetooth[]; |