[B.A.T.M.A.N.] batman-adv 2012.3.0 released

Marek Lindner lindner_marek at yahoo.de
Fri Aug 24 17:00:04 CEST 2012

The B.A.T.M.A.N. team is delighted to announce its latest release, batman-adv 
2012.3.0, focused on cleanups, stability and bugfixes bundled with a few 
smaller features. 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:

 * Al Viro <viro at ZenIV.linux.org.uk>
 * Antonio Quartulli <ordex at autistici.org>
 * Ben Hutchings <bhutchings at solarflare.com>
 * Jesper Juhl <jj at chaosbits.net>
 * Marek Lindner <lindner_marek at yahoo.de>
 * Martin Hundebøll <martin at hundeboll.net>
 * Matthias Schiffer <mschiffer at universe-factory.net>
 * Simon Wunderlich <simon.wunderlich at s2003.tu-chemnitz.de>
 * Sven Eckelmann <sven at narfation.org>

and to all those that supported us with good advice, code review and/or 
rigorous testing:

 * Andrew Lunn <andrew at lunn.ch>
 * David S. Miller <davem at davemloft.net>
 * Guido Iribarren <guidoiribarren at buenosaireslibre.org>
 * Nicolás Echániz <nicoechaniz at codigosur.org>

Special thanks to Sven Eckelmann who took on the nearly-impossible task of 
restyling / renaming of all existing variable declarations and function names 
throughout the code. With 68 patches he submitted about 5000 changes to 
achieve the goal of making the code more coherent.


David Miller, the Linux kernel network maintainer, wanted batman-adv to become 
a better Linux-citizen by conforming to the Linux namespace convention. Since 
this topic was neglected for quite some time a fair amount of code changes 
were required to comply with the convention. This renaming / restyling work 
represents the bulk of the changes coming with this release. The newly 
introduced extended traffic statistics support also is worth mentioning: Up 
until now batman-adv only collected statistics about the payload traffic. This 
release adds counters about mesh internal traffic like forwarded traffic, OGM 
and TT management traffic that can be accessed through the ethtool API.

Numerous components received bugfixes: The translation table handling code 
fixed a race condition in the full-table replacement logic and correctly 
handles endianness when forwarding TT Request packets. Furthermore, the 
cooperation between the routing protocol and the translation table has been 
abstracted to allow a smooth integration with the routing protocol API. The 
gateway code dealt with a regression which made it impossible to select a 
gateway on a client if a selection class smaller than 3 was chosen. The 
recently renovated bridge loop avoidance falsely dropped DHCP packets coming 
through the gateway code as it believed to prevent a loop. This has been 
addressed. The AP isolation was a little too aggressively dropping all 
broadcast traffic from WiFi clients which made it impossible, for example, to 
exchange mac address entries via ARP. The visualization output of the vis 
component does not fail on primary interfaces without neighbors anymore. 
Batman-adv was modified to initialize all reserved protocol fields with zero 
to ensure later compatibility when the packet format may be changed. A race 
condition in the hash implementation was found and fixed as well.


New in this release is the packet statistics retrieval component which 
displays the data gathered by batman-adv through a new command line switch. 
The mini-tcpdump allows to filter parsed packets by compatibility number only 
showing packets that match its own compat number. In addition, it learned the 
new bridge loop avoidance (BLA II) packet format to also display those 
packets. The ping and traceroute components properly initialize all ICMP 
fields to avoid unexpected behavior.

Happy routing,
The B.A.T.M.A.N. team

More information about the B.A.T.M.A.N mailing list