X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/777e76abb47dd74816ea063c471359b0db3aa2e7..23e86550c9c59436cc5f253292774861dd6ca62e:/package/base-files/default/etc/hotplug.d/net/10-net diff --git a/package/base-files/default/etc/hotplug.d/net/10-net b/package/base-files/default/etc/hotplug.d/net/10-net index 19f53abd7..dd4ee8863 100644 --- a/package/base-files/default/etc/hotplug.d/net/10-net +++ b/package/base-files/default/etc/hotplug.d/net/10-net @@ -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 } @@ -184,6 +179,6 @@ do_unregister() { } case "$ACTION" in - register) do_register;; - unregister) do_unregister;; + add|register) do_register;; + remove|unregister) do_unregister;; esac