diff options
author | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-06-21 16:54:37 +0000 |
---|---|---|
committer | blogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-06-21 16:54:37 +0000 |
commit | 4d953d3a481dd847524eae78c7aae00153bc7efd (patch) | |
tree | 37c9cbe251e4fb790aaa72e862c35822be30b491 /package/kernel/trelay/files | |
parent | 801985e5286881dd578a19280b2a6c8e212a530d (diff) |
packages: clean up the package folder
Signed-off-by: John Crispin <blogic@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37007 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/trelay/files')
-rw-r--r-- | package/kernel/trelay/files/trelay.config | 4 | ||||
-rw-r--r-- | package/kernel/trelay/files/trelay.hotplug | 5 | ||||
-rw-r--r-- | package/kernel/trelay/files/trelay.init | 32 |
3 files changed, 41 insertions, 0 deletions
diff --git a/package/kernel/trelay/files/trelay.config b/package/kernel/trelay/files/trelay.config new file mode 100644 index 0000000000..eb05013056 --- /dev/null +++ b/package/kernel/trelay/files/trelay.config @@ -0,0 +1,4 @@ +config trelay + option enabled 0 + option dev1 eth0 + option dev2 wlan0 diff --git a/package/kernel/trelay/files/trelay.hotplug b/package/kernel/trelay/files/trelay.hotplug new file mode 100644 index 0000000000..31f7378406 --- /dev/null +++ b/package/kernel/trelay/files/trelay.hotplug @@ -0,0 +1,5 @@ +case "$ACTION" in + add|register) + [ -f /var/run/trelay.active ] && /etc/init.d/trelay start + ;; +esac diff --git a/package/kernel/trelay/files/trelay.init b/package/kernel/trelay/files/trelay.init new file mode 100644 index 0000000000..c812e12c69 --- /dev/null +++ b/package/kernel/trelay/files/trelay.init @@ -0,0 +1,32 @@ +#!/bin/sh /etc/rc.common +START=80 + +check_relay() { + local cfg="$1" + + config_get_bool enabled "$cfg" enabled 1 + [ "$enabled" -gt 0 ] || return + + config_get dev1 "$cfg" dev1 + config_get dev2 "$cfg" dev2 + + [ -d "/sys/kernel/debug/trelay/${dev1}-${dev2}" ] && return + [ -d "/sys/class/net/${dev1}" -a -d "/sys/class/net/${dev2}" ] || return + + ifconfig "$dev1" up + ifconfig "$dev2" up + echo "${dev1}-${dev2},${dev1},${dev2}" > /sys/kernel/debug/trelay/add +} + +start() { + config_load trelay + config_foreach check_relay trelay + touch /var/run/trelay.active +} + +stop() { + rm -f /var/run/trelay.active + for relay in /sys/kernel/debug/trelay/*; do + [ -d "$relay" ] && echo > "$relay/remove" + done +} |