aboutsummaryrefslogtreecommitdiffstats
path: root/package/linux-atm
diff options
context:
space:
mode:
Diffstat (limited to 'package/linux-atm')
-rw-r--r--package/linux-atm/Makefile4
-rw-r--r--package/linux-atm/files/br2684.init41
2 files changed, 22 insertions, 23 deletions
diff --git a/package/linux-atm/Makefile b/package/linux-atm/Makefile
index d36c7c39e3..3c7bf9c5b5 100644
--- a/package/linux-atm/Makefile
+++ b/package/linux-atm/Makefile
@@ -63,8 +63,8 @@ $(IPKG_LINUX_ATM):
$(IPKG_BR2684CTL):
install -d -m0755 $(IDIR_BR2684CTL)/usr/sbin
cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/br2684ctl $(IDIR_BR2684CTL)/usr/sbin/
- install -d -m0755 $(IDIR_BR2684CTL)/etc/init.d
- install -m0755 ./files/br2684.init $(IDIR_BR2684CTL)/etc/init.d/S30br2684
+ install -d -m0755 $(IDIR_BR2684CTL)/etc/hotplug.d/net
+ install -m0644 ./files/br2684.init $(IDIR_BR2684CTL)/etc/hotplug.d/net/30-br2684
$(RSTRIP) $(IDIR_BR2684CTL)/
$(IPKG_BUILD) $(IDIR_BR2684CTL) $(PACKAGE_DIR)
diff --git a/package/linux-atm/files/br2684.init b/package/linux-atm/files/br2684.init
index 90ba36521d..88f40e76b6 100644
--- a/package/linux-atm/files/br2684.init
+++ b/package/linux-atm/files/br2684.init
@@ -1,22 +1,21 @@
-#!/bin/sh
-. /etc/functions.sh
-[ -e /etc/config/network ] && . /etc/config/network
-
-killall br2684ctl 2>&- >&-
-[ "$(nvram get pppoe_atm)" = 1 ] && {
- VPI=$(nvram get atm_vpi)
- VCI=$(nvram get atm_vci)
- case "$(nvram get atm_encaps)" in
- 0|vc)
- ENCAPS=0
- ;;
- 1|llc)
- ENCAPS=1
- ;;
- *)
- ENCAPS=0
- ;;
- esac
- insmod br2684
- br2684ctl -c0 -e${ENCAPS} -a${VPI:-8}.${VCI:-35} &
+[ "${INTERFACE%%[0-9]*}" = "atm" ] && {
+ case "$ACTION" in
+ register)
+ [ "$(nvram get pppoe_atm)" = 1 ] && {
+ VPI=$(nvram get atm_vpi)
+ VCI=$(nvram get atm_vci)
+ case "$(nvram get atm_encaps)" in
+ 0|vc) ENCAPS=0 ;;
+ 1|llc) ENCAPS=1 ;;
+ *) ENCAPS=0 ;;
+ esac
+ insmod br2684 2>&- >&-
+ br2684ctl -c0 -e${ENCAPS} -a${VPI:-8}.${VCI:-35} &
+ }
+ ;;
+ unregister)
+ killall br2684ctl 2>&- >&-
+ rmmod br2684
+ ;;
+ esac
}