diff options
Diffstat (limited to 'libnm-core/nm-setting-macvlan.c')
| -rw-r--r-- | libnm-core/nm-setting-macvlan.c | 158 |
1 files changed, 81 insertions, 77 deletions
diff --git a/libnm-core/nm-setting-macvlan.c b/libnm-core/nm-setting-macvlan.c index 1fc16116..332dc007 100644 --- a/libnm-core/nm-setting-macvlan.c +++ b/libnm-core/nm-setting-macvlan.c @@ -21,10 +21,10 @@ #include "nm-default.h" +#include "nm-setting-macvlan.h" + #include <stdlib.h> -#include <string.h> -#include "nm-setting-macvlan.h" #include "nm-utils.h" #include "nm-setting-connection.h" #include "nm-setting-private.h" @@ -39,9 +39,14 @@ * necessary for connection to macvlan interfaces. **/ -G_DEFINE_TYPE (NMSettingMacvlan, nm_setting_macvlan, NM_TYPE_SETTING) +/*****************************************************************************/ -#define NM_SETTING_MACVLAN_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SETTING_MACVLAN, NMSettingMacvlanPrivate)) +NM_GOBJECT_PROPERTIES_DEFINE_BASE ( + PROP_PARENT, + PROP_MODE, + PROP_PROMISCUOUS, + PROP_TAP, +); typedef struct { char *parent; @@ -50,29 +55,11 @@ typedef struct { gboolean tap; } NMSettingMacvlanPrivate; -enum { - PROP_0, - PROP_PARENT, - PROP_MODE, - PROP_PROMISCUOUS, - PROP_TAP, - LAST_PROP -}; +G_DEFINE_TYPE (NMSettingMacvlan, nm_setting_macvlan, NM_TYPE_SETTING) -/** - * nm_setting_macvlan_new: - * - * Creates a new #NMSettingMacvlan object with default values. - * - * Returns: (transfer full): the new empty #NMSettingMacvlan object - * - * Since: 1.2 - **/ -NMSetting * -nm_setting_macvlan_new (void) -{ - return (NMSetting *) g_object_new (NM_TYPE_SETTING_MACVLAN, NULL); -} +#define NM_SETTING_MACVLAN_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SETTING_MACVLAN, NMSettingMacvlanPrivate)) + +/*****************************************************************************/ /** * nm_setting_macvlan_get_parent: @@ -136,11 +123,6 @@ nm_setting_macvlan_get_tap (NMSettingMacvlan *setting) /*****************************************************************************/ -static void -nm_setting_macvlan_init (NMSettingMacvlan *setting) -{ -} - static gboolean verify (NMSetting *setting, NMConnection *connection, GError **error) { @@ -193,26 +175,27 @@ verify (NMSetting *setting, NMConnection *connection, GError **error) return TRUE; } +/*****************************************************************************/ + static void -set_property (GObject *object, guint prop_id, - const GValue *value, GParamSpec *pspec) +get_property (GObject *object, guint prop_id, + GValue *value, GParamSpec *pspec) { NMSettingMacvlan *setting = NM_SETTING_MACVLAN (object); NMSettingMacvlanPrivate *priv = NM_SETTING_MACVLAN_GET_PRIVATE (setting); switch (prop_id) { case PROP_PARENT: - g_free (priv->parent); - priv->parent = g_value_dup_string (value); + g_value_set_string (value, priv->parent); break; case PROP_MODE: - priv->mode = g_value_get_uint (value); + g_value_set_uint (value, priv->mode); break; case PROP_PROMISCUOUS: - priv->promiscuous = g_value_get_boolean (value); + g_value_set_boolean (value, priv->promiscuous); break; case PROP_TAP: - priv->tap = g_value_get_boolean (value); + g_value_set_boolean (value, priv->tap); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); @@ -221,24 +204,25 @@ set_property (GObject *object, guint prop_id, } static void -get_property (GObject *object, guint prop_id, - GValue *value, GParamSpec *pspec) +set_property (GObject *object, guint prop_id, + const GValue *value, GParamSpec *pspec) { NMSettingMacvlan *setting = NM_SETTING_MACVLAN (object); NMSettingMacvlanPrivate *priv = NM_SETTING_MACVLAN_GET_PRIVATE (setting); switch (prop_id) { case PROP_PARENT: - g_value_set_string (value, priv->parent); + g_free (priv->parent); + priv->parent = g_value_dup_string (value); break; case PROP_MODE: - g_value_set_uint (value, priv->mode); + priv->mode = g_value_get_uint (value); break; case PROP_PROMISCUOUS: - g_value_set_boolean (value, priv->promiscuous); + priv->promiscuous = g_value_get_boolean (value); break; case PROP_TAP: - g_value_set_boolean (value, priv->tap); + priv->tap = g_value_get_boolean (value); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); @@ -246,6 +230,28 @@ get_property (GObject *object, guint prop_id, } } +/*****************************************************************************/ + +static void +nm_setting_macvlan_init (NMSettingMacvlan *setting) +{ +} + +/** + * nm_setting_macvlan_new: + * + * Creates a new #NMSettingMacvlan object with default values. + * + * Returns: (transfer full): the new empty #NMSettingMacvlan object + * + * Since: 1.2 + **/ +NMSetting * +nm_setting_macvlan_new (void) +{ + return (NMSetting *) g_object_new (NM_TYPE_SETTING_MACVLAN, NULL); +} + static void finalize (GObject *object) { @@ -265,8 +271,8 @@ nm_setting_macvlan_class_init (NMSettingMacvlanClass *klass) g_type_class_add_private (klass, sizeof (NMSettingMacvlanPrivate)); - 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; @@ -281,14 +287,13 @@ nm_setting_macvlan_class_init (NMSettingMacvlanClass *klass) * * Since: 1.2 **/ - g_object_class_install_property - (object_class, PROP_PARENT, - g_param_spec_string (NM_SETTING_MACVLAN_PARENT, "", "", - NULL, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_PARENT] = + g_param_spec_string (NM_SETTING_MACVLAN_PARENT, "", "", + NULL, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); /** * NMSettingMacvlan:mode: @@ -298,14 +303,13 @@ nm_setting_macvlan_class_init (NMSettingMacvlanClass *klass) * * Since: 1.2 **/ - g_object_class_install_property - (object_class, PROP_MODE, - g_param_spec_uint (NM_SETTING_MACVLAN_MODE, "", "", - 0, G_MAXUINT, 0, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_MODE] = + g_param_spec_uint (NM_SETTING_MACVLAN_MODE, "", "", + 0, G_MAXUINT, 0, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); /** * NMSettingMacvlan:promiscuous: @@ -314,14 +318,13 @@ nm_setting_macvlan_class_init (NMSettingMacvlanClass *klass) * * Since: 1.2 **/ - g_object_class_install_property - (object_class, PROP_PROMISCUOUS, - g_param_spec_boolean (NM_SETTING_MACVLAN_PROMISCUOUS, "", "", - TRUE, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_PROMISCUOUS] = + g_param_spec_boolean (NM_SETTING_MACVLAN_PROMISCUOUS, "", "", + TRUE, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); /** * NMSettingMacvlan:tap: @@ -330,14 +333,15 @@ nm_setting_macvlan_class_init (NMSettingMacvlanClass *klass) * * Since: 1.2 **/ - g_object_class_install_property - (object_class, PROP_TAP, - g_param_spec_boolean (NM_SETTING_MACVLAN_TAP, "", "", - FALSE, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT | - NM_SETTING_PARAM_INFERRABLE | - G_PARAM_STATIC_STRINGS)); + obj_properties[PROP_TAP] = + g_param_spec_boolean (NM_SETTING_MACVLAN_TAP, "", "", + FALSE, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + NM_SETTING_PARAM_INFERRABLE | + G_PARAM_STATIC_STRINGS); + + g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties); _nm_setting_class_commit (setting_class, NM_META_SETTING_TYPE_MACVLAN); } |