diff options
Diffstat (limited to 'libnm-core/nm-setting-wired.c')
| -rw-r--r-- | libnm-core/nm-setting-wired.c | 459 |
1 files changed, 228 insertions, 231 deletions
diff --git a/libnm-core/nm-setting-wired.c b/libnm-core/nm-setting-wired.c index baa40cc4..ef23294f 100644 --- a/libnm-core/nm-setting-wired.c +++ b/libnm-core/nm-setting-wired.c @@ -24,7 +24,6 @@ #include "nm-setting-wired.h" -#include <string.h> #include <net/ethernet.h> #include "nm-utils.h" @@ -40,9 +39,29 @@ * necessary for connection to Ethernet networks. **/ -G_DEFINE_TYPE (NMSettingWired, nm_setting_wired, NM_TYPE_SETTING) +/*****************************************************************************/ -#define NM_SETTING_WIRED_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SETTING_WIRED, NMSettingWiredPrivate)) +G_STATIC_ASSERT (NM_SETTING_WIRED_WAKE_ON_LAN_EXCLUSIVE_FLAGS == ( NM_SETTING_WIRED_WAKE_ON_LAN_DEFAULT + | NM_SETTING_WIRED_WAKE_ON_LAN_IGNORE)); + +/*****************************************************************************/ + +NM_GOBJECT_PROPERTIES_DEFINE (NMSettingWired, + PROP_PORT, + PROP_SPEED, + PROP_DUPLEX, + PROP_AUTO_NEGOTIATE, + PROP_MAC_ADDRESS, + PROP_CLONED_MAC_ADDRESS, + PROP_GENERATE_MAC_ADDRESS_MASK, + PROP_MAC_ADDRESS_BLACKLIST, + PROP_MTU, + PROP_S390_SUBCHANNELS, + PROP_S390_NETTYPE, + PROP_S390_OPTIONS, + PROP_WAKE_ON_LAN, + PROP_WAKE_ON_LAN_PASSWORD, +); typedef struct { char *port; @@ -61,25 +80,11 @@ typedef struct { char *wol_password; } NMSettingWiredPrivate; -enum { - PROP_0, - PROP_PORT, - PROP_SPEED, - PROP_DUPLEX, - PROP_AUTO_NEGOTIATE, - PROP_MAC_ADDRESS, - PROP_CLONED_MAC_ADDRESS, - PROP_GENERATE_MAC_ADDRESS_MASK, - PROP_MAC_ADDRESS_BLACKLIST, - PROP_MTU, - PROP_S390_SUBCHANNELS, - PROP_S390_NETTYPE, - PROP_S390_OPTIONS, - PROP_WAKE_ON_LAN, - PROP_WAKE_ON_LAN_PASSWORD, +G_DEFINE_TYPE (NMSettingWired, nm_setting_wired, NM_TYPE_SETTING) - LAST_PROP -}; +#define NM_SETTING_WIRED_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SETTING_WIRED, NMSettingWiredPrivate)) + +/*****************************************************************************/ static const char *valid_s390_opts[] = { "portno", "layer2", "portname", "protocol", "priority_queueing", @@ -92,19 +97,6 @@ static const char *valid_s390_opts[] = { }; /** - * nm_setting_wired_new: - * - * Creates a new #NMSettingWired object with default values. - * - * Returns: (transfer full): the new empty #NMSettingWired object - **/ -NMSetting * -nm_setting_wired_new (void) -{ - return (NMSetting *) g_object_new (NM_TYPE_SETTING_WIRED, NULL); -} - -/** * nm_setting_wired_get_port: * @setting: the #NMSettingWired * @@ -288,7 +280,7 @@ nm_setting_wired_add_mac_blacklist_item (NMSettingWired *setting, const char *ma mac = nm_utils_hwaddr_canonical (mac, ETH_ALEN); g_array_append_val (priv->mac_address_blacklist, mac); - g_object_notify (G_OBJECT (setting), NM_SETTING_WIRED_MAC_ADDRESS_BLACKLIST); + _notify (setting, PROP_MAC_ADDRESS_BLACKLIST); return TRUE; } @@ -310,7 +302,7 @@ nm_setting_wired_remove_mac_blacklist_item (NMSettingWired *setting, guint32 idx g_return_if_fail (idx < priv->mac_address_blacklist->len); g_array_remove_index (priv->mac_address_blacklist, idx); - g_object_notify (G_OBJECT (setting), NM_SETTING_WIRED_MAC_ADDRESS_BLACKLIST); + _notify (setting, PROP_MAC_ADDRESS_BLACKLIST); } /** @@ -338,7 +330,7 @@ nm_setting_wired_remove_mac_blacklist_item_by_value (NMSettingWired *setting, co candidate = g_array_index (priv->mac_address_blacklist, char *, i); if (!nm_utils_hwaddr_matches (mac, -1, candidate, -1)) { g_array_remove_index (priv->mac_address_blacklist, i); - g_object_notify (G_OBJECT (setting), NM_SETTING_WIRED_MAC_ADDRESS_BLACKLIST); + _notify (setting, PROP_MAC_ADDRESS_BLACKLIST); return TRUE; } } @@ -357,7 +349,7 @@ nm_setting_wired_clear_mac_blacklist_items (NMSettingWired *setting) g_return_if_fail (NM_IS_SETTING_WIRED (setting)); g_array_set_size (NM_SETTING_WIRED_GET_PRIVATE (setting)->mac_address_blacklist, 0); - g_object_notify (G_OBJECT (setting), NM_SETTING_WIRED_MAC_ADDRESS_BLACKLIST); + _notify (setting, PROP_MAC_ADDRESS_BLACKLIST); } /** @@ -530,7 +522,7 @@ nm_setting_wired_add_s390_option (NMSettingWired *setting, g_hash_table_insert (NM_SETTING_WIRED_GET_PRIVATE (setting)->s390_options, g_strdup (key), g_strdup (value)); - g_object_notify (G_OBJECT (setting), NM_SETTING_WIRED_S390_OPTIONS); + _notify (setting, PROP_S390_OPTIONS); return TRUE; } @@ -557,7 +549,7 @@ nm_setting_wired_remove_s390_option (NMSettingWired *setting, found = g_hash_table_remove (NM_SETTING_WIRED_GET_PRIVATE (setting)->s390_options, key); if (found) - g_object_notify (G_OBJECT (setting), NM_SETTING_WIRED_S390_OPTIONS); + _notify (setting, PROP_S390_OPTIONS); return found; } @@ -775,21 +767,25 @@ verify (NMSetting *setting, NMConnection *connection, GError **error) return TRUE; } -static gboolean -compare_property (NMSetting *setting, +static NMTernary +compare_property (const NMSettInfoSetting *sett_info, + guint property_idx, + NMSetting *setting, NMSetting *other, - const GParamSpec *prop_spec, NMSettingCompareFlags flags) { - NMSettingClass *setting_class; - if (nm_streq (prop_spec->name, NM_SETTING_WIRED_CLONED_MAC_ADDRESS)) { - return nm_streq0 (NM_SETTING_WIRED_GET_PRIVATE (setting)->cloned_mac_address, - NM_SETTING_WIRED_GET_PRIVATE (other)->cloned_mac_address); + if (nm_streq (sett_info->property_infos[property_idx].name, NM_SETTING_WIRED_CLONED_MAC_ADDRESS)) { + return !other + || nm_streq0 (NM_SETTING_WIRED_GET_PRIVATE (setting)->cloned_mac_address, + NM_SETTING_WIRED_GET_PRIVATE (other)->cloned_mac_address); } - setting_class = NM_SETTING_CLASS (nm_setting_wired_parent_class); - return setting_class->compare_property (setting, other, prop_spec, flags); + return NM_SETTING_CLASS (nm_setting_wired_parent_class)->compare_property (sett_info, + property_idx, + setting, + other, + flags); } static GVariant * @@ -806,40 +802,62 @@ clear_blacklist_item (char **item_p) g_free (*item_p); } -static void -nm_setting_wired_init (NMSettingWired *setting) -{ - NMSettingWiredPrivate *priv = NM_SETTING_WIRED_GET_PRIVATE (setting); - - priv->s390_options = g_hash_table_new_full (nm_str_hash, g_str_equal, g_free, g_free); - - /* 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); -} +/*****************************************************************************/ static void -finalize (GObject *object) +get_property (GObject *object, guint prop_id, + GValue *value, GParamSpec *pspec) { - NMSettingWiredPrivate *priv = NM_SETTING_WIRED_GET_PRIVATE (object); - - g_free (priv->port); - g_free (priv->duplex); - g_free (priv->s390_nettype); - - g_hash_table_destroy (priv->s390_options); - - g_free (priv->device_mac_address); - g_free (priv->cloned_mac_address); - g_free (priv->generate_mac_address_mask); - g_array_unref (priv->mac_address_blacklist); - - if (priv->s390_subchannels) - g_strfreev (priv->s390_subchannels); - - g_free (priv->wol_password); + NMSettingWired *setting = NM_SETTING_WIRED (object); + NMSettingWiredPrivate *priv = NM_SETTING_WIRED_GET_PRIVATE (setting); - G_OBJECT_CLASS (nm_setting_wired_parent_class)->finalize (object); + switch (prop_id) { + 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; + case PROP_AUTO_NEGOTIATE: + g_value_set_boolean (value, nm_setting_wired_get_auto_negotiate (setting)); + break; + case PROP_MAC_ADDRESS: + g_value_set_string (value, nm_setting_wired_get_mac_address (setting)); + break; + case PROP_CLONED_MAC_ADDRESS: + g_value_set_string (value, nm_setting_wired_get_cloned_mac_address (setting)); + break; + case PROP_GENERATE_MAC_ADDRESS_MASK: + g_value_set_string (value, nm_setting_wired_get_generate_mac_address_mask (setting)); + break; + 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; + case PROP_S390_NETTYPE: + g_value_set_string (value, nm_setting_wired_get_s390_nettype (setting)); + break; + case PROP_S390_OPTIONS: + g_value_take_boxed (value, _nm_utils_copy_strdict (priv->s390_options)); + 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; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } } static void @@ -919,60 +937,55 @@ set_property (GObject *object, guint prop_id, } } +/*****************************************************************************/ + static void -get_property (GObject *object, guint prop_id, - GValue *value, GParamSpec *pspec) +nm_setting_wired_init (NMSettingWired *setting) { - NMSettingWired *setting = NM_SETTING_WIRED (object); NMSettingWiredPrivate *priv = NM_SETTING_WIRED_GET_PRIVATE (setting); - switch (prop_id) { - 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; - case PROP_AUTO_NEGOTIATE: - g_value_set_boolean (value, nm_setting_wired_get_auto_negotiate (setting)); - break; - case PROP_MAC_ADDRESS: - g_value_set_string (value, nm_setting_wired_get_mac_address (setting)); - break; - case PROP_CLONED_MAC_ADDRESS: - g_value_set_string (value, nm_setting_wired_get_cloned_mac_address (setting)); - break; - case PROP_GENERATE_MAC_ADDRESS_MASK: - g_value_set_string (value, nm_setting_wired_get_generate_mac_address_mask (setting)); - break; - 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; - case PROP_S390_NETTYPE: - g_value_set_string (value, nm_setting_wired_get_s390_nettype (setting)); - break; - case PROP_S390_OPTIONS: - g_value_take_boxed (value, _nm_utils_copy_strdict (priv->s390_options)); - 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; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } + priv->s390_options = g_hash_table_new_full (nm_str_hash, g_str_equal, g_free, g_free); + + /* 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); +} + +/** + * nm_setting_wired_new: + * + * Creates a new #NMSettingWired object with default values. + * + * Returns: (transfer full): the new empty #NMSettingWired object + **/ +NMSetting * +nm_setting_wired_new (void) +{ + return (NMSetting *) g_object_new (NM_TYPE_SETTING_WIRED, NULL); +} + +static void +finalize (GObject *object) +{ + NMSettingWiredPrivate *priv = NM_SETTING_WIRED_GET_PRIVATE (object); + + g_free (priv->port); + g_free (priv->duplex); + g_free (priv->s390_nettype); + + g_hash_table_destroy (priv->s390_options); + + g_free (priv->device_mac_address); + g_free (priv->cloned_mac_address); + g_free (priv->generate_mac_address_mask); + g_array_unref (priv->mac_address_blacklist); + + if (priv->s390_subchannels) + g_strfreev (priv->s390_subchannels); + + g_free (priv->wol_password); + + G_OBJECT_CLASS (nm_setting_wired_parent_class)->finalize (object); } static void @@ -984,8 +997,8 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) g_type_class_add_private (klass, sizeof (NMSettingWiredPrivate)); - object_class->set_property = set_property; object_class->get_property = get_property; + object_class->set_property = set_property; object_class->finalize = finalize; setting_class->verify = verify; @@ -1005,12 +1018,11 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * description: The property is not saved by the plugin. * ---end--- */ - g_object_class_install_property - (object_class, PROP_PORT, - g_param_spec_string (NM_SETTING_WIRED_PORT, "", "", - NULL, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_PORT] = + g_param_spec_string (NM_SETTING_WIRED_PORT, "", "", + NULL, + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:speed: @@ -1036,13 +1048,12 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * parameter in the ETHTOOL_OPTS variable. * ---end--- */ - g_object_class_install_property - (object_class, PROP_SPEED, - g_param_spec_uint (NM_SETTING_WIRED_SPEED, "", "", - 0, G_MAXUINT32, 0, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_SPEED] = + g_param_spec_uint (NM_SETTING_WIRED_SPEED, "", "", + 0, G_MAXUINT32, 0, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:duplex: @@ -1067,12 +1078,11 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * "duplex" parameter in the ETHOOL_OPTS variable. * ---end--- */ - g_object_class_install_property - (object_class, PROP_DUPLEX, - g_param_spec_string (NM_SETTING_WIRED_DUPLEX, "", "", - NULL, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_DUPLEX] = + g_param_spec_string (NM_SETTING_WIRED_DUPLEX, "", "", + NULL, + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:auto-negotiate: @@ -1094,17 +1104,15 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * "speed" and "duplex" parameters (skips link configuration). * ---end--- */ - g_object_class_install_property - (object_class, PROP_AUTO_NEGOTIATE, - g_param_spec_boolean (NM_SETTING_WIRED_AUTO_NEGOTIATE, "", "", - FALSE, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_AUTO_NEGOTIATE] = + g_param_spec_boolean (NM_SETTING_WIRED_AUTO_NEGOTIATE, "", "", + FALSE, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + G_PARAM_STATIC_STRINGS); _properties_override_add_override (properties_override, - g_object_class_find_property (G_OBJECT_CLASS (setting_class), - NM_SETTING_WIRED_AUTO_NEGOTIATE), + obj_properties[PROP_AUTO_NEGOTIATE], G_VARIANT_TYPE_BOOLEAN, _override_autoneg_get, NULL, @@ -1134,17 +1142,15 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * permanent MAC address exists, the MAC address initially configured on the device. * ---end--- */ - g_object_class_install_property - (object_class, PROP_MAC_ADDRESS, - g_param_spec_string (NM_SETTING_WIRED_MAC_ADDRESS, "", "", - NULL, - G_PARAM_READWRITE | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_MAC_ADDRESS] = + g_param_spec_string (NM_SETTING_WIRED_MAC_ADDRESS, "", "", + NULL, + G_PARAM_READWRITE | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); _properties_override_add_transform (properties_override, - g_object_class_find_property (G_OBJECT_CLASS (setting_class), - NM_SETTING_WIRED_MAC_ADDRESS), + obj_properties[PROP_MAC_ADDRESS], G_VARIANT_TYPE_BYTESTRING, _nm_utils_hwaddr_to_dbus, _nm_utils_hwaddr_from_dbus); @@ -1192,17 +1198,15 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * For libnm and nmcli, this field is called "cloned-mac-address". * ---end--- */ - g_object_class_install_property - (object_class, PROP_CLONED_MAC_ADDRESS, - g_param_spec_string (NM_SETTING_WIRED_CLONED_MAC_ADDRESS, "", "", - NULL, - G_PARAM_READWRITE | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_CLONED_MAC_ADDRESS] = + g_param_spec_string (NM_SETTING_WIRED_CLONED_MAC_ADDRESS, "", "", + NULL, + G_PARAM_READWRITE | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); _properties_override_add_override (properties_override, - g_object_class_find_property (G_OBJECT_CLASS (setting_class), - NM_SETTING_WIRED_CLONED_MAC_ADDRESS), + obj_properties[PROP_CLONED_MAC_ADDRESS], G_VARIANT_TYPE_BYTESTRING, _nm_utils_hwaddr_cloned_get, _nm_utils_hwaddr_cloned_set, @@ -1215,7 +1219,7 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * a hardware address in ASCII representation, or one of the special values * "preserve", "permanent", "random" or "stable". * This field replaces the deprecated "cloned-mac-address" on D-Bus, which - * can only contain explict hardware addresses. Note that this property + * can only contain explicit hardware addresses. Note that this property * only exists in D-Bus API. libnm and nmcli continue to call this property * "cloned-mac-address". * ---end--- @@ -1265,13 +1269,12 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * cloned-mac-address. * ---end--- */ - g_object_class_install_property - (object_class, PROP_GENERATE_MAC_ADDRESS_MASK, + obj_properties[PROP_GENERATE_MAC_ADDRESS_MASK] = g_param_spec_string (NM_SETTING_WIRED_GENERATE_MAC_ADDRESS_MASK, "", "", NULL, G_PARAM_READWRITE | NM_SETTING_PARAM_FUZZY_IGNORE | - G_PARAM_STATIC_STRINGS)); + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:mac-address-blacklist: @@ -1295,13 +1298,12 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * example: HWADDR_BLACKLIST="00:22:68:11:69:08 00:11:22:11:44:55" * ---end--- */ - g_object_class_install_property - (object_class, PROP_MAC_ADDRESS_BLACKLIST, - g_param_spec_boxed (NM_SETTING_WIRED_MAC_ADDRESS_BLACKLIST, "", "", - G_TYPE_STRV, - G_PARAM_READWRITE | - NM_SETTING_PARAM_FUZZY_IGNORE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_MAC_ADDRESS_BLACKLIST] = + g_param_spec_boxed (NM_SETTING_WIRED_MAC_ADDRESS_BLACKLIST, "", "", + G_TYPE_STRV, + G_PARAM_READWRITE | + NM_SETTING_PARAM_FUZZY_IGNORE | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:mtu: @@ -1315,14 +1317,13 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * description: MTU of the interface. * ---end--- */ - g_object_class_install_property - (object_class, PROP_MTU, - g_param_spec_uint (NM_SETTING_WIRED_MTU, "", "", - 0, G_MAXUINT32, 0, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT | - NM_SETTING_PARAM_FUZZY_IGNORE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_MTU] = + g_param_spec_uint (NM_SETTING_WIRED_MTU, "", "", + 0, G_MAXUINT32, 0, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + NM_SETTING_PARAM_FUZZY_IGNORE | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:s390-subchannels: @@ -1342,13 +1343,12 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * example: SUBCHANNELS=0.0.b00a,0.0.b00b,0.0.b00c * ---end--- */ - g_object_class_install_property - (object_class, PROP_S390_SUBCHANNELS, - g_param_spec_boxed (NM_SETTING_WIRED_S390_SUBCHANNELS, "", "", - G_TYPE_STRV, - G_PARAM_READWRITE | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_S390_SUBCHANNELS] = + g_param_spec_boxed (NM_SETTING_WIRED_S390_SUBCHANNELS, "", "", + G_TYPE_STRV, + G_PARAM_READWRITE | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:s390-nettype: @@ -1364,13 +1364,12 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * example: NETTYPE=qeth * ---end--- */ - g_object_class_install_property - (object_class, PROP_S390_NETTYPE, - g_param_spec_string (NM_SETTING_WIRED_S390_NETTYPE, "", "", - NULL, - G_PARAM_READWRITE | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_S390_NETTYPE] = + g_param_spec_string (NM_SETTING_WIRED_S390_NETTYPE, "", "", + NULL, + G_PARAM_READWRITE | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:s390-options: (type GHashTable(utf8,utf8)): @@ -1387,17 +1386,15 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * "portname" and "ctcprot" that have their own variables. * ---end--- */ - g_object_class_install_property - (object_class, PROP_S390_OPTIONS, - g_param_spec_boxed (NM_SETTING_WIRED_S390_OPTIONS, "", "", - G_TYPE_HASH_TABLE, - G_PARAM_READWRITE | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_S390_OPTIONS] = + g_param_spec_boxed (NM_SETTING_WIRED_S390_OPTIONS, "", "", + G_TYPE_HASH_TABLE, + G_PARAM_READWRITE | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); _properties_override_add_transform (properties_override, - g_object_class_find_property (G_OBJECT_CLASS (setting_class), - NM_SETTING_WIRED_S390_OPTIONS), + obj_properties[PROP_S390_OPTIONS], G_VARIANT_TYPE ("a{ss}"), _nm_utils_strdict_to_dbus, _nm_utils_strdict_from_dbus); @@ -1416,13 +1413,12 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * * Since: 1.2 **/ - g_object_class_install_property - (object_class, 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_CONSTRUCT | - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS)); + 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_CONSTRUCT | + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS); /** * NMSettingWired:wake-on-lan-password: @@ -1433,12 +1429,13 @@ nm_setting_wired_class_init (NMSettingWiredClass *klass) * * Since: 1.2 **/ - g_object_class_install_property - (object_class, PROP_WAKE_ON_LAN_PASSWORD, - g_param_spec_string (NM_SETTING_WIRED_WAKE_ON_LAN_PASSWORD, "", "", - NULL, - G_PARAM_READWRITE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_WAKE_ON_LAN_PASSWORD] = + g_param_spec_string (NM_SETTING_WIRED_WAKE_ON_LAN_PASSWORD, "", "", + NULL, + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS); + + g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties); _nm_setting_class_commit_full (setting_class, NM_META_SETTING_TYPE_WIRED, NULL, properties_override); |