summaryrefslogtreecommitdiff
path: root/root/usr/bin/changedns
authorzecke <zecke>2004-12-20 22:30:22 (UTC)
committer zecke <zecke>2004-12-20 22:30:22 (UTC)
commit21b825786deeb195fa73462f09fe70709aa5a628 (patch) (side-by-side diff)
treee11f53f3ddb9d5b6a927e7ae2e4233c23cd05224 /root/usr/bin/changedns
parentfd530016abd98bb6164c1ac962de0ca11d82e407 (diff)
downloadopie-21b825786deeb195fa73462f09fe70709aa5a628.zip
opie-21b825786deeb195fa73462f09fe70709aa5a628.tar.gz
opie-21b825786deeb195fa73462f09fe70709aa5a628.tar.bz2
Restore changes...
Diffstat (limited to 'root/usr/bin/changedns') (more/less context) (ignore whitespace changes)
-rwxr-xr-xroot/usr/bin/changedns5
1 files changed, 3 insertions, 2 deletions
diff --git a/root/usr/bin/changedns b/root/usr/bin/changedns
index 5059d08..edc48bc 100755
--- a/root/usr/bin/changedns
+++ b/root/usr/bin/changedns
@@ -1,42 +1,43 @@
#!/bin/sh
arg0="`basename $0`" # base portion of our filename
arg1="$1"
tmpfile="/tmp/resolv.conf.$$"
usage ( ) {
echo "usage: $arg0 -a|-r {ip} [{ip}...]"
rm -f $tmpfile
exit 1
}
[ "$#" -le 1 ] && usage
shift
-[ -f /etc/resolv.conf ] && cp /etc/resolv.conf $tmpfile
+[ ! -e "/etc/resolv.conf" ] && touch /etc/resolv.conf
+cp /etc/resolv.conf $tmpfile
case "$arg1" in
"-a")
for ip in "$@"; do
echo $ip
grep -sq "^nameserver $ip\$" $tmpfile || echo "nameserver $ip" >>$tmpfile
done
;;
"-r")
for ip in "$@"; do
grep -v "^nameserver $ip\$" $tmpfile >$tmpfile.2
mv $tmpfile.2 $tmpfile
done
;;
*)
usage
;;
esac
-[ -f $tmpfile ] && cp $tmpfile /etc/resolv.conf
+[ -e $tmpfile ] && cp $tmpfile /etc/resolv.conf
rm -f $tmpfile
exit 0