diff options
| author | Michael Biebl <biebl@debian.org> | 2017-11-07 00:14:39 +0100 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2017-11-07 00:14:39 +0100 |
| commit | 90e8691111889a7b5f3c812f5a41f15a8a058913 (patch) | |
| tree | f101a879eca27c34a9bfa5f3da52266b22539a36 /libnm/nm-client.c | |
| parent | bdb6eeb0670658255c2a4c3c501c0a27fa8cfe55 (diff) | |
New upstream version 1.9.90 upstream/1.9.90
Diffstat (limited to 'libnm/nm-client.c')
| -rw-r--r-- | libnm/nm-client.c | 125 |
1 files changed, 120 insertions, 5 deletions
diff --git a/libnm/nm-client.c b/libnm/nm-client.c index c8707f50..8f9c50e9 100644 --- a/libnm/nm-client.c +++ b/libnm/nm-client.c @@ -63,6 +63,10 @@ #include "nm-device-macvlan.h" #include "nm-device-modem.h" #include "nm-device-olpc-mesh.h" +#include "nm-device-ovs-interface.h" +#include "nm-device-ovs-port.h" +#include "nm-device-ovs-bridge.h" +#include "nm-device-ppp.h" #include "nm-device-team.h" #include "nm-device-tun.h" #include "nm-device-vlan.h" @@ -122,6 +126,8 @@ enum { PROP_WIMAX_HARDWARE_ENABLED, PROP_ACTIVE_CONNECTIONS, PROP_CONNECTIVITY, + PROP_CONNECTIVITY_CHECK_AVAILABLE, + PROP_CONNECTIVITY_CHECK_ENABLED, PROP_PRIMARY_CONNECTION, PROP_ACTIVATING_CONNECTION, PROP_DEVICES, @@ -473,6 +479,72 @@ nm_client_wimax_hardware_get_enabled (NMClient *client) } /** + * nm_client_connectivity_check_get_available: + * @client: a #NMClient + * + * Determine whether connectivity checking is available. This + * requires that the URI of a connectivity service has been set in the + * configuration file. + * + * Returns: %TRUE if connectivity checking is available. + * + * Since: 1.10 + */ +gboolean +nm_client_connectivity_check_get_available (NMClient *client) +{ + g_return_val_if_fail (NM_IS_CLIENT (client), FALSE); + + if (!nm_client_get_nm_running (client)) + return FALSE; + + return nm_manager_connectivity_check_get_available (NM_CLIENT_GET_PRIVATE (client)->manager); +} + +/** + * nm_client_connectivity_check_get_enabled: + * @client: a #NMClient + * + * Determine whether connectivity checking is enabled. + * + * Returns: %TRUE if connectivity checking is enabled. + * + * Since: 1.10 + */ +gboolean +nm_client_connectivity_check_get_enabled (NMClient *client) +{ + g_return_val_if_fail (NM_IS_CLIENT (client), FALSE); + + if (!nm_client_get_nm_running (client)) + return FALSE; + + return nm_manager_connectivity_check_get_enabled (NM_CLIENT_GET_PRIVATE (client)->manager); +} + +/** + * nm_client_connectivity_check_set_enabled: + * @client: a #NMClient + * @enabled: %TRUE to enable connectivity checking + * + * Enable or disable connectivity checking. Note that if a + * connectivity checking URI has not been configured, this will not + * have any effect. + * + * Since: 1.10 + */ +void +nm_client_connectivity_check_set_enabled (NMClient *client, gboolean enabled) +{ + g_return_if_fail (NM_IS_CLIENT (client)); + + if (!nm_client_get_nm_running (client)) + return; + + nm_manager_connectivity_check_set_enabled (NM_CLIENT_GET_PRIVATE (client)->manager, enabled); +} + +/** * nm_client_get_logging: * @client: a #NMClient * @level: (allow-none): return location for logging level string @@ -1013,7 +1085,7 @@ activate_cb (GObject *object, * picks the best available connection for the device and activates it. * * Note that the callback is invoked when NetworkManager has started activating - * the new connection, not when it finishes. You can used the returned + * the new connection, not when it finishes. You can use the returned * #NMActiveConnection object (in particular, #NMActiveConnection:state) to * track the activation to its completion. **/ @@ -2078,6 +2150,14 @@ obj_nm_for_gdbus_object (NMClient *self, GDBusObject *object, GDBusObjectManager type = NM_TYPE_DEVICE_MODEM; else if (strcmp (ifname, NM_DBUS_INTERFACE_DEVICE_OLPC_MESH) == 0) type = NM_TYPE_DEVICE_OLPC_MESH; + else if (strcmp (ifname, NM_DBUS_INTERFACE_DEVICE_OVS_INTERFACE) == 0) + type = NM_TYPE_DEVICE_OVS_INTERFACE; + else if (strcmp (ifname, NM_DBUS_INTERFACE_DEVICE_OVS_PORT) == 0) + type = NM_TYPE_DEVICE_OVS_PORT; + else if (strcmp (ifname, NM_DBUS_INTERFACE_DEVICE_OVS_BRIDGE) == 0) + type = NM_TYPE_DEVICE_OVS_BRIDGE; + else if (strcmp (ifname, NM_DBUS_INTERFACE_DEVICE_PPP) == 0) + type = NM_TYPE_DEVICE_PPP; else if (strcmp (ifname, NM_DBUS_INTERFACE_DEVICE_TEAM) == 0) type = NM_TYPE_DEVICE_TEAM; else if (strcmp (ifname, NM_DBUS_INTERFACE_DEVICE_TUN) == 0) @@ -2591,6 +2671,7 @@ set_property (GObject *object, guint prop_id, case PROP_WIRELESS_ENABLED: case PROP_WWAN_ENABLED: case PROP_WIMAX_ENABLED: + case PROP_CONNECTIVITY_CHECK_ENABLED: if (priv->manager) g_object_set_property (G_OBJECT (priv->manager), pspec->name, value); break; @@ -2630,7 +2711,7 @@ get_property (GObject *object, guint prop_id, break; case PROP_WIRELESS_HARDWARE_ENABLED: if (priv->manager) - g_object_get_property (G_OBJECT (priv->settings), pspec->name, value); + g_object_get_property (G_OBJECT (priv->manager), pspec->name, value); else g_value_set_boolean (value, FALSE); break; @@ -2639,7 +2720,7 @@ get_property (GObject *object, guint prop_id, break; case PROP_WWAN_HARDWARE_ENABLED: if (priv->manager) - g_object_get_property (G_OBJECT (priv->settings), pspec->name, value); + g_object_get_property (G_OBJECT (priv->manager), pspec->name, value); else g_value_set_boolean (value, FALSE); break; @@ -2648,7 +2729,7 @@ get_property (GObject *object, guint prop_id, break; case PROP_WIMAX_HARDWARE_ENABLED: if (priv->manager) - g_object_get_property (G_OBJECT (priv->settings), pspec->name, value); + g_object_get_property (G_OBJECT (priv->manager), pspec->name, value); else g_value_set_boolean (value, FALSE); break; @@ -2658,6 +2739,12 @@ get_property (GObject *object, guint prop_id, case PROP_CONNECTIVITY: g_value_set_enum (value, nm_client_get_connectivity (self)); break; + case PROP_CONNECTIVITY_CHECK_AVAILABLE: + g_value_set_boolean (value, nm_client_connectivity_check_get_available (self)); + break; + case PROP_CONNECTIVITY_CHECK_ENABLED: + g_value_set_boolean (value, nm_client_connectivity_check_get_enabled (self)); + break; case PROP_PRIMARY_CONNECTION: g_value_set_object (value, nm_client_get_primary_connection (self)); break; @@ -2669,7 +2756,7 @@ get_property (GObject *object, guint prop_id, break; case PROP_METERED: if (priv->manager) - g_object_get_property (G_OBJECT (priv->settings), pspec->name, value); + g_object_get_property (G_OBJECT (priv->manager), pspec->name, value); else g_value_set_uint (value, NM_METERED_UNKNOWN); break; @@ -2896,6 +2983,34 @@ nm_client_class_init (NMClientClass *client_class) G_PARAM_STATIC_STRINGS)); /** + * NMClient::connectivity-check-available + * + * Whether a connectivity checking service has been configured. + * + * Since: 1.10 + */ + g_object_class_install_property + (object_class, PROP_CONNECTIVITY_CHECK_AVAILABLE, + g_param_spec_boolean (NM_CLIENT_CONNECTIVITY_CHECK_AVAILABLE, "", "", + FALSE, + G_PARAM_READABLE | + G_PARAM_STATIC_STRINGS)); + + /** + * NMClient::connectivity-check-enabled + * + * Whether a connectivity checking service has been enabled. + * + * Since: 1.10 + */ + g_object_class_install_property + (object_class, PROP_CONNECTIVITY_CHECK_ENABLED, + g_param_spec_boolean (NM_CLIENT_CONNECTIVITY_CHECK_ENABLED, "", "", + FALSE, + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS)); + + /** * NMClient:primary-connection: * * The #NMActiveConnection of the device with the default route; |