summaryrefslogtreecommitdiffstats
path: root/src/dhcpcd.c
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2020-01-15 16:24:37 +0000
committerRoy Marples <roy@marples.name>2020-01-15 16:24:37 +0000
commit69c9f442062652dcd8d2f0cd46e4f114db0c120a (patch)
treeb501ecbbce9f1d0936731fe8c197fe6859cc866e /src/dhcpcd.c
parent06d726f8318a79247381ea4db731c6299f4645de (diff)
downloaddhcpcd-69c9f442062652dcd8d2f0cd46e4f114db0c120a.tar.xz
dhcpcd: Don't report DUID or IAID in anonymous.
It just confuses things.
Diffstat (limited to 'src/dhcpcd.c')
-rw-r--r--src/dhcpcd.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/dhcpcd.c b/src/dhcpcd.c
index 6e00d5df..1796e5c9 100644
--- a/src/dhcpcd.c
+++ b/src/dhcpcd.c
@@ -792,6 +792,8 @@ warn_iaid_conflict(struct interface *ifp, uint16_t ia_type, uint8_t *iaid)
TAILQ_FOREACH(ifn, ifp->ctx->ifaces, next) {
if (ifn == ifp || !ifn->active)
continue;
+ if (ifn->options->options & DHCPCD_ANONYMOUS)
+ continue;
if (ia_type == 0 &&
memcmp(ifn->options->iaid, iaid,
sizeof(ifn->options->iaid)) == 0)
@@ -847,7 +849,14 @@ dhcpcd_startinterface(void *arg)
}
}
- if (ifo->options & (DHCPCD_DUID | DHCPCD_IPV6)) {
+ if (ifo->options & (DHCPCD_DUID | DHCPCD_IPV6) &&
+ !(ifo->options & DHCPCD_ANONYMOUS))
+ {
+#ifdef INET6
+ size_t i;
+ struct if_ia *ia;
+#endif
+
/* Report client DUID */
if (ifp->ctx->duid == NULL) {
if (duid_init(ifp) == 0)
@@ -857,13 +866,6 @@ dhcpcd_startinterface(void *arg)
ifp->ctx->duid_len,
buf, sizeof(buf)));
}
- }
-
- if (ifo->options & (DHCPCD_DUID | DHCPCD_IPV6)) {
-#ifdef INET6
- size_t i;
- struct if_ia *ia;
-#endif
/* Report IAIDs */
loginfox("%s: IAID %s", ifp->name,