diff options
| author | Michael Biebl <biebl@debian.org> | 2019-07-31 10:51:42 +0200 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2019-07-31 10:51:42 +0200 |
| commit | 2e5fa45ddfbb5cffa1e78221f1cea706e2f298af (patch) | |
| tree | 86f69d36c56de3074280456eddc854a780b8e04b /libnm-glib/nm-active-connection.c | |
| parent | 85563b7fc7ec2cd21e38debb9b28db342e2e8e7c (diff) | |
New upstream version 1.19.90 upstream/1.19.90
Diffstat (limited to 'libnm-glib/nm-active-connection.c')
| -rw-r--r-- | libnm-glib/nm-active-connection.c | 851 |
1 files changed, 0 insertions, 851 deletions
diff --git a/libnm-glib/nm-active-connection.c b/libnm-glib/nm-active-connection.c deleted file mode 100644 index a8150755..00000000 --- a/libnm-glib/nm-active-connection.c +++ /dev/null @@ -1,851 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ -/* - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301 USA. - * - * Copyright 2007 - 2014 Red Hat, Inc. - * Copyright 2008 Novell, Inc. - */ - -#include "nm-default.h" - -#include <string.h> - -#include "NetworkManager.h" -#include "nm-active-connection.h" -#include "nm-object-private.h" -#include "nm-types-private.h" -#include "nm-device.h" -#include "nm-device-private.h" -#include "nm-connection.h" -#include "nm-vpn-connection.h" -#include "nm-dbus-helpers-private.h" - -static GType _nm_active_connection_type_for_path (DBusGConnection *connection, - const char *path); -static void _nm_active_connection_type_for_path_async (DBusGConnection *connection, - const char *path, - NMObjectTypeCallbackFunc callback, - gpointer user_data); - -G_DEFINE_TYPE_WITH_CODE (NMActiveConnection, nm_active_connection, NM_TYPE_OBJECT, - _nm_object_register_type_func (g_define_type_id, - _nm_active_connection_type_for_path, - _nm_active_connection_type_for_path_async); - ) - -#define NM_ACTIVE_CONNECTION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_ACTIVE_CONNECTION, NMActiveConnectionPrivate)) - -typedef struct { - DBusGProxy *proxy; - - char *connection; - char *id; - char *uuid; - char *type; - char *specific_object; - GPtrArray *devices; - NMActiveConnectionState state; - gboolean is_default; - NMIP4Config *ip4_config; - NMDHCP4Config *dhcp4_config; - gboolean is_default6; - NMIP6Config *ip6_config; - NMDHCP6Config *dhcp6_config; - gboolean is_vpn; - char *master; -} NMActiveConnectionPrivate; - -enum { - PROP_0, - PROP_CONNECTION, - PROP_ID, - PROP_UUID, - PROP_TYPE, - PROP_SPECIFIC_OBJECT, - PROP_DEVICES, - PROP_STATE, - PROP_DEFAULT, - PROP_IP4_CONFIG, - PROP_DHCP4_CONFIG, - PROP_DEFAULT6, - PROP_IP6_CONFIG, - PROP_DHCP6_CONFIG, - PROP_VPN, - PROP_MASTER, - - LAST_PROP -}; - -/** - * nm_active_connection_new: - * @connection: the #DBusGConnection - * @path: the DBus object path of the device - * - * Creates a new #NMActiveConnection. - * - * Returns: (transfer full): a new active connection - **/ -GObject * -nm_active_connection_new (DBusGConnection *connection, const char *path) -{ - g_return_val_if_fail (connection != NULL, NULL); - g_return_val_if_fail (path != NULL, NULL); - - return g_object_new (NM_TYPE_ACTIVE_CONNECTION, - NM_OBJECT_DBUS_CONNECTION, connection, - NM_OBJECT_DBUS_PATH, path, - NULL); -} - -static GType -_nm_active_connection_type_for_path (DBusGConnection *connection, - const char *path) -{ - DBusGProxy *proxy; - GError *error = NULL; - GValue value = G_VALUE_INIT; - GType type; - - proxy = _nm_dbus_new_proxy_for_connection (connection, path, DBUS_INTERFACE_PROPERTIES); - if (!proxy) { - g_warning ("%s: couldn't create D-Bus object proxy.", __func__); - return G_TYPE_INVALID; - } - - /* Have to create an NMVPNConnection if it's a VPN connection, otherwise - * a plain NMActiveConnection. - */ - if (dbus_g_proxy_call (proxy, - "Get", &error, - G_TYPE_STRING, NM_DBUS_INTERFACE_ACTIVE_CONNECTION, - G_TYPE_STRING, "Vpn", - G_TYPE_INVALID, - G_TYPE_VALUE, &value, G_TYPE_INVALID)) { - if (g_value_get_boolean (&value)) - type = NM_TYPE_VPN_CONNECTION; - else - type = NM_TYPE_ACTIVE_CONNECTION; - } else { - g_warning ("Error in getting active connection 'Vpn' property: %s", - error->message); - g_error_free (error); - type = G_TYPE_INVALID; - } - - g_object_unref (proxy); - return type; -} - -typedef struct { - DBusGConnection *connection; - NMObjectTypeCallbackFunc callback; - gpointer user_data; -} NMActiveConnectionAsyncData; - -static void -async_got_type (DBusGProxy *proxy, DBusGProxyCall *call, gpointer user_data) -{ - NMActiveConnectionAsyncData *async_data = user_data; - GValue value = G_VALUE_INIT; - const char *path = dbus_g_proxy_get_path (proxy); - GError *error = NULL; - GType type; - - if (dbus_g_proxy_end_call (proxy, call, &error, - G_TYPE_VALUE, &value, - G_TYPE_INVALID)) { - if (g_value_get_boolean (&value)) - type = NM_TYPE_VPN_CONNECTION; - else - type = NM_TYPE_ACTIVE_CONNECTION; - } else { - g_warning ("%s: could not read properties for %s: %s", __func__, path, error->message); - type = G_TYPE_INVALID; - } - - async_data->callback (type, async_data->user_data); - - g_object_unref (proxy); - g_slice_free (NMActiveConnectionAsyncData, async_data); -} - -static void -_nm_active_connection_type_for_path_async (DBusGConnection *connection, - const char *path, - NMObjectTypeCallbackFunc callback, - gpointer user_data) -{ - NMActiveConnectionAsyncData *async_data; - DBusGProxy *proxy; - - async_data = g_slice_new (NMActiveConnectionAsyncData); - async_data->connection = connection; - async_data->callback = callback; - async_data->user_data = user_data; - - proxy = _nm_dbus_new_proxy_for_connection (connection, path, DBUS_INTERFACE_PROPERTIES); - dbus_g_proxy_begin_call (proxy, "Get", - async_got_type, async_data, NULL, - G_TYPE_STRING, NM_DBUS_INTERFACE_ACTIVE_CONNECTION, - G_TYPE_STRING, "Vpn", - G_TYPE_INVALID); -} - -/** - * nm_active_connection_get_connection: - * @connection: a #NMActiveConnection - * - * Gets the #NMConnection's DBus object path. This is often used with - * nm_remote_settings_get_connection_by_path() to retrieve the - * #NMRemoteConnection object that describes the connection. - * - * Returns: the object path of the #NMConnection which this #NMActiveConnection - * is an active instance of. This is the internal string used by the - * connection, and must not be modified. - **/ -const char * -nm_active_connection_get_connection (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->connection; -} - -/** - * nm_active_connection_get_id: - * @connection: a #NMActiveConnection - * - * Gets the #NMConnection's ID. - * - * Returns: the ID of the #NMConnection that backs the #NMActiveConnection. - * This is the internal string used by the connection, and must not be modified. - * - * Since: 0.9.10 - **/ -const char * -nm_active_connection_get_id (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->id; -} - -/** - * nm_active_connection_get_uuid: - * @connection: a #NMActiveConnection - * - * Gets the #NMConnection's UUID. - * - * Returns: the UUID of the #NMConnection that backs the #NMActiveConnection. - * This is the internal string used by the connection, and must not be modified. - **/ -const char * -nm_active_connection_get_uuid (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->uuid; -} - -/** - * nm_active_connection_get_connection_type: - * @connection: a #NMActiveConnection - * - * Gets the #NMConnection's type. - * - * Returns: the type of the #NMConnection that backs the #NMActiveConnection. - * This is the internal string used by the connection, and must not be modified. - * - * Since: 0.9.10 - **/ -const char * -nm_active_connection_get_connection_type (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->type; -} - -/** - * nm_active_connection_get_specific_object: - * @connection: a #NMActiveConnection - * - * Gets the "specific object" used at the activation. - * - * Returns: the specific object's DBus path. This is the internal string used by the - * connection, and must not be modified. - **/ -const char * -nm_active_connection_get_specific_object (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->specific_object; -} - -/** - * nm_active_connection_get_devices: - * @connection: a #NMActiveConnection - * - * Gets the #NMDevices used for the active connections. - * - * Returns: (element-type NMDevice): the #GPtrArray containing #NMDevices. - * This is the internal copy used by the connection, and must not be modified. - **/ -const GPtrArray * -nm_active_connection_get_devices (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return handle_ptr_array_return (NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->devices); -} - -/** - * nm_active_connection_get_state: - * @connection: a #NMActiveConnection - * - * Gets the active connection's state. - * - * Returns: the state - **/ -NMActiveConnectionState -nm_active_connection_get_state (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NM_ACTIVE_CONNECTION_STATE_UNKNOWN); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->state; -} - -/** - * nm_active_connection_get_default: - * @connection: a #NMActiveConnection - * - * Whether the active connection is the default IPv4 one (that is, is used for - * the default IPv4 route and DNS information). - * - * Returns: %TRUE if the active connection is the default IPv4 connection - **/ -gboolean -nm_active_connection_get_default (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), FALSE); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->is_default; -} - -/** - * nm_active_connection_get_ip4_config: - * @connection: an #NMActiveConnection - * - * Gets the current #NMIP4Config associated with the #NMActiveConnection. - * - * Returns: (transfer none): the #NMIP4Config, or %NULL if the - * connection is not in the %NM_ACTIVE_CONNECTION_STATE_ACTIVATED - * state. - * - * Since: 0.9.10 - **/ -NMIP4Config * -nm_active_connection_get_ip4_config (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->ip4_config; -} - -/** - * nm_active_connection_get_dhcp4_config: - * @connection: an #NMActiveConnection - * - * Gets the current #NMDHCP4Config (if any) associated with the - * #NMActiveConnection. - * - * Returns: (transfer none): the #NMDHCP4Config, or %NULL if the - * connection does not use DHCP, or is not in the - * %NM_ACTIVE_CONNECTION_STATE_ACTIVATED state. - * - * Since: 0.9.10 - **/ -NMDHCP4Config * -nm_active_connection_get_dhcp4_config (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->dhcp4_config; -} - -/** - * nm_active_connection_get_default6: - * @connection: a #NMActiveConnection - * - * Whether the active connection is the default IPv6 one (that is, is used for - * the default IPv6 route and DNS information). - * - * Returns: %TRUE if the active connection is the default IPv6 connection - **/ -gboolean -nm_active_connection_get_default6 (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), FALSE); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->is_default6; -} - -/** - * nm_active_connection_get_ip6_config: - * @connection: an #NMActiveConnection - * - * Gets the current #NMIP6Config associated with the #NMActiveConnection. - * - * Returns: (transfer none): the #NMIP6Config, or %NULL if the - * connection is not in the %NM_ACTIVE_CONNECTION_STATE_ACTIVATED - * state. - * - * Since: 0.9.10 - **/ -NMIP6Config * -nm_active_connection_get_ip6_config (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->ip6_config; -} - -/** - * nm_active_connection_get_dhcp6_config: - * @connection: an #NMActiveConnection - * - * Gets the current #NMDHCP6Config (if any) associated with the - * #NMActiveConnection. - * - * Returns: (transfer none): the #NMDHCP6Config, or %NULL if the - * connection does not use DHCPv6, or is not in the - * %NM_ACTIVE_CONNECTION_STATE_ACTIVATED state. - * - * Since: 0.9.10 - **/ -NMDHCP6Config * -nm_active_connection_get_dhcp6_config (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->dhcp6_config; -} - -/** - * nm_active_connection_get_vpn: - * @connection: a #NMActiveConnection - * - * Whether the active connection is a VPN connection. - * - * Returns: %TRUE if the active connection is a VPN connection - * - * Since: 0.9.10 - **/ -gboolean -nm_active_connection_get_vpn (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), FALSE); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->is_vpn; -} - -/** - * nm_active_connection_get_master: - * @connection: a #NMActiveConnection - * - * Gets the path to the master #NMDevice of the connection. - * - * Returns: the path of the master #NMDevice of the #NMActiveConnection. - * This is the internal string used by the connection, and must not be modified. - **/ -const char * -nm_active_connection_get_master (NMActiveConnection *connection) -{ - g_return_val_if_fail (NM_IS_ACTIVE_CONNECTION (connection), NULL); - - _nm_object_ensure_inited (NM_OBJECT (connection)); - return NM_ACTIVE_CONNECTION_GET_PRIVATE (connection)->master; -} - -static void -nm_active_connection_init (NMActiveConnection *ap) -{ -} - -static void -dispose (GObject *object) -{ - NMActiveConnectionPrivate *priv = NM_ACTIVE_CONNECTION_GET_PRIVATE (object); - - if (priv->devices) { - g_ptr_array_set_free_func (priv->devices, g_object_unref); - g_ptr_array_free (priv->devices, TRUE); - priv->devices = NULL; - } - - g_clear_object (&priv->ip4_config); - g_clear_object (&priv->dhcp4_config); - g_clear_object (&priv->ip6_config); - g_clear_object (&priv->dhcp6_config); - - g_clear_object (&priv->proxy); - - G_OBJECT_CLASS (nm_active_connection_parent_class)->dispose (object); -} - -static void -finalize (GObject *object) -{ - NMActiveConnectionPrivate *priv = NM_ACTIVE_CONNECTION_GET_PRIVATE (object); - - g_free (priv->connection); - g_free (priv->id); - g_free (priv->uuid); - g_free (priv->type); - g_free (priv->specific_object); - g_free (priv->master); - - G_OBJECT_CLASS (nm_active_connection_parent_class)->finalize (object); -} - -static void -get_property (GObject *object, - guint prop_id, - GValue *value, - GParamSpec *pspec) -{ - NMActiveConnection *self = NM_ACTIVE_CONNECTION (object); - - _nm_object_ensure_inited (NM_OBJECT (object)); - - switch (prop_id) { - case PROP_CONNECTION: - g_value_set_string (value, nm_active_connection_get_connection (self)); - break; - case PROP_ID: - g_value_set_string (value, nm_active_connection_get_id (self)); - break; - case PROP_UUID: - g_value_set_string (value, nm_active_connection_get_uuid (self)); - break; - case PROP_TYPE: - g_value_set_string (value, nm_active_connection_get_connection_type (self)); - break; - case PROP_SPECIFIC_OBJECT: - g_value_set_boxed (value, nm_active_connection_get_specific_object (self)); - break; - case PROP_DEVICES: - g_value_set_boxed (value, nm_active_connection_get_devices (self)); - break; - case PROP_STATE: - g_value_set_uint (value, nm_active_connection_get_state (self)); - break; - case PROP_DEFAULT: - g_value_set_boolean (value, nm_active_connection_get_default (self)); - break; - case PROP_IP4_CONFIG: - g_value_set_object (value, nm_active_connection_get_ip4_config (self)); - break; - case PROP_DHCP4_CONFIG: - g_value_set_object (value, nm_active_connection_get_dhcp4_config (self)); - break; - case PROP_DEFAULT6: - g_value_set_boolean (value, nm_active_connection_get_default6 (self)); - break; - case PROP_IP6_CONFIG: - g_value_set_object (value, nm_active_connection_get_ip6_config (self)); - break; - case PROP_DHCP6_CONFIG: - g_value_set_object (value, nm_active_connection_get_dhcp6_config (self)); - break; - case PROP_VPN: - g_value_set_boolean (value, nm_active_connection_get_vpn (self)); - break; - case PROP_MASTER: - g_value_set_string (value, nm_active_connection_get_master (self)); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -register_properties (NMActiveConnection *connection) -{ - NMActiveConnectionPrivate *priv = NM_ACTIVE_CONNECTION_GET_PRIVATE (connection); - const NMPropertiesInfo property_info[] = { - { NM_ACTIVE_CONNECTION_CONNECTION, &priv->connection }, - { NM_ACTIVE_CONNECTION_ID, &priv->id }, - { NM_ACTIVE_CONNECTION_UUID, &priv->uuid }, - { NM_ACTIVE_CONNECTION_TYPE, &priv->type }, - { NM_ACTIVE_CONNECTION_SPECIFIC_OBJECT, &priv->specific_object }, - { NM_ACTIVE_CONNECTION_DEVICES, &priv->devices, NULL, NM_TYPE_DEVICE }, - { NM_ACTIVE_CONNECTION_STATE, &priv->state }, - { NM_ACTIVE_CONNECTION_DEFAULT, &priv->is_default }, - { NM_ACTIVE_CONNECTION_IP4_CONFIG, &priv->ip4_config, NULL, NM_TYPE_IP4_CONFIG }, - { NM_ACTIVE_CONNECTION_DHCP4_CONFIG, &priv->dhcp4_config, NULL, NM_TYPE_DHCP4_CONFIG }, - { NM_ACTIVE_CONNECTION_DEFAULT6, &priv->is_default6 }, - { NM_ACTIVE_CONNECTION_IP6_CONFIG, &priv->ip6_config, NULL, NM_TYPE_IP6_CONFIG }, - { NM_ACTIVE_CONNECTION_DHCP6_CONFIG, &priv->dhcp6_config, NULL, NM_TYPE_DHCP6_CONFIG }, - { NM_ACTIVE_CONNECTION_VPN, &priv->is_vpn }, - { NM_ACTIVE_CONNECTION_MASTER, &priv->master }, - - { NULL }, - }; - - _nm_object_register_properties (NM_OBJECT (connection), - priv->proxy, - property_info); -} - -static void -constructed (GObject *object) -{ - NMActiveConnectionPrivate *priv = NM_ACTIVE_CONNECTION_GET_PRIVATE (object); - - G_OBJECT_CLASS (nm_active_connection_parent_class)->constructed (object); - - priv->proxy = _nm_object_new_proxy (NM_OBJECT (object), NULL, NM_DBUS_INTERFACE_ACTIVE_CONNECTION); - register_properties (NM_ACTIVE_CONNECTION (object)); -} - -static void -nm_active_connection_class_init (NMActiveConnectionClass *ap_class) -{ - GObjectClass *object_class = G_OBJECT_CLASS (ap_class); - - g_type_class_add_private (ap_class, sizeof (NMActiveConnectionPrivate)); - - /* virtual methods */ - object_class->constructed = constructed; - object_class->get_property = get_property; - object_class->dispose = dispose; - object_class->finalize = finalize; - - /* properties */ - - /** - * NMActiveConnection:connection: - * - * The connection's path of the active connection. - **/ - g_object_class_install_property - (object_class, PROP_CONNECTION, - g_param_spec_string (NM_ACTIVE_CONNECTION_CONNECTION, "", "", - NULL, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:id: - * - * The active connection's ID - * - * Since: 0.9.10 - **/ - g_object_class_install_property - (object_class, PROP_ID, - g_param_spec_string (NM_ACTIVE_CONNECTION_ID, "", "", - NULL, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:uuid: - * - * The active connection's UUID - **/ - g_object_class_install_property - (object_class, PROP_UUID, - g_param_spec_string (NM_ACTIVE_CONNECTION_UUID, "", "", - NULL, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:type: - * - * The active connection's type - * - * Since: 0.9.10 - **/ - g_object_class_install_property - (object_class, PROP_TYPE, - g_param_spec_string (NM_ACTIVE_CONNECTION_TYPE, "", "", - NULL, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:specific-object: - * - * The specific object's path of the active connection. - **/ - g_object_class_install_property - (object_class, PROP_SPECIFIC_OBJECT, - g_param_spec_string (NM_ACTIVE_CONNECTION_SPECIFIC_OBJECT, "", "", - NULL, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:device: - * - * The devices (#NMDevice) of the active connection. - **/ - g_object_class_install_property - (object_class, PROP_DEVICES, - g_param_spec_boxed (NM_ACTIVE_CONNECTION_DEVICES, "", "", - NM_TYPE_OBJECT_ARRAY, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:state: - * - * The state of the active connection. - **/ - g_object_class_install_property - (object_class, PROP_STATE, - g_param_spec_uint (NM_ACTIVE_CONNECTION_STATE, "", "", - NM_ACTIVE_CONNECTION_STATE_UNKNOWN, - NM_ACTIVE_CONNECTION_STATE_DEACTIVATING, - NM_ACTIVE_CONNECTION_STATE_UNKNOWN, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:default: - * - * Whether the active connection is the default IPv4 one. - **/ - g_object_class_install_property - (object_class, PROP_DEFAULT, - g_param_spec_boolean (NM_ACTIVE_CONNECTION_DEFAULT, "", "", - FALSE, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:ip4-config: - * - * The #NMIP4Config of the connection. - * - * Since: 0.9.10 - **/ - g_object_class_install_property - (object_class, PROP_IP4_CONFIG, - g_param_spec_object (NM_ACTIVE_CONNECTION_IP4_CONFIG, "", "", - NM_TYPE_IP4_CONFIG, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:dhcp4-config: - * - * The #NMDHCP4Config of the connection. - * - * Since: 0.9.10 - **/ - g_object_class_install_property - (object_class, PROP_DHCP4_CONFIG, - g_param_spec_object (NM_ACTIVE_CONNECTION_DHCP4_CONFIG, "", "", - NM_TYPE_DHCP4_CONFIG, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:default6: - * - * Whether the active connection is the default IPv6 one. - **/ - g_object_class_install_property - (object_class, PROP_DEFAULT6, - g_param_spec_boolean (NM_ACTIVE_CONNECTION_DEFAULT6, "", "", - FALSE, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:ip6-config: - * - * The #NMIP6Config of the connection. - * - * Since: 0.9.10 - **/ - g_object_class_install_property - (object_class, PROP_IP6_CONFIG, - g_param_spec_object (NM_ACTIVE_CONNECTION_IP6_CONFIG, "", "", - NM_TYPE_IP6_CONFIG, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:dhcp6-config: - * - * The #NMDHCP6Config of the connection. - * - * Since: 0.9.10 - **/ - g_object_class_install_property - (object_class, PROP_DHCP6_CONFIG, - g_param_spec_object (NM_ACTIVE_CONNECTION_DHCP6_CONFIG, "", "", - NM_TYPE_DHCP6_CONFIG, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:vpn: - * - * Whether the active connection is a VPN connection. - * - * Since: 0.9.10 - **/ - g_object_class_install_property - (object_class, PROP_VPN, - g_param_spec_boolean (NM_ACTIVE_CONNECTION_VPN, "", "", - FALSE, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); - - /** - * NMActiveConnection:master: - * - * The path of the master device if one exists. - **/ - g_object_class_install_property - (object_class, PROP_MASTER, - g_param_spec_string (NM_ACTIVE_CONNECTION_MASTER, "", "", - NULL, - G_PARAM_READABLE | - G_PARAM_STATIC_STRINGS)); -} |