commit: dd5a41de524cfdebe47425e70513f95f9937e406 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> AuthorDate: Thu May 21 16:35:32 2020 +0000 Commit: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org> CommitDate: Sun May 31 05:13:17 2020 +0000 URL: https://gitweb.gentoo.org/proj/netifrc.git/commit/?id=dd5a41de
net/dhcpcd.sh: fetch pidfile location from dhcpcd There's a -P switch for this but we also need to take into account the -4 and -6 switches as they both alter the pidfile's name. Bug: https://bugs.gentoo.org/718114 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org> Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org> net/dhcpcd.sh | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/net/dhcpcd.sh b/net/dhcpcd.sh index 0a306b8..c0639e0 100644 --- a/net/dhcpcd.sh +++ b/net/dhcpcd.sh @@ -16,9 +16,12 @@ _config_vars="$_config_vars dhcp dhcpcd" dhcpcd_start() { - local args= opt= opts= pidfile="/run/dhcpcd-${IFACE}.pid" new=true + # check for pidfile after we gathered the user's opts because they can + # alter the pidfile's name (#718114) + local args= opt= pidfile= opts= new=true eval args=\$dhcpcd_${IFVAR} [ -z "${args}" ] && args=${dhcpcd} + pidfile="$(dhcpcd -P ${args} ${IFACE})" # Get our options eval opts=\$dhcp_${IFVAR} @@ -75,7 +78,13 @@ dhcpcd_start() dhcpcd_stop() { - local pidfile="/run/dhcpcd-${IFACE}.pid" opts= sig=SIGTERM + local args= pidfile= opts= sig=SIGTERM + + # check for pidfile after we gathered the user's opts because they can + # alter the pidfile's name (#718114) + eval args=\$dhcpcd_${IFVAR} + [ -z "${args}" ] && args=${dhcpcd} + pidfile="$(dhcpcd -P ${args} ${IFACE})" [ ! -f "${pidfile}" ] && return 0 ebegin "Stopping dhcpcd on ${IFACE}"
