fix error messages
[openwrt/svn-archive/archive.git] / openwrt / package / base-files / default / etc / hotplug.d / net / 10-net
index 19f53abd7dab39b20cb37ca5ebaa13f94277a190..4579a84704bf6d4166f0d35020ce647a46604efa 100644 (file)
@@ -1,18 +1,10 @@
 #!/bin/sh
 setup_eth()
 {
-       [ -f /proc/net/wl0 ] && {
-               lsmod | grep wlcompat >&- || insmod wlcompat
-       }
-       iwconfig "$INTERFACE" 2>&- | grep -v 'no wireless' >&- && {
-               /sbin/wifi
-       }
-       if="$(echo "$INTERFACE" | sed s,eth,et,)"
-       ifconfig "$INTERFACE" up 2>&- >&-
-       for vlan in $(seq 0 15); do
-               [ "$(nvram get vlan${vlan}hwname)" = "$if" ] && \
-                       $DEBUG vconfig add "$INTERFACE" "$vlan"
+       for part in $(nvram get unused_ifnames); do
+               [ "$part" = "$INTERFACE" ] && exit 0
        done
+       ifconfig "$INTERFACE" up 2>&- >&-
 }
 
 find_name()
@@ -34,7 +26,7 @@ find_name()
                                }
                        ;;
                        *)
-                               [ "$(nvram get ${IFPROTO}_ifname)" = "$INTERFACE" \
+                               [ "$(nvram get ${IFTYPE}_device)" = "$INTERFACE" \
                                  -a -x /sbin/ifup.${IFPROTO} ] && return 0
                        ;;
                esac
@@ -55,16 +47,19 @@ do_ifup() {
        case "$1" in
                static)
                        ip=$(nvram get ${2}_ipaddr)
+                       ip6=$(nvram get ${2}_ip6addr)
                        netmask=$(nvram get ${2}_netmask)
                        gateway=$(nvram get ${2}_gateway)
        
                        $DEBUG ifconfig $if $ip ${netmask:+netmask $netmask} broadcast + up
+                       [ -n "$ip6" ] && $DEBUG ifconfig $if add $ip6
+
                        ${gateway:+$DEBUG route add default gw $gateway}
        
-                       [ -f /etc/resolv.conf ] || {
-                               debug "# --- creating /etc/resolv.conf ---"
+                       [ -f /tmp/resolv.conf ] || {
+                               debug "# --- creating /tmp/resolv.conf ---"
                                for dns in $(nvram get ${2}_dns); do
-                                       echo "nameserver $dns" >> /etc/resolv.conf
+                                       echo "nameserver $dns" >> /tmp/resolv.conf
                                done
                        }
                        
@@ -80,12 +75,7 @@ do_ifup() {
                        DHCP_HOSTNAME=${DHCP_HOSTNAME%%.*}
                        [ -z $DHCP_HOSTNAME ] || DHCP_ARGS="$DHCP_ARGS -H $DHCP_HOSTNAME"
                        [ "$if_proto" = "pptp" ] && DHCP_ARGS="$DHCP_ARGS -n -q" || DHCP_ARGS="$DHCP_ARGS -R &"
-                       oldpid=$(cat $pidfile)
                        ${DEBUG:-eval} "udhcpc $DHCP_ARGS"
-                       pidof udhcpc | grep "$oldpid" >&- 2>&- && {
-                               sleep 1
-                               kill -9 $oldpid
-                       }
                        # hotplug events are handled by /usr/share/udhcpc/default.script
                ;;
                *)
@@ -184,6 +174,6 @@ do_unregister() {
 }
 
 case "$ACTION" in
-       register) do_register;;
-       unregister) do_unregister;;
+       add|register) do_register;;
+       remove|unregister) do_unregister;;
 esac