diff options
Diffstat (limited to 'client/scripts/freebsd')
-rwxr-xr-x | client/scripts/freebsd | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/client/scripts/freebsd b/client/scripts/freebsd index 544ac05b..b9d7a36c 100755 --- a/client/scripts/freebsd +++ b/client/scripts/freebsd @@ -1,5 +1,11 @@ #!/bin/sh +if [ -x /usr/bin/logger ]; then + LOGGER="/usr/bin/logger -s -p user.notice -t dhclient" +else + LOGGER=echo +fi + make_resolv_conf() { echo search $new_domain_name >/etc/resolv.conf for nameserver in $new_domain_name_servers; do @@ -29,11 +35,11 @@ if [ -x /etc/dhclient-enter-hooks ]; then fi if [ x$new_network_number != x ]; then - echo New Network Number: $new_network_number + $LOGGER New Network Number: $new_network_number fi if [ x$new_broadcast_address != x ]; then - echo New Broadcast Address: $new_broadcast_address + $LOGGER New Broadcast Address: $new_broadcast_address new_broadcast_arg="broadcast $new_broadcast_address" fi if [ x$old_broadcast_address != x ]; then @@ -77,6 +83,7 @@ if [ x$reason = xBOUND ] || [ x$reason = xRENEW ] || \ [ x$current_hostname = x$old_host_name ]; then if [ x$current_hostname = x ] || \ [ x$new_host_name != x$old_host_name ]; then + $LOGGER "New Hostname: $new_host_name" hostname $new_host_name fi fi @@ -93,24 +100,31 @@ if [ x$reason = xBOUND ] || [ x$reason = xRENEW ] || \ route delete default $router >/dev/null 2>&1 done if [ "$old_static_routes" != "" ]; then - set $old_static_routes + set -- $old_static_routes while [ $# -gt 1 ]; do route delete $1 $2 shift; shift done fi - arp -n -a | sed -n -e 's/^.*(\(.*\)) at .*$/arp -n -d \1/p' |sh + arp -n -a | sed -n -e 's/^.*(\(.*\)) at .*$/arp -d \1/p' |sh fi if [ x$old_ip_address = x ] || [ x$old_ip_address != x$new_ip_address ] || \ [ x$reason = xBOUND ] || [ x$reason = xREBOOT ]; then eval "ifconfig $interface inet $new_ip_address $new_netmask_arg \ $new_broadcast_arg $medium" + $LOGGER "New IP Address($interface): $new_ip_address" + $LOGGER "New Subnet Mask($interface): $new_subnet_mask" + $LOGGER "New Broadcast Address($interface): $new_broadcast_address" + if [ "$new_routers" != "" ]; then + $LOGGER "New Routers: $new_routers" + fi route add $new_ip_address 127.1 >/dev/null 2>&1 for router in $new_routers; do route add default $router >/dev/null 2>&1 done if [ "$new_static_routes" != "" ]; then - set $new_static_routes + $LOGGER "New Static Routes: $new_static_routes" + set -- $new_static_routes while [ $# -gt 1 ]; do route add $1 $2 shift; shift @@ -138,7 +152,7 @@ if [ x$reason = xEXPIRE ] || [ x$reason = xFAIL ]; then route delete default $router >/dev/null 2>&1 done if [ "$old_static_routes" != "" ]; then - set $old_static_routes + set -- $old_static_routes while [ $# -gt 1 ]; do route delete $1 $2 shift; shift @@ -161,9 +175,13 @@ if [ x$reason = xTIMEOUT ]; then fi eval "ifconfig $interface inet $new_ip_address $new_netmask_arg \ $new_broadcast_arg $medium" + $LOGGER "New IP Address($interface): $new_ip_address" + $LOGGER "New Subnet Mask($interface): $new_subnet_mask" + $LOGGER "New Broadcast Address($interface): $new_broadcast_address" sleep 1 if [ "$new_routers" != "" ]; then - set $new_routers + $LOGGER "New Routers: $new_routers" + set -- $new_routers if ping -q -c 1 $1; then if [ x$new_ip_address != x$alias_ip_address ] && \ [ x$alias_ip_address != x ]; then @@ -174,9 +192,9 @@ if [ x$reason = xTIMEOUT ]; then for router in $new_routers; do route add default $router >/dev/null 2>&1 done - set $new_static_routes + set -- $new_static_routes while [ $# -gt 1 ]; do - route add $0 $1 + route add $1 $2 shift; shift done make_resolv_conf @@ -188,13 +206,13 @@ if [ x$reason = xTIMEOUT ]; then route delete default $router >/dev/null 2>&1 done if [ "$old_static_routes" != "" ]; then - set $old_static_routes + set -- $old_static_routes while [ $# -gt 1 ]; do route delete $1 $2 shift; shift done fi - arp -n -a | sed -n -e 's/^.*(\(.*\)) at .*$/arp -n -d \1/p' \ + arp -n -a | sed -n -e 's/^.*(\(.*\)) at .*$/arp -d \1/p' \ |sh >/dev/null 2>&1 exit_with_hooks 1 fi |