#!/bin/sh # # /etc/dhcpc/dhcpcd.exe for use with avahi-autoipd. # /etc/dhcpc/dhcpcd.exe 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 "/etc/dhcpc/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; # $3 (optional) = "-d" debug flag passed if dhcpcd daemon has been # invoked with "-d" flag # # Sanity checks if [ $# -lt 2 ]; then logger -s -p local0.err -t dhcpcd.exe "wrong usage" exit 1 fi hostinfo="$1" state="$2" debug="$3" # Reading HostInfo file for configuration parameters . "${hostinfo}" case "${state}" in up) logger -s -p local0.info -t dhcpcd.exe "interface ${INTERFACE} has been configured with old IP=${IPADDR}" # If installed, remove auto IP if [ -x /usr/sbin/avahi-autoipd ]; then /usr/sbin/avahi-autoipd --kill ${INTERFACE} fi ;; new) logger -s -p local0.info -t dhcpcd.exe "interface ${INTERFACE} has been configured with new IP=${IPADDR}" ;; down) logger -s -p local0.info -t dhcpcd.exe "interface ${INTERFACE} has been brought down" # Configure auti IP address. if [ -x /usr/sbin/avahi-autoipd ]; then /usr/sbin/avahi-autoipd --wait --daemonize ${INTERFACE} fi ;; esac exit 0