summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2017-05-20 22:17:11 +0200
committerThomas Haller <thaller@redhat.com>2017-05-21 20:08:30 +0200
commit3bd46eeb061832c81ed5c5ca711c50ea1596fcb4 (patch)
tree9503780f7f17215974fd102f8ae8d53b71bd9ee8
parent9cb1c1c88eaa1576d71b357694ec0accc56994a8 (diff)
downloadNetworkManager-3bd46eeb061832c81ed5c5ca711c50ea1596fcb4.tar.gz
clients: implement wireless-mac-address-randomization property as enum
-rw-r--r--clients/common/nm-meta-setting-desc.c63
1 files changed, 7 insertions, 56 deletions
diff --git a/clients/common/nm-meta-setting-desc.c b/clients/common/nm-meta-setting-desc.c
index 431f458a93..f69795f1d7 100644
--- a/clients/common/nm-meta-setting-desc.c
+++ b/clients/common/nm-meta-setting-desc.c
@@ -4253,29 +4253,6 @@ _get_fcn_wireless_ssid (ARGS_GET_FCN)
RETURN_STR_TO_FREE (ssid_str);
}
-static gconstpointer
-_get_fcn_wireless_mac_address_randomization (ARGS_GET_FCN)
-{
- NMSettingWireless *s_wifi = NM_SETTING_WIRELESS (setting);
- NMSettingMacRandomization randomization = nm_setting_wireless_get_mac_address_randomization (s_wifi);
- const char *s;
-
- RETURN_UNSUPPORTED_GET_TYPE ();
-
- if (randomization == NM_SETTING_MAC_RANDOMIZATION_DEFAULT)
- s = N_("default");
- else if (randomization == NM_SETTING_MAC_RANDOMIZATION_NEVER)
- s = N_("never");
- else if (randomization == NM_SETTING_MAC_RANDOMIZATION_ALWAYS)
- s = N_("always");
- else
- s = N_("unknown");
-
- if (get_type == NM_META_ACCESSOR_GET_TYPE_PRETTY)
- return _(s);
- return s;
-}
-
static gboolean
_set_fcn_wireless_channel (ARGS_SET_FCN)
{
@@ -4326,36 +4303,6 @@ DEFINE_REMOVER_INDEX_OR_VALUE (_remove_fcn_wireless_mac_address_blacklist,
nm_setting_wireless_remove_mac_blacklist_item,
_validate_and_remove_wifi_mac_blacklist_item)
-static gboolean
-_set_fcn_wireless_mac_address_randomization (ARGS_SET_FCN)
-{
- NMSettingMacRandomization randomization;
- gs_free char *err_token = NULL;
- gboolean ret;
- long int t;
-
- if (nmc_string_to_int_base (value, 0, TRUE,
- NM_SETTING_MAC_RANDOMIZATION_DEFAULT,
- NM_SETTING_MAC_RANDOMIZATION_ALWAYS,
- &t))
- randomization = (NMSettingMacRandomization) t;
- else {
- ret = nm_utils_enum_from_str (nm_setting_mac_randomization_get_type (),
- value,
- (int *) &randomization,
- &err_token);
-
- if (!ret) {
- g_set_error (error, 1, 0, _("invalid option '%s', use 'default', 'never' or 'always'"),
- err_token);
- return FALSE;
- }
- }
-
- g_object_set (setting, property_info->property_name, (guint) randomization, NULL);
- return TRUE;
-}
-
static gconstpointer
_get_fcn_wireless_security_wep_key0 (ARGS_GET_FCN)
{
@@ -6704,9 +6651,13 @@ static const NMMetaPropertyInfo *const property_infos_WIRELESS[] = {
),
),
PROPERTY_INFO_WITH_DESC (NM_SETTING_WIRELESS_MAC_ADDRESS_RANDOMIZATION,
- .property_type = DEFINE_PROPERTY_TYPE (
- .get_fcn = _get_fcn_wireless_mac_address_randomization,
- .set_fcn = _set_fcn_wireless_mac_address_randomization,
+ .property_type = &_pt_gobject_enum,
+ .property_typ_data = DEFINE_PROPERTY_TYP_DATA (
+ PROPERTY_TYP_DATA_SUBTYPE (gobject_enum,
+ .get_gtype = nm_setting_mac_randomization_get_type,
+ ),
+ .typ_flags = NM_META_PROPERTY_TYP_FLAG_ENUM_GET_PARSABLE_TEXT
+ | NM_META_PROPERTY_TYP_FLAG_ENUM_GET_PRETTY_TEXT,
),
),
PROPERTY_INFO_WITH_DESC (NM_SETTING_WIRELESS_MTU,