--- /dev/null
+--- _startklips.old 2008-09-07 00:50:40.000000000 +0200
++++ _startklips 2008-09-07 00:50:42.000000000 +0200
+@@ -146,23 +146,35 @@
+
+ # figure out ifconfig for interface
+ addr=
+- eval `ifconfig $phys |
+- awk '$1 == "inet" && $2 ~ /^addr:/ && $NF ~ /^Mask:/ {
+- gsub(/:/, " ", $0)
+- print "addr=" $3
+- other = $5
+- if ($4 == "Bcast")
+- print "type=broadcast"
+- else if ($4 == "P-t-P")
+- print "type=pointopoint"
+- else if (NF == 5) {
+- print "type="
+- other = ""
+- } else
+- print "type=unknown"
+- print "otheraddr=" other
+- print "mask=" $NF
+- }'`
++ eval `ip addr show $phys | awk '$3 ~ /BROADCAST|POINTOPOINT/ {
++ if ($3 ~ /BROADCAST/)
++ print "type=broadcast";
++ else if ($3 ~ /POINTOPOINT/)
++ print "type=pointopoint";
++ else {
++ print "type=";
++ }
++ }'`
++
++ if [ "$type" == "broadcast" ]; then
++ eval `ip addr show $phys | awk '$1 == "inet" { gsub(/\//, " ");
++ print "addr=" $2;
++ print "mask=" $3;
++ print "otheraddr=" $5;
++ }'`
++ elif [ "$type" == "pointopoint" ]; then
++ eval `ip addr show $phys | awk '$1 == "inet" { gsub(/\//, " ");
++ print "addr=" $2;
++ print "mask=" $5;
++ print "otheraddr=" $4;
++ }'`
++ else
++ type="unknown"
++ otheraddr=
++ fi
++
++ eval `whatmask /$mask | awk -F': ' '$1 ~ /^Netmask =/ { print "mask=" $2 }'`
++
+ if test " $addr" = " "
+ then
+ echo "unable to determine address of \`$phys'"
+@@ -171,7 +183,7 @@
+ if test " $type" = " unknown"
+ then
+ echo "\`$phys' is of an unknown type"
+- exit 1
++ exit 1
+ fi
+ if test " $omtu" != " "
+ then