Rev 3 | Blame | Compare with Previous | Last modification | View Log | RSS feed
#!/bin/bash# run dhclient.d scripts in an emulated environmentPATH=/bin:/usr/bin:/sbinSAVEDIR=/var/lib/dhclientETCDIR=/etc/dhcpinterface=$1eval "$(declare | LC_ALL=C grep '^DHCP4_[A-Z_]*=' | while read -r opt; dooptname=${opt%%=*}optname=${optname,,}optname=new_${optname#dhcp4_}optvalue=${opt#*=}echo "$optname=$optvalue"done)"[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network[ -f /etc/sysconfig/network-scripts/ifcfg-$interface ] && \. /etc/sysconfig/network-scripts/ifcfg-$interfaceif [ -d $ETCDIR/dhclient.d ]; thenfor f in $ETCDIR/dhclient.d/*.sh; doif [ -x $f ]; thensubsystem="${f%.sh}"subsystem="${subsystem##*/}". ${f}if [ "$2" = "up" ]; then"${subsystem}_config"elif [ "$2" = "down" ]; then"${subsystem}_restore"fifidonefi