summaryrefslogtreecommitdiff
authorzecke <zecke>2004-10-15 00:49:19 (UTC)
committer zecke <zecke>2004-10-15 00:49:19 (UTC)
commit85ab1a8cc3935538cc1f33fef7c94ba31accb53e (patch) (side-by-side diff)
tree0524c6bf4da61cf83dc330582e3d2a2028d5cff1
parentd4bace84a2abfd1b4b242c24258961d093e38054 (diff)
downloadopie-85ab1a8cc3935538cc1f33fef7c94ba31accb53e.zip
opie-85ab1a8cc3935538cc1f33fef7c94ba31accb53e.tar.gz
opie-85ab1a8cc3935538cc1f33fef7c94ba31accb53e.tar.bz2
Test if '/etc/resolv.conf' exists and then back it up to $tmpfile.
Now we even can work with no file at all and create it to add our nameserver
Diffstat (more/less context) (ignore whitespace changes)
-rwxr-xr-xroot/usr/bin/changedns2
1 files changed, 1 insertions, 1 deletions
diff --git a/root/usr/bin/changedns b/root/usr/bin/changedns
index 8270e86..5059d08 100755
--- a/root/usr/bin/changedns
+++ b/root/usr/bin/changedns
@@ -1,42 +1,42 @@
#!/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
-cp /etc/resolv.conf $tmpfile
+[ -f /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
rm -f $tmpfile
exit 0