diff --git a/CHANGELOG b/CHANGELOG
deleted file mode 100644
index b32d1d09..00000000
--- a/CHANGELOG
+++ /dev/null
@@ -1,634 +0,0 @@
-batman-adv 2017.3
-
- * support latest kernels (3.2 - 4.14)
- * coding style cleanups and refactoring
- * bugs squashed:
-   - fix TT sync flag inconsistencies
-   - ignore invalid throughput values from wifi interfaces
-
- -- Thu, 28 Sep 2017 13:43:18 +0200
-
-batman-adv 2017.2
-
- * support latest kernels (3.2 - 4.13)
- * avoid bridge loop detection mac addresses in translation tables
- * coding style cleanups and refactoring
- * bugs squashed:
-   - ignore invalid throughput values from wifi interfaces
-
- -- Fri, 28 Jul 2017 13:38:45 +0200
-
-batman-adv 2017.1
-
- * support latest kernels (3.2 - 4.12)
- * bridge loop avoidance improvements for various corner cases
- * reduction of maximum fragment size
- * coding style cleanups and refactoring
- * bugs squashed:
-   - fix rx packet/bytes stats on local DAT ARP reply
-
- -- Tue, 23 May 2017 11:40:21 +0200
-
-batman-adv 2017.0.1
-
- * support latest kernels (3.2 - 4.11)
- * bugs squashed:
-   - avoid API incompatibilities with new EWMA implementation
-   - generate equally size fragments to reduce chance of padding or MTU problems
-   - fix initialization of gateway sel class when BATMAN_V is compiled in
-
- -- Tue, 07 Mar 2017 16:33:11 +0100
-
-batman-adv 2017.0
-
- * support latest kernels (3.2 - 4.11)
- * remove bridge loop avoidance addresses from translation table
- * allow to build B.A.T.M.A.N. V without cfg80211 integration on Linux < 3.16
- * coding style cleanups and refactoring
- * bugs squashed:
-   - fix interface reference counter on fragmentation errors
-   - avoid double free on fragment merge error
-   - fix support for up to 16 fragments
-   - fix build of multicast compatibility code on some architectures
-
- -- Tue, 28 Feb 2017 17:22:49 +0100
-
-batman-adv 2016.5
-
- * support latest kernels (3.2 - 4.10)
- * change installation path back to $INSTALL_MOD_DIR/updates/net/batman-adv
- * add simple (re)broadcast avoidance
- * reduce multicast TT and TVLV update delays under B.A.T.M.A.N. V
- * support B.A.T.M.A.N. V throughput detection when using VLANs on top of WiFi
- * improve documentation of sysfs and debugfs files
- * coding style cleanups and refactoring
- * bugs squashed:
-   - detect missing primaryif during tp_send as error
-   - fix re-adding of previously removed interfaces via rtnetlink
-   - fix rare race conditions on interface removal
-   - handle allocation error when generating TT responses
-
- -- Thu, 15 Dec 2016 18:11:55 +0100
-
-batman-adv 2016.4
-
- * support latest kernels (3.2 - 4.9)
- * add GW selection algorithm for B.A.T.M.A.N. V
- * add support for querying most tables/lists via netlink
- * adjusted device modifications for easier handling via rtnl (ip-link)
- * disabled (bad) debugfs support in network namespaces
- * add improved compat-patches support (note the new build directory)
- * reduced translation table memory consumption
- * coding style cleanups and refactoring
- * bugs squashed:
-   - avoid locking problems when modifying interfaces
-   - fix sysfs errors on fast device deletion/creation events
-   - add missing memory barriers for neighbor list modifications
-   - fix tpmeter debug log output
-
- -- Thu, 27 Oct 2016 21:12:07 +0200
-
-batman-adv 2016.3
-
- * support latest kernels (3.2 - 4.8)
- * multicast optimization support for bridged setups
- * initial, limited support for batman-adv netlink family
- * throughput meter implementation
- * support for frame priority in fragment packets
- * kernel doc updates and coding style cleanups
- * bugs squashed:
-   - fix (re-)initialization of ELP tweaking options
-   - fix elp packet data reservation
-   - fix nullptr dereference after using vlan_insert_tag
-   - fix various reference counting bugs in bonding, bla, tt and
-     originator code
-   - fix speedy join in gateway client mode
-
- -- Thu, 01 Sep 2016 16:12:26 +0200
-
-batman-adv 2016.2
-
- * support latest kernels (3.2 - 4.7)
- * initial, limited support for network namespaces
- * kernel doc updates and coding style cleanups
- * cleanup of legacy kernel compat code
- * support for detection and reporting of complex bridge loops
- * bugs squashed:
-   - fix some TT issues: double free for full table request structs
-     (created problems on multi-core systems) and a double put of VLAN
-     objects
-   - fix various B.A.T.M.A.N. V issues: fix mac address after address
-     change, ELP orig address on secondary interfaces, null pointer
-     dereference in metric comparison, refcount issues, ...
-   - fix skb deref after transmission
-   - avoid duplicate neigh_node additions
-   - replace WARN with rate limited output on non-existing VLAN
-   - fix ICMP RR ethernet header access after skb_linearize
-   - fix memleak of untagged vlan when removing interface via rtnl-link
-   - fix build against Debian Stretch kernels
-
- -- Thu, 09 Jun 2016 15:37:44 +0200
-
-batman-adv 2016.1
-
- * support latest kernels (3.2 - 4.6)
- * drop support for older kernels 2.6.29 - 3.1
- * B.A.T.M.A.N. V routing algorithm support
- * kernel doc updates and coding style cleanups
- * conversion to the kref based reference counting framework
- * bugs squashed:
-   - fix endless loop in bat-on-bat netdevice check when using veth
-   - fix various reference counting issues
-   - init neigh node last seen field
-   - fix integer overflow in batadv_iv_ogm_calc_tq
-   - fix broadcast/ogm queue limit on a removed interface
-   - fix DAT candidate selection to use VID
-   - fix unexpected free of bcast_own on add_if error
-   - check skb size before using encapsulated ETH+VLAN header
-
- -- Thu, 21 Apr 2016 14:10:38 +0200
-
-batman-adv 2016.0
-
- * support latest kernels (2.6.29 - 4.5)
- * add list of unique single hop neighbors and export it via debugfs
- * massive kernel doc updates and coding style cleanups
- * redesign/fix RCU handling when cleaning up to avoid bad memory access
- * increase bridge loop avoidance wait time to 60 seconds
- * remove bridge loop avoidance state when it gets disabled
- * support for interfaces which switch from non-ethernet to ethernet mode
- * bugs squashed:
-   - fix lockdep splat when doing mcast_free or batadv_tlv_container_remove
-   - fix invalid memory access when shrinking buffer for the OGM-return-rate
-     measurement on interface removal
-
- -- Tue, 19 Jan 2016 17:02:46 +0100
-
-batman-adv 2015.2
-
- * support latest kernels (2.6.29 - 4.4)
- * cleanup of coding style and kernel docs
- * fix includes in various files
- * add lower layer head/tail room to avoid problems when slave devices
-   encapsulate packets and have not enough space available
- * fix hard_header_len which allows sending packets shorter than 64byte
- * Remove obsolete deleted attribute for gateway node to simplify
-   code and avoid delayed free of structures referenced by the gateway
- * Add lockdep asserts to find locking problems
- * bugs squashed:
-   - Fix gw_bandwidth calculation on 32 bit systems
-   - prevent potential hlist double deletion
-   - fix soft interface access on unload
-   - fix invalid stack access in DAT
-   - lock CRC access in bridge loop avoidance
-   - fix TT client duplicate detection with VLANs
-   - fix excess VLANs in TT requests
-   - avoid keeping false temporary TT entries
-   - fix TT speedy join for DAT cache replies
-   - fix TT memory leak on add with invalid VLAN
-   
- -- Mon, 23 Nov 2015 20:25:19 +0100
-
-batman-adv 2015.1
-
- * support latest kernels (2.6.29 - 4.2)
- * cleanup of coding style
- * cleanup of the compatibility layer
- * convert to the Linux source directory structure
- * adjust default configuration
-   - disable network coding
-   - enable bridge loop avoidance
- * bugs squashed:
-   - avoid DAT to mess up local LAN state
-   - fix race conditions in DAT/NC/TT/MCAST TVLV handlers
-   - fix build system POSIX compatibility
-   - fix gateway selection in fast connection (1) gw_mode
-   - fix initialization of detected gateway, which caused hangs on unloads
-   - fix race conditions in the translation table
-   - fix kernel crash due to missing NULL checks in vlan handlers
-   - fix potentially broken header access by multicast optimization
-   - fix broadcast packets cleanup for purged outgoing interface
-
- -- Tue, 04 Aug 2015 14:34:42 +0200
-
-batman-adv 2015.0
-
- * support latest kernels (2.6.29 - 4.1)
- * cleanup of coding style and add kerneldoc
- * bugs squashed:
-   - fix incorrect lockdep warning in network coding
-   - fix condition when bonding should be used
-   - fix support of bridged batman-adv devices with kernel < 2.6.39
-
- -- Tue, 28 Apr 2015 20:20:02 +0200
-
-batman-adv 2014.4.0
-
- * support latest kernels (2.6.29 - 3.19)
- * double default hop penalty
- * bugs squashed:
-   - fix wrong size calculations and out of order support in
-     fragmentation (fixes CVE-2014-9428)
-   - fix double fetch in RCU for old kernels (<3.9)
-   - fix NULL dereference and check in gateway code
-   - fix multicast counters
-   - fix network coding SKB control block initialization
-   - fix last_seen initialization for orig nodes
-
- -- Mon, 05 Jan 2015 20:03:39 +0100
-
-batman-adv 2014.3.0
-
- * support latest kernels (2.6.29 - 3.16)
- * drop QinQ claim frames in bridge loop avoidance
- * fix a bogus warning from batadv_is_on_batman_iface()
- * removed SET_ETHTOOL_OPS
- * style improvements:
-   - remove semi-colon after macro definition
-   - add blank line between declarations and the rest of the code
-
- -- Mon, 21 Jul 2014 16:02:17 +0200
-
-batman-adv 2014.2.0
-
- * support latest kernels (2.6.29 - 3.15)
- * add multicast optimization for certain type of multicast networks
-   to send data only to nodes actually registered using new TVLVs
-   and the translation table
- * use ether_addr_copy instead of memcpy
- * remove obsolete reset mac headers
- * bugs squashed:
-   - fix various (reference counting) bugs introduced by the multi
-     interface optimization
-   - fix a reference count problem when sending fragmented packets
-   - count references for originator nodes referenced by gateway
-   - fix local TT check for outgoing arp requests in DAT
-   - fix TT inconsistencies when VLANs are re-created very fast
-   - update TT entries for each VLAN when the MAC address of the
-     parent interface is changed
-   - improve documentation of DAT, TT and general kerneldoc
-
- -- Thu, 15 May 2014 19:36:10 +0200
-
-batman-adv 2014.1.0
-
- * support latest kernels (2.6.29 - 3.14)
- * add mesh wide multi interface optimization, which replaces the old
-   interface alternating and bonding features with a new network wide
-   implementation
- * add mesh wide client isolation based on fwmark by using and
-   propagating the new isolation flag in TT
- * send every DHCP packet as bat-unicast when gateway feature is used
- * add new build checks for packet sizes to avoid architecture dependent
-   problems
- * bugs squashed:
-   - deselect current gateway when switching away from client mode
-   - fix batman-adv header MTU calculation
-   - fix potential paging error for unicast transmissions
-   - fix vlan refcounter imbalance on failure paths
-   - fix TT-TVLV parsing and a TVLV leak
-   - fix TT CRC computation by ensuring byte order
-   - fix function names, paranthesis, comments, warnings, chachacha ...
-
- -- Thu, 13 Mar 2014 12:08:00 +0100
-
-batman-adv 2014.0.0
-
- * support latest kernels (2.6.29 - 3.13)
- * This release contains major rework to allow better backward compatibility
-   in the future. Unfortunately these changes require a bump of the compat
-   version to 15, making this and future releases incompatible to the previous
-   releases.
- * add TVLV container infrastructure for OGMs and TT packets
- * remove vis functionality (replaced by userspace tool alfred)
- * reorder packet types and flags in packet types
- * move some packet members (gw flags, TT, ...) into TVLV containers
- * rewrite the fragementation code for more fragments (up to 16), more
-   general usage (not only unicast packets) and reassembly on the way
- * add VLAN awareness to TT, DAT and AP isolation
- * use CRC32 instead of CRC16 for TT
- * generalize many functions (neighbor comparison, etc) to prepare
-   code-sharing of BATMAN IV and BATMAN V
- * set SKB priority according to content (for correct WMM classification)
- * add a dummy soft-interface rx mode handler to allow static multicast
-   listeners
- * bugs squashed:
-   - various packet alignment and size fixes (especially on ARM)
-   - white space, typos, kernel doc, etc
-   - improve backward compatibility code
-
- -- Sat, 04 Jan 2014 20:20:05 +0100
-
-batman-adv 2013.4.0
-
- * support latest kernels (2.6.29 - 3.12)
- * bugs squashed:
-   - fix potential kernel paging errors for unicast transmissions
-   - fix network coding initialization for multiple soft interfaces
-   - fix BLA VLAN handling regression
-   - improve backward compatibility code
-
- -- Sun, 13 Oct 2013 18:50:11 +0200
-
-batman-adv 2013.3.0:
-
- * support latest kernels (2.6.29 - 3.11)
- * send each broadcast only once on non-wireless interfaces
- * change VID handling to prepare enhanced VLAN features
- * bugs squashed:
-   - forward late OGMs from best next hop
-   - avoid double free of bat_counters
-   - fix rcu barrier miss
-   - use the proper header len when checking the TTVN
-   - make DAT drop ARP requests targeting local clients
- * style improvements, code moving and refactoring
-
- -- Sat, 20 Jul 2013 22:06:46 +0200
-
-batman-adv 2013.2.0:
-
- * support latest kernels (2.6.29 - 3.10)
- * add network coding feature
- * add rtnl interface configuration support
- * fix rtnl and sysfs locking issue
- * avoid duplicate interface enslaving
- * bugs squashed:
-   - verify tt len to not exceed packet len
-   - fix identification of own mac addresses
- * style improvements (change seq_printf to seq_puts)
-
- -- Sat, 20 Apr 2013 16:42:51 +0200
-
-batman-adv 2013.1.0:
-
- * support latest kernels (2.6.29 - 3.9)
- * add lots of kerneldoc in types.h
- * clean up (kerneldoc alignment, group tt definitions, renaming, ...)
- * TT improvements:
-   - add CRC to debugging tables
-   - ignore multicast addresses
-   - reduce local TT timeout from 1 hour to 10 minutes
- * Initialize lockdep class keys for hashes
- * unbloat bat_priv if debug is not enabled
- * bugs squashed
-   - fix possible sysfs/rtnl deadlock when deregistering
-   - fix some DAT bugs (skb leak, invalid MAC addresses, NULL pointer dereference)
-
- -- Sat, 02 Mar 2013 16:02:00 +0100
-
-batman-adv 2013.0.0:
-
-* support latest kernels (2.6.29 - 3.8)
-* cleanup of coding style and add kerneldoc
-* add new distributed ARP table feature to cache ARP entries
-* remove __packed attribute whenever possible to allow better compiler
-  optimizations
-* use kernel-registered BATMAN Ethernet type
-* block ECTP traffic to remove integration problems when using BLA
-* allow roaming multiple times in TT
-* bugs squashed
-  - fix lockdeps for interfaces
-  - disallow batman-over-batman configurations
-  - various BLA fixes (wait at startup, hashing, duplist, ...)
-  - fix TT roaming cases
-  - fix TT packet rerouting
-  - fix TT flags handling
-  - fix speedy join/BLA interaction bug
-  - fix random jitter calculation
-
- -- Sat, 12 Jan 2013 12:00:16 +0100
-
-batman-adv 2012.4.0:
-
-* support latest kernels (2.6.29 - 3.7)
-* cleanup of coding style
-* integration of remaining packet counters in ethtool statistic
-* speedy join of new non-mesh clients based on broadcast packets
-* added bridge loop avoidance backbone gateway debugfs table
-* workaround for kernel bug when running on top of vlan device
-* bugs squashed
-  - announcement of own MAC address after modification
-  - wrong counting of received OGMs on x86
-  - route flapping in multiple interfaces setup
-  - receiving of translation table requests for foreign nodes
-  - invalid memory access after failure during the interface appending
-  - wrong calculation of packet crc which lead to dropping of broadcast
-    packets when bridge loop avoidance is enabled
-
- -- Mon, 29 Oct 2012 16:47:05 +0100
-
-batman-adv 2012.3.0:
-
-* support latest kernels (2.6.29 - 3.6)
-* added namespace-like prefix for all batman-adv symbols
-* integrated extended statistic support using ethtool
-* important bugs fixed
-  - correct endianness for translation table crc
-  - avoid race condition in translation table replacements
-  - ensure gateway gets selected
-  - allow broadcasts with enabled AP isolation
-  - fix vis output for multiple interface configurations
-  - fix race condition during adds in hashes
-  - fix dropped DHCP packets with enabled bridge loop avoidance and gateway
-    support
-  - don't leak information through uninitialized packets fields
-
- -- Sun, 19 Aug 2012 21:28:23 +0200
-
-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 uninitialized 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
diff --git a/CHANGELOG.license b/CHANGELOG.license
deleted file mode 100644
index a55d70ee..00000000
--- a/CHANGELOG.license
+++ /dev/null
@@ -1,2 +0,0 @@
-SPDX-License-Identifier: GPL-2.0
-License-Filename: LICENSES/preferred/GPL-2.0
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
new file mode 100644
index 00000000..16eb6e6d
--- /dev/null
+++ b/CHANGELOG.rst
@@ -0,0 +1,666 @@
+.. SPDX-License-Identifier: GPL-2.0
+
+2017.3 (2017-09-28)
+===================
+
+* support latest kernels (3.2 - 4.14)
+* coding style cleanups and refactoring
+* bugs squashed:
+
+  - fix TT sync flag inconsistencies
+  - ignore invalid throughput values from wifi interfaces
+
+
+2017.2 (2017-07-28)
+===================
+
+* support latest kernels (3.2 - 4.13)
+* avoid bridge loop detection mac addresses in translation tables
+* coding style cleanups and refactoring
+* bugs squashed:
+
+  - ignore invalid throughput values from wifi interfaces
+
+
+2017.1 (2017-05-23)
+===================
+
+* support latest kernels (3.2 - 4.12)
+* bridge loop avoidance improvements for various corner cases
+* reduction of maximum fragment size
+* coding style cleanups and refactoring
+* bugs squashed:
+
+  - fix rx packet/bytes stats on local DAT ARP reply
+
+
+2017.0.1 (2017-03-07)
+=====================
+
+* support latest kernels (3.2 - 4.11)
+* bugs squashed:
+
+  - avoid API incompatibilities with new EWMA implementation
+  - generate equally size fragments to reduce chance of padding or MTU problems
+  - fix initialization of gateway sel class when BATMAN_V is compiled in
+
+
+2017.0 (2017-02-28)
+===================
+
+* support latest kernels (3.2 - 4.11)
+* remove bridge loop avoidance addresses from translation table
+* allow to build B.A.T.M.A.N. V without cfg80211 integration on Linux < 3.16
+* coding style cleanups and refactoring
+* bugs squashed:
+
+  - fix interface reference counter on fragmentation errors
+  - avoid double free on fragment merge error
+  - fix support for up to 16 fragments
+  - fix build of multicast compatibility code on some architectures
+
+
+2016.5 (2016-12-15)
+===================
+
+* support latest kernels (3.2 - 4.10)
+* change installation path back to $INSTALL_MOD_DIR/updates/net/batman-adv
+* add simple (re)broadcast avoidance
+* reduce multicast TT and TVLV update delays under B.A.T.M.A.N. V
+* support B.A.T.M.A.N. V throughput detection when using VLANs on top of WiFi
+* improve documentation of sysfs and debugfs files
+* coding style cleanups and refactoring
+* bugs squashed:
+
+  - detect missing primaryif during tp_send as error
+  - fix re-adding of previously removed interfaces via rtnetlink
+  - fix rare race conditions on interface removal
+  - handle allocation error when generating TT responses
+
+
+2016.4 (2016-10-27)
+===================
+
+* support latest kernels (3.2 - 4.9)
+* add GW selection algorithm for B.A.T.M.A.N. V
+* add support for querying most tables/lists via netlink
+* adjusted device modifications for easier handling via rtnl (ip-link)
+* disabled (bad) debugfs support in network namespaces
+* add improved compat-patches support (note the new build directory)
+* reduced translation table memory consumption
+* coding style cleanups and refactoring
+* bugs squashed:
+
+  - avoid locking problems when modifying interfaces
+  - fix sysfs errors on fast device deletion/creation events
+  - add missing memory barriers for neighbor list modifications
+  - fix tpmeter debug log output
+
+
+2016.3 (2016-09-01)
+===================
+
+* support latest kernels (3.2 - 4.8)
+* multicast optimization support for bridged setups
+* initial, limited support for batman-adv netlink family
+* throughput meter implementation
+* support for frame priority in fragment packets
+* kernel doc updates and coding style cleanups
+* bugs squashed:
+
+  - fix (re-)initialization of ELP tweaking options
+  - fix elp packet data reservation
+  - fix nullptr dereference after using vlan_insert_tag
+  - fix various reference counting bugs in bonding, bla, tt and
+    originator code
+  - fix speedy join in gateway client mode
+
+
+2016.2 (2016-06-09)
+===================
+
+* support latest kernels (3.2 - 4.7)
+* initial, limited support for network namespaces
+* kernel doc updates and coding style cleanups
+* cleanup of legacy kernel compat code
+* support for detection and reporting of complex bridge loops
+* bugs squashed:
+
+  - fix some TT issues: double free for full table request structs
+    (created problems on multi-core systems) and a double put of VLAN
+    objects
+  - fix various B.A.T.M.A.N. V issues: fix mac address after address
+    change, ELP orig address on secondary interfaces, null pointer
+    dereference in metric comparison, refcount issues, ...
+  - fix skb deref after transmission
+  - avoid duplicate neigh_node additions
+  - replace WARN with rate limited output on non-existing VLAN
+  - fix ICMP RR ethernet header access after skb_linearize
+  - fix memleak of untagged vlan when removing interface via rtnl-link
+  - fix build against Debian Stretch kernels
+
+
+2016.1 (2016-04-21)
+===================
+
+* support latest kernels (3.2 - 4.6)
+* drop support for older kernels 2.6.29 - 3.1
+* B.A.T.M.A.N. V routing algorithm support
+* kernel doc updates and coding style cleanups
+* conversion to the kref based reference counting framework
+* bugs squashed:
+
+  - fix endless loop in bat-on-bat netdevice check when using veth
+  - fix various reference counting issues
+  - init neigh node last seen field
+  - fix integer overflow in batadv_iv_ogm_calc_tq
+  - fix broadcast/ogm queue limit on a removed interface
+  - fix DAT candidate selection to use VID
+  - fix unexpected free of bcast_own on add_if error
+  - check skb size before using encapsulated ETH+VLAN header
+
+
+2016.0 (2016-01-19)
+===================
+
+* support latest kernels (2.6.29 - 4.5)
+* add list of unique single hop neighbors and export it via debugfs
+* massive kernel doc updates and coding style cleanups
+* redesign/fix RCU handling when cleaning up to avoid bad memory access
+* increase bridge loop avoidance wait time to 60 seconds
+* remove bridge loop avoidance state when it gets disabled
+* support for interfaces which switch from non-ethernet to ethernet mode
+* bugs squashed:
+
+  - fix lockdep splat when doing mcast_free or batadv_tlv_container_remove
+  - fix invalid memory access when shrinking buffer for the OGM-return-rate
+    measurement on interface removal
+
+
+2015.2 (2015-11-23)
+===================
+
+* support latest kernels (2.6.29 - 4.4)
+* cleanup of coding style and kernel docs
+* fix includes in various files
+* add lower layer head/tail room to avoid problems when slave devices
+  encapsulate packets and have not enough space available
+* fix hard_header_len which allows sending packets shorter than 64byte
+* Remove obsolete deleted attribute for gateway node to simplify
+  code and avoid delayed free of structures referenced by the gateway
+* Add lockdep asserts to find locking problems
+* bugs squashed:
+
+  - Fix gw_bandwidth calculation on 32 bit systems
+  - prevent potential hlist double deletion
+  - fix soft interface access on unload
+  - fix invalid stack access in DAT
+  - lock CRC access in bridge loop avoidance
+  - fix TT client duplicate detection with VLANs
+  - fix excess VLANs in TT requests
+  - avoid keeping false temporary TT entries
+  - fix TT speedy join for DAT cache replies
+  - fix TT memory leak on add with invalid VLAN
+
+
+2015.1 (2015-08-04)
+===================
+
+* support latest kernels (2.6.29 - 4.2)
+* cleanup of coding style
+* cleanup of the compatibility layer
+* convert to the Linux source directory structure
+* adjust default configuration
+
+  - disable network coding
+  - enable bridge loop avoidance
+
+* bugs squashed:
+
+  - avoid DAT to mess up local LAN state
+  - fix race conditions in DAT/NC/TT/MCAST TVLV handlers
+  - fix build system POSIX compatibility
+  - fix gateway selection in fast connection (1) gw_mode
+  - fix initialization of detected gateway, which caused hangs on unloads
+  - fix race conditions in the translation table
+  - fix kernel crash due to missing NULL checks in vlan handlers
+  - fix potentially broken header access by multicast optimization
+  - fix broadcast packets cleanup for purged outgoing interface
+
+
+2015.0 (2015-04-28)
+===================
+
+* support latest kernels (2.6.29 - 4.1)
+* cleanup of coding style and add kerneldoc
+* bugs squashed:
+  - fix incorrect lockdep warning in network coding
+  - fix condition when bonding should be used
+  - fix support of bridged batman-adv devices with kernel < 2.6.39
+
+
+2014.4.0 (2015-01-05)
+=====================
+
+* support latest kernels (2.6.29 - 3.19)
+* double default hop penalty
+* bugs squashed:
+
+  - fix wrong size calculations and out of order support in
+    fragmentation (fixes CVE-2014-9428)
+  - fix double fetch in RCU for old kernels (<3.9)
+  - fix NULL dereference and check in gateway code
+  - fix multicast counters
+  - fix network coding SKB control block initialization
+  - fix last_seen initialization for orig nodes
+
+
+2014.3.0 (2014-07-21)
+=====================
+
+* support latest kernels (2.6.29 - 3.16)
+* drop QinQ claim frames in bridge loop avoidance
+* fix a bogus warning from batadv_is_on_batman_iface()
+* removed SET_ETHTOOL_OPS
+* style improvements:
+
+  - remove semi-colon after macro definition
+  - add blank line between declarations and the rest of the code
+
+
+2014.2.0 (2014-05-15)
+=====================
+
+* support latest kernels (2.6.29 - 3.15)
+* add multicast optimization for certain type of multicast networks
+  to send data only to nodes actually registered using new TVLVs
+  and the translation table
+* use ether_addr_copy instead of memcpy
+* remove obsolete reset mac headers
+* bugs squashed:
+
+  - fix various (reference counting) bugs introduced by the multi
+    interface optimization
+  - fix a reference count problem when sending fragmented packets
+  - count references for originator nodes referenced by gateway
+  - fix local TT check for outgoing arp requests in DAT
+  - fix TT inconsistencies when VLANs are re-created very fast
+  - update TT entries for each VLAN when the MAC address of the
+    parent interface is changed
+  - improve documentation of DAT, TT and general kerneldoc
+
+
+2014.1.0 (2014-03-13)
+=====================
+
+* support latest kernels (2.6.29 - 3.14)
+* add mesh wide multi interface optimization, which replaces the old
+  interface alternating and bonding features with a new network wide
+  implementation
+* add mesh wide client isolation based on fwmark by using and
+  propagating the new isolation flag in TT
+* send every DHCP packet as bat-unicast when gateway feature is used
+* add new build checks for packet sizes to avoid architecture dependent
+  problems
+* bugs squashed:
+
+  - deselect current gateway when switching away from client mode
+  - fix batman-adv header MTU calculation
+  - fix potential paging error for unicast transmissions
+  - fix vlan refcounter imbalance on failure paths
+  - fix TT-TVLV parsing and a TVLV leak
+  - fix TT CRC computation by ensuring byte order
+  - fix function names, paranthesis, comments, warnings, chachacha ...
+
+
+2014.0.0 (2014-01-04)
+=====================
+
+* support latest kernels (2.6.29 - 3.13)
+* This release contains major rework to allow better backward compatibility
+  in the future. Unfortunately these changes require a bump of the compat
+  version to 15, making this and future releases incompatible to the previous
+  releases.
+* add TVLV container infrastructure for OGMs and TT packets
+* remove vis functionality (replaced by userspace tool alfred)
+* reorder packet types and flags in packet types
+* move some packet members (gw flags, TT, ...) into TVLV containers
+* rewrite the fragementation code for more fragments (up to 16), more
+  general usage (not only unicast packets) and reassembly on the way
+* add VLAN awareness to TT, DAT and AP isolation
+* use CRC32 instead of CRC16 for TT
+* generalize many functions (neighbor comparison, etc) to prepare
+  code-sharing of BATMAN IV and BATMAN V
+* set SKB priority according to content (for correct WMM classification)
+* add a dummy soft-interface rx mode handler to allow static multicast
+  listeners
+* bugs squashed:
+
+  - various packet alignment and size fixes (especially on ARM)
+  - white space, typos, kernel doc, etc
+  - improve backward compatibility code
+
+
+2013.4.0 (2013-10-13)
+=====================
+
+* support latest kernels (2.6.29 - 3.12)
+* bugs squashed:
+
+  - fix potential kernel paging errors for unicast transmissions
+  - fix network coding initialization for multiple soft interfaces
+  - fix BLA VLAN handling regression
+  - improve backward compatibility code
+
+
+2013.3.0 (2013-07-20)
+=====================
+
+* support latest kernels (2.6.29 - 3.11)
+* send each broadcast only once on non-wireless interfaces
+* change VID handling to prepare enhanced VLAN features
+* bugs squashed:
+
+  - forward late OGMs from best next hop
+  - avoid double free of bat_counters
+  - fix rcu barrier miss
+  - use the proper header len when checking the TTVN
+  - make DAT drop ARP requests targeting local clients
+
+* style improvements, code moving and refactoring
+
+
+2013.2.0 (2013-04-20)
+=====================
+
+* support latest kernels (2.6.29 - 3.10)
+* add network coding feature
+* add rtnl interface configuration support
+* fix rtnl and sysfs locking issue
+* avoid duplicate interface enslaving
+* bugs squashed:
+
+  - verify tt len to not exceed packet len
+  - fix identification of own mac addresses
+
+* style improvements (change seq_printf to seq_puts)
+
+
+2013.1.0 (2013-03-02)
+=====================
+
+* support latest kernels (2.6.29 - 3.9)
+* add lots of kerneldoc in types.h
+* clean up (kerneldoc alignment, group tt definitions, renaming, ...)
+* TT improvements:
+
+  - add CRC to debugging tables
+  - ignore multicast addresses
+  - reduce local TT timeout from 1 hour to 10 minutes
+
+* Initialize lockdep class keys for hashes
+* unbloat bat_priv if debug is not enabled
+* bugs squashed
+
+  - fix possible sysfs/rtnl deadlock when deregistering
+  - fix some DAT bugs (skb leak, invalid MAC addresses, NULL pointer dereference)
+
+
+2013.0.0 (2013-01-12)
+=====================
+
+* support latest kernels (2.6.29 - 3.8)
+* cleanup of coding style and add kerneldoc
+* add new distributed ARP table feature to cache ARP entries
+* remove __packed attribute whenever possible to allow better compiler
+  optimizations
+* use kernel-registered BATMAN Ethernet type
+* block ECTP traffic to remove integration problems when using BLA
+* allow roaming multiple times in TT
+* bugs squashed
+
+  - fix lockdeps for interfaces
+  - disallow batman-over-batman configurations
+  - various BLA fixes (wait at startup, hashing, duplist, ...)
+  - fix TT roaming cases
+  - fix TT packet rerouting
+  - fix TT flags handling
+  - fix speedy join/BLA interaction bug
+  - fix random jitter calculation
+
+
+2012.4.0 (2012-10-29)
+=====================
+
+* support latest kernels (2.6.29 - 3.7)
+* cleanup of coding style
+* integration of remaining packet counters in ethtool statistic
+* speedy join of new non-mesh clients based on broadcast packets
+* added bridge loop avoidance backbone gateway debugfs table
+* workaround for kernel bug when running on top of vlan device
+* bugs squashed
+
+  - announcement of own MAC address after modification
+  - wrong counting of received OGMs on x86
+  - route flapping in multiple interfaces setup
+  - receiving of translation table requests for foreign nodes
+  - invalid memory access after failure during the interface appending
+  - wrong calculation of packet crc which lead to dropping of broadcast
+    packets when bridge loop avoidance is enabled
+
+
+2012.3.0 (2012-08-19)
+=====================
+
+* support latest kernels (2.6.29 - 3.6)
+* added namespace-like prefix for all batman-adv symbols
+* integrated extended statistic support using ethtool
+* important bugs fixed
+
+  - correct endianness for translation table crc
+  - avoid race condition in translation table replacements
+  - ensure gateway gets selected
+  - allow broadcasts with enabled AP isolation
+  - fix vis output for multiple interface configurations
+  - fix race condition during adds in hashes
+  - fix dropped DHCP packets with enabled bridge loop avoidance and gateway
+    support
+  - don't leak information through uninitialized packets fields
+
+
+2012.2.0 (2012-06-12)
+=====================
+
+* 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, ...)
+
+
+2012.1.0 (2012-03-30)
+=====================
+
+* 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, ...)
+
+
+2012.0.0 (2012-02-05)
+=====================
+
+* 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
+
+
+2011.4.0 (2011-11-13)
+=====================
+
+* 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
+
+
+2011.3.1 (2011-10-18)
+=====================
+
+* don't send all packets to selected gateway as broadcast
+* prevent translation table corruptions caused by uninitialized memory and
+  invalid sizes send through client announcement mechanism
+
+
+2011.3.0 (2011-08-21)
+=====================
+
+* 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
+
+
+2011.2.0 (2011-06-19)
+=====================
+
+* 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, ...)
+
+
+2011.1.0 (2011-04-17)
+=====================
+
+* 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, ...)
+
+
+2011.0.0 (2011-01-29)
+=====================
+
+* 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
+
+
+2010.2.0 (2010-11-21)
+=====================
+
+* 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
+
+
+2010.1.0 (2010-09-04)
+=====================
+
+* 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
+
+
+2010.0.0 (2010-06-18)
+=====================
+
+* 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
+
+
+0.2.1 (2010-03-21)
+==================
+
+* 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
+
+
+0.2 (2009-11-07)
+================
+
+* 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
+
+
+0.1 (2008-12-28)
+================
+
+* 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
+
+
+0.1-beta (2008-05-05)
+=====================
+
+* 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
