with the following changes:
- DHCP6: Change state to REQEST when any IA has NOBINDING status
- DHCP6: Work better with infinite addresses
- DHCP6: Suboption 3 of NTP Server is a FQDN
- DHCP6: Fix deprecating a delegated prefix
- DHCP: Ensure we have a lease to extract options from
dhcpcd-0.7.7 has been released with the following changes:
- decode escaped \2XX and \ correctly
- support the up and coming dhcpcd-9
dhcpcd-8.1.2 has been released with the following changes:
- hooks: STOPPED is now run on timeout and exit
- musl: Fix build
- Linux: Validate RTM_NEWADDR/RTM_DELADDR messages
- BSD: Use IP_REVCIF rather than IN_PKTINFO
- build: address sanitisation is enabled for debug builds
- build: Improve detection of dlsym requirements
- DHCP: When rebinding, ensure we have a DHCP ARP state
- RA: Sort routers when reachability changes
- RA: Apply hoplimit, reachable and retrans timer values to kernel
- RA: Warn if advertised MTU > interface MTU
- OpenBSD: Fix carrier detection for OpenBSD-6.6
- dhcpcd: Report SSID connection to when we gain carrier
- DHCP: Fix corruption of address flags when renewing
The last issue was the cause of the recent report about dhcpcd pegging a CPU, so this is quite an important upgrade from 8.1.1
dhcpcd-8.1.1 has been released with the following changes:
- IPv6: Fix a potential crash when udevs marks an interface ready.
- Linux: compat shim added for setproctitle(3).
- arc4random: fixed UB in compat shim.
- DHCP: Fix fallout from dhcpcd-8.1.0 for checksum calculation.
The last fix involved a lot a people, quite a few different fixes and played havoc with gcc-9.2 but should now be resolved.
So, dhcpcd was added to DragonFlyBSD almost a year ago. Recently I've become a DragonFlyBSD committer with the express purpose of easing dhcpcd into the role of the default DHCP client.
All of the really needed kernel improvements are now in and dhcpcd doesn't log any more compile warnings, but there is more work to be done such as RFC 5227 support, restarting DaD on link state up and denying the use of an address until validated. I'm quite enjoying working on DragonFlyBSD ... their SMP approach is very interesting and in many ways much easier to work with than NetBSDs fine grained locking approach.
And then out of the blue, a discussion crops up on the FreeBSD mailing list about putting dhcpcd into the FreeBSD base system! This has led into me working on Priviledge Seperation which seems to be the only show stopper for FreeBSD acceptance. I have a reasonable idea on how this should work and hopefully this will be enough.