diff options
author | hrs <hrs@FreeBSD.org> | 2011-09-19 15:56:50 +0000 |
---|---|---|
committer | hrs <hrs@FreeBSD.org> | 2011-09-19 15:56:50 +0000 |
commit | 1463ae2b35779a93e0c6ff86e13d66fd5c9905dc (patch) | |
tree | c31fb71eb32c193a27b6111ccb641c542c946a6f /etc/rc.d/resolv | |
parent | 3005eb1de483cac7dd03626c8a83c00e837052fa (diff) | |
download | FreeBSD-src-1463ae2b35779a93e0c6ff86e13d66fd5c9905dc.zip FreeBSD-src-1463ae2b35779a93e0c6ff86e13d66fd5c9905dc.tar.gz |
Use resolvconf(8) to create /etc/resolv.conf, not directly overwrite it.
Approved by: re (kib)
Diffstat (limited to 'etc/rc.d/resolv')
-rwxr-xr-x | etc/rc.d/resolv | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/etc/rc.d/resolv b/etc/rc.d/resolv index c34209c..aa7921f 100755 --- a/etc/rc.d/resolv +++ b/etc/rc.d/resolv @@ -28,7 +28,7 @@ # # PROVIDE: resolv -# REQUIRE: netif +# REQUIRE: netif var # KEYWORD: nojail . /etc/rc.subr @@ -41,17 +41,17 @@ load_rc_config $name # if the info is available via dhcp/kenv # build the resolv.conf # -if [ ! -e /etc/resolv.conf -a \ - -n "`/bin/kenv dhcp.domain-name-servers 2> /dev/null`" ]; then - > /etc/resolv.conf - +if [ -n "`/bin/kenv dhcp.domain-name-servers 2> /dev/null`" ]; then + interface="`/bin/kenv boot.netif.name`" + ( if [ -n "`/bin/kenv dhcp.domain-name 2> /dev/null`" ]; then - echo domain `/bin/kenv dhcp.domain-name` > /etc/resolv.conf + echo domain `/bin/kenv dhcp.domain-name` fi set -- `/bin/kenv dhcp.domain-name-servers` for ns in `IFS=','; echo $*`; do - echo nameserver $ns >> /etc/resolv.conf; + echo nameserver $ns done + ) | /sbin/resolvconf -a ${interface}:dhcp4 fi |