tags 561949 + patch
thanks

I believe the attached patch fixes this bug.  It calls ifreset() when an
interface is restarted, which causes the ifid to be updated.


Bjørn

Attachment: pgpNW48lSUQ8G.pgp
Description: PGP signature

--- wide-dhcpv6-20080615.orig/dhcp6c.c	2009-12-21 15:35:55.000000000 +0100
+++ wide-dhcpv6-20080615/dhcp6c.c	2009-12-21 15:39:15.000000000 +0100
@@ -771,6 +771,12 @@
 
 	switch(command) {
 	case DHCP6CTL_COMMAND_START:
+		/* the ifid might have changed, so reset it before releasing the lease */
+		if (ifreset(ifp)) {
+			dprintf(LOG_NOTICE, FNAME, "failed to reset %s",
+				ifname);
+			return (-1);
+		}
 		free_resources(ifp);
 		if (client6_start(ifp)) {
 			debug_printf(LOG_NOTICE, FNAME, "failed to restart %s",

Reply via email to