)]}'
{
  "log": [
    {
      "commit": "8c7bf248a318444accbe0c2c5db15bd727661606",
      "tree": "778d9884d61e32e260e888614fff9aab0019e846",
      "parents": [
        "e3b0d0dea6e044283dff1c0852b20c98eb41a7f1"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 17 15:28:33 2012 +0800"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sun May 13 19:06:40 2012 +0200"
      },
      "message": "batman-adv: refactor window_protected to avoid unnecessary return statement\n\nReported-by: David Laight \u003cDavid.Laight@aculab.com\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "3275e7cc84fb0574e9662e8e74c3b1dab38f7143",
      "tree": "5b25994ef56baa80d29f8f3ee9c236a8449bb8bf",
      "parents": [
        "8710e2613a4819aac44f4aed7e29027ac3eeb683"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Fri Mar 16 18:03:28 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sun May 13 19:06:38 2012 +0200"
      },
      "message": "batman-adv: improve unicast packet (re)routing\n\nIn case of a client X roaming from a generic node A to another node B, it is\npossible that a third node C gets A\u0027s OGM but not B\u0027s. At this point in time, if\nC wants to send data to X it will send a unicast packet destined to A. The\npacket header will contain A\u0027s last ttvn (C got A\u0027s OGM and so it knows it).\n\nThe packet will travel towards A without being intercepted because the ttvn\ncontained in its header is the newest for A.\n\nOnce A will receive the packet, A\u0027s state will not report to be in a \"roaming\nphase\" (because, after a roaming, once A sends out its OGM, all the changes are\ncommitted and the node is considered not to be in the roaming state anymore)\nand it will match the ttvn carried by the packet. Therefore there is no reason\nfor A to try to alter the packet\u0027s route, thus dropping the packet because the\ndestination client is not there anymore.\n\nHowever, C is well aware that it\u0027s routing information towards the client X is\noutdated as it received an OGM from A saying that the client roamed away.\nThanks to this detail, this patch introduces a small change in behaviour: as\nlong as C is in the state of not knowing the new location of client X it will\nforward the traffic to its last known location using ttvn-1 of the destination.\nBy using an older ttvn node A will be forced to re-route the packet.\nIntermediate nodes are also allowed to update the packet\u0027s destination as long\nas they have the information about the client\u0027s new location.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "8710e2613a4819aac44f4aed7e29027ac3eeb683",
      "tree": "52a61a7ad228152e6c62111b6472b51bbecaf90c",
      "parents": [
        "f96a8a0b78548c0ec06b0b4b438db6ee895d67e9"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Fri Mar 16 11:52:31 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sun May 13 18:24:37 2012 +0200"
      },
      "message": "batman-adv: avoid skb_linearise() if not needed\n\nWhenever we want to access headers only, we do not need to linearise the whole\npacket. Instead we can use pskb_may_pull()\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "c3e29312c8c27d403f91522711ce9a290c7571c9",
      "tree": "a366ebef6e2d65ed5fdbec48e38fc3e630a9e367",
      "parents": [
        "ffa995e036bef734ea40cbbccda574d1df3a8a58"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sun Mar 04 16:56:25 2012 +0800"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Fri May 11 10:08:11 2012 +0200"
      },
      "message": "batman-adv: register batman ogm receive function during protocol init\n\nThe B.A.T.M.A.N. IV OGM receive function still was hard-coded although\nit is a routing protocol specific function. This patch takes advantage\nof the dynamic packet handler registration to remove the hard-coded\nfunction calls.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nAcked-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "0d125074ebc8c971e939f8c2c8f90a80fa09aeb4",
      "tree": "fb31ee069ab0a2abc7681b999839fd81392110f7",
      "parents": [
        "1eeb479fda2405269b3a85c86ba0eca41fcc4ea0"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sat Feb 18 11:27:34 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 18 09:54:01 2012 +0200"
      },
      "message": "batman-adv: use ETH_HLEN instead of sizeof(struct ethhdr)\n\nInstead of using sizeof(struct ethhdr) it is strongly recommended to use the\nkernel macro ETH_HLEN. This patch substitute each occurrence of the former\nexpressione with the latter one.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "76e3d7fc1a49ea8c377ddc91a4ec40f326404833",
      "tree": "297060a4b0651ab2d5744130cbda20e9953bc412",
      "parents": [
        "cd8b78e7e9d1d9625634dc1ec2bb4b5a14d1295a"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Tue Feb 07 17:20:50 2012 +0800"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 18 09:54:00 2012 +0200"
      },
      "message": "batman-adv: rename BATMAN_OGM_LEN to BATMAN_OGM_HLEN\n\nUsing BATMAN_OGM_LEN leaves one with the impression that this is\nthe full packet size which is not the case. Therefore the variable\nis renamed.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "fe2da6ff27c73c1d102ec2189f94e8bc729d1a9b",
      "tree": "143055e9de797c3b645d453a5d0c62d5c3d8af19",
      "parents": [
        "20ff9d593f8ff20c2ef24498f77a8bc30b3a059a"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Sun Jan 22 20:00:24 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 11 14:28:59 2012 +0200"
      },
      "message": "batman-adv: add broadcast duplicate check\n\nWhen multiple backbone gateways relay the same broadcast from the\nbackbone into the mesh, other nodes in the mesh may receive this\nbroadcast multiple times. To avoid this, the crc checksums of\nreceived broadcasts are recorded and new broadcast packets with\nthe same content may be dropped if received by another gateway.\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "20ff9d593f8ff20c2ef24498f77a8bc30b3a059a",
      "tree": "e64f51254b230d9d6441e09a2c81fbcb68dcf2d6",
      "parents": [
        "db08e6e557ebc8ffedf6530693937d0e51b8f6b9"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Sun Jan 22 20:00:23 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 11 14:28:59 2012 +0200"
      },
      "message": "batman-adv: don\u0027t let backbone gateways exchange tt entries\n\nAs the backbone gateways are connected to the same backbone, they\nshould announce the same clients on the backbone non-exclusively.\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "23721387c409087fd3b97e274f34d3ddc0970b74",
      "tree": "cf386c6f169a1b2b6e8c8ef77be5226e10046689",
      "parents": [
        "a7f6ee9493677ba40625d810258de5bd521cc1b0"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Sun Jan 22 20:00:19 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 11 14:28:58 2012 +0200"
      },
      "message": "batman-adv: add basic bridge loop avoidance code\n\nThis second version of the bridge loop avoidance for batman-adv\navoids loops between the mesh and a backbone (usually a LAN).\n\nBy connecting multiple batman-adv mesh nodes to the same ethernet\nsegment a loop can be created when the soft-interface is bridged\ninto that ethernet segment. A simple visualization of the loop\ninvolving the most common case - a LAN as ethernet segment:\n\nnode1  \u003c-- LAN  --\u003e  node2\n  |                   |\nwifi   \u003c-- mesh --\u003e  wifi\n\nPackets from the LAN (e.g. ARP broadcasts) will circle forever from\nnode1 or node2 over the mesh back into the LAN.\n\nWith this patch, batman recognizes backbone gateways, nodes which are\npart of the mesh and backbone/LAN at the same time. Each backbone\ngateway \"claims\" clients from within the mesh to handle them\nexclusively. By restricting that only responsible backbone gateways\nmay handle their claimed clients traffic, loops are effectively\navoided.\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "a7f6ee9493677ba40625d810258de5bd521cc1b0",
      "tree": "6635b87289ae083a466f14d2c9aed4bb20adae34",
      "parents": [
        "8681a1c4dd258c573e80b4a7af7e7127770b67a8"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Sun Jan 22 20:00:18 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 11 14:28:58 2012 +0200"
      },
      "message": "batman-adv: remove old bridge loop avoidance code\n\nThe functionality is to be replaced by an improved implementation,\nso first clean up.\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "0079d2cef1514422668c7beedd61bfde5aa2c146",
      "tree": "64d118360835eb1abfa9546ce3cac99c8db9ce79",
      "parents": [
        "c1faead3335608d9c9bb58e07bbf9663d53d4b26"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sat Feb 04 17:34:52 2012 +0100"
      },
      "committer": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 11 14:28:58 2012 +0200"
      },
      "message": "batman-adv: Replace bitarray operations with bitmap\n\nbitarray.c consists mostly of functionality that is already available as part\nof the standard kernel API. batman-adv could use architecture optimized code\nand reduce the binary size by switching to the standard functions.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\n"
    },
    {
      "commit": "96741ade15187bfde3dddc4092a88ba7a7c9183c",
      "tree": "6de21a475e26f76e0ae0a40b32ac28f83ecd816f",
      "parents": [
        "21a1236bc3155c0c2efcce8ba03540fdf979ac00"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Wed Mar 07 09:07:47 2012 +0100"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sun Mar 11 06:29:44 2012 +0800"
      },
      "message": "batman-adv: Use {} braces consistent on the arms of a statement\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "86ceb360565d06fcee96be85c4bafe9264756eca",
      "tree": "f0a6a8782cd740222a068f20f5c48ee84aeb5b80",
      "parents": [
        "7c64fd98ce512de6c6dae0452dc026446bd368d5"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Wed Mar 07 09:07:45 2012 +0100"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sun Mar 11 06:29:44 2012 +0800"
      },
      "message": "batman-adv: Ignore 80-chars per line limits for strings\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "7c64fd98ce512de6c6dae0452dc026446bd368d5",
      "tree": "81b5a3df9c7937f1d85cc9f32841fe9b949ca0bb",
      "parents": [
        "fdc8ff101163f10d36187a890a3c4990cebb8b12"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Tue Feb 28 10:55:36 2012 +0100"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Tue Feb 28 19:14:31 2012 +0800"
      },
      "message": "batman-adv: Fix indentation of multiline statements\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "567db7b0b7c0a94cc62846f8ebb429bdda2884bc",
      "tree": "c77ce9d27df43e72c14c8a57f7a348db2fca3a5b",
      "parents": [
        "92f90f56caa30dfcb6c5755776d73df23ef2ae1a"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Jan 01 00:41:38 2012 +0100"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 17 02:50:21 2012 +0800"
      },
      "message": "batman-adv: Update copyright years\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "032b7969f8874d5ddc65691cd3d008beffd2a09e",
      "tree": "73a0e8bdd4dcf0f1dc3407b17df0424106027f9d",
      "parents": [
        "ea3d2fd1b11fb3ef8706a48ece0a49a61bcd08bc"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Tue Dec 20 19:30:40 2011 +0800"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 17 02:50:20 2012 +0800"
      },
      "message": "batman-adv: convert time_after instances to has_timed_out\n\nTo increase readability the has_timed_out() functions has been introduced.\nThis patch converts existing time_after() calls to use this wrapper\nfunction (if applicable).\nThis patch also converts all timeouts to miliseconds to be consistent.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\n"
    },
    {
      "commit": "01c4224b51feba2ba64d070ab9f4aa32c9d0bb29",
      "tree": "80ca19da3b90b2b69f01492c06310be4c8678efc",
      "parents": [
        "1c280471b013e26c833fc86acc231c73442cfa21"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Mon Nov 28 21:31:55 2011 +0800"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 17 02:50:20 2012 +0800"
      },
      "message": "batman-adv: convert batman iv algorithm to use dynamic infrastructure\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "8780dad9e97f564da0eb3443009c3203122e7e7d",
      "tree": "9c291c379f5d94793162e24b22452f9ffe5277a3",
      "parents": [
        "76543d14aec6ce5cb3fc7be9b39c50fcebd2043b"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Mon Dec 05 04:01:51 2011 +0800"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 17 02:50:19 2012 +0800"
      },
      "message": "batman-adv: simplify bat_ogm_receive API call\n\nMost of the values in that call are derived from the skb, so we can hand\nover the skb instead.\n\nReported-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "76543d14aec6ce5cb3fc7be9b39c50fcebd2043b",
      "tree": "4f739cfadaee8ec9a06d7855956f3accc1dcc2be",
      "parents": [
        "17071578888c7c18709e48e74fae228c04581b9a"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Nov 20 15:47:38 2011 +0100"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 17 02:50:19 2012 +0800"
      },
      "message": "batman-adv: Explicitly mark the common header structure\n\nAll batman-adv packets have a common 3 byte header. It can be used to share\nsome code between different code paths, but it was never explicit stated that\nthis header has to be always the same for all packets. Therefore, new code\nchanges always have the problem that they may accidently introduce regressions\nby moving some elements around.\n\nA new structure is introduced that contains the common header and makes it\neasier visible that these 3 bytes have to be the same for all on-wire packets.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "69497c17c6ffc636e463d528c2f4c87e4d894964",
      "tree": "5d89cf8ddf792054e560651e24e592884485fcff",
      "parents": [
        "2ef04f4752a9687a03b16d4d908cf07ff8b96a3b"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Fri Dec 02 17:38:52 2011 +0100"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Wed Dec 07 02:45:59 2011 +0800"
      },
      "message": "batman-adv: format multi-line if in the correct way\n\nin an multi-line if statement leading edges should line up to the opening\nparenthesis\n\nReported-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "8b7342d673d31e7aa60baae35321c11532275cdb",
      "tree": "5e6790ae621aad9fda859fcb39aa626dcfb8bb4d",
      "parents": [
        "dc58fe32e6a4fbd270e8f045225ce475073d0772"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sun Oct 16 20:32:03 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Nov 20 13:08:34 2011 +0100"
      },
      "message": "batman-adv: check for tt_reponse packet real length\n\nBefore accessing the TT_RESPONSE packet payload, the node has to ensure that the\npacket is long enough as it would expect to be.\n\nReported-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "dc58fe32e6a4fbd270e8f045225ce475073d0772",
      "tree": "00b2fb40bff5f673c2dd0e9ef798d25e17c22e67",
      "parents": [
        "d099c2c541f003bfde9a9eda5519913b313c4c27"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sun Oct 16 20:32:02 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Nov 20 13:08:34 2011 +0100"
      },
      "message": "batman-adv: linearise the tt_response skb only if needed\n\nThe TT_RESPONSE skb has to be linearised only if the node plans to access the\npacket payload (so only if the message is directed to that node). In all the\nother cases the node can avoid this memory operation\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "c90681b8505946761b55d4981c9c3b56b3c4171b",
      "tree": "b260388317b5dc1f4a8c00493eea6ff30fb47652",
      "parents": [
        "eb7e2a1e20488f91c7007caa080b83b8e4222572"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Oct 05 17:05:25 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Nov 20 13:08:33 2011 +0100"
      },
      "message": "batman-adv: fixed hash functions type to uint32_t instead of int\n\nThere are two reasons for this fix:\n- the result of choose_orig() and vis_choose() is an index and therefore it can\u0027t\n  be negative. Hence it is correct to make the return type unsigned too.\n\n- sizeof(int) may not be the same on ALL the architectures. Since we plan to use\n  choose_orig() as DHT hash function, we need to guarantee that, given the same\n  argument, the result is the same. Then it is correct to explicitly express\n  the size of the return type (and the second argument). Since the expected\n  length is currently 4, uint32_t is the most convenient choice.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "fc9572756418e13e0bffaf2d58f678b907602507",
      "tree": "373a9b5631dbaa2bc8fc41c75d094a7f0bb157e5",
      "parents": [
        "b6da4bf5d7951aba4f86d65546474c4e718f650f"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Jul 30 12:04:12 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Thu Sep 08 17:39:06 2011 +0200"
      },
      "message": "batman-adv: agglomerate all batman iv ogm processing functions in a single file\n\nIn preparation of the upcoming improved routing algorithm the code based has\nto be re-organized to allow choosing the routing algorithm at compile time.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "b6da4bf5d7951aba4f86d65546474c4e718f650f",
      "tree": "960ba68ea86c341ec938178f9c27a09cf151861c",
      "parents": [
        "a943cac144e035c21d4f1b31b95f15b33c33a480"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Jul 29 17:31:50 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Thu Sep 08 17:37:51 2011 +0200"
      },
      "message": "batman-adv: rename all instances of batman_packet to batman_ogm_packet\n\nThe follow-up routing code changes are going to introduce additional\nrouting packet types which make this distinction necessary.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "a943cac144e035c21d4f1b31b95f15b33c33a480",
      "tree": "411276e08762d4c4a8d19daa0fecd908210758b7",
      "parents": [
        "267151cdfd17c9dd3923c8ed75ef03725cbdd539"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Jul 30 13:10:18 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Mon Aug 22 15:16:22 2011 +0200"
      },
      "message": "batman-adv: merge update_transtable() into tt related code\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "3d393e47321062dbf9078a66a7cc1c2a52bafecc",
      "tree": "f8e5675fd58984db15571fdc361655fbe6674241",
      "parents": [
        "59b699cdee039d75915c354da06937102d1f9a84"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Thu Jul 07 15:35:37 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Mon Aug 22 15:16:21 2011 +0200"
      },
      "message": "batman-adv: implement AP-isolation on the sender side\n\nIf a node has to send a packet issued by a WIFI client to another WIFI client,\nthe packet is dropped.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "bc2790808a7a3699a7c9f72f7ad225c8504824aa",
      "tree": "a1b0e88091facf44e0afb78d3438c55cfd6633ad",
      "parents": [
        "015758d00251a4dd9287806cdab4b9c1298f97ed"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Thu Jul 07 15:35:35 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Mon Aug 22 15:16:20 2011 +0200"
      },
      "message": "batman-adv: detect clients connected through a 802.11 device\n\nClients connected through a 802.11 device are now marked with the\nTT_CLIENT_WIFI flag. This flag is also advertised with the tt\nannouncement.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "015758d00251a4dd9287806cdab4b9c1298f97ed",
      "tree": "f7569640da23701bc5c391afc1033cf89e1626aa",
      "parents": [
        "1a1f37d9257a4792ca17b28b1c2e4ad15fe95b28"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sat Jul 09 17:52:13 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Mon Aug 22 15:16:19 2011 +0200"
      },
      "message": "batman-adv: correct several typ0s in the comments\n\nSeveral typos have been corrected and some sentences have been rephrased\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "a7f9becb7d27008af0f72f8449c110276b0df37d",
      "tree": "37adcfef1cde149943e7412e983ac5eb5e7aeb97",
      "parents": [
        "980d55b20a730cbabc74cdc57be9c47713dba57b"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Thu Jul 07 14:24:34 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Thu Jul 07 18:49:26 2011 +0200"
      },
      "message": "batman-adv: request the full table if tt_crc doesn\u0027t match\n\nIn case of tt_crc mismatching for a certain orig_node after applying the\nchanges, the node must request the full table immediately.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "8698529d209c43f6434592caf38733b84ccab5f3",
      "tree": "1ae000c69db75b4b1ce89d71c1b3c93121faab92",
      "parents": [
        "5fbc1598c28555d2aa44bff0ac56ec3739401aff"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sat Jun 25 19:09:12 2011 +0200"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Tue Jul 05 14:28:54 2011 +0200"
      },
      "message": "batman-adv: add_bcast_packet_to_list() takes the sending delay as parameter\n\nIn order to make possible to use the broadcast list for delayed sendings\nthe \"delay\" parameter is now provided instead of using 1 as hardcoded\nvalue.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "7683fdc1e88644ee8108a1f33faba80545f0024d",
      "tree": "6a06c51fc2344e1f88e31591f978f3944cfe230e",
      "parents": [
        "cc47f66e6b9ec7e7d465f74739a6fc9844593894"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 27 14:28:07 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jun 20 11:37:30 2011 +0200"
      },
      "message": "batman-adv: protect the local and the global trans-tables with rcu\n\nThe local and the global translation-tables are now lock free and rcu\nprotected.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nAcked-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "cc47f66e6b9ec7e7d465f74739a6fc9844593894",
      "tree": "8fbda7f59267bca45f9e887d09ba1de2f3c62f8d",
      "parents": [
        "a73105b8d4c765d9ebfb664d0a66802127d8e4c7"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 27 14:27:57 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jun 20 11:37:27 2011 +0200"
      },
      "message": "batman-adv: improved roaming mechanism\n\nWith the current client announcement implementation, in case of roaming,\nan update is triggered on the new AP serving the client. At that point\nthe new information is spread around by means of the OGM broadcasting\nmechanism. Until this operations is not executed, no node is able to\ncorrectly route traffic towards the client. This obviously causes packet\ndrops and introduces a delay in the time needed by the client to recover\nits connections.\n\nA new packet type called ROAMING_ADVERTISEMENT is added to account this\nissue.\n\nThis message is sent in case of roaming from the new AP serving the\nclient to the old one and will contain the client MAC address. In this\nway an out-of-OGM update is immediately committed, so that the old node\ncan update its global translation table. Traffic reaching this node will\nthen be redirected to the correct destination utilising the fresher\ninformation. Thus reducing the packet drops and the connection recovery\ndelay.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "a73105b8d4c765d9ebfb664d0a66802127d8e4c7",
      "tree": "b4b11a4050109d8f042c7ac87a5a6d6d91b5d1d2",
      "parents": [
        "3b27ffb00fbe9d9189715ea13ce8712e2f0cb0c5"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Wed Apr 27 14:27:44 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jun 20 11:37:24 2011 +0200"
      },
      "message": "batman-adv: improved client announcement mechanism\n\nThe client announcement mechanism informs every mesh node in the network\nof any connected non-mesh client, in order to find the path towards that\nclient from any given point in the mesh.\n\nThe old implementation was based on the simple idea of appending a data\nbuffer to each OGM containing all the client MAC addresses the node is\nserving. All other nodes can populate their global translation tables\n(table which links client MAC addresses to node addresses) using this\nMAC address buffer and linking it to the node\u0027s address contained in the\nOGM. A node that wants to contact a client has to lookup the node the\nclient is connected to and its address in the global translation table.\n\nIt is easy to understand that this implementation suffers from several\nissues:\n - big overhead (each and every OGM contains the entire list of\n   connected clients)\n - high latencies for client route updates due to long OGM trip time and\n   OGM losses\n\nThe new implementation addresses these issues by appending client\nchanges (new client joined or a client left) to the OGM instead of\nfilling it with all the client addresses each time. In this way nodes\ncan modify their global tables by means of \"updates\", thus reducing the\noverhead within the OGMs.\n\nTo keep the entire network in sync each node maintains a translation\ntable version number (ttvn) and a translation table checksum. These\nvalues are spread with the OGM to allow all the network participants to\ndetermine whether or not they need to update their translation table\ninformation.\n\nWhen a translation table lookup is performed in order to send a packet\nto a client attached to another node, the destination\u0027s ttvn is added to\nthe payload packet. Forwarding nodes can compare the packet\u0027s ttvn with\ntheir destination\u0027s ttvn (this node could have a fresher information\nthan the source) and re-route the packet if necessary. This greatly\nreduces the packet loss of clients roaming from one AP to the next.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "b4e1705417c6cc7d46d9020259a2c8f457cf82bd",
      "tree": "d057a27c91d0bce396726878a6c8995f0d5b0d3b",
      "parents": [
        "b2c44a53836559b5e2823aa215c979c33bc9e2db"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Wed Jun 15 09:41:37 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jun 20 11:37:18 2011 +0200"
      },
      "message": "batman-adv: Reduce usage of char\n\nchar was used in different places to store information without really\nusing the characteristics of that data type or by ignoring the fact that\nchar has not a well defined signedness.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "b2c44a53836559b5e2823aa215c979c33bc9e2db",
      "tree": "4373f6917c6c28b9caab3050e74571afc69bcbde",
      "parents": [
        "db69ecfcb0d4df4d6449172186a8dd20836275ed"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Jun 15 09:41:36 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jun 20 11:23:36 2011 +0200"
      },
      "message": "batman-adv: count_real_packets() in batman-adv assumes char is signed\n\ncount_real_packets() in batman-adv assumes char is signed, and returns -1\nthrough it:\n\nnet/batman-adv/routing.c: In function \u0027receive_bat_packet\u0027:\nnet/batman-adv/routing.c:739: warning: comparison is always false due to limited range of data type\n\nUse int instead.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n[sven@narfation.org: Rebase on top of current version]\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "d1829fa0c380ccf48a7b96795a6d4a01698d02a6",
      "tree": "f9d09ee6e09f700725696a31696168c5c7ec3ba5",
      "parents": [
        "bb899b89f46eb1fd6f62a4c360f6511b9714e479"
      ],
      "author": {
        "name": "Daniele Furlan",
        "email": "daniele.furlan@gmail.com",
        "time": "Tue Jun 07 00:45:55 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Thu Jun 09 20:40:37 2011 +0200"
      },
      "message": "batman-adv: accept delayed rebroadcasts to avoid bogus routing under heavy load\n\nWhen a link is saturated (re)broadcasts of OGMs are delayed. Under heavy\nload this delay may exceed the orig interval which leads to OGMs being\ndropped (the code would only accept an OGM rebroadcast if it arrived\nbefore the next OGM was broadcasted). With this patch batman-adv will\nalso accept delayed OGMs in order to avoid a bogus influence on the\nrouting metric.\n\nSigned-off-by: Daniele Furlan \u003cdaniele.furlan@gmail.com\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "bb899b89f46eb1fd6f62a4c360f6511b9714e479",
      "tree": "abe2a2d492ef3bc9028d6deb2822abdd21b3c92f",
      "parents": [
        "402196724816875d382099bedb09fdf1f57845bc"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Tue May 10 11:22:37 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon May 30 07:39:37 2011 +0200"
      },
      "message": "batman-adv: Ensure that we really have route changes in update_route\n\nThe debug output of update_route has tests for \"route deleted\" and \"route\nadded\". All other situations are handled as \"route changed\". This is not\ntrue because neigh_node and curr_router could be both NULL.\n\nThe function is not called in this situation, but the code might be\ninterpreted wrong when reading it without this test.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "44e92bc8d6366ebe477cab23199b9f50328d326a",
      "tree": "7488776fd7af5f7c1f3e2a3431d0c4829605b5c4",
      "parents": [
        "0bb857511b6a1572ad15dfd7f23d79587d7e2781"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sat May 21 01:33:07 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon May 30 07:39:36 2011 +0200"
      },
      "message": "batman-adv: use is_broadcast_ether_addr() instead of compare_eth(.., brd_addr)\n\nInstead of comparing mac addresses with the broadcast address by means\nof compare_eth(), the is_broadcast_ether_addr() kernel function has to be\nused.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nAcked-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "704509b8d44886cebfbaff1a9813c35dfa986954",
      "tree": "7b353f1d4a33b31d55d2a85f8d70882ade1868ce",
      "parents": [
        "958ca5985604a6f13387d32de489365df816558b"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sat May 14 23:14:54 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon May 30 07:39:33 2011 +0200"
      },
      "message": "batman-adv: Calculate sizeof using variable insead of types\n\nDocumentation/CodingStyle recommends to use the form\n\n\tp \u003d kmalloc(sizeof(*p), ...);\n\nto calculate the size of a struct and not the version where the struct\nname is spelled out to prevent bugs when the type of p changes. This\nalso seems appropriate for manipulation of buffers when they are\ndirectly associated with p.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "747e4221a03cde62402b614ca1f8e961b8416130",
      "tree": "98428064fef191a5093e276d5a779b9e801a97f0",
      "parents": [
        "38e3c5f0dae7a3bbb32c3b2bb28c3f2557d40fe9"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sat May 14 23:14:50 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon May 30 07:39:31 2011 +0200"
      },
      "message": "batman-adv: Add const type qualifier for pointers\n\nbatman-adv uses pointers which are marked as const and should not\nviolate that type qualifier by passing it to functions which force a\ncast to the non-const version.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "e2cbc11c0e1225bd5fe183a967fc80df3db10745",
      "tree": "5e7bf4845b660067fdfb93e4cee836fa545a621f",
      "parents": [
        "55922c9d1b84b89cb946c777fddccb3247e7df2c"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sun May 08 20:52:57 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon May 30 07:39:27 2011 +0200"
      },
      "message": "batman-adv: move neigh_node-\u003eif_incoming-\u003eif_status check in find_router()\n\nEvery time that find_router() is invoked, if_status has to be compared with\nIF_ACTIVE. Moving this comparison inside find_router() will avoid to write it\neach time.\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "27aea2128ec09924dfe08e97739b2bf8b15c8619",
      "tree": "5b8c7435c40bf7e323a9582423d00647cf06b0a8",
      "parents": [
        "6e215fd8eb4930373d01da0fac16a0889804fac3"
      ],
      "author": {
        "name": "Daniele Furlan",
        "email": "daniele.furlan@gmail.com",
        "time": "Sat May 07 22:45:19 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun May 08 16:10:42 2011 +0200"
      },
      "message": "batman-adv: remove duplicate code from function is_bidirectional_neigh()\n\nIn function is_bidirectional_neigh the code that find out the one hop\nneighbor is duplicated.\n\nSigned-off-by: Daniele Furlan \u003cdaniele.furlan@gmail.com\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "2dafb49d84a9195193b28ac5047df1bbab6053b9",
      "tree": "cb3a9a77496257c54ce9fb61c4ff08743a98dc31",
      "parents": [
        "01df2b65e97735547ce37844f4134b5ea99b4037"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Thu May 05 08:42:45 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun May 08 16:10:42 2011 +0200"
      },
      "message": "batman-adv: rename everything from *hna* into *tt* (translation table)\n\nTo be coherent, all the functions/variables/constants have been renamed\nto the TranslationTable style\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "01df2b65e97735547ce37844f4134b5ea99b4037",
      "tree": "796500d41c64fc122bb54ed00927bf75db2eb638",
      "parents": [
        "3a4375a9f0080e6ae40af63e2e2c1e70a6dcb775"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Thu May 05 14:14:46 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun May 08 16:10:42 2011 +0200"
      },
      "message": "batman-adv: Fix refcount imbalance in find_router\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "32ae9b221e788413ce68feaae2ca39e406211a0a",
      "tree": "d827f989976a28fea5cdcb349c308baa98182c35",
      "parents": [
        "71e4aa9c465fd66c110667ab5d620fb6a4ef2157"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Wed Apr 20 15:40:58 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun May 01 22:49:03 2011 +0200"
      },
      "message": "batman-adv: Make bat_priv-\u003eprimary_if an rcu protected pointer\n\nThe rcu protected macros rcu_dereference() and rcu_assign_pointer()\nfor the bat_priv-\u003eprimary_if need to be used, as well as spin/rcu locking.\n\nOtherwise we might end up using a primary_if pointer pointing to already\nfreed memory.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "b5a6f69c5ca024bea43496d517c3b7ccfdb084a6",
      "tree": "d278ccaaf84525e78eba338c5d4676de467ed0cd",
      "parents": [
        "af20b710479ae662829cf739b521390daa7fcbcb"
      ],
      "author": {
        "name": "Antonio Quartulli",
        "email": "ordex@autistici.org",
        "time": "Sat Apr 16 11:30:57 2011 +0200"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun May 01 22:49:02 2011 +0200"
      },
      "message": "batman-adv: orig_hash_find() manages rcu_lock/unlock internally\n\norig_hash_find() manages rcu_lock/unlock internally and doesn\u0027t need to\nbe surrounded by rcu_read_lock() / rcu_read_unlock() anymore\n\nSigned-off-by: Antonio Quartulli \u003cordex@autistici.org\u003e\nAcked-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "68003903e4eeec5288f074ff0751a381750ceb34",
      "tree": "72577cb46c0e0aaec9edb54a496002d13650f6fb",
      "parents": [
        "e1a5382f978b67b5cc36eec65e6046730ce07714"
      ],
      "author": {
        "name": "Linus Lüssing",
        "email": "linus.luessing@web.de",
        "time": "Mon Mar 14 22:43:40 2011 +0000"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Apr 17 21:11:01 2011 +0200"
      },
      "message": "batman-adv: Protect global TQ window with a spinlock\n\nSigned-off-by: Linus Lüssing \u003clinus.luessing@web.de\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "e1a5382f978b67b5cc36eec65e6046730ce07714",
      "tree": "f7ca07cde3a49858d0cfa33e0189a659a1fcc95d",
      "parents": [
        "57f0c07c4d0da8bcc23e21c330fe9c7c5cf776b5"
      ],
      "author": {
        "name": "Linus Lüssing",
        "email": "linus.luessing@web.de",
        "time": "Mon Mar 14 22:43:37 2011 +0000"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Apr 17 21:11:01 2011 +0200"
      },
      "message": "batman-adv: Make orig_node-\u003erouter an rcu protected pointer\n\nThe rcu protected macros rcu_dereference() and rcu_assign_pointer()\nfor the orig_node-\u003erouter need to be used, as well as spin/rcu locking.\nOtherwise we might end up using a router pointer pointing to already\nfreed memory.\n\nTherefore this commit introduces the safe getter method\norig_node_get_router().\n\nSigned-off-by: Linus Lüssing \u003clinus.luessing@web.de\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "551586292b39da6e4fbfbb5b96b57b68decfdab9",
      "tree": "7d9260d487a9c29fb3c50e0174986d1399aab1be",
      "parents": [
        "0ce790e7d736cedc563e1fb4e998babf5a4dbc3d"
      ],
      "author": {
        "name": "Linus Lüssing",
        "email": "linus.luessing@web.de",
        "time": "Mon Mar 14 22:43:27 2011 +0000"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Sun Apr 17 21:11:00 2011 +0200"
      },
      "message": "batman-adv: Move bonding / iface alternating router search to own functions\n\nThis decreases the size of find_router() by outsourcing the router\nsearch for the bonding and interface alternating modes to their own sub\nfunctions. This shall make it easier to keep track of the correct\nrefcounting later.\n\nSigned-off-by: Linus Lüssing \u003clinus.luessing@web.de\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "7cefb149a6b0e4f7c5adfa27dcf285b729063848",
      "tree": "3b4d041fd21905286602c3319d94f591a344b8f3",
      "parents": [
        "e6c10f433af9c98994c94a10ae862c152fcfb2a9"
      ],
      "author": {
        "name": "Linus Lüssing",
        "email": "linus.luessing@ascom.ch",
        "time": "Wed Mar 02 17:39:31 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:52:08 2011 +0100"
      },
      "message": "batman-adv: Remove unused hdr_size variable in route_unicast_packet()\n\nSigned-off-by: Linus Lüssing \u003clinus.luessing@ascom.ch\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "e6c10f433af9c98994c94a10ae862c152fcfb2a9",
      "tree": "56b4a82b83da44f7c3657a283c92c5cc8e248b9f",
      "parents": [
        "4389e47af856635eb17d03b2572a50576c12db24"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 18 12:33:20 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:52:06 2011 +0100"
      },
      "message": "batman-adv: rename batman_if struct to hard_iface\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "4389e47af856635eb17d03b2572a50576c12db24",
      "tree": "988fbbd883f5c8691d2bf100656e723e54073c0a",
      "parents": [
        "d0072609baebaffb522083d367f4f195187f60f8"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 18 12:33:19 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:52:05 2011 +0100"
      },
      "message": "batman-adv: rename global if_list to hardif_list\n\nBatman-adv works with \"hard interfaces\" as well as \"soft interfaces\".\nThe new name should better make clear which kind of interfaces this\nlist stores.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "d0072609baebaffb522083d367f4f195187f60f8",
      "tree": "44e014264e2a2815d63f09c6ba9283d2866cbf48",
      "parents": [
        "1605d0d60b66b9461cfcff86f8cfc80964f23430"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Wed Jan 19 20:01:44 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:52:04 2011 +0100"
      },
      "message": "batman-adv: remove orig_hash spinlock\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "1605d0d60b66b9461cfcff86f8cfc80964f23430",
      "tree": "d35ad73ad4ac6cc157383d611101d3dd66115745",
      "parents": [
        "7b36e8eef989fc59535b4f1d3fc0f83afaf419d4"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 18 12:28:11 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:52:03 2011 +0100"
      },
      "message": "batman-adv: increase refcount in create_neighbor to be consistent\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "7b36e8eef989fc59535b4f1d3fc0f83afaf419d4",
      "tree": "f0900101542966e0655ca5f115b5b0bc409b1e74",
      "parents": [
        "7aadf889e897155c45cda230d2a6701ad1fbff61"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 18 12:28:10 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:52:01 2011 +0100"
      },
      "message": "batman-adv: Correct rcu refcounting for orig_node\n\nIt might be possible that 2 threads access the same data in the same\nrcu grace period. The first thread calls call_rcu() to decrement the\nrefcount and free the data while the second thread increases the\nrefcount to use the data. To avoid this race condition all refcount\noperations have to be atomic.\n\nReported-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "7aadf889e897155c45cda230d2a6701ad1fbff61",
      "tree": "4a31df411c29844afe25ccde17d2ff9e618241c1",
      "parents": [
        "39901e716275da4e831b40f9e45a1b61d6a776dc"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 18 12:28:09 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:52:00 2011 +0100"
      },
      "message": "batman-adv: remove extra layer between hash and hash element - hash bucket\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "39901e716275da4e831b40f9e45a1b61d6a776dc",
      "tree": "a7db25062f0e3df9b7f878adaeda8aadd5644181",
      "parents": [
        "9e0b33c221f1364e4d7562177a918eef8e85317a"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Fri Feb 18 12:28:08 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:50:14 2011 +0100"
      },
      "message": "batman-adv: separate ethernet comparing calls from hash functions\n\nNote: The function compare_ether_addr() provided by the Linux kernel\nrequires aligned memory.\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "f3e0008f01b275bd08bd416cfcaa7021dd6bc277",
      "tree": "47c1787dce5d3bda821a4ccb015d54b6b9cadc82",
      "parents": [
        "0ede9f41b217d8982ab426e3c8c1b692a280a16f"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Tue Jan 25 21:52:11 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:50:09 2011 +0100"
      },
      "message": "batman-adv: make broadcast seqno operations atomic\n\nBatman-adv could receive several payload broadcasts at the same time\nthat would trigger access to the broadcast seqno sliding window to\ndetermine whether this is a new broadcast or not. If these incoming\nbroadcasts are accessing the sliding window simultaneously it could\nbe left in an inconsistent state. Therefore it is necessary to make\nsure this access is atomic.\n\nReported-by: Linus Lüssing \u003clinus.luessing@web.de\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "0ede9f41b217d8982ab426e3c8c1b692a280a16f",
      "tree": "3d3379f4614ec898d1db8845fdcbbbf7134f0165",
      "parents": [
        "ed75ccbe26f4a672a41556120390e67c80a2c441"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Tue Jan 25 21:52:10 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:50:08 2011 +0100"
      },
      "message": "batman-adv: protect bit operations to count OGMs with spinlock\n\nReported-by: Linus Lüssing \u003clinus.luessing@saxnet.de\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "44524fcdf6ca19b58c24f7622c4af1d8d8fe59f8",
      "tree": "297c76f80d68d56e3c65a23c70de645a1c93df47",
      "parents": [
        "a4c135c561106c397bae33455acfca4aa8065a30"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Thu Feb 10 14:33:53 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:50:03 2011 +0100"
      },
      "message": "batman-adv: Correct rcu refcounting for neigh_node\n\nIt might be possible that 2 threads access the same data in the same\nrcu grace period. The first thread calls call_rcu() to decrement the\nrefcount and free the data while the second thread increases the\nrefcount to use the data. To avoid this race condition all refcount\noperations have to be atomic.\n\nReported-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "a4c135c561106c397bae33455acfca4aa8065a30",
      "tree": "09613dd5443fb6abfdab5b851eccdd610d1b0783",
      "parents": [
        "2ae2daf6c3f23364862a7d4f2ca79eab041b701b"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "siwu@hrz.tu-chemnitz.de",
        "time": "Wed Jan 19 20:01:43 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:50:01 2011 +0100"
      },
      "message": "batman-adv: protect bonding with rcu locks\n\nbonding / alternating candidates need to be secured by rcu locks\nas well. This patch therefore converts the bonding list\nfrom a plain pointer list to a rcu securable lists and references\nthe bonding candidates.\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "2ae2daf6c3f23364862a7d4f2ca79eab041b701b",
      "tree": "8b4c15f4c7733d9d1d3aa58fd80b6f998b9eca2c",
      "parents": [
        "16b1aba849eeb45d51a5de731cf103143439ffe1"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Wed Jan 19 20:01:42 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:50:00 2011 +0100"
      },
      "message": "batman-adv: protect ogm counter arrays with spinlock\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "16b1aba849eeb45d51a5de731cf103143439ffe1",
      "tree": "2bbda8638bd925014e8d6025d704cb2860d28606",
      "parents": [
        "fb778ea173fcd58b8fc3d75c674f07fab187b55f"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Wed Jan 19 20:01:42 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:49:59 2011 +0100"
      },
      "message": "batman-adv: protect originator nodes with reference counters\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "fb778ea173fcd58b8fc3d75c674f07fab187b55f",
      "tree": "b14cfc99b7ca61ddcb49cc56c9a8e2822675debc",
      "parents": [
        "a775eb847ae66211577d4fd2c46749b77c9993c9"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Wed Jan 19 20:01:40 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:49:58 2011 +0100"
      },
      "message": "batman-adv: protect each hash row with rcu locks\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "a775eb847ae66211577d4fd2c46749b77c9993c9",
      "tree": "122c3a1cb15751f943570d05f1369f707180e989",
      "parents": [
        "1a241a57be46cda985c7c36e24d49f67de6bfb53"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Wed Jan 19 20:01:39 2011 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:49:57 2011 +0100"
      },
      "message": "batman-adv: protect neigh_nodes used outside of rcu_locks with refcounting\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "f987ed6ebd991009cd9f6190ce319e8b50d6be1f",
      "tree": "08fd4c5edc6ee74407ec901cef960978946f716f",
      "parents": [
        "9591a79f280ede740e44aeb8ad93a6692d482dce"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sun Dec 12 21:57:12 2010 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:49:54 2011 +0100"
      },
      "message": "batman-adv: protect neighbor list with rcu locks\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "9591a79f280ede740e44aeb8ad93a6692d482dce",
      "tree": "4472796690f19a55f56a1974537a120965978903",
      "parents": [
        "a8e7f4bc38c4a90ee308cd7f1f8604f71db59d05"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sun Dec 12 21:57:11 2010 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:49:53 2011 +0100"
      },
      "message": "batman-adv: convert neighbor list to hlist\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "a8e7f4bc38c4a90ee308cd7f1f8604f71db59d05",
      "tree": "eaad8069534691aaa06b316ce42fbeb81f380b20",
      "parents": [
        "8d689218568174955129d0f0e9e4370a391b3609"
      ],
      "author": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sun Dec 12 21:57:10 2010 +0000"
      },
      "committer": {
        "name": "Marek Lindner",
        "email": "lindner_marek@yahoo.de",
        "time": "Sat Mar 05 12:49:52 2011 +0100"
      },
      "message": "batman-adv: protect neighbor nodes with reference counters\n\nSigned-off-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\n"
    },
    {
      "commit": "ee1e884194eb19574898ce6d5eaef5e8afdec7f2",
      "tree": "71ff4163b147b3562093e5090bff7a8d2a2aad4e",
      "parents": [
        "14062064167ecdda4a17ec9190740c189223550a"
      ],
      "author": {
        "name": "Linus Lüssing",
        "email": "linus.luessing@ascom.ch",
        "time": "Sun Feb 06 23:08:37 2011 +0000"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Fri Feb 11 23:30:29 2011 +0100"
      },
      "message": "batman-adv: Remove duplicate types.h inclusions\n\ntypes.h is included by main.h, which is included at the beginning of any\nother c-file anyway. Therefore this commit removes those duplicate\ninclussions.\n\nSigned-off-by: Linus Lüssing \u003clinus.luessing@ascom.ch\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "64afe35398269577ef9809474dd7dc0e5d265176",
      "tree": "ea50beef8d6eadf653c66f513d5cee1a5d98d7c2",
      "parents": [
        "1299bdaa1cb522de940d912f661bef59b9a39dd7"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Thu Jan 27 10:38:15 2011 +0100"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jan 31 14:57:12 2011 +0100"
      },
      "message": "batman-adv: Update copyright years\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "1299bdaa1cb522de940d912f661bef59b9a39dd7",
      "tree": "811b2e08c3c8c8a36b59816a5c1c2d3ee4c16005",
      "parents": [
        "fb86d7648ffdfc8778db2cd70d4bc5c6093e04c5"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Thu Jan 27 13:48:54 2011 +0100"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jan 31 14:57:12 2011 +0100"
      },
      "message": "batman-adv: Remove unused variables\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "74ef115359f5beb565baddfb250f264d9177c108",
      "tree": "aec2314d58563f49438aee5eeeb94531d1815c15",
      "parents": [
        "ae361ce19fa135035c6b83ac1f07090b72fd4b8f"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "siwu@hrz.tu-chemnitz.de",
        "time": "Wed Dec 29 16:15:19 2010 +0000"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jan 31 14:57:09 2011 +0100"
      },
      "message": "batman-adv: remove unused parameters\n\nSome function parameters are obsolete now and can be removed.\n\nReported-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "ae361ce19fa135035c6b83ac1f07090b72fd4b8f",
      "tree": "00410704b2dd5f0d7310f5cb9796385d7e8b7e91",
      "parents": [
        "5c77d8bb8aeb4ec6804b6c32061109ba2ea6988d"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Tue Jan 25 22:02:31 2011 +0000"
      },
      "committer": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jan 31 14:57:08 2011 +0100"
      },
      "message": "batman-adv: Calculate correct size for merged packets\n\nThe routing algorithm must be able to decide if a fragment can be merged with\nthe missing part and still be passed to a forwarding interface. The fragments\ncan only differ by one byte in case that the original payload had an uneven\nlength. In that situation the sender has to inform all possible receivers that\nthe tail is one byte longer using the flag UNI_FRAG_LARGETAIL.\n\nThe combination of UNI_FRAG_LARGETAIL and UNI_FRAG_HEAD flag makes it possible\nto calculate the correct length for even and uneven sized payloads.\n\nThe original formula missed to add the unicast header at all and forgot to\nremove the fragment header of the second fragment. This made the results highly\nunreliable and only useful for machines with large differences between the\nconfigured MTUs.\n\nReported-by: Russell Senior \u003crussell@personaltelco.net\u003e\nReported-by: Marek Lindner \u003clindner_marek@yahoo.de\u003e\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\n"
    },
    {
      "commit": "c6c8fea29769d998d94fcec9b9f14d4b52b349d3",
      "tree": "2c8dc8d1a64d48c5737a5745e3c510ff53a23047",
      "parents": [
        "b236da6931e2482bfe44a7865dd4e7bb036f3496"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Dec 13 11:19:28 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 16 13:44:24 2010 -0800"
      },
      "message": "net: Add batman-adv meshing protocol\n\nB.A.T.M.A.N. (better approach to mobile ad-hoc networking) is a routing\nprotocol for multi-hop ad-hoc mesh networks. The networks may be wired or\nwireless. See http://www.open-mesh.org/ for more information and user space\ntools.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
