)]}'
{
  "commit": "da26e3b6549e5e8a460b62ac02ed854685f6200d",
  "tree": "4a76896e4c4c0ef25f50c1cf16520a26eaa38d10",
  "parents": [
    "ddf1c26ca3cfd31ed11a40909bdadc6b823f0697"
  ],
  "author": {
    "name": "gdt",
    "email": "gdt",
    "time": "Mon Jan 05 17:20:59 2004 +0000"
  },
  "committer": {
    "name": "gdt",
    "email": "gdt",
    "time": "Mon Jan 05 17:20:59 2004 +0000"
  },
  "message": "2004-01-05  Greg Troxel  \u003cgdt@ahi.ir.bbn.com\u003e\n\n        * kernel_socket.c (kernel_read): Look up interfaces by index\n        first, so that state changes which do not include a sockaddr_dl\n        now work.  Add many sanity checks.  In\n        particular, do not assume that a sockaddr_dl follows a message\n        without checking the ifm_addrs flags, and do not trust the length\n        in a sockaddr_dl.  Add/clarify many comments.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e4547f676614171d6931eefd476d1fceb330ec6b",
      "old_mode": 33188,
      "old_path": "zebra/ChangeLog",
      "new_id": "0bf262fb74af458c4e2158cfaf2c3e47d76fe885",
      "new_mode": 33188,
      "new_path": "zebra/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "6950d6807ea7f0c45d7dd8a66ad548e0d8c7aa4b",
      "old_mode": 33188,
      "old_path": "zebra/kernel_socket.c",
      "new_id": "97953ac19428f065bf75e9e2237608377e5b1fc6",
      "new_mode": 33188,
      "new_path": "zebra/kernel_socket.c"
    }
  ]
}
