From: Roy Marples Date: Sat, 7 Aug 2010 19:44:21 +0000 (+0000) Subject: if_up and if_down variables allow more flexability. X-Git-Tag: v5.2.9~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1a4e7a5eaceba7d2acbb1bf5cb0d54966c20b963;p=thirdparty%2Fdhcpcd.git if_up and if_down variables allow more flexability. --- diff --git a/dhcpcd-hooks/20-resolv.conf b/dhcpcd-hooks/20-resolv.conf index 60f430b6..628636dc 100644 --- a/dhcpcd-hooks/20-resolv.conf +++ b/dhcpcd-hooks/20-resolv.conf @@ -119,7 +119,8 @@ remove_resolv_conf() fi } -case "$reason" in -BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC) add_resolv_conf;; -PREINIT|EXPIRE|FAIL|IPV4LL|NAK|NOCARRIER|RELEASE|STOP) remove_resolv_conf;; -esac +if $if_up; then + add_resolv_conf +elif $if_down; then + remove_resolv_conf +fi diff --git a/dhcpcd-hooks/29-lookup-hostname b/dhcpcd-hooks/29-lookup-hostname index ce131225..8661fccd 100644 --- a/dhcpcd-hooks/29-lookup-hostname +++ b/dhcpcd-hooks/29-lookup-hostname @@ -29,6 +29,6 @@ set_hostname() fi } -case "$reason" in -BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC) set_hostname;; -esac +if $if_up; then + set_hostname +fi diff --git a/dhcpcd-hooks/30-hostname b/dhcpcd-hooks/30-hostname index a19fc0df..87446fbe 100644 --- a/dhcpcd-hooks/30-hostname +++ b/dhcpcd-hooks/30-hostname @@ -29,6 +29,6 @@ set_hostname() fi } -case "$reason" in -BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC) set_hostname;; -esac +if $if_up; then + set_hostname +fi diff --git a/dhcpcd-hooks/50-ntp.conf b/dhcpcd-hooks/50-ntp.conf index 9ca262ef..da8f83cc 100644 --- a/dhcpcd-hooks/50-ntp.conf +++ b/dhcpcd-hooks/50-ntp.conf @@ -101,7 +101,8 @@ remove_ntp_conf() build_ntp_conf } -case "$reason" in -BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC) add_ntp_conf add;; -PREINIT|EXPIRE|FAIL|IPV4LL|NAK|NOCARRIER|RELEASE|STOP) remove_ntp_conf del;; -esac +if $if_up; then + add_ntp_conf add +elif $if_down; then + remove_ntp_conf del +fi diff --git a/dhcpcd-hooks/50-yp.conf b/dhcpcd-hooks/50-yp.conf index 4bdd0623..a1f57988 100644 --- a/dhcpcd-hooks/50-yp.conf +++ b/dhcpcd-hooks/50-yp.conf @@ -44,7 +44,8 @@ restore_yp_conf() fi } -case "$reason" in -BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC) make_yp_conf;; -EXPIRE|FAIL|IPV4LL|NAK|NOCARRIER|RELEASE|STOP) restore_yp_conf;; -esac +if $if_up; then + make_yp_conf +elif $if_down; then + restore_yp_conf +fi diff --git a/dhcpcd-run-hooks.in b/dhcpcd-run-hooks.in index 521529be..46ed6d55 100644 --- a/dhcpcd-run-hooks.in +++ b/dhcpcd-run-hooks.in @@ -9,6 +9,13 @@ signature_base_end="# End of dhcpcd" signature_end="$signature_base_end $from $interface" state_dir=/var/run/dhcpcd +if_up=false +if_down=false +case "$reason" in +BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC) if_up=true;; +PREINIT|EXPIRE|FAIL|IPV4LL|NAK|NOCARRIER|RELEASE|STOP) if_down=true;; +esac + # Ensure that all arguments are unique uniqify() {