batman-adv 2012.2.0:

* support latest kernels (2.6.29 - 3.5)
* cleanup of coding style (use of named constants instead of values, refactored
  code to reduce readability, replace bitarrays with kernel functionality, ...)
* tweaking hop penalty to reduce route flapping
* enhanced the framework to support multiple routing algorithms
* reimplemented the bridge loop avoidance with support for multiple active
  backbone gateways
* some bugs fixed (translation table flag handling, correct unicast rerouting,
  endianness fixed for translation table crc, avoid of routing loops by being
  strict on forwarded ogms, ...)

 -- Tue, 12 Jun 2012 18:21:54 +0200

batman-adv 2012.1.0:

* support latest kernels (2.6.29 - 3.4)
* makefile rewrite (install target, cleanups, new selection system for features)
* cleanup of coding style (explicit marking of common headers, common unit for
  time specific defines, ...)
* Added framework to switch between different routing algorithms
* some bugs fixes (distinguish between wrap-around ttvn and uninitialized ttvn
  value, ...)

 -- Fri, 30 Mar 2012 19:31:12 +0300

batman-adv 2012.0.0:

* support latest kernels (2.6.29 - 3.3)
* Fix bat_socket_read memory corruption (CVE-2011-4604)
* Cleanup of gateway handling code
* many bugs (hang when softif creation fails, memory leaks when hashes
  table cannot be filled, wrong filter for missed ogms, many smaller
  translation table problems, ...) fixed

 -- Sun, 05 Feb 2012 15:06:08 +0100

batman-adv 2011.4.0:

* support latest kernels (2.6.29 - 3.2)
* starting of code refactoring to support multiple protocol versions
* added support for AP-isolation to prevent non-mesh WIFI clients to talk to
  each other over the mesh
* some bugs (memory leaks in the translation table, wrong initialization of
  ethernet addresses of translation table entries, ...) squashed

 -- Sun, 13 Nov 2011 20:40:05 +0100

batman-adv 2011.3.1:

* don't send all packets to selected gateway as broadcast
* prevent translation table corruptions caused by unintialized memory and
  invalid sizes send through client announcement mechanism

 -- Tue, 18 Oct 2011 20:40:59 +0200

batman-adv 2011.3.0:

* support latest kernels (2.6.29 - 3.1)
* remove compat code for < 2.6.29
* cleanup of coding style
* improve client and roaming announcement mechanisms
* add framework to inform userspace of gateway changes using uevent
* improve gateway handling to filter out incoming DHCP renewal requests
* many bugs (acceptance of delayed rebroadcasts, unsigned char on powerpc used
  to store -1, ...) squashed

 -- Sun, 21 Aug 2011 14:49:20 +0200

batman-adv 2011.2.0:

* support latest kernels (2.6.21 - 3.0)
* cleanup of coding style
* rename of HNA to TT
* support for multi vlan in bridge loop detection
* many bug fixes (rcu protection of router/primary_if/softif_neigh,
  race condition in TQ calculation, deadlock when creating new mesh
  interfaces, ...)

 -- Sun, 19 Jun 2011 20:07:47 +0200

batman-adv 2011.1.0:

* support latest kernels (2.6.21 - 2.6.39)
* cleanup of coding style
* removal of the big orig_hash lock and usage of fine grained locking
* many bug fixes (fragmented packets linearisation, fragments numbering,
  verification of added interfaces, ...)

 -- Sun, 17 Apr 2011 17:41:53 +0200

batman-adv 2011.0.0:

* support latest kernels (2.6.21 - 2.6.38)
* conversion of reference counting to kref
* allow merging and refragmentation of unicast packets during transfers
* add softif bridge loop detection
* make hop_penalty configurable through sysfs
* reimplement most of the batman-adv hash functionality
* support for optimized DHCP based gateway selection
* cleanup of the sysfs code

 -- Sat, 29 Jan 2011 20:08:05 +0100

batman-adv 2010.2.0:

* support latest kernels (2.6.21 - 2.6.37)
* further cleanup of coding style
* new rcu and referenced based interface management
* support for multiple mesh clouds
* create packets directly in socket buffers
* add layer2 unicast packet fragmentation
* usage of optimised kernel functionality for ogm counting
* many bugs (false warnings, processing of big ogms, ...) squashed

 -- Sun, 21 Nov 2010 21:02:40 +0100

batman-adv 2010.1.0:

* support latest kernels (2.6.21 - 2.6.36)
* further cleanup of coding style
* recording of routes for batman icmp messages
* move of complex sysfs files to debugfs
* change output of all sysfs files to single-value-only
* reintroduce virtual file for the debug log
* bonding and alternating added
* add ttl to broadcasts
* change all sequence numbers to 32 bit
* show last-seen in originator table
* many bugs (rounding issues, locking, netdev event handler, ...) squashed

 -- Sat, 04 Sep 2010 13:56:38 +0200

batman-adv 2010.0.0:

* support latest kernels (2.6.21 - 2.6.35)
* further code refactoring and cleaning for coding style
* move from procfs based configuration to sysfs
* reorganized sequence number handling
* limit queue lengths for batman and broadcast packets
* many bugs (endless loop and rogue packets on shutdown, wrong tcpdump output,
  missing frees in error situations, sleeps in atomic contexts) squashed

 -- Fri, 18 Jun 2010 21:34:26 +0200

batman-adv 0.2.1:

* support latest kernels (2.6.20 - 2.6.33)
* receive packets directly using skbs, remove old sockets and threads
* fix various regressions in the vis server
* don't disable interrupts while sending
* replace internal logging mechanism with standard kernel logging
* move vis formats into userland, one general format remains in the kernel
* allow MAC address to be set, correctly initialize them
* code refactoring and cleaning for coding style
* many bugs (null pointers, locking, hash iterators) squashed

 -- Sun, 21 Mar 2010 20:46:47 +0100

batman-adv 0.2:

* support latest kernels (2.6.20 - 2.6.31)
* temporary routing loops / TTL code bug / ghost entries in originator table fixed
* internal packet queue for packet aggregation & transmission retry (ARQ)
  for payload broadcasts added
* interface detection converted to event based handling to avoid timers
* major linux coding style adjustments applied
* all kernel version compatibility functions has been moved to compat.h
* use random ethernet address generator from the kernel
* /sys/module/batman_adv/version to export kernel module version
* vis: secondary interface export for dot draw format + JSON output format added
* many bugs (alignment issues, race conditions, deadlocks, etc) squashed

 -- Sat, 07 Nov 2009 15:44:31 +0100

batman-adv 0.1:

* support latest kernels (2.6.20 - 2.6.28)
* LOTS of cleanup: locking, stack usage, memory leaks
* Change Ethertype from 0x0842 to 0x4305
  unregistered at IEEE, if you want to sponsor an official Ethertype ($2500)
  please contact us

 -- Sun, 28 Dec 2008 00:44:31 +0100

batman-adv 0.1-beta:

* layer 2 meshing based on BATMAN TQ algorithm in kernelland
* operates on any ethernet like interface
* supports IPv4, IPv6, DHCP, etc
* is controlled via /proc/net/batman-adv/
* bridging via brctl is supported
* interface watchdog (interfaces can be (de)activated dynamically)
* offers integrated vis server which meshes/syncs with other vis servers in range

 -- Mon, 05 May 2008 14:10:04 +0200
