Batman-adv 2012.3.0 released

Added by Marek Lindner over 11 years ago

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:

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

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