Preliminary version of tunneldigger OpenWrt package.

This commit is contained in:
Jernej Kos 2012-06-05 11:05:37 +02:00
commit 63debca735
4 changed files with 76 additions and 0 deletions

38
net/tunneldigger/Makefile Normal file
View File

@ -0,0 +1,38 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=tunneldigger
PKG_VERSION:=0.1
PKG_RELEASE:=1
PKG_REV:=HEAD
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=git://github.com/wlanslovenija/tunneldigger.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=$(PKG_REV)
include $(INCLUDE_DIR)/package.mk
define Package/tunneldigger
SECTION:=net
CATEGORY:=Network
DEPENDS:=libnl-tiny
TITLE:=L2TPv3 tunnel broker client
endef
define Build/Prepare
$(call Build/Prepare/Default)
mv $(PKG_BUILD_DIR)/client/* $(PKG_BUILD_DIR)
sed -i s/-lnl /-lnl-tiny /g $(PKG_BUILD_DIR)/Makefile
endef
define Package/tunneldigger/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/l2tp_client $(1)/usr/bin/tunneldigger
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/tunneldigger.init $(1)/etc/init.d/tunneldigger
$(INSTALL_DIR) $(1)/lib/tunneldigger
$(INSTALL_BIN) ./files/iface_setup.sh $(1)/lib/tunneldigger/iface_setup.sh
endef
$(eval $(call BuildPackage,tunneldigger))

View File

@ -0,0 +1,6 @@
config broker
option address 'x.y.z.w'
option port 53
option uuid 'abcd'
option interface 'l2tp0'

View File

@ -0,0 +1,4 @@
#!/bin/sh
# Call the hotplug network interface setup script so our new L2TPv3 tunnel
# interface gets configured with required addresses
ACTION="add" INTERFACE="$1" /sbin/hotplug-call net

View File

@ -0,0 +1,28 @@
#!/bin/sh /etc/rc.common
START=40
STOP=90
config_cb() {
local cfg="$CONFIG_SECTION"
config_get configname "$cfg" TYPE
case "$configname" in
broker)
config_get address "$cfg" address
config_get port "$cfg" port
config_get uuid "$cfg" uuid
config_get interface "$cfg" interface
/usr/bin/tunneldigger -u ${uuid} -l 0.0.0.0 -b ${address} -p ${port} -i ${interface} &
;;
esac
}
start()
{
config_load tunneldigger
}
stop() {
killall tunneldigger
}