summaryrefslogtreecommitdiff
path: root/libnm-core/nm-setting-connection.c
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2019-01-11 08:32:54 +0100
committerThomas Haller <thaller@redhat.com>2019-01-13 15:27:23 +0100
commitf84b4274755537a144e5a202528e63bfbb24b462 (patch)
treeacec12eacf212154d86aa718f61ef9f3e3a6086d /libnm-core/nm-setting-connection.c
parent5b3bc8d48fe409b75ed173a77a63340f92b3849e (diff)
downloadNetworkManager-th/libnm-settings-properties.tar.gz
libnm-core: reorder code in settingsth/libnm-settings-properties
Order the code in our common way. No other changes. - ensure to include the main header first (directly after "nm-default.h"). - reorder function definitions: get_property(), set_property(), *_init(), *_new(), finalize(), *_class_init().
Diffstat (limited to 'libnm-core/nm-setting-connection.c')
-rw-r--r--libnm-core/nm-setting-connection.c298
1 files changed, 152 insertions, 146 deletions
diff --git a/libnm-core/nm-setting-connection.c b/libnm-core/nm-setting-connection.c
index 22daf74548..a32044d249 100644
--- a/libnm-core/nm-setting-connection.c
+++ b/libnm-core/nm-setting-connection.c
@@ -45,9 +45,7 @@
* a #NMSettingConnection setting.
**/
-G_DEFINE_TYPE (NMSettingConnection, nm_setting_connection, NM_TYPE_SETTING)
-
-#define NM_SETTING_CONNECTION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SETTING_CONNECTION, NMSettingConnectionPrivate))
+/*****************************************************************************/
typedef enum {
PERM_TYPE_USER = 0,
@@ -58,6 +56,32 @@ typedef struct {
char *item;
} Permission;
+NM_GOBJECT_PROPERTIES_DEFINE (NMSettingConnection,
+ PROP_ID,
+ PROP_UUID,
+ PROP_INTERFACE_NAME,
+ PROP_TYPE,
+ PROP_PERMISSIONS,
+ PROP_AUTOCONNECT,
+ PROP_AUTOCONNECT_PRIORITY,
+ PROP_AUTOCONNECT_RETRIES,
+ PROP_MULTI_CONNECT,
+ PROP_TIMESTAMP,
+ PROP_READ_ONLY,
+ PROP_ZONE,
+ PROP_MASTER,
+ PROP_SLAVE_TYPE,
+ PROP_AUTOCONNECT_SLAVES,
+ PROP_SECONDARIES,
+ PROP_GATEWAY_PING_TIMEOUT,
+ PROP_METERED,
+ PROP_LLDP,
+ PROP_MDNS,
+ PROP_LLMNR,
+ PROP_STABLE_ID,
+ PROP_AUTH_RETRIES,
+);
+
typedef struct {
char *id;
char *uuid;
@@ -84,31 +108,9 @@ typedef struct {
int llmnr;
} NMSettingConnectionPrivate;
-NM_GOBJECT_PROPERTIES_DEFINE (NMSettingConnection,
- PROP_ID,
- PROP_UUID,
- PROP_INTERFACE_NAME,
- PROP_TYPE,
- PROP_PERMISSIONS,
- PROP_AUTOCONNECT,
- PROP_AUTOCONNECT_PRIORITY,
- PROP_AUTOCONNECT_RETRIES,
- PROP_MULTI_CONNECT,
- PROP_TIMESTAMP,
- PROP_READ_ONLY,
- PROP_ZONE,
- PROP_MASTER,
- PROP_SLAVE_TYPE,
- PROP_AUTOCONNECT_SLAVES,
- PROP_SECONDARIES,
- PROP_GATEWAY_PING_TIMEOUT,
- PROP_METERED,
- PROP_LLDP,
- PROP_MDNS,
- PROP_LLMNR,
- PROP_STABLE_ID,
- PROP_AUTH_RETRIES,
-);
+G_DEFINE_TYPE (NMSettingConnection, nm_setting_connection, NM_TYPE_SETTING)
+
+#define NM_SETTING_CONNECTION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_SETTING_CONNECTION, NMSettingConnectionPrivate))
/*****************************************************************************/
@@ -194,18 +196,6 @@ permission_free (Permission *p)
/*****************************************************************************/
/**
- * nm_setting_connection_new:
- *
- * Creates a new #NMSettingConnection object with default values.
- *
- * Returns: the new empty #NMSettingConnection object
- **/
-NMSetting *nm_setting_connection_new (void)
-{
- return (NMSetting *) g_object_new (NM_TYPE_SETTING_CONNECTION, NULL);
-}
-
-/**
* nm_setting_connection_get_id:
* @setting: the #NMSettingConnection
*
@@ -1300,34 +1290,6 @@ compare_property (const NMSettInfoSetting *sett_info,
flags);
}
-static void
-nm_setting_connection_init (NMSettingConnection *setting)
-{
- NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (setting);
-
- priv->mdns = NM_SETTING_CONNECTION_MDNS_DEFAULT;
- priv->llmnr = NM_SETTING_CONNECTION_LLMNR_DEFAULT;
-}
-
-static void
-finalize (GObject *object)
-{
- NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (object);
-
- g_free (priv->id);
- g_free (priv->uuid);
- g_free (priv->stable_id);
- g_free (priv->interface_name);
- g_free (priv->type);
- g_free (priv->zone);
- g_free (priv->master);
- g_free (priv->slave_type);
- g_slist_free_full (priv->permissions, (GDestroyNotify) permission_free);
- g_slist_free_full (priv->secondaries, g_free);
-
- G_OBJECT_CLASS (nm_setting_connection_parent_class)->finalize (object);
-}
-
static GSList *
perm_strv_to_permlist (char **strv)
{
@@ -1348,91 +1310,98 @@ perm_strv_to_permlist (char **strv)
return list;
}
+static char **
+perm_permlist_to_strv (GSList *permlist)
+{
+ GPtrArray *strings;
+ GSList *iter;
+
+ strings = g_ptr_array_new ();
+ for (iter = permlist; iter; iter = g_slist_next (iter))
+ g_ptr_array_add (strings, permission_to_string ((Permission *) iter->data));
+ g_ptr_array_add (strings, NULL);
+
+ return (char **) g_ptr_array_free (strings, FALSE);
+}
+
+/*****************************************************************************/
+
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)
{
- NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (object);
+ NMSettingConnection *setting = NM_SETTING_CONNECTION (object);
+ NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (setting);
switch (prop_id) {
case PROP_ID:
- g_free (priv->id);
- priv->id = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_id (setting));
break;
case PROP_UUID:
- g_free (priv->uuid);
- priv->uuid = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_uuid (setting));
break;
case PROP_STABLE_ID:
- g_free (priv->stable_id);
- priv->stable_id = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_stable_id (setting));
break;
case PROP_INTERFACE_NAME:
- g_free (priv->interface_name);
- priv->interface_name = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_interface_name (setting));
break;
case PROP_TYPE:
- g_free (priv->type);
- priv->type = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_connection_type (setting));
break;
case PROP_PERMISSIONS:
- g_slist_free_full (priv->permissions, (GDestroyNotify) permission_free);
- priv->permissions = perm_strv_to_permlist (g_value_get_boxed (value));
+ g_value_take_boxed (value, perm_permlist_to_strv (priv->permissions));
break;
case PROP_AUTOCONNECT:
- priv->autoconnect = g_value_get_boolean (value);
+ g_value_set_boolean (value, nm_setting_connection_get_autoconnect (setting));
break;
case PROP_AUTOCONNECT_PRIORITY:
- priv->autoconnect_priority = g_value_get_int (value);
+ g_value_set_int (value, nm_setting_connection_get_autoconnect_priority (setting));
break;
case PROP_AUTOCONNECT_RETRIES:
- priv->autoconnect_retries = g_value_get_int (value);
+ g_value_set_int (value, nm_setting_connection_get_autoconnect_retries (setting));
break;
case PROP_MULTI_CONNECT:
- priv->multi_connect = g_value_get_int (value);
+ g_value_set_int (value, priv->multi_connect);
break;
case PROP_TIMESTAMP:
- priv->timestamp = g_value_get_uint64 (value);
+ g_value_set_uint64 (value, nm_setting_connection_get_timestamp (setting));
break;
case PROP_READ_ONLY:
- priv->read_only = g_value_get_boolean (value);
+ g_value_set_boolean (value, nm_setting_connection_get_read_only (setting));
break;
case PROP_ZONE:
- g_free (priv->zone);
- priv->zone = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_zone (setting));
break;
case PROP_MASTER:
- g_free (priv->master);
- priv->master = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_master (setting));
break;
case PROP_SLAVE_TYPE:
- g_free (priv->slave_type);
- priv->slave_type = g_value_dup_string (value);
+ g_value_set_string (value, nm_setting_connection_get_slave_type (setting));
break;
case PROP_AUTOCONNECT_SLAVES:
- priv->autoconnect_slaves = g_value_get_enum (value);
+ g_value_set_enum (value, nm_setting_connection_get_autoconnect_slaves (setting));
break;
case PROP_SECONDARIES:
- g_slist_free_full (priv->secondaries, g_free);
- priv->secondaries = _nm_utils_strv_to_slist (g_value_get_boxed (value), TRUE);
+ g_value_take_boxed (value, _nm_utils_slist_to_strv (priv->secondaries, TRUE));
break;
case PROP_GATEWAY_PING_TIMEOUT:
- priv->gateway_ping_timeout = g_value_get_uint (value);
+ g_value_set_uint (value, priv->gateway_ping_timeout);
break;
case PROP_METERED:
- priv->metered = g_value_get_enum (value);
+ g_value_set_enum (value, priv->metered);
break;
case PROP_LLDP:
- priv->lldp = g_value_get_int (value);
+ g_value_set_int (value, priv->lldp);
break;
case PROP_AUTH_RETRIES:
- priv->auth_retries = g_value_get_int (value);
+ g_value_set_int (value, priv->auth_retries);
break;
case PROP_MDNS:
- priv->mdns = g_value_get_int (value);
+ g_value_set_int (value, priv->mdns);
break;
case PROP_LLMNR:
- priv->llmnr = g_value_get_int (value);
+ g_value_set_int (value, priv->llmnr);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -1440,96 +1409,91 @@ set_property (GObject *object, guint prop_id,
}
}
-static char **
-perm_permlist_to_strv (GSList *permlist)
-{
- GPtrArray *strings;
- GSList *iter;
-
- strings = g_ptr_array_new ();
- for (iter = permlist; iter; iter = g_slist_next (iter))
- g_ptr_array_add (strings, permission_to_string ((Permission *) iter->data));
- g_ptr_array_add (strings, NULL);
-
- return (char **) g_ptr_array_free (strings, FALSE);
-}
-
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)
{
- NMSettingConnection *setting = NM_SETTING_CONNECTION (object);
- NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (setting);
+ NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (object);
switch (prop_id) {
case PROP_ID:
- g_value_set_string (value, nm_setting_connection_get_id (setting));
+ g_free (priv->id);
+ priv->id = g_value_dup_string (value);
break;
case PROP_UUID:
- g_value_set_string (value, nm_setting_connection_get_uuid (setting));
+ g_free (priv->uuid);
+ priv->uuid = g_value_dup_string (value);
break;
case PROP_STABLE_ID:
- g_value_set_string (value, nm_setting_connection_get_stable_id (setting));
+ g_free (priv->stable_id);
+ priv->stable_id = g_value_dup_string (value);
break;
case PROP_INTERFACE_NAME:
- g_value_set_string (value, nm_setting_connection_get_interface_name (setting));
+ g_free (priv->interface_name);
+ priv->interface_name = g_value_dup_string (value);
break;
case PROP_TYPE:
- g_value_set_string (value, nm_setting_connection_get_connection_type (setting));
+ g_free (priv->type);
+ priv->type = g_value_dup_string (value);
break;
case PROP_PERMISSIONS:
- g_value_take_boxed (value, perm_permlist_to_strv (priv->permissions));
+ g_slist_free_full (priv->permissions, (GDestroyNotify) permission_free);
+ priv->permissions = perm_strv_to_permlist (g_value_get_boxed (value));
break;
case PROP_AUTOCONNECT:
- g_value_set_boolean (value, nm_setting_connection_get_autoconnect (setting));
+ priv->autoconnect = g_value_get_boolean (value);
break;
case PROP_AUTOCONNECT_PRIORITY:
- g_value_set_int (value, nm_setting_connection_get_autoconnect_priority (setting));
+ priv->autoconnect_priority = g_value_get_int (value);
break;
case PROP_AUTOCONNECT_RETRIES:
- g_value_set_int (value, nm_setting_connection_get_autoconnect_retries (setting));
+ priv->autoconnect_retries = g_value_get_int (value);
break;
case PROP_MULTI_CONNECT:
- g_value_set_int (value, priv->multi_connect);
+ priv->multi_connect = g_value_get_int (value);
break;
case PROP_TIMESTAMP:
- g_value_set_uint64 (value, nm_setting_connection_get_timestamp (setting));
+ priv->timestamp = g_value_get_uint64 (value);
break;
case PROP_READ_ONLY:
- g_value_set_boolean (value, nm_setting_connection_get_read_only (setting));
+ priv->read_only = g_value_get_boolean (value);
break;
case PROP_ZONE:
- g_value_set_string (value, nm_setting_connection_get_zone (setting));
+ g_free (priv->zone);
+ priv->zone = g_value_dup_string (value);
break;
case PROP_MASTER:
- g_value_set_string (value, nm_setting_connection_get_master (setting));
+ g_free (priv->master);
+ priv->master = g_value_dup_string (value);
break;
case PROP_SLAVE_TYPE:
- g_value_set_string (value, nm_setting_connection_get_slave_type (setting));
+ g_free (priv->slave_type);
+ priv->slave_type = g_value_dup_string (value);
break;
case PROP_AUTOCONNECT_SLAVES:
- g_value_set_enum (value, nm_setting_connection_get_autoconnect_slaves (setting));
+ priv->autoconnect_slaves = g_value_get_enum (value);
break;
case PROP_SECONDARIES:
- g_value_take_boxed (value, _nm_utils_slist_to_strv (priv->secondaries, TRUE));
+ g_slist_free_full (priv->secondaries, g_free);
+ priv->secondaries = _nm_utils_strv_to_slist (g_value_get_boxed (value), TRUE);
break;
case PROP_GATEWAY_PING_TIMEOUT:
- g_value_set_uint (value, priv->gateway_ping_timeout);
+ priv->gateway_ping_timeout = g_value_get_uint (value);
break;
case PROP_METERED:
- g_value_set_enum (value, priv->metered);
+ priv->metered = g_value_get_enum (value);
break;
case PROP_LLDP:
- g_value_set_int (value, priv->lldp);
+ priv->lldp = g_value_get_int (value);
break;
case PROP_AUTH_RETRIES:
- g_value_set_int (value, priv->auth_retries);
+ priv->auth_retries = g_value_get_int (value);
break;
case PROP_MDNS:
- g_value_set_int (value, priv->mdns);
+ priv->mdns = g_value_get_int (value);
break;
case PROP_LLMNR:
- g_value_set_int (value, priv->llmnr);
+ priv->llmnr = g_value_get_int (value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -1537,6 +1501,48 @@ get_property (GObject *object, guint prop_id,
}
}
+/*****************************************************************************/
+
+static void
+nm_setting_connection_init (NMSettingConnection *setting)
+{
+ NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (setting);
+
+ priv->mdns = NM_SETTING_CONNECTION_MDNS_DEFAULT;
+ priv->llmnr = NM_SETTING_CONNECTION_LLMNR_DEFAULT;
+}
+
+/**
+ * nm_setting_connection_new:
+ *
+ * Creates a new #NMSettingConnection object with default values.
+ *
+ * Returns: the new empty #NMSettingConnection object
+ **/
+NMSetting *nm_setting_connection_new (void)
+{
+ return (NMSetting *) g_object_new (NM_TYPE_SETTING_CONNECTION, NULL);
+}
+
+static void
+finalize (GObject *object)
+{
+ NMSettingConnectionPrivate *priv = NM_SETTING_CONNECTION_GET_PRIVATE (object);
+
+ g_free (priv->id);
+ g_free (priv->uuid);
+ g_free (priv->stable_id);
+ g_free (priv->interface_name);
+ g_free (priv->type);
+ g_free (priv->zone);
+ g_free (priv->master);
+ g_free (priv->slave_type);
+ g_slist_free_full (priv->permissions, (GDestroyNotify) permission_free);
+ g_slist_free_full (priv->secondaries, g_free);
+
+ G_OBJECT_CLASS (nm_setting_connection_parent_class)->finalize (object);
+}
+
static void
nm_setting_connection_class_init (NMSettingConnectionClass *klass)
{
@@ -1546,8 +1552,8 @@ nm_setting_connection_class_init (NMSettingConnectionClass *klass)
g_type_class_add_private (klass, sizeof (NMSettingConnectionPrivate));
- 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;