From 0c452870cdc2816749f4b1c12370a3d6a64158d5 Mon Sep 17 00:00:00 2001 From: Ermal Date: Wed, 15 Sep 2010 19:24:26 +0000 Subject: Reload dns and interface properly on dynamic types. --- sbin/dhclient-script | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'sbin/dhclient-script') diff --git a/sbin/dhclient-script b/sbin/dhclient-script index 7f1862e..87f8d20 100755 --- a/sbin/dhclient-script +++ b/sbin/dhclient-script @@ -59,6 +59,7 @@ arp_flush() { } delete_old_address() { + rm -f /var/db/${interface}_ip $IFCONFIG $interface inet -alias $old_ip_address $medium } @@ -80,8 +81,8 @@ add_new_address() { $LOGGER "New Routers ($interface): $new_routers" echo $new_routers > /tmp/${interface}_router - cp /var/db/${interface}_ip /tmp/rc.newwanip_oldip 2>/dev/null - /usr/local/sbin/pfSctl -c "'interface reload $interface'" + echo $new_ip_address > /var/db/${interface}_ip + /usr/local/sbin/pfSctl -c "interface reload $interface" } @@ -163,15 +164,13 @@ add_new_routes() { add_new_resolv_conf() { $LOGGER "Creating resolv.conf" - if [ ! -f "/var/etc/nameserver_$interface" ]; then - # Make sure file exists to avoid errors - touch /var/etc/nameserver_$interface - fi - if [ -n "$new_domain_name_servers" ]; then + if [ -f "/var/etc/nameserver_$interface" ]; then # Remove old entries for nameserver in `cat /var/etc/nameserver_$interface`; do $ROUTE delete $nameserver done + fi + if [ -n "$new_domain_name_server" ]; then rm -f /var/etc/nameserver_$interface for nameserver in $new_domain_name_servers; do # Add a route to the nameserver out the correct interface @@ -180,10 +179,11 @@ add_new_resolv_conf() { echo $nameserver >>/var/etc/nameserver_$interface $ROUTE add $nameserver -iface $interface done - echo $new_domain_name >/var/etc/defaultdomain.conf + #echo $new_domain_name >/var/etc/defaultdomain.conf + /usr/local/sbin/pfSctl -c 'service reload dns' fi - /usr/local/sbin/pfSctl -c "'interface reload $interface'" + /usr/local/sbin/pfSctl -c "interface reload $interface" return 0 } -- cgit v1.1