mirror of https://github.com/hak5/openwrt.git
br2684ctl: rework init script - use common defaults for unit and atmdev - add a more reliable stop routine - localize variables
SVN-Revision: 23552lede-17.01
parent
a50421a302
commit
db6aaa7bcf
|
@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
|
||||||
|
|
||||||
PKG_NAME:=br2684ctl
|
PKG_NAME:=br2684ctl
|
||||||
PKG_VERSION:=20040226
|
PKG_VERSION:=20040226
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=2
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
|
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
|
||||||
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/b/br2684ctl
|
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/b/br2684ctl
|
||||||
|
|
|
@ -1,31 +1,46 @@
|
||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
START=50
|
START=50
|
||||||
|
|
||||||
stop() {
|
|
||||||
killall br2684ctl 2>/dev/null >/dev/null
|
|
||||||
sleep 1
|
|
||||||
rmmod br2684
|
|
||||||
}
|
|
||||||
|
|
||||||
start_daemon() {
|
start_daemon() {
|
||||||
local cfg="$1"
|
local cfg="$1"
|
||||||
config_get atmdev "$cfg" atmdev
|
|
||||||
config_get unit "$cfg" unit
|
local atmdev
|
||||||
config_get vpi "$cfg" vpi
|
config_get atmdev "$cfg" atmdev 0
|
||||||
config_get vci "$cfg" vci
|
|
||||||
|
local unit
|
||||||
|
config_get unit "$cfg" unit 0
|
||||||
|
|
||||||
|
local vpi
|
||||||
|
config_get vpi "$cfg" vpi 8
|
||||||
|
|
||||||
|
local vci
|
||||||
|
config_get vci "$cfg" vci 35
|
||||||
|
|
||||||
|
local encaps
|
||||||
config_get encaps "$cfg" encaps
|
config_get encaps "$cfg" encaps
|
||||||
config_get payload "$cfg" payload
|
|
||||||
config_get qos "$cfg" qos
|
|
||||||
case "$encaps" in
|
case "$encaps" in
|
||||||
1|vc) encaps=1;;
|
1|vc) encaps=1;;
|
||||||
*) encaps=0;;
|
*) encaps=0;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
local payload
|
||||||
|
config_get payload "$cfg" payload
|
||||||
|
|
||||||
case "$payload" in
|
case "$payload" in
|
||||||
0|routed) payload=0;;
|
0|routed) payload=0;;
|
||||||
*) payload=1;;
|
*) payload=1;;
|
||||||
esac
|
esac
|
||||||
[ "$qos" ] && qos="-q $qos"
|
|
||||||
br2684ctl -b -c "$unit" -e "$encaps" -p "$payload" $qos -a "${atmdev:+$atmdev.}${vpi:-8}.${vci:-35}"
|
local qos
|
||||||
|
config_get qos "$cfg" qos
|
||||||
|
|
||||||
|
local circuit="$atmdev.$vpi.$vci"
|
||||||
|
local pid="/var/run/br2684ctl-$circuit.pid"
|
||||||
|
|
||||||
|
start-stop-daemon -S -b -x /usr/sbin/br2684ctl -m -p "$pid" -- \
|
||||||
|
-c "$unit" -e "$encaps" -p "$payload" \
|
||||||
|
-a "$circuit" ${qos:+-q "$qos"}
|
||||||
}
|
}
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
|
@ -33,3 +48,13 @@ start() {
|
||||||
config_load network
|
config_load network
|
||||||
config_foreach start_daemon atm-bridge
|
config_foreach start_daemon atm-bridge
|
||||||
}
|
}
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
local pid
|
||||||
|
for pid in /var/run/br2684ctl-*.pid; do
|
||||||
|
if [ -f "$pid" ]; then
|
||||||
|
service_kill br2684ctl "$pid"
|
||||||
|
rm -f "$pid"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue