)]}'
{
  "commit": "b4b359a265f1b6272b4eb17c11e9c6ef9817f34b",
  "tree": "f6721202e8ee9f44ccdc54a61e4b74c6552912c0",
  "parents": [
    "8afee5c1729e56f74d27ceb1766bea9f943f060c"
  ],
  "author": {
    "name": "Pradosh Mohapatra",
    "email": "pmohapat@cumulusnetworks.com",
    "time": "Mon Apr 28 10:58:06 2014 +0000"
  },
  "committer": {
    "name": "David Lamparter",
    "email": "equinox@opensourcerouting.org",
    "time": "Wed May 14 16:46:41 2014 +0200"
  },
  "message": "ospfd: For an ABR, ensure the right LSID is MaxAge\u0027d\n\nPROBLEM:\n\nAccurate garbage collection of maxage LSAs. The global OSPF structure has\na maxage_lsa tree - the key to the tree is \u003cls-id, adv-router\u003e tuple. Suppose\nthe ABR has multiple areas and has originated some intra-area LSAs. The\nkey for all those LSAs is the same. The code then ends up in a state where\nall but the first LSA do not get cleaned up from the areas\u0027 LSDB. A subsequent\nevent would readvertise those LSAs.\n\nPATCH:\n\nSince the LSA is going to stick around till it actually gets cleaned up by\nthe maxage_walker, make the LSA pointer as the key. Each distinct LSA that\ngets maxage\u0027d then gets added to the tree and will get cleaned up correctly.\n\nSigned-off-by: Pradosh Mohapatra \u003cpmohapat@cumulusnetworks.com\u003e\n[CF: Use CHAR_BIT; use uintptr_t; use sizeof(field) instead of sizeof(type)]\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\n[DL: this must remain a temporary fix! needs to be redone after 0.99.23]\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9ef70ff50c8e0e2b5a294c478f98fe2c8827dc20",
      "old_mode": 33188,
      "old_path": "lib/prefix.h",
      "new_id": "45889e0862521a9cc6027d15ddebbc1da37ad4c7",
      "new_mode": 33188,
      "new_path": "lib/prefix.h"
    },
    {
      "type": "modify",
      "old_id": "369655163af5af2a08a892d8b0d7cc61c50eb528",
      "old_mode": 33188,
      "old_path": "ospfd/ospf_lsa.c",
      "new_id": "0a66b1d4c73130139e2146667144f9410b9a257b",
      "new_mode": 33188,
      "new_path": "ospfd/ospf_lsa.c"
    }
  ]
}
