[backfire] backport r25454
[openwrt-10.03/.git] / package / base-files / files / etc / hotplug.d / iface / 10-routes
index 3e0bebbbe3bd6ce198ff749ab7999fac3e149caf..76a406284622c6dab635fadad4e14d97e28aaa69 100644 (file)
@@ -90,6 +90,33 @@ case "$ACTION" in
                        ifconfig "$DEVICE" del "$ip6addr"
                        ifconfig "$DEVICE" add "$ip6addr"
                }
+               
+               # Setup sysctls
+               local proto accept_ra send_rs
+               
+               config_get proto "$INTERFACE" proto
+               if [ "$proto" = dhcp ]; then
+                       accept_ra=1
+                       send_rs=0
+               else
+                       accept_ra=0
+                       send_rs=1
+               fi
+
+               config_get_bool accept_ra "$INTERFACE" accept_ra $accept_ra
+               [ $accept_ra -eq 0 ] || {
+                       logger -t ifup "Allowing Router Advertisements on $INTERFACE ($DEVICE)"
+                       accept_ra=2
+               }
+               do_sysctl "net.ipv6.conf.$INTERFACE.accept_ra" $accept_ra
+
+               config_get_bool send_rs "$INTERFACE" send_rs $send_rs
+               [ $send_rs -eq 0 ] || {
+                       logger -t ifup "Enabling Router Solicitations on $INTERFACE ($DEVICE)"
+                       send_rs=2
+               }
+               do_sysctl "net.ipv6.conf.$INTERFACE.forwarding" $send_rs
+
 
                # Setup routes
                config_foreach "add_route" route