summaryrefslogtreecommitdiffstats
path: root/src/customdhcpcd/dhcpcd.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/customdhcpcd/dhcpcd.sh')
-rw-r--r--src/customdhcpcd/dhcpcd.sh46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/customdhcpcd/dhcpcd.sh b/src/customdhcpcd/dhcpcd.sh
new file mode 100644
index 0000000..8c86aac
--- /dev/null
+++ b/src/customdhcpcd/dhcpcd.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+#
+# This is a sample /etc/dhcpcd.sh script.
+# /etc/dhcpcd.sh script is executed by dhcpcd daemon
+# any time it configures or shuts down interface.
+# The following parameters are passed to dhcpcd.exe script:
+# $1 = HostInfoFilePath, e.g "/var/lib/dhcpcd/dhcpcd-eth0.info"
+# $2 = "up" if interface has been configured with the same
+# IP address as before reboot;
+# $2 = "down" if interface has been shut down;
+# $2 = "new" if interface has been configured with new IP address;
+#
+# Sanity checks
+
+if [ $# -lt 2 ]; then
+ logger -s -p local0.err -t dhcpcd.sh "wrong usage"
+ exit 1
+fi
+
+hostinfo="$1"
+state="$2"
+
+# Reading HostInfo file for configuration parameters
+[ -e "${hostinfo}" ] && . "${hostinfo}"
+
+case "${state}" in
+ up)
+ logger -s -p local0.info -t dhcpcd.sh \
+ "interface ${INTERFACE} has been configured with old IP=${IPADDR}"
+ # Put your code here for when the interface has been brought up with an
+ # old IP address here
+ ;;
+
+ new)
+ logger -s -p local0.info -t dhcpcd.sh \
+ "interface ${INTERFACE} has been configured with new IP=${IPADDR}"
+ # Put your code here for when the interface has been brought up with a
+ # new IP address
+ ;;
+
+ down) logger -s -p local0.info -t dhcpcd.sh \
+ "interface ${INTERFACE} has been brought down"
+ # Put your code here for the when the interface has been shut down
+ ;;
+esac
+exit 0