Fix bug which gave zero-length DHCPv6 packets if sendto() is interrupted.

This commit is contained in:
Simon Kelley
2019-12-03 18:18:46 +00:00
parent 5cee7c2702
commit f73f7397d7
2 changed files with 4 additions and 1 deletions

View File

@@ -57,6 +57,9 @@ version 2.81
Fix a bug which stopped --dhcp-name-match from working when a hostname Fix a bug which stopped --dhcp-name-match from working when a hostname
is supplied in --dhcp-host. Thanks to James Feeney for spotting this. is supplied in --dhcp-host. Thanks to James Feeney for spotting this.
Fix bug which caused very rarely caused zero-length DHCPv6 packets.
Thanks to Dereck Higgins for spotting this.
version 2.80 version 2.80
Add support for RFC 4039 DHCP rapid commit. Thanks to Ashram Method Add support for RFC 4039 DHCP rapid commit. Thanks to Ashram Method

View File

@@ -245,7 +245,7 @@ void dhcp6_packet(time_t now)
{ {
from.sin6_port = htons(port); from.sin6_port = htons(port);
while (retry_send(sendto(daemon->dhcp6fd, daemon->outpacket.iov_base, while (retry_send(sendto(daemon->dhcp6fd, daemon->outpacket.iov_base,
save_counter(0), 0, (struct sockaddr *)&from, save_counter(-1), 0, (struct sockaddr *)&from,
sizeof(from)))); sizeof(from))));
} }
} }