Batman-adv 2013.1.0 released
Today, the B.A.T.M.A.N. team publishes batman-adv 2013.1.0 - a stability and bugfix release, addressing bugs and open issues only. No new features were added to ensure maximum stability. As the kernel module always depends on the Linux kernel it was compiled against, it does not make sense to provide binaries on our website. As usual, you will find the signed tarballs in our download section:
as well as prepackaged binaries in your distribution.
Thanks to all people sending in patches:
- Akinobu Mita <email@example.com>
- Antonio Quartulli <firstname.lastname@example.org>
- Jiri Pirko <email@example.com>
- Linus Lüssing <firstname.lastname@example.org>
- Marek Lindner <email@example.com>
- Matthias Schiffer <firstname.lastname@example.org>
- Pau Koning <email@example.com>
- Shan Wei <firstname.lastname@example.org>
- Simon Wunderlich <email@example.com>
- Sven Eckelmann <firstname.lastname@example.org>
and to all those that supported us with good advice, code review and/or rigorous testing:
- Sasha Levin <email@example.com>
The translation table has been further polished by not adding multicast addresses to avoid interfering with multicast traffic. The output of the translation tables has been modified to not print the 'last seen' values for batX interfaces (these entries are never subject to purging). Moreover, the CRC consistency checksums are printed along with the rest of the table to facilitate debugging. As part of our ongoing effort to document the code itself the entire types.h file was 'kernel doc'-ified, thereby documenting the bulk of all struct definitions and defines used throughout the batman-adv code base. While reviewing and documenting all these definitions a few unused but forgotten variables we identified and removed, reducing the memory consumption by a few bytes.
The previously added distributed ARP table (DAT) received more testing and reviews which led to a number of fixes: ARP packets with invalid MAC or IP addresses are not added to the ARP table anymore. A potential crash due to a NULL pointer dereference in the hash collision avoidance section was fixed. The batman-adv interface removal could lead to deadlock in the kernel if it was triggered at the wrong moment. To resolve the issue the internal interface cleanup is delayed until all necessary locks can safely be acquired. The initialization of the lockdep class keys for has structures inside batman-adv has been improved to mitigate false warnings when running lockdep to find problems in the locking routines.
The snprintf() handling in various components has been revised to avoid a potential crash due to missing '\0' delimiter at the end of the string.
The B.A.T.M.A.N. team