Skip to content
reubenhwk edited this page Dec 21, 2010 · 1 revision

Latest Update(s)

March 5, 2010 - Version 1.6 updates:

* Decrease MSG_SIZE from 4096 to about 1500B. Send buffer uses a smaller size in order to avoid sending out fragmented packets, yet being able to receive full-size frames.
* Keep track of buffer size and exit if the number of prefixes/routes/etc. would grow too much. Prevent a memory corruption due to wrong memset. Patches from Jan Gorig, Red Hat bug #554125.
* On BSD use getifaddrs() also in setup_deviceinfo(), fixes a multiple interfaces problem on NetBSD 5 due to change in data structures. Patch from Michael Stapelberg.
* Allow radvd.conf prefix, clients, route, and RDNSS options to be in any order. Patch from Michael Stapelberg. 

September 10, 2009 - Version 1.5 updates:

* Fix infinite loop/segmentation fault problems when cable plugged out/plugged back in, caused by reload_config() and subsequent timer list corruption.
* Fix IgnoreIfMissing when cable is unplugged at startup. Radvd would keep skipping the interface.
* Fix parallel make. 

August 3, 2009 - Version 1.4 updates:

* Fix an unintentional change in 1.3: RAs were accidentally often unicast to solicitors instead of being multicast. This is still compliant with the specification but is not optimal. 

July 7, 2009 - Version 1.3 updates:

* Add a "clients" directive which can be used to specify the clients to which radvd will unicast RAs and ignore RSs from every other client. Possibly useful in gradual rollouts.
* Work around Linux IPV6_RECVPKTINFO|IPV6_RECVHOPLIMIT renumbering issues with some combinations of glibc and kernel (e.g. OpenWrt and Freetz projects)
* Use getifaddrs() on BSD instead of ioctl; work around unaligned traps on Alpha; Make NetBSD 5 compile. 

October 28, 2008 - Version 1.2 updates:

* Accept virtually any kind of interface naming convention.
* If stale radvd.pid exists, try to overwrite it unless the specified PID exists.
* Define _GNU_SOURCE to fix compilation with glibc >= 2.8.
* Remove -Wconversion from default CFLAGS due to bogus warnings, fix some real warnings.
* Decrease the default preferred lifetimes from 30/1 days to 1d/4h. 

February 4, 2008 - Version 1.1 updates:

* Implement privilege separation on Linux: a master root process (which is able to reconfigure interfaces) and the main process. There is '-s' toggle to keep old behaviour.
* Fix Linux retrans_timer on old kernels (newer ones have retrans_timer_ms)
* Fix stderr+syslog (default) logging on non-i386 platforms.
* Require that interface must be RUNNING instead of just UP. Note: this could break deployments with very old kernels.
* Implement automatic interface address advertising with special prefix ::/64.
* Relax interface naming (e.g. with VLANs) requirements.
* Fix ordering of route, prefix and RDNSS options (only matters with RDNSS) 

November 1, 2006 - Version 1.0 updates:

* Fix AdvDefaultLifetime initalization, broken in 0.9.1.
* Fix STDERR+syslog logging, don't try STDERR after forking.
* Implement RDNSS draft with (non-allocated) ND type code 25.
* Redefined IgnoreIfMissing: failed interfaces are now reinitialized by default. IgnoreIfMissing only omits warnings about these.
* Unblock SIGALRM at startup.
* Implement MAX_INITIAL_RTR_ADVERT_INTERVAL handling.
* Perform some dynamic/static code audit, fix some minor bugs and do cleanup as a result. 

January 13, 2006 - Version 0.9.1 updates:

* Clean up signed/unsigned values, add more warnings to CFLAGS
* Fix a couple of IPv6 Ready Logo Phase-2 IPv6 Core Protocols Self Test issues
* Create a short FAQ in README file, other minor documentation updates
* Get interface MTU automatically, so that you can use jumboframes and advertise MTU >1500 

October 19, 2005 - Version 0.9 updates:

* radvdump cleaned up, only config-file syntax supported
* add NEMO Basic support (RFC3961) and fix default HomeAgentLifetime
* more robust timer handler in case the kernel is buggy
* new default logging method "stderr_syslog"; Everything is logged on syslog, but the most important messages (i.e., start-up failures) are also logged on stderr. 

July 8, 2005 - Version 0.8 updates:

* More specific route codepoint has been changed to the official value, 24.
* Fix incorrect calculation of the 6to4 prefix on big-endian architectures.
* Fix a multicast join issue with HUP signal on newer 2.6.12+ Linux kernels.
* Merge some MIPv6 and non-MIPv6 code, improve error messages.
* Improve slightly the error messages from config file parsing. 

February 21, 2005 - Version 0.7.3 updates:

* A large number of fixes and cleanups
* Support Router Preferences and More Specific routes
* Add "IgnoreIfMissing" interface flag, to be used with interfaces which may become available only later on 

October 28, 2002 - Version 0.7.2 updates:

* add support for VLANs (from USAGI)
* make it compile better on newer NetBSD's (NetBSD)
* fix a syntax error in radvd.conf(5) sample documentation
* use IPV6_RECV{HOPLIMIT,PKTINFO} not IPV6_{HOPLIMIT,PKTINFO} if supported
* (in Red Hat spec file) don't create radvd gid explicitly
* a lot of coding style cleanups 

January 16, 2002 - Version 0.7.1 updates:

* Check that forwarding is enabled when starting radvd (helps avoid odd problems)
* Check configuration file permissions (note: in setuid operation, must not be writable by the user.group)
* Cleanups and enhancements for radvdump
* Ensure NULL-termination with strncpy even with overlong strings (non-criticals, but better safe than sorry)
* Update config.{guess,sub} to cope with some newer architectures
* Minor fixes and cleanups 

November 21, 2001 - Version 0.7.0 updates:

* Maintainership of radvd transferred from Lars Fenneberg to Nathan Lutchansky and Pekka Savola
* Support for ISATAP and other NMBA link types
* Bug fixed concerning FreeBSD 4.4 with multiple interfaces
* A few cleanups, including a couple of possible 1-byte buffer overflows (non-critical)

June 20, 2001 - Version 0.6.2pl4 updates:

* Set supplementary groups properly when dropping root (security)
* Do some more RFC2461 validity checks on received packets
* Rejoin all-routers multicast group if interface is cycled
* Remove provider-based addressing support, minor cleanups

April 28, 2001 - Version 0.6.2pl3 updates:

* Fixed broken 6to4 support.
* Converted to automake-based build style.

April 14, 2001 - Version 0.6.2pl2 updates:

* Now compiles on FreeBSD. (suggested by Marko Myllynen)
* Allows negative values for Home Agent Preference. (from Marko Myllynen)
* Misc bugfixes.

April 4, 2001 - Version 0.6.2pl1 contains:

* Integrated 6to4 support, to allow a prefix address to be dynamically created from the IPv4 address of a specific interface at configuration time. (from Nathan Lutchansky)
* The option to have radvd drop root privileges after the ICMP socket has been opened. (from Pekka Savola)
* The option to have radvd chroot to a "safe" directory. Currently unusable under Linux. (from Pekka Savola)
* Fixed signal handling, allowing signals to take effect immediately rather than at the next advertisement. (from Nathan Lutchansky)
* Misc bugfixes. (from Pekka Savola)
* Configuration parser grammar cleanup. (from Nathan Lutchansky)
Clone this wiki locally