aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/ipv6/odhcp6c/files
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-04-05 18:17:25 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-04-05 18:17:25 +0000
commit000ed6ac7214389868adeac23c99d93ae3e87ffd (patch)
tree55ea567216dd516fa279764617237f6db28966f2 /package/network/ipv6/odhcp6c/files
parent8edf724ac677ee4e022a34dd33b4ceb55c016493 (diff)
downloadupstream-000ed6ac7214389868adeac23c99d93ae3e87ffd.tar.gz
upstream-000ed6ac7214389868adeac23c99d93ae3e87ffd.tar.bz2
upstream-000ed6ac7214389868adeac23c99d93ae3e87ffd.zip
odhcp6c: Add renew handler for proto dhcpv6
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40386 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/network/ipv6/odhcp6c/files')
-rwxr-xr-xpackage/network/ipv6/odhcp6c/files/dhcpv6.sh9
1 files changed, 9 insertions, 0 deletions
diff --git a/package/network/ipv6/odhcp6c/files/dhcpv6.sh b/package/network/ipv6/odhcp6c/files/dhcpv6.sh
index 9b6275e3f9..90a83718e5 100755
--- a/package/network/ipv6/odhcp6c/files/dhcpv6.sh
+++ b/package/network/ipv6/odhcp6c/files/dhcpv6.sh
@@ -5,6 +5,8 @@
init_proto "$@"
proto_dhcpv6_init_config() {
+ renew_handler=1
+
proto_config_add_string 'reqaddress:or("try","force","none")'
proto_config_add_string 'reqprefix:or("auto","no",range(0, 64))'
proto_config_add_string clientid
@@ -67,6 +69,13 @@ proto_dhcpv6_setup() {
$opts $iface
}
+proto_dhcpv6_renew() {
+ local interface="$1"
+ # SIGUSR1 forces odhcp6c to renew its lease
+ local sigusr1="$(kill -l SIGUSR1)"
+ [ -n "$sigusr1" ] && proto_kill_command "$interface" $sigusr1
+}
+
proto_dhcpv6_teardown() {
local interface="$1"
proto_kill_command "$interface"