Mon Apr 13 16:24:09 2020 UTC ()
Update to dhcpcd-9.0.1 with the following changes:

 * Privilege Separation
 * Linux default hostname is (none), everyone is is a blank string
 * Leases are now dumped over the control socket - you get RA's now as well.
 * Better support for many IPv6 routers
 * NetBSD: RTM_MISS filtering
 * RA: Deprecate stale addresses by setting pltime 0
 * DHCP6: Deprecate stale addresses by setting pltime 0

 * Linux: Improve router reachability detection
   Note that the kernel will still say it's failed when deleting the entry
 * Linux: Note router preference in ip -6 route output
 * Linux: Fix compile warning if HAVE_IN6_ADDR_GEN_MODE_NONE isn't supported
 * Linux: Fix syslog support when /dev/log isn't in /dev
 * privsep: configure defaults to user dhcpcd if _dhcpcd or _dhcp are unsuitable
 * privsep: Improve error when we don't have permission to write lease
 * privsep: Fix hooks restarting other daemons


(roy)
diff -r1.98 -r1.99 pkgsrc/net/dhcpcd/Makefile
diff -r1.8 -r1.9 pkgsrc/net/dhcpcd/PLIST
diff -r1.95 -r1.96 pkgsrc/net/dhcpcd/distinfo
diff -r1.3 -r1.4 pkgsrc/net/dhcpcd/files/dhcpcd.sh

cvs diff -r1.98 -r1.99 pkgsrc/net/dhcpcd/Makefile (expand / switch to unified diff)

--- pkgsrc/net/dhcpcd/Makefile 2020/04/09 16:31:53 1.98
+++ pkgsrc/net/dhcpcd/Makefile 2020/04/13 16:24:09 1.99
@@ -1,29 +1,62 @@ @@ -1,29 +1,62 @@
1# $NetBSD: Makefile,v 1.98 2020/04/09 16:31:53 roy Exp $ 1# $NetBSD: Makefile,v 1.99 2020/04/13 16:24:09 roy Exp $
2 2
3DISTNAME= dhcpcd-8.1.7 3DISTNAME= dhcpcd-9.0.1
4PKGNAME= ${DISTNAME:S/-rc/rc/} 4PKGNAME= ${DISTNAME:S/-rc/rc/}
5CATEGORIES= net 5CATEGORIES= net
6MASTER_SITES= ftp://roy.marples.name/pub/dhcpcd/ 6MASTER_SITES= ftp://roy.marples.name/pub/dhcpcd/
7MASTER_SITES+= http://roy.aydogan.net/dhcpcd/ 7MASTER_SITES+= http://roy.aydogan.net/dhcpcd/
8MASTER_SITES+= http://cflags.cc/roy/dhcpcd/ 8MASTER_SITES+= http://cflags.cc/roy/dhcpcd/
9EXTRACT_SUFX= .tar.xz 9EXTRACT_SUFX= .tar.xz
10 10
11MAINTAINER= roy@NetBSD.org 11MAINTAINER= roy@NetBSD.org
12HOMEPAGE= https://roy.marples.name/projects/dhcpcd/ 12HOMEPAGE= https://roy.marples.name/projects/dhcpcd/
13COMMENT= DHCP / IPv4LL / IPv6RA / DHCPv6 client 13COMMENT= DHCP / IPv4LL / IPv6RA / DHCPv6 client
14LICENSE= modified-bsd 14LICENSE= modified-bsd
15 15
 16.include "../../mk/bsd.prefs.mk"
 17
 18# Use the system _dhcpcd user introduced in NetBSD-9.99.53
 19# Don't use the _dhcp user in other BSDs as their home directory
 20# is /var/empty and that shouldn't be used as a chroot.
 21.if !empty(MACHINE_PLATFORM:MNetBSD-*) && \
 22 (empty(MACHINE_PLATFORM:MNetBSD-[0-9].*) || \
 23 !empty(MACHINE_PLATFORM:MNetBSD-9.99.5[3-9]-*) || \
 24 !empty(MACHINE_PLATFORM:MNetBSD-9.99.[6-9]*-*))
 25DHCPCD_USER?= _dhcpcd
 26DHCPCD_GROUP?= _dhcpcd
 27.endif
 28
 29.if !defined(DHCPCD_USER)
 30DHCPCD_USER?= dhcpcd
 31DHCPCD_GROUP?= dhcpcd
 32DHCPCD_CHROOTDIR?= ${VARBASE}/dhcpcd
 33
 34BUILD_DEFS+= DHCPCD_CHROOTDIR VARBASE
 35
 36PKG_USERS_VARS+= DHCPCD_USER
 37PKG_GROUPS_VARS+= DHCPCD_GROUP
 38PKG_GROUPS= ${DHCPCD_GROUP}
 39PKG_USERS= ${DHCPCD_USER}:${DHCPCD_GROUP}
 40
 41MAKE_DIRS+= ${DHCPCD_CHROOTDIR}
 42
 43PKG_GECOS.${DHCPCD_USER}= dhcpcd user
 44PKG_HOME.${DHCPCD_USER}= ${DHCPCD_CHROOTDIR}
 45PKG_SHELL.${DHCPCD_USER}= ${NOLOGIN}
 46.endif
 47
16USE_LANGUAGES= c99 48USE_LANGUAGES= c99
17HAS_CONFIGURE= yes 49HAS_CONFIGURE= yes
18CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR} 50CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR}
19CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} 51CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
20CONFIGURE_ARGS+= --with-hooks=ntp 52CONFIGURE_ARGS+= --with-hooks=ntp
21CONFIGURE_ARGS+= --datadir=${PREFIX}/share/examples 53CONFIGURE_ARGS+= --datadir=${PREFIX}/share/examples
 54CONFIGURE_ARGS+= --privsepuser=${DHCPCD_USER}
22 55
23EGDIR= ${PREFIX}/share/examples/dhcpcd 56EGDIR= ${PREFIX}/share/examples/dhcpcd
24INSTALL_MAKE_FLAGS+= SYSCONFDIR=${EGDIR} 57INSTALL_MAKE_FLAGS+= SYSCONFDIR=${EGDIR}
25CONF_FILES+= ${EGDIR}/dhcpcd.conf ${PKG_SYSCONFDIR}/dhcpcd.conf 58CONF_FILES+= ${EGDIR}/dhcpcd.conf ${PKG_SYSCONFDIR}/dhcpcd.conf
26 59
27RCD_SCRIPTS+= dhcpcd 60RCD_SCRIPTS+= dhcpcd
28 61
29.include "../../mk/bsd.pkg.mk" 62.include "../../mk/bsd.pkg.mk"

cvs diff -r1.8 -r1.9 pkgsrc/net/dhcpcd/PLIST (expand / switch to unified diff)

--- pkgsrc/net/dhcpcd/PLIST 2016/01/07 17:29:48 1.8
+++ pkgsrc/net/dhcpcd/PLIST 2020/04/13 16:24:09 1.9
@@ -1,15 +1,14 @@ @@ -1,15 +1,14 @@
1@comment $NetBSD: PLIST,v 1.8 2016/01/07 17:29:48 roy Exp $ 1@comment $NetBSD: PLIST,v 1.9 2020/04/13 16:24:09 roy Exp $
2libexec/dhcpcd-hooks/01-test 2libexec/dhcpcd-hooks/01-test
3libexec/dhcpcd-hooks/02-dump 
4libexec/dhcpcd-hooks/20-resolv.conf 3libexec/dhcpcd-hooks/20-resolv.conf
5libexec/dhcpcd-hooks/30-hostname 4libexec/dhcpcd-hooks/30-hostname
6libexec/dhcpcd-hooks/50-ntp.conf 5libexec/dhcpcd-hooks/50-ntp.conf
7libexec/dhcpcd-run-hooks 6libexec/dhcpcd-run-hooks
8man/man5/dhcpcd.conf.5 7man/man5/dhcpcd.conf.5
9man/man8/dhcpcd-run-hooks.8 8man/man8/dhcpcd-run-hooks.8
10man/man8/dhcpcd.8 9man/man8/dhcpcd.8
11sbin/dhcpcd 10sbin/dhcpcd
12share/examples/dhcpcd/dhcpcd.conf 11share/examples/dhcpcd/dhcpcd.conf
13share/examples/dhcpcd/hooks/10-wpa_supplicant 12share/examples/dhcpcd/hooks/10-wpa_supplicant
14share/examples/dhcpcd/hooks/15-timezone 13share/examples/dhcpcd/hooks/15-timezone
15share/examples/dhcpcd/hooks/29-lookup-hostname 14share/examples/dhcpcd/hooks/29-lookup-hostname

cvs diff -r1.95 -r1.96 pkgsrc/net/dhcpcd/distinfo (expand / switch to unified diff)

--- pkgsrc/net/dhcpcd/distinfo 2020/04/09 16:31:53 1.95
+++ pkgsrc/net/dhcpcd/distinfo 2020/04/13 16:24:09 1.96
@@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1$NetBSD: distinfo,v 1.95 2020/04/09 16:31:53 roy Exp $ 1$NetBSD: distinfo,v 1.96 2020/04/13 16:24:09 roy Exp $
2 2
3SHA1 (dhcpcd-8.1.7.tar.xz) = 2216815e680755769b827edf1e0c4a2b614e1a07 3SHA1 (dhcpcd-9.0.1.tar.xz) = 572154cb44497458d0a7994ccb35249b3c0e12d6
4RMD160 (dhcpcd-8.1.7.tar.xz) = d3525efe5529966c1dc455c2ab07c92c2750da2c 4RMD160 (dhcpcd-9.0.1.tar.xz) = c03fdbcc39b855aeec92248dafd92f51d83a4ffc
5SHA512 (dhcpcd-8.1.7.tar.xz) = ea58ef3db8254d677820c44b2842ef2f3697b2d90fcbd89b2ecfcbac87e705047cac17053bbe076a3f6d2775903c8e75eac38089d25c097e2f24a045c24977e8 5SHA512 (dhcpcd-9.0.1.tar.xz) = dea153c9a2f4a9d9c983bf50d8c18b544d7dbe1a2972ccc8eb33bbbc8b09178b39bdb9a38cc293db7861024509ccd475e11d84004bc4cd45947786f5e10db0a3
6Size (dhcpcd-8.1.7.tar.xz) = 230308 bytes 6Size (dhcpcd-9.0.1.tar.xz) = 244816 bytes

cvs diff -r1.3 -r1.4 pkgsrc/net/dhcpcd/files/dhcpcd.sh (expand / switch to unified diff)

--- pkgsrc/net/dhcpcd/files/dhcpcd.sh 2016/01/20 19:28:57 1.3
+++ pkgsrc/net/dhcpcd/files/dhcpcd.sh 2020/04/13 16:24:09 1.4
@@ -1,18 +1,23 @@ @@ -1,18 +1,23 @@
1#!@RCD_SCRIPTS_SHELL@ 1#!@RCD_SCRIPTS_SHELL@
2 2
3# PROVIDE: dhcpcd 3# PROVIDE: dhcpcd
4# REQUIRE: network mountcritlocal 4# REQUIRE: network mountcritlocal
5# BEFORE: NETWORKING 5# BEFORE: NETWORKING
 6# KEYWORD: chrootdir
 7
 8# To get syslog support for chroots, add this to rc.conf:
 9#dhcpcd_chrootdir=/var/chroot/dhcpcd
 10# The directory should match the home directory of the dhcpcd user.
6 11
7$_rc_subr_loaded . /etc/rc.subr 12$_rc_subr_loaded . /etc/rc.subr
8 13
9name="dhcpcd" 14name="dhcpcd"
10rcvar=$name 15rcvar=$name
11command="@PREFIX@/sbin/${name}" 16command="@PREFIX@/sbin/${name}"
12 17
13load_rc_config $name 18load_rc_config $name
14 19
15# Work out what pidfile dhcpcd will use based on flags 20# Work out what pidfile dhcpcd will use based on flags
16if [ -n "$flags" ]; then 21if [ -n "$flags" ]; then
17 myflags=$flags 22 myflags=$flags
18else 23else