Implement resolvconf support

Due to the potential for multiple sources contenting for /etc/resolv.conf
control, this patch replaces direct file munging with resolvconf indirection.

--- a/client/scripts/linux	1970-01-01 09:00:01.000000000 +0900
+++ b/client/scripts/linux	1970-01-01 09:00:01.000000000 +0900
@@ -36,11 +36,11 @@
 # This updated version mostly follows Debian script by Andrew Pollock et al.
 make_resolv_conf() {
     local new_resolv_conf
+    new_resolv_conf=$(mktemp)
 
     # DHCPv4
     if [ -n "$new_domain_search" ] || [ -n "$new_domain_name" ] ||
-       [ -n "$new_domain_name_servers" ]; then
-        new_resolv_conf=/etc/resolv.conf.dhclient-new
+        [ -n "$new_domain_name_servers" ]; then
         rm -f $new_resolv_conf
 
         if [ -n "$new_domain_name" ]; then
@@ -70,17 +70,12 @@
                 echo nameserver $nameserver >>$new_resolv_conf
             done
         else # keep 'old' nameservers
-            sed -n /^\w*[Nn][Aa][Mm][Ee][Ss][Ee][Rr][Vv][Ee][Rr]/p /etc/resolv.conf >>$new_resolv_conf
+            resolvconf -l "$interface.dhcp" | sed -n /^\w*[Nn][Aa][Mm][Ee][Ss][Ee][Rr][Vv][Ee][Rr]/p >>$new_resolv_conf
         fi
 
-	if [ -f /etc/resolv.conf ]; then
-	    chown --reference=/etc/resolv.conf $new_resolv_conf
-	    chmod --reference=/etc/resolv.conf $new_resolv_conf
-	fi
-        mv -f $new_resolv_conf /etc/resolv.conf
+        resolvconf -a "$interface.dhpc" <"$new_resolv_conf"
     # DHCPv6
     elif [ -n "$new_dhcp6_domain_search" ] || [ -n "$new_dhcp6_name_servers" ]; then
-        new_resolv_conf=/etc/resolv.conf.dhclient-new
         rm -f $new_resolv_conf
 
         if [ -n "$new_dhcp6_domain_search" ]; then
@@ -97,14 +92,10 @@
                 echo nameserver $nameserver >>$new_resolv_conf
             done
         else # keep 'old' nameservers
-            sed -n /^\w*[Nn][Aa][Mm][Ee][Ss][Ee][Rr][Vv][Ee][Rr]/p /etc/resolv.conf >>$new_resolv_conf
+            resolvconf -l "$interface.dhcp6" | sed -n /^\w*[Nn][Aa][Mm][Ee][Ss][Ee][Rr][Vv][Ee][Rr]/p >>$new_resolv_conf
         fi
 
-	if [ -f /etc/resolv.conf ]; then
-            chown --reference=/etc/resolv.conf $new_resolv_conf
-            chmod --reference=/etc/resolv.conf $new_resolv_conf
-	fi
-        mv -f $new_resolv_conf /etc/resolv.conf
+        resolvconf -a "$interface.dhpc6" <"$new_resolv_conf"
     fi
 }
 
