ndp: Don't send a DNS search list if we don't have a list of DNS servers

This is not explicitly forbidden, but it confuses the ISC's DHCP client,
and doesn't make sense anyway.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
Stefano Brivio 2021-10-21 17:34:42 +02:00
parent af55c4e98f
commit 73a4a6b7cd

3
ndp.c
View file

@ -140,10 +140,11 @@ int ndp(struct ctx *c, struct ethhdr *eh, size_t len)
memcpy(p, &c->dns6[i], 16); /* address */ memcpy(p, &c->dns6[i], 16); /* address */
p += 16; p += 16;
} }
}
for (n = 0; *c->dns_search[n].n; n++) for (n = 0; *c->dns_search[n].n; n++)
dns_s_len += strlen(c->dns_search[n].n) + 2; dns_s_len += strlen(c->dns_search[n].n) + 2;
}
if (dns_s_len) { if (dns_s_len) {
*p++ = 31; /* DNSSL */ *p++ = 31; /* DNSSL */
*p++ = (len + 8 - 1) / 8 + 1; /* length */ *p++ = (len + 8 - 1) / 8 + 1; /* length */