)]}'
{
  "commit": "2da40f4919f6268d4935c42a358739ffdf3a48dc",
  "tree": "aa40f9570647e8631ed5d74371f9c11bec25a98f",
  "parents": [
    "a608bbf27b48b7bd5e63f1c46380a1c5288ba48a"
  ],
  "author": {
    "name": "ajs",
    "email": "ajs",
    "time": "Wed Mar 30 16:33:13 2005 +0000"
  },
  "committer": {
    "name": "ajs",
    "email": "ajs",
    "time": "Wed Mar 30 16:33:13 2005 +0000"
  },
  "message": "2005-03-30 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* irdp.h: Add prototype for irdp_sock_init, and fix protos for\n\t  other irdp_* functions.\n\t* irdp_interface.c: (irdp_if_start) If irdp_sock is negative,\n\t  call irdp_sock_init to create the IRDP socket.\n\t  (irdp_if_init) Rename to irdp_init().\n\t  (get_iflist_ifp) Remove function that is a duplicate of\n\t  if_lookup_by_index.\n\t  (*) Make many functions static.  And remove superfluous \"\\n\" from\n\t  several zlog messages.\n\t* irdp_main.c: (irdp_init) Remove function that used to call\n\t  irdp_if_init() and irdp_sock_init(), since we will now create\n\t  the socket only upon first use.\n\t  (irdp_sock_init) Do not update global irdp_sock variable, just\n\t  return the fd and assume that the caller will do so.  If setsockopt\n\t  calls fail, close the socket before returning -1.\n\t  (*) Make many functions static.\n\t* irdp_packet.c: Initialize irdp_sock to -1.\n\t  (irdp_read_raw) Call standard library function if_lookup_by_index\n\t  instead of get_iflist_ifp.\n\t  (irdp_recvmsg) Should be static, not global.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "59c154dd662fba2ca78e575dbddcd17f70184de9",
      "old_mode": 33188,
      "old_path": "zebra/ChangeLog",
      "new_id": "a75bd6156024e1ebfed4fe90cc040c4aab1d5192",
      "new_mode": 33188,
      "new_path": "zebra/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "88453e98bf518bfa8dc3bb45405222c3b7c1faeb",
      "old_mode": 33188,
      "old_path": "zebra/irdp.h",
      "new_id": "1f0c1ecd7956f7ba2176c2f2414082e07fc704b0",
      "new_mode": 33188,
      "new_path": "zebra/irdp.h"
    },
    {
      "type": "modify",
      "old_id": "983969f131ed15eb149ff0a177fccb1e10299c6a",
      "old_mode": 33188,
      "old_path": "zebra/irdp_interface.c",
      "new_id": "5f913856b5455cd1621984c57a3ef6c6cf23d2ec",
      "new_mode": 33188,
      "new_path": "zebra/irdp_interface.c"
    },
    {
      "type": "modify",
      "old_id": "0db2a54da5fa13170b8a2f7d9788c776b7ce3889",
      "old_mode": 33188,
      "old_path": "zebra/irdp_main.c",
      "new_id": "af6bb80b573205ef862023f6bfc5ab7fcb14fff0",
      "new_mode": 33188,
      "new_path": "zebra/irdp_main.c"
    },
    {
      "type": "modify",
      "old_id": "2f448ecaf3fef4ae20c95dc9a3fbadddcff423c0",
      "old_mode": 33188,
      "old_path": "zebra/irdp_packet.c",
      "new_id": "74c75ab25e5c3c21613da85ae15c88f736d9f1ac",
      "new_mode": 33188,
      "new_path": "zebra/irdp_packet.c"
    }
  ]
}
