br2684ctl from linux-atm

Signed-off-by: Philip Prindeville <philipp_subx@redfish-solutions.com>

SVN-Revision: 25225
This commit is contained in:
Florian Fainelli
2011-01-29 02:14:22 +00:00
parent 4e6bca2d05
commit 3810bdf320
5 changed files with 22 additions and 435 deletions

View File

@@ -1,4 +1,4 @@
#
#
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
@@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=linux-atm
PKG_VERSION:=2.5.2
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/$(PKG_NAME)
@@ -43,6 +43,18 @@ define Package/atm-tools/description
This package contains the Linux ATM tools.
endef
define Package/br2684ctl
SECTION:=net
CATEGORY:=Network
DEPENDS:=linux-atm
TITLE:=ATM Ethernet bridging configuration utility
URL:=http://linux-atm.sourceforge.net/
endef
define Package/br2684ctl/description
Support for AAL5 encapsulation (RFC-1483/RFC-2684) over ATM.
endef
define Build/Configure
$(call Build/Configure/Default)
# prevent autoheader invocation
@@ -109,5 +121,13 @@ define Package/atm-tools/install
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ttcp_atm $(1)/usr/bin/
endef
define Package/br2684ctl/install
$(INSTALL_DIR) $(1)/etc/init.d/
$(INSTALL_BIN) ./files/br2684ctl $(1)/etc/init.d/
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/br2684ctl $(1)/usr/sbin/
endef
$(eval $(call BuildPackage,linux-atm))
$(eval $(call BuildPackage,atm-tools))
$(eval $(call BuildPackage,br2684ctl))

View File

@@ -0,0 +1,60 @@
#!/bin/sh /etc/rc.common
START=50
start_daemon() {
local cfg="$1"
local atmdev
config_get atmdev "$cfg" atmdev 0
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
case "$encaps" in
1|vc) encaps=1;;
*) encaps=0;;
esac
local payload
config_get payload "$cfg" payload
case "$payload" in
0|routed) payload=0;;
*) payload=1;;
esac
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() {
insmod br2684 >/dev/null 2>/dev/null
config_load network
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
}