odhcp6c: Add renew handler for proto dhcpv6
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 5 Apr 2014 18:17:25 +0000 (18:17 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 5 Apr 2014 18:17:25 +0000 (18:17 +0000)
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40386 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/network/ipv6/odhcp6c/files/dhcpv6.sh

index 9b6275e..90a8371 100755 (executable)
@@ -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"