RMerl/asuswrt-merlin — pull request #585 by pinwing (2014-03-28 21:01:38+00:00)
Title: Do not send an advertisement with the router lifetime set to 0 when restarting radvd

**Main change**
My Windows 8 system loses IPv6 connectivity after a few days and the default IPv6 gateway seems to disappear. The Windows event log displays the following message in this case:
>Level: Warning
>Source: Tcpip
>Event ID: 4205
>Autoconfigured route limit has been reached. No further autoconfigured routes will be added until the interface is reconnected.

Every time dhcp6c renews the prefix it received via DHCPv6-PD, it will restart radvd. Before radvd exists it will write the following message to the system log: sending stop adverts.

I suspect that Windows 8 loses connectivity because it restricts the number of advertised routes, similar to the second issue in the [IPv6 readiness update for Windows 7](http://support.microsoft.com/kb/2750841/en), probably to prevent the flood_router6 attack.

Sending SIGHUP to radvd to reload its config does not work, as radvd will terminate after it reloads the configuration. As an alternative, I have extended radvd to handle a new signal. When received, it will stop without sending a router advertisement with lifetime set to 0. This signal is to be used only when radvd is restarted.

This code has been running for a four days already and my system has yet to lose IPv6 connectivity.

**Minor change**
I have also updated the displaying of the lifetime text box in the web UI: the nvram variable is only used when set to stateful.