From: Roy Marples Date: Tue, 18 Nov 2014 11:28:14 +0000 (+0000) Subject: If we don't have a hwlen and no clientid has been set, X-Git-Tag: v6.6.3~13 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e80baca56a093064be4e2f0009752a3b2efd8b84;p=thirdparty%2Fdhcpcd.git If we don't have a hwlen and no clientid has been set, force a DUID based ClientID. --- diff --git a/dhcpcd.c b/dhcpcd.c index d6ac4258..28dbe89f 100644 --- a/dhcpcd.c +++ b/dhcpcd.c @@ -383,9 +383,13 @@ configure_interface1(struct interface *ifp) /* If we haven't specified a ClientID and our hardware address * length is greater than DHCP_CHADDR_LEN then we enforce a ClientID - * of the hardware address family and the hardware address. */ + * of the hardware address family and the hardware address. + * If there is no hardware address and no ClientID set, + * force a DUID based ClientID. */ if (ifp->hwlen > DHCP_CHADDR_LEN) ifo->options |= DHCPCD_CLIENTID; + else if (ifp->hwlen == 0 && !(ifo->options & DHCPCD_CLIENTID)) + ifo->options |= DHCPCD_CLIENTID | DHCPCD_DUID; /* Firewire and InfiniBand interfaces require ClientID and * the broadcast option being set. */