diff options
author | Thomas Haller <thaller@redhat.com> | 2021-12-28 10:50:05 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2021-12-28 21:15:27 +0100 |
commit | c4d6d3b3a9404e04b90200859663ff5aae66ae3a (patch) | |
tree | 2b4349aad4bb38f75e4c5fef864c634ff38900b3 | |
parent | f683b2e4ea084c7e2197570c7a21c98988355be8 (diff) |
libnm: refactor some NMSetting to use direct properties for uint32th/libnm-settings-properties-3
-rw-r--r-- | src/libnm-core-impl/nm-setting-gsm.c | 24 | ||||
-rw-r--r-- | src/libnm-core-impl/nm-setting-ip-config.c | 33 | ||||
-rw-r--r-- | src/libnm-core-impl/nm-setting-private.h | 2 | ||||
-rw-r--r-- | src/libnm-core-impl/nm-setting-sriov.c | 26 | ||||
-rw-r--r-- | src/libnm-core-impl/nm-setting-wired.c | 110 | ||||
-rw-r--r-- | src/libnm-core-impl/nm-setting-wireless.c | 71 |
6 files changed, 119 insertions, 147 deletions
diff --git a/src/libnm-core-impl/nm-setting-gsm.c b/src/libnm-core-impl/nm-setting-gsm.c index 8e53ec7b7d..fe1e6c6e85 100644 --- a/src/libnm-core-impl/nm-setting-gsm.c +++ b/src/libnm-core-impl/nm-setting-gsm.c @@ -519,9 +519,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) case PROP_SIM_OPERATOR_ID: g_value_set_string(value, nm_setting_gsm_get_sim_operator_id(setting)); break; - case PROP_MTU: - g_value_set_uint(value, nm_setting_gsm_get_mtu(setting)); - break; default: _nm_setting_property_get_property_direct(object, prop_id, value, pspec); break; @@ -583,9 +580,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps g_free(priv->sim_operator_id); priv->sim_operator_id = g_value_dup_string(value); break; - case PROP_MTU: - priv->mtu = g_value_get_uint(value); - break; default: _nm_setting_property_set_property_direct(object, prop_id, value, pspec); break; @@ -848,14 +842,16 @@ nm_setting_gsm_class_init(NMSettingGsmClass *klass) * * Since: 1.8 **/ - obj_properties[PROP_MTU] = g_param_spec_uint(NM_SETTING_GSM_MTU, - "", - "", - 0, - G_MAXUINT32, - 0, - G_PARAM_READWRITE | NM_SETTING_PARAM_FUZZY_IGNORE - | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_GSM_MTU, + PROP_MTU, + 0, + G_MAXUINT32, + 0, + NM_SETTING_PARAM_FUZZY_IGNORE, + NMSettingGsmPrivate, + mtu); /* Ignore incoming deprecated properties */ _nm_properties_override_dbus(properties_override, diff --git a/src/libnm-core-impl/nm-setting-ip-config.c b/src/libnm-core-impl/nm-setting-ip-config.c index 5bc6595812..1e4c340dfa 100644 --- a/src/libnm-core-impl/nm-setting-ip-config.c +++ b/src/libnm-core-impl/nm-setting-ip-config.c @@ -5555,9 +5555,10 @@ verify(NMSetting *setting, NMConnection *connection, GError **error) return FALSE; } - if (!_nm_utils_validate_dhcp_hostname_flags(priv->dhcp_hostname_flags, - NM_SETTING_IP_CONFIG_GET_FAMILY(setting), - error)) { + if (priv->dhcp_hostname_flags != (NMDhcpHostnameFlags) priv->dhcp_hostname_flags + || !_nm_utils_validate_dhcp_hostname_flags(priv->dhcp_hostname_flags, + NM_SETTING_IP_CONFIG_GET_FAMILY(setting), + error)) { g_prefix_error(error, "%s.%s: ", nm_setting_get_name(setting), @@ -5826,6 +5827,13 @@ _nm_sett_info_property_override_create_array_ip_config(int addr_family) _nm_properties_override_gobj( properties_override, + obj_properties[PROP_ROUTE_TABLE], + &nm_sett_info_propert_type_direct_uint32, + .direct_offset = + NM_STRUCT_OFFSET_ENSURE_TYPE(guint32, NMSettingIPConfigPrivate, route_table)); + + _nm_properties_override_gobj( + properties_override, obj_properties[PROP_IGNORE_AUTO_DNS], &nm_sett_info_propert_type_direct_boolean, .direct_offset = @@ -5868,6 +5876,13 @@ _nm_sett_info_property_override_create_array_ip_config(int addr_family) _nm_properties_override_gobj( properties_override, + obj_properties[PROP_DHCP_HOSTNAME_FLAGS], + &nm_sett_info_propert_type_direct_uint32, + .direct_offset = + NM_STRUCT_OFFSET_ENSURE_TYPE(guint32, NMSettingIPConfigPrivate, dhcp_hostname_flags)); + + _nm_properties_override_gobj( + properties_override, obj_properties[PROP_NEVER_DEFAULT], &nm_sett_info_propert_type_direct_boolean, .direct_offset = @@ -5923,9 +5938,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) case PROP_ROUTE_METRIC: g_value_set_int64(value, priv->route_metric); break; - case PROP_ROUTE_TABLE: - g_value_set_uint(value, priv->route_table); - break; case PROP_IGNORE_AUTO_ROUTES: g_value_set_boolean(value, nm_setting_ip_config_get_ignore_auto_routes(setting)); break; @@ -5947,9 +5959,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) case PROP_DHCP_IAID: g_value_set_string(value, nm_setting_ip_config_get_dhcp_iaid(setting)); break; - case PROP_DHCP_HOSTNAME_FLAGS: - g_value_set_uint(value, nm_setting_ip_config_get_dhcp_hostname_flags(setting)); - break; case PROP_DHCP_REJECT_SERVERS: g_value_set_boxed(value, nm_strvarray_get_strv_non_empty(priv->dhcp_reject_servers, NULL)); break; @@ -6020,9 +6029,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps case PROP_ROUTE_METRIC: priv->route_metric = g_value_get_int64(value); break; - case PROP_ROUTE_TABLE: - priv->route_table = g_value_get_uint(value); - break; case PROP_IGNORE_AUTO_ROUTES: priv->ignore_auto_routes = g_value_get_boolean(value); break; @@ -6046,9 +6052,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps g_free(priv->dhcp_iaid); priv->dhcp_iaid = g_value_dup_string(value); break; - case PROP_DHCP_HOSTNAME_FLAGS: - priv->dhcp_hostname_flags = g_value_get_uint(value); - break; case PROP_DHCP_REJECT_SERVERS: nm_strvarray_set_strv(&priv->dhcp_reject_servers, g_value_get_boxed(value)); break; diff --git a/src/libnm-core-impl/nm-setting-private.h b/src/libnm-core-impl/nm-setting-private.h index 8ea0b4c2d4..342983076d 100644 --- a/src/libnm-core-impl/nm-setting-private.h +++ b/src/libnm-core-impl/nm-setting-private.h @@ -140,12 +140,12 @@ typedef struct { char *dhcp_hostname; char *dhcp_iaid; gint64 route_metric; - guint dhcp_hostname_flags; gint32 required_timeout; gint32 dad_timeout; gint32 dhcp_timeout; gint32 dns_priority; guint32 route_table; + guint32 dhcp_hostname_flags; bool ignore_auto_routes; bool ignore_auto_dns; bool dhcp_send_hostname; diff --git a/src/libnm-core-impl/nm-setting-sriov.c b/src/libnm-core-impl/nm-setting-sriov.c index c9195255de..3875992d08 100644 --- a/src/libnm-core-impl/nm-setting-sriov.c +++ b/src/libnm-core-impl/nm-setting-sriov.c @@ -30,8 +30,8 @@ NM_GOBJECT_PROPERTIES_DEFINE(NMSettingSriov, PROP_TOTAL_VFS, PROP_VFS, PROP_AUTO struct _NMSettingSriov { NMSetting parent; GPtrArray *vfs; - guint total_vfs; int autoprobe_drivers; + guint32 total_vfs; }; struct _NMSettingSriovClass { @@ -1138,9 +1138,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) NMSettingSriov *self = NM_SETTING_SRIOV(object); switch (prop_id) { - case PROP_TOTAL_VFS: - g_value_set_uint(value, self->total_vfs); - break; case PROP_VFS: g_value_take_boxed(value, _nm_utils_copy_array(self->vfs, @@ -1159,9 +1156,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps NMSettingSriov *self = NM_SETTING_SRIOV(object); switch (prop_id) { - case PROP_TOTAL_VFS: - self->total_vfs = g_value_get_uint(value); - break; case PROP_VFS: g_ptr_array_unref(self->vfs); self->vfs = _nm_utils_copy_array(g_value_get_boxed(value), @@ -1240,14 +1234,16 @@ nm_setting_sriov_class_init(NMSettingSriovClass *klass) * example: SRIOV_TOTAL_VFS=16 * ---end--- */ - obj_properties[PROP_TOTAL_VFS] = g_param_spec_uint( - NM_SETTING_SRIOV_TOTAL_VFS, - "", - "", - 0, - G_MAXUINT32, - 0, - NM_SETTING_PARAM_FUZZY_IGNORE | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_SRIOV_TOTAL_VFS, + PROP_TOTAL_VFS, + 0, + G_MAXUINT32, + 0, + NM_SETTING_PARAM_FUZZY_IGNORE, + NMSettingSriov, + total_vfs); /** * NMSettingSriov:vfs: (type GPtrArray(NMSriovVF)) diff --git a/src/libnm-core-impl/nm-setting-wired.c b/src/libnm-core-impl/nm-setting-wired.c index 262ce66a91..6e443ab493 100644 --- a/src/libnm-core-impl/nm-setting-wired.c +++ b/src/libnm-core-impl/nm-setting-wired.c @@ -53,20 +53,20 @@ typedef struct { guint len; guint n_alloc; } s390_options; - GArray *mac_address_blacklist; - char **s390_subchannels; - char *port; - char *duplex; - char *device_mac_address; - char *cloned_mac_address; - char *generate_mac_address_mask; - char *s390_nettype; - char *wol_password; - int accept_all_mac_addresses; - NMSettingWiredWakeOnLan wol; - guint32 speed; - guint32 mtu; - bool auto_negotiate; + GArray *mac_address_blacklist; + char **s390_subchannels; + char *port; + char *duplex; + char *device_mac_address; + char *cloned_mac_address; + char *generate_mac_address_mask; + char *s390_nettype; + char *wol_password; + int accept_all_mac_addresses; + guint32 wake_on_lan; + guint32 speed; + guint32 mtu; + bool auto_negotiate; } NMSettingWiredPrivate; /** @@ -731,7 +731,7 @@ nm_setting_wired_get_wake_on_lan(NMSettingWired *setting) { g_return_val_if_fail(NM_IS_SETTING_WIRED(setting), NM_SETTING_WIRED_WAKE_ON_LAN_NONE); - return NM_SETTING_WIRED_GET_PRIVATE(setting)->wol; + return NM_SETTING_WIRED_GET_PRIVATE(setting)->wake_on_lan; } /** @@ -919,8 +919,8 @@ verify(NMSetting *setting, NMConnection *connection, GError **error) return FALSE; } - if (NM_FLAGS_ANY(priv->wol, NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS) - && !nm_utils_is_power_of_two(priv->wol)) { + if (NM_FLAGS_ANY(priv->wake_on_lan, NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS) + && !nm_utils_is_power_of_two(priv->wake_on_lan)) { g_set_error_literal(error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_INVALID_PROPERTY, @@ -932,7 +932,8 @@ verify(NMSetting *setting, NMConnection *connection, GError **error) return FALSE; } - if (priv->wol_password && !NM_FLAGS_HAS(priv->wol, NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC)) { + if (priv->wol_password + && !NM_FLAGS_HAS(priv->wake_on_lan, NM_SETTING_WIRED_WAKE_ON_LAN_MAGIC)) { g_set_error_literal(error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_INVALID_PROPERTY, @@ -1005,9 +1006,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) case PROP_PORT: g_value_set_string(value, nm_setting_wired_get_port(setting)); break; - case PROP_SPEED: - g_value_set_uint(value, nm_setting_wired_get_speed(setting)); - break; case PROP_DUPLEX: g_value_set_string(value, nm_setting_wired_get_duplex(setting)); break; @@ -1026,9 +1024,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) case PROP_MAC_ADDRESS_BLACKLIST: g_value_set_boxed(value, (char **) priv->mac_address_blacklist->data); break; - case PROP_MTU: - g_value_set_uint(value, nm_setting_wired_get_mtu(setting)); - break; case PROP_S390_SUBCHANNELS: g_value_set_boxed(value, priv->s390_subchannels); break; @@ -1044,9 +1039,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) } g_value_take_boxed(value, hash); break; - case PROP_WAKE_ON_LAN: - g_value_set_uint(value, priv->wol); - break; case PROP_WAKE_ON_LAN_PASSWORD: g_value_set_string(value, priv->wol_password); break; @@ -1068,9 +1060,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps g_free(priv->port); priv->port = g_value_dup_string(value); break; - case PROP_SPEED: - priv->speed = g_value_get_uint(value); - break; case PROP_DUPLEX: g_free(priv->duplex); priv->duplex = g_value_dup_string(value); @@ -1104,9 +1093,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps } } break; - case PROP_MTU: - priv->mtu = g_value_get_uint(value); - break; case PROP_S390_SUBCHANNELS: if (priv->s390_subchannels) g_strfreev(priv->s390_subchannels); @@ -1178,9 +1164,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps g_return_if_fail(!invalid_content); } } break; - case PROP_WAKE_ON_LAN: - priv->wol = g_value_get_uint(value); - break; case PROP_WAKE_ON_LAN_PASSWORD: g_free(priv->wol_password); priv->wol_password = g_value_dup_string(value); @@ -1201,8 +1184,6 @@ nm_setting_wired_init(NMSettingWired *setting) /* We use GArray rather than GPtrArray so it will automatically be NULL-terminated */ priv->mac_address_blacklist = g_array_new(TRUE, FALSE, sizeof(char *)); g_array_set_clear_func(priv->mac_address_blacklist, (GDestroyNotify) clear_blacklist_item); - - priv->wol = NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT; } /** @@ -1295,13 +1276,16 @@ nm_setting_wired_class_init(NMSettingWiredClass *klass) * parameter in the ETHTOOL_OPTS variable. * ---end--- */ - obj_properties[PROP_SPEED] = g_param_spec_uint(NM_SETTING_WIRED_SPEED, - "", - "", - 0, - G_MAXUINT32, - 0, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_WIRED_SPEED, + PROP_SPEED, + 0, + G_MAXUINT32, + 0, + NM_SETTING_PARAM_NONE, + NMSettingWiredPrivate, + speed); /** * NMSettingWired:duplex: @@ -1559,14 +1543,16 @@ nm_setting_wired_class_init(NMSettingWiredClass *klass) * description: MTU of the interface. * ---end--- */ - obj_properties[PROP_MTU] = g_param_spec_uint(NM_SETTING_WIRED_MTU, - "", - "", - 0, - G_MAXUINT32, - 0, - G_PARAM_READWRITE | NM_SETTING_PARAM_FUZZY_IGNORE - | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_WIRED_MTU, + PROP_MTU, + 0, + G_MAXUINT32, + 0, + NM_SETTING_PARAM_FUZZY_IGNORE, + NMSettingWiredPrivate, + mtu); /** * NMSettingWired:s390-subchannels: @@ -1667,14 +1653,16 @@ nm_setting_wired_class_init(NMSettingWiredClass *klass) * in the ethtool manual page. * ---end--- */ - obj_properties[PROP_WAKE_ON_LAN] = - g_param_spec_uint(NM_SETTING_WIRED_WAKE_ON_LAN, - "", - "", - 0, - G_MAXUINT32, - NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_WIRED_WAKE_ON_LAN, + PROP_WAKE_ON_LAN, + 0, + G_MAXUINT32, + NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT, + NM_SETTING_PARAM_NONE, + NMSettingWiredPrivate, + wake_on_lan); /** * NMSettingWired:wake-on-lan-password: diff --git a/src/libnm-core-impl/nm-setting-wireless.c b/src/libnm-core-impl/nm-setting-wireless.c index 8d183ac1af..a2f8b2a4be 100644 --- a/src/libnm-core-impl/nm-setting-wireless.c +++ b/src/libnm-core-impl/nm-setting-wireless.c @@ -1162,15 +1162,6 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) case PROP_BAND: g_value_set_string(value, nm_setting_wireless_get_band(setting)); break; - case PROP_CHANNEL: - g_value_set_uint(value, nm_setting_wireless_get_channel(setting)); - break; - case PROP_RATE: - g_value_set_uint(value, nm_setting_wireless_get_rate(setting)); - break; - case PROP_TX_POWER: - g_value_set_uint(value, nm_setting_wireless_get_tx_power(setting)); - break; case PROP_CLONED_MAC_ADDRESS: g_value_set_string(value, nm_setting_wireless_get_cloned_mac_address(setting)); break; @@ -1222,15 +1213,6 @@ set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *ps g_free(priv->band); priv->band = g_value_dup_string(value); break; - case PROP_CHANNEL: - priv->channel = g_value_get_uint(value); - break; - case PROP_RATE: - priv->rate = g_value_get_uint(value); - break; - case PROP_TX_POWER: - priv->tx_power = g_value_get_uint(value); - break; case PROP_CLONED_MAC_ADDRESS: bool_val = !!priv->cloned_mac_address; g_free(priv->cloned_mac_address); @@ -1442,13 +1424,16 @@ nm_setting_wireless_class_init(NMSettingWirelessClass *klass) * example: CHANNEL=6 * ---end--- */ - obj_properties[PROP_CHANNEL] = g_param_spec_uint(NM_SETTING_WIRELESS_CHANNEL, - "", - "", - 0, - G_MAXUINT32, - 0, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_WIRELESS_CHANNEL, + PROP_CHANNEL, + 0, + G_MAXUINT32, + 0, + NM_SETTING_PARAM_NONE, + NMSettingWirelessPrivate, + channel); /** * NMSettingWireless:bssid: @@ -1488,14 +1473,16 @@ nm_setting_wireless_class_init(NMSettingWirelessClass *klass) * description: This property is not handled by ifcfg-rh plugin. * ---end--- */ - obj_properties[PROP_RATE] = g_param_spec_uint(NM_SETTING_WIRELESS_RATE, - "", - "", - 0, - G_MAXUINT32, - 0, - G_PARAM_READWRITE | NM_SETTING_PARAM_FUZZY_IGNORE - | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_WIRELESS_RATE, + PROP_RATE, + 0, + G_MAXUINT32, + 0, + NM_SETTING_PARAM_FUZZY_IGNORE, + NMSettingWirelessPrivate, + rate); /** * NMSettingWireless:tx-power: @@ -1510,14 +1497,16 @@ nm_setting_wireless_class_init(NMSettingWirelessClass *klass) * description: This property is not handled by ifcfg-rh plugin. * ---end--- */ - obj_properties[PROP_TX_POWER] = g_param_spec_uint( - NM_SETTING_WIRELESS_TX_POWER, - "", - "", - 0, - G_MAXUINT32, - 0, - G_PARAM_READWRITE | NM_SETTING_PARAM_FUZZY_IGNORE | G_PARAM_STATIC_STRINGS); + _nm_setting_property_define_direct_uint32(properties_override, + obj_properties, + NM_SETTING_WIRELESS_TX_POWER, + PROP_TX_POWER, + 0, + G_MAXUINT32, + 0, + NM_SETTING_PARAM_FUZZY_IGNORE, + NMSettingWirelessPrivate, + tx_power); /** * NMSettingWireless:mac-address: |