diff options
| author | Michael Biebl <biebl@debian.org> | 2013-02-20 23:06:55 +0100 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2013-02-20 23:06:55 +0100 |
| commit | 6bb18bdca6b7bf811bdd00dbea1b09f3a367d2dc (patch) | |
| tree | 8fec068abdd1bc1ade3839f599e1c18d6c524a6a /src/dhcp-manager/nm-dhcp-dhclient.c | |
| parent | fdcb282bbb150da0049cf2dd5b54e56eb3d0b55f (diff) | |
| parent | 8d275584fc94f398f0a7c990dcd057533d9a5856 (diff) | |
Merge tag 'upstream/0.9.8.0' into experimental
Upstream version 0.9.8.0
Diffstat (limited to 'src/dhcp-manager/nm-dhcp-dhclient.c')
| -rw-r--r-- | src/dhcp-manager/nm-dhcp-dhclient.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/dhcp-manager/nm-dhcp-dhclient.c b/src/dhcp-manager/nm-dhcp-dhclient.c index d9f51352..c43ecf50 100644 --- a/src/dhcp-manager/nm-dhcp-dhclient.c +++ b/src/dhcp-manager/nm-dhcp-dhclient.c @@ -455,8 +455,9 @@ dhclient_start (NMDHCPClient *client, GError *error = NULL; const char *iface, *uuid, *system_bus_address; char *binary_name, *cmd_str, *pid_file = NULL, *system_bus_address_env = NULL; - gboolean ipv6; + gboolean ipv6, success; guint log_domain; + char *escaped; g_return_val_if_fail (priv->pid_file == NULL, -1); @@ -497,6 +498,20 @@ dhclient_start (NMDHCPClient *client, return -1; } + /* Save the DUID to the leasefile dhclient will actually use */ + if (ipv6) { + escaped = nm_dhcp_dhclient_escape_duid (duid); + success = nm_dhcp_dhclient_save_duid (priv->lease_file, escaped, &error); + g_free (escaped); + if (!success) { + nm_log_warn (log_domain, "(%s): failed to save DUID to %s: (%d) %s.", + iface, priv->lease_file, + error ? error->code : -1, + error && error->message ? error->message : "(unknown)"); + return -1; + } + } + argv = g_ptr_array_new (); g_ptr_array_add (argv, (gpointer) priv->path); |