diff options
Diffstat (limited to 'src/dhcp/nm-dhcp-client.c')
-rw-r--r-- | src/dhcp/nm-dhcp-client.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/dhcp/nm-dhcp-client.c b/src/dhcp/nm-dhcp-client.c index 0906f5beba..3830ce34e0 100644 --- a/src/dhcp/nm-dhcp-client.c +++ b/src/dhcp/nm-dhcp-client.c @@ -55,6 +55,7 @@ NM_GOBJECT_PROPERTIES_DEFINE_BASE ( PROP_UUID, PROP_PRIORITY, PROP_TIMEOUT, + PROP_NEVER_DEFAULT, ); typedef struct _NMDhcpClientPrivate { @@ -69,6 +70,7 @@ typedef struct _NMDhcpClientPrivate { GBytes * client_id; char * hostname; gboolean use_fqdn; + gboolean never_default; NMDhcpState state; pid_t pid; @@ -774,6 +776,7 @@ nm_dhcp_client_handle_event (gpointer unused, ip_config = (GObject *) nm_dhcp_utils_ip4_config_from_options (priv->ifindex, priv->iface, str_options, + priv->never_default, priv->priority); } } @@ -834,6 +837,9 @@ get_property (GObject *object, guint prop_id, case PROP_TIMEOUT: g_value_set_uint (value, priv->timeout); break; + case PROP_NEVER_DEFAULT: + g_value_set_boolean (value, priv->never_default); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -875,6 +881,10 @@ set_property (GObject *object, guint prop_id, case PROP_TIMEOUT: priv->timeout = g_value_get_uint (value); break; + case PROP_NEVER_DEFAULT: + /* construct-only */ + priv->never_default = g_value_get_boolean (value); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -982,6 +992,12 @@ nm_dhcp_client_class_init (NMDhcpClientClass *client_class) G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS); + obj_properties[PROP_NEVER_DEFAULT] = + g_param_spec_boolean (NM_DHCP_CLIENT_NEVER_DEFAULT, "", "", + FALSE, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_STRINGS); + g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties); signals[SIGNAL_STATE_CHANGED] = |