)]}'
{
  "log": [
    {
      "commit": "9985f83ce7102f64b15f744b60320f8d14a8a5ff",
      "tree": "344629bdc2b4a7d53b8d7ca1705c9be2ca282d18",
      "parents": [
        "083ee9d9cdbf72a452b9af96e62d0625ea712cd9"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Feb 09 15:51:56 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Feb 09 15:51:56 2005 +0000"
      },
      "message": "2005-02-09 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* (global) Update code to match stream.h changes.\n\t  stream_get_putp effectively replaced with stream_get_endp.\n\t  stream_forward renamed to stream_forward_getp.\n\t  stream_forward_endp introduced to replace some previous\n\t  setting/manual twiddling of putp by daemons.\n\t* lib/stream.h: Remove putp. Update reference to putp with endp.\n\t  Add stream_forward_endp, which daemons were doing manually.\n\t  Rename stream_forward to stream_forward_getp.\n\t  lib/stream.c: Remove/update references to putp.\n\t  introduce stream_forward_endp.\n"
    },
    {
      "commit": "b14ee00b7f23f216b5f159e88de915b8755b97d6",
      "tree": "9ca5e20d7ddb00d1e2c40f3ed0f2a68c3b0ba876",
      "parents": [
        "c4c7d0c48b1219d7ed9ed1377cea1be239c45d5d"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Feb 04 23:42:41 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Feb 04 23:42:41 2005 +0000"
      },
      "message": "2005-02-04 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* ripd.c: Untangle the construction of RIP auth data.\n\t  (rip_auth_prepare_str_send) new helper function, prepare\n\t  correct key string.\n\t  (rip_auth_simple_write) new helper, write out the\n\t  rip simple password auth psuedo-RTE.\n\t  (rip_auth_md5_ah_write) new helper, write out the\n\t  MD5 auth-header psuedo-RTE.\n\t  (rip_auth_header_write) new helper, write out correct\n\t  auth header data / psuedo-RTE.\n\t  (rip_auth_md5_set) rip out the memmove and writing of the\n\t  auth header psuedo-RTE. So that all that is left is to\n\t  write the trailing auth digest, and update digest offset\n\t  field in the original header.\n\t  (rip_write_rte) rip out writing of RIP header, writing of\n\t  simple auth data psuedo-RTE. Make it do what its name suggests,\n\t  write out actual RTEs.\n\t  (rip_output_process) remove the incorrect additional decrements\n\t  of rtemax. Prepare the auth_str, which simple or MD5 auth will\n\t  need. Move write out of RIP header and auth data to inside the\n\t  loop. Adjust paramaters as required.\n"
    },
    {
      "commit": "6a52d0d155fc8b892e30cdb5e3fbe4c2779bd4cd",
      "tree": "d4bfab8286e497e30c5ebfed099c317a9397c623",
      "parents": [
        "656b4eeec1fb30402ad2001976c05c6f44fafb34"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sun Jan 30 18:49:28 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sun Jan 30 18:49:28 2005 +0000"
      },
      "message": "2005-01-30 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* daemon.c: (daemon) Replace perror with zlog_err.\n\t* vty.c: (vty_serv_un) Replace perror with zlog_err.\n\t* ripd.c: (rip_create_socket) Replace perror with zlog_err.\n\t* ioctl.c: (if_ioctl,if_ioctl_ipv6,if_get_flags) Replace perror with\n\t  zlog_err.\n\t* ioctl_solaris.c: (if_ioctl,if_ioctl_ipv6) Replace perror with\n\t  zlog_err.\n"
    },
    {
      "commit": "798534576c2525476141628ac14ecc83fd775a5a",
      "tree": "c5166d696b314ee41961198340b61dd1062af3ec",
      "parents": [
        "0b7d97d293af645d98bc9b196b228d674b2aa344"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sun Jan 30 17:40:29 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sun Jan 30 17:40:29 2005 +0000"
      },
      "message": "2005-01-30 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* ripd.c: (rip_create_socket) Save errno before calling\n\t  ripd_privs.change.\n"
    },
    {
      "commit": "b99760ab51abf8c4c9a1f89dab0c1630a6768ff7",
      "tree": "daaf8cabb567c5ff1a01368fa1382d8257b56854",
      "parents": [
        "73a7dea305b146febb8e57176295689d6a900f1d"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Tue Jan 04 16:24:43 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Tue Jan 04 16:24:43 2005 +0000"
      },
      "message": "2005-01-04 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* configure.ac: Added test for broken CMSG_FIRSTHDR macro\n\t  (relevant for Solaris 8 and unpatched Solaris 9, don\u0027t know\n\t  whether other platforms are affected).\n\t* zebra.h: Define ZCMSG_FIRSTHDR appropriately based on whether\n\t  config.h indicates HAVE_BROKEN_CMSG_FIRSTHDR (as determined\n\t  by the configure test program).\n\t* sockopt.c: (getsockopt_cmsg_data) Use ZCMSG_FIRSTHDR instead\n\t  of CMSG_FIRSTHDR.\n\t* rtadv.c: (rtadv_recv_packet,rtadv_send_packet) Use ZCMSG_FIRSTHDR\n\t  instead of CMSG_FIRSTHDR.\n\t* ripd.c: (rip_recvmsg) Use ZCMSG_FIRSTHDR instead of CMSG_FIRSTHDR.\n\t* ripngd.c: (ripng_recv_packet) Use ZCMSG_FIRSTHDR instead of\n\t  CMSG_FIRSTHDR.\n"
    },
    {
      "commit": "766a0ca3dcb824fc9283be89bb57e47132b26826",
      "tree": "f8600196fb61cbbcbc090dad480830ce0ffe24fb",
      "parents": [
        "3aa8d5f9893c182eb27f0f6ab354a77edbf1b9f0"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Dec 15 14:55:51 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Dec 15 14:55:51 2004 +0000"
      },
      "message": "2004-12-15 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* ripd.c: (rip_read) Improve 2 error messages to show the source of\n\t  the packet when the lookup fails.\n"
    },
    {
      "commit": "5d6c37798317cece827dca7f4b539fa0387b5eb9",
      "tree": "c09349025c5549b316a2de264bc3f9b2de4b7de2",
      "parents": [
        "9b0e25c07763181e73d41d8816762a8aeeb2ad37"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Dec 08 19:24:06 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Dec 08 19:24:06 2004 +0000"
      },
      "message": "2004-12-08 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* *.c: Change level of debug messages to LOG_DEBUG.\n"
    },
    {
      "commit": "6099b3b56956322567323c11fd698b2328c6826b",
      "tree": "fa537bd0eaa9f7d824f39445eabc928db59050ca",
      "parents": [
        "ae5e24d8678f1e3a60dde58d3382c5ba73d6bb27"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Nov 20 02:06:59 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Nov 20 02:06:59 2004 +0000"
      },
      "message": "2004-11-19 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* global: Replace strerror with safe_strerror.  And vtysh/vtysh.c\n\t  needs to include \"log.h\" to pick up the declaration.\n"
    },
    {
      "commit": "c49ad8f1b0775c1b35ea9bf75f44f3eca105d786",
      "tree": "6ec708b6c39ca83707395d656e74a52c2eed7ade",
      "parents": [
        "6b6942f93625c073db645a5546fbaaf7e7b2c628"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Oct 22 10:27:28 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Oct 22 10:27:28 2004 +0000"
      },
      "message": "2004-10-22 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* ripd.c: Collapse redundant passing of various address structs,\n          struct interface and struct connected as arguments to functions\n          down to two key arguments, namely struct connected and, possibly,\n          address of source/destination. Testing for RIPv1 would be useful.\n          (rip_read) lookup struct connected for the received packet, pass\n          it on.\n        * rip_interface.c: With previous changes, we no longer have to tread\n          carefully with struct connected, as it will always be there and\n          valid.\n"
    },
    {
      "commit": "3fb9cd6ef456959b6eff939d5c316f6785c2dda4",
      "tree": "e350cb3ef7b20b8bbccfb1aa9309152311e845bd",
      "parents": [
        "5ae35f45f1292dce3a01f241accafeb2e59b10cc"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Oct 19 19:44:43 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Oct 19 19:44:43 2004 +0000"
      },
      "message": "OK. Here it is - PtP patch from Andrew J. Schorr. No problems with ospfd,\nripd might need some more testing though.\n"
    },
    {
      "commit": "98b718a9d2aa7a3324c553944e26914fe090b87a",
      "tree": "13a7002a3265a2debfa411a2a2c544dbde972f0a",
      "parents": [
        "a149411b85bbe74cde47d82193026b9401b29de0"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Oct 11 12:57:57 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Oct 11 12:57:57 2004 +0000"
      },
      "message": "Sync with changes in lib. Make more strings const.\n"
    },
    {
      "commit": "8a676be30c275bcbe1a3de08c0c942a606caef2e",
      "tree": "c2202db7df836073b542e49c5f579062ee8b6d57",
      "parents": [
        "7a1d583c02253c53605f310d1afcc9f1c8e15b7b"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 06:36:38 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 06:36:38 2004 +0000"
      },
      "message": "There is no warnings here any more.\n"
    },
    {
      "commit": "1af8193311192ec1bd2a4d2769e0e9b90bc1609f",
      "tree": "39b136c0cbc64dd6a39651ce21c5c93384bec50f",
      "parents": [
        "c9e52be3f4d98943b67fbbe5d9a7ccd823b88326"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 16:11:14 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 16:11:14 2004 +0000"
      },
      "message": "Fix compiler warning.\n"
    },
    {
      "commit": "52dc7ee65f8d887b0730abc0a5d44d27fc6ecafd",
      "tree": "a557339540c56dd3953c29a50ca0e48c1911efc8",
      "parents": [
        "44983cf8a9c587dfbcad294b9dfe4dccbb68ba98"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 23 19:18:23 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 23 19:18:23 2004 +0000"
      },
      "message": "Remove usage of evil list and listnode typedefs.\n"
    },
    {
      "commit": "0b3acf4f94241905ff36df5c1d9f9f389e45d191",
      "tree": "48b312ab2de446208d966d234fc37539bed98861",
      "parents": [
        "bf731011ef7038f5766432fec862301c123d4736"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Sep 17 08:39:08 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Sep 17 08:39:08 2004 +0000"
      },
      "message": "2004-09-17 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * ripngd/ripngd.c: move setsockopt_so_recvbuf to lib.\n        * lib/sockopt.{c,h}: Add setsockopt_so_recvbuf, for ripd and ripngd.\n        * ripd/ripd.c: set receive buffer to a decent size, some systems\n          have low defaults. Problem noted and fix suggested by Stephan\n          Schweizer in [zebra 20967].\n"
    },
    {
      "commit": "1a51786a70c45003813ffc60874653555a9b486a",
      "tree": "07cd52dd929569decb8bb487f85cedda99e0358b",
      "parents": [
        "b63cef7c41e2ea92836a2c4570dc34b06c4c5ab7"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Aug 19 04:03:08 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Aug 19 04:03:08 2004 +0000"
      },
      "message": "2004-08-19 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * rip_interface.c: (rip_interface_multicast_set) get rid\n          of extraneous if_pointopoint arg. ifp is accessible via connected.\n          pass connected-\u003eifp-\u003eifindex to setsockopt_multicast_ipv4.\n        * ripd.c: (rip_send_packet) update call to\n          rip_interface_multicast_set\n        * ripd.h: update rip_interface_multicast_set prototype\n"
    },
    {
      "commit": "02ff83c52592427623db0d8367ca9b3395fa321f",
      "tree": "0aa278809140486f55012a98616106fc995d91e6",
      "parents": [
        "51a8798e8d36dddfdeb6b0bfd01bf32a646e8bb1"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jun 11 11:27:03 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jun 11 11:27:03 2004 +0000"
      },
      "message": "2004-06-11 Sowmini Varadhan \u003csowmini.varadhan@sun.com\u003e\n\n        * filter.c: (access_list_remark_cmd) buffer_putstr doesnt need cast\n          to u_char. (ipv6_access_list_remark_cmd) ditto.\n          if.c: ditto\n        * network.c: (readn/writen) pointer arg should be type u_char.\n        * plist.c: needs to include stream.h, not declare stream functions\n          internally.\n          (various) Add static qualifier to internal functions.\n          (prefix_list_type_str) extraneous breaks in switch statement.\n          (ip_prefix_list_description_cmd) buffer_putstr doesnt need cast\n        * stream.h: depends on plist.h and export stream_put_prefix\n        * vty.c: (vty_\u003ctelnet option build functions\u003e) should use\n          unsigned char, telnet options are 0 -\u003e 255.\n        * zclient.c: various u_char\u003c-\u003echar type cleanups.\n        * zebra.h: Having to define CMSG_* can apply to more than just\n          BSDI_NRL.\n        * ripd.c: (rip_distribute_update_all) distribute list hook\n          function pointer prototype requires struct prefix_list * arg.\n          (rip_distribute_update_all_wrapper) update to pass required arg,\n          NULL.\n"
    },
    {
      "commit": "ca5e516c84cc2d35b6f6cd29f8ba9e835d3b72ba",
      "tree": "b0d6c52545e9aeb2e187c6a2c72e296f69deaf9f",
      "parents": [
        "d47b7ba10bdd17d9f723a5fc42b2f71668e27a22"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 22:06:33 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 22:06:33 2004 +0000"
      },
      "message": "2004-06-06 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* ripd.h: Add define for the RIPv2 Authentication Data family\n\t  Move the auth type defines up to where other defines live.\n\t  Add RIP_AUTH_MD5_COMPAT_SIZE, for backwards compatible\n\t  md5-\u003eauth_len size. Add md5_auth_len field to struct\n          rip_interface: (rip_interface_new) Init md5_auth_len to compatible\n          size.\n          (ip_rip_authentication_mode_cmd) Extended to handle setting\n          md5 auth-length. Appropriate aliases added.\n          (no_ip_rip_authentication_mode_cmd) Reset md5_auth_len to\n          compatible size.\n          (rip_interface_config_write) Teach it about md5_auth_len.\n          _always_ write out the auth-length, so that everyone will get\n          the setting in their config file, and hence allow for a future\n          change of default for md5_auth_len to be less painful - every md5\n          user will have this setting in their config file.\n          ripd.c: (rip_packet_dump) Change nasty hard coded constants to\n          symbolic defines. Change various tests of \u0027ntoh.(variable) \u003d\u003d\n          constant\u0027 to test \u0027variable \u003d\u003d ntoh.(constant)\u0027. Clean up\n          indentation on some long lines.\n          (rip_auth_simple_password) ditto.\n          (rip_auth_md5) ditto, also add length argument and sanity check\n          md5 data offset field. Sanity check md5 auth length, accept RFC\n          or old-ripd/cisco lengths.\n          (rip_auth_md5_set) as per (rip_packet_dump), also write out\n          the configured md5 auth length for the interface (old-ripd or rfc)\n          (rip_read) as per (rip_packet_dump)\n          (rip_write_rte) ditto\n          (rip_response_process) ditto\n          (rip_write_rte) ditto\n"
    },
    {
      "commit": "c2bfbcc38428b53e856617e1da8bbe9f8d2ee2fa",
      "tree": "87be849d9b8f29dbccff5df5e0f747c6b702b9b7",
      "parents": [
        "0c2be26c735870c28ec7985ca1d24d96ae63ae45"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jun 04 01:42:38 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jun 04 01:42:38 2004 +0000"
      },
      "message": "2004-06-04 JJ Ludman \u003cjacques.ludman@sun.com\u003e\n\n        * ripd.c: Interoperability fix. Correct value for MD5 auth length\n          is 16. Accept packets with this set to \u003e\u003d 16, and set to 16\n          ourselves.\n"
    },
    {
      "commit": "11dde9c2f03d3f3e0b2226378d70b7e3b9b219b2",
      "tree": "ffa7674ee1ede1b6e39b586d313b8f305b8f1098",
      "parents": [
        "152f4a80026262c0a87bea408410b5a534f3f80e"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon May 31 14:00:00 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon May 31 14:00:00 2004 +0000"
      },
      "message": "2004-05-31 Sowmini Varadhan \u003csowmini.varadhan@sun.com\u003e\n\n        * ripd.c: Fixup compile warnings\n        * rip_routemap.c: Ditto\n"
    },
    {
      "commit": "239389ba30e21de22e6c2dd708f44ece11b5807a",
      "tree": "db01f7a39c330f270e423c8df9bb24f9cf1db0af",
      "parents": [
        "5f77949e7e7c0b6ea23cb2554743ed2b940c340c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 05 14:09:37 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 05 14:09:37 2004 +0000"
      },
      "message": "2004-05-05 Anthony.Golia@morganstanley.com\n\n        * ripd.c: (rip_update_jitter) Bound jitter to a more sensible\n          value, eg 1/4 of update time.\n"
    },
    {
      "commit": "a87552cdf2a54b34b0578102642e20f8e11fa754",
      "tree": "c9885fbfda55ca50b83764704efd83475bfd3abe",
      "parents": [
        "c53174045b26d0a87c68d276aeca0aaca9f464ae"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon May 03 20:00:17 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon May 03 20:00:17 2004 +0000"
      },
      "message": "2004-05-03 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * ripd.c: (rip_rte_process) fix typo in merge of previous patch\n          and run function through indent.\n"
    },
    {
      "commit": "b94f9dbd2616976b803d2fcefcf646573e49c368",
      "tree": "73914a5bad524bba2f737dba7f4f1839d5cf4e0e",
      "parents": [
        "35be31b6b2199e66e5d18420cece5e3bacb3371c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 01 20:45:38 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 01 20:45:38 2004 +0000"
      },
      "message": "2004-03-19 Jean-Yves Simon \u003clethalwp@tiscali.be\u003e\n\n        * ripd.c: make ripd also check on administrative distance of his\n          own links to update routes.\n"
    },
    {
      "commit": "da9c9a24d09071c77843ce39f0470ba487c300bf",
      "tree": "5d7ee635cd11b1a2b541a913a4822a3c33a4035b",
      "parents": [
        "8c903fbb11e5eed5bcf08d26c2b984d07a82e109"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 18 02:40:55 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 18 02:40:55 2004 +0000"
      },
      "message": "From Sowmini fix for crash reported in [quagga-dev 929].\n"
    },
    {
      "commit": "caa6f8ac7d07f8cd3269255e6dce6d248f74af62",
      "tree": "6433147b72768e13c2bae54b481031ebd27b77a5",
      "parents": [
        "a1455d86f58dacbaf0abaacf7f5d15cfa8f1edb8"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Mar 03 19:48:48 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Mar 03 19:48:48 2004 +0000"
      },
      "message": "[quagga-dev 489] - fix ripd version send by Krzysztof Oledzki.\n"
    },
    {
      "commit": "a1455d86f58dacbaf0abaacf7f5d15cfa8f1edb8",
      "tree": "b39dfda2c6db53d0edb96a86c5b7d1beb4cd9662",
      "parents": [
        "429a0f8c5b0968218c1f022c9e2a722f20fb1877"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Mar 03 19:36:24 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Mar 03 19:36:24 2004 +0000"
      },
      "message": "\"show ip rip\" fix from Krzysztof Oledzki ([quagga-dev 437]).\n"
    },
    {
      "commit": "429a0f8c5b0968218c1f022c9e2a722f20fb1877",
      "tree": "71193c8d02e9374867b164fa6b439ba2cf20983a",
      "parents": [
        "3b5640301a1b6f08d8f899d952d64da9bdba32ec"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Feb 22 23:42:22 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Feb 22 23:42:22 2004 +0000"
      },
      "message": "Fix typo in comment.\n"
    },
    {
      "commit": "931cd54d52b9b034f8bf8b634e99bc2444d5094e",
      "tree": "2dceb95d4110c0e501b34473a71f375c2cd385f7",
      "parents": [
        "c15cfa832940dbdf49d1c1f03cfbab9078708e1e"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jan 23 15:31:42 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jan 23 15:31:42 2004 +0000"
      },
      "message": "2004-01-23 sowmini.varadhan@sun.com\n\n        * rip_interface.c: obsolete unbind code in\n        rip_interface_multicast_set, and instead do the more portable\n        (though slower) method of creating a socket for each outgoing packet\n        and binding the source address on the new socket.\n        * rip_interface.c, ripd.c, ripd.h: Modify rip_request_send so that\n        source address is determined by the caller of rip_request_send for\n        ripv1 packets and non-multicast interfaces (rip_request_send loops\n        over all connected address in all other cases).\n        * rip_send_packet: don\u0027t send packets with source set to\n        ZEBRA_IFA_SECONDARY connected addresses; improved debug messages;\n"
    },
    {
      "commit": "42d14d985049a6e810a4036b684e38c005480373",
      "tree": "865f9c98ff0482e7e5ce9baf0883f36ec943d096",
      "parents": [
        "d62262a0260760dc536b4d2fff0bee2b1c18052c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Nov 17 09:15:18 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Nov 17 09:15:18 2003 +0000"
      },
      "message": "2003-11-17 sowmini.varadhan@sun.com\n\n        * ripd/ripd.c: rip_output_process() fixup aspects of split-horizon\n          route suppression. See [quagga-dev 429].\n"
    },
    {
      "commit": "d62262a0260760dc536b4d2fff0bee2b1c18052c",
      "tree": "d6132213aca290d6145054b542e035f8ec2df234",
      "parents": [
        "27d47aa7af603720724bd219b7ef4dbdb8aaaa7b"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Nov 17 09:08:45 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Nov 17 09:08:45 2003 +0000"
      },
      "message": "2003-11-17 Hasso Tepper \u003chasso@estpak.ee\u003e\n\n        * ripd/ripd.c: rip_create_socket() privs were not dropped if bind\n          failed.\n"
    },
    {
      "commit": "cc1131ab011afc4f06c1a967e9c0cbd77cc88d58",
      "tree": "90576741b3bc9d3c0ddc5e2e7b3dcf984bf999c0",
      "parents": [
        "bf547fed75d002da8eedbd190a1b2db8804b767e"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Oct 15 23:20:17 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Oct 15 23:20:17 2003 +0000"
      },
      "message": "2003-10-15 sowmini.varadhan@sun.com\n\n        * ripd/ripd.c: (rip_send_packet) use rip-\u003esock for mcast sends,\n          instead of creating one socket per send. send source addr to\n          rip_update_interface.\n          (rip_update_process) should send an update on every connected\n          network for each interface.\n          (rip_request_send) should send a request on every connected\n          network for each interface.\n        * ripd/ripd.h: update prototype for rip_interface_multicast_set\n        * ripd/rip_interface.c: (rip_interface_multicast_set) reorganized\n          so that it can be called repeatedly for aliased interfaces (on\n          multiple networks).\n"
    },
    {
      "commit": "31a476c7e9014aa81dc0d50b4100431ab111bf3f",
      "tree": "3f7fd8ed9010917cb3e93389d4e1d5a9649c5741",
      "parents": [
        "f3e05cda2a35abe1bcd9e3ad33083f4c78c0235a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Sep 29 19:54:53 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Sep 29 19:54:53 2003 +0000"
      },
      "message": "2003-09-29 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* zebra/connected.c: revert the \u0027generic PtP\u0027 patch as it causes\n\tfar too many problems. People who use FreeSWAN should investigate\n\tnative linux ipsec.\n\t* zebra/rt_netlink.c: ditto\n\t* lib/if.c: ditto\n\t* ripd/ripd.h: ditto\n\t* ripd/ripd.c: ditto\n\t* ripd/rip_interface.c: ditto\n\t* ospfd/ospfd.c: ditto\n\t* ospfd/ospf_snmp.c: ditto\n\t* bgpd/bgp_nexthop.c: ditto\n"
    },
    {
      "commit": "01d0908a17fcaefa9cf4e8379765ed79dba07db5",
      "tree": "6762136870bc297dc7486448c5ab6000a3dddaf4",
      "parents": [
        "8708b74fd3bb887e81af4eea8beb0e16dd12ad32"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 08 21:22:18 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 08 21:22:18 2003 +0000"
      },
      "message": "2003-06-08 Paul Jakma \u003cpaul@dishone.st\u003e\n\nCompile and warning fixes for the ripd \u0027passive-interface default\u0027 patch.\n"
    },
    {
      "commit": "f38a471c6fc96b63c5754448e9a9e32044c9ffd5",
      "tree": "6b474874414773770e2ad836065ba4658a913b9a",
      "parents": [
        "4aaff3f8d57fbb4fc5f4e5e52175a449686c3169"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jun 07 01:10:00 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jun 07 01:10:00 2003 +0000"
      },
      "message": "From: Andrew J. Schorr \u003caschorr@telemetry-investments.com\u003e\nSubject: [zebra 12403] patch for ripd to accept any version of RIP\nby default\n\nThe default Cisco IOS behavior is to send RIP version 1 packets and receive\nversion 1 and version 2 packets.  But zebra version 0.92a sends and receives\nonly version 2 packets by default.\n\nI have patched the code to change zebra\u0027s default behavior to sending\nversion 2 packets (same as before) but receiving both versions.  While\nthis is still not identical to Cisco\u0027s behavior, it does now accept\npackets of both versions and retains backwards compatibility with\nzebra configurations.\n"
    },
    {
      "commit": "4aaff3f8d57fbb4fc5f4e5e52175a449686c3169",
      "tree": "543a3b724afbc308994ddfcc4befedb8b1f1d23f",
      "parents": [
        "1a691cc34733f1a14cfc2dc1cacd1d3376d771cb"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jun 07 01:04:45 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jun 07 01:04:45 2003 +0000"
      },
      "message": "From: Andrew J. Schorr \u003caschorr@telemetry-investments.com\u003e\nSubject: [zebra 12406] patch for ripd to support \"passive-interface\ndefault\" behavior\n\nIn Cisco IOS, the router rip passive-interface subcommand can accept\nan interface name of \"default\".  In that cases, all interfaces are set\nto be passive by default, and you must explicitly make it non-passive\nby using the \"no passive-interface \u003cifname\u003e\" command if you want updates\nto go to that interface.\n\n\u003ccommand implemented for zebra\u003e\n"
    },
    {
      "commit": "edd7c245d3a77012abf801da00d5664ebaa5f749",
      "tree": "d4fada229d7980fb751f28c9a979aa88de1a0af0",
      "parents": [
        "a159ed935b580ed99111a185734ddd9c973e7691"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jun 04 13:59:38 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jun 04 13:59:38 2003 +0000"
      },
      "message": "2003-06-04 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* Merge of zebra privileges\n"
    },
    {
      "commit": "16705130a1c842f7de252779514e4e7f92d967e2",
      "tree": "27d9e22b4f407d505178362103fa5f9d73d741c6",
      "parents": [
        "4a6e22577a49c20b4e2265f174d56b4a9b633090"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 14:49:19 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 14:49:19 2003 +0000"
      },
      "message": "Merge RIP part of 6Wind patch.\n"
    },
    {
      "commit": "00df0c1e80811f3cf5eca0b28e720bf1bcc84a53",
      "tree": "d03bbabe82d8526b1f5472d38a59ed24f9c8c42b",
      "parents": [
        "8bd9c714365883e405af7c7c4257e404a1053469"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:07:36 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:07:36 2002 +0000"
      },
      "message": "[zebra 14631] Generic PtP and RFC3021 interface addressing support\n"
    },
    {
      "commit": "2e3b2e474ed5ba04744b167132a84f9954485af4",
      "tree": "cc07fb34a1bf21ead5cc3ad69e4a9dfde2b43b0e",
      "parents": [
        "7afa08da2d3690baee1739da400775f8543f5863"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:03:13 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:03:13 2002 +0000"
      },
      "message": "zebra link state detection support\n"
    },
    {
      "commit": "727d104b15d6293d7223e7830f2e37ae98022cac",
      "tree": "9ab7e7fecd699f30abc63a5f4612fa9f592db098",
      "parents": [
        "4fc01e67edf1763c9812438effe1d4b1c8b9897b"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:50:29 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:50:29 2002 +0000"
      },
      "message": "Added RIPv1 patch - bug fixes and improved/more interoperable classful\nsubnet handling\n"
    },
    {
      "commit": "718e3744195351130f4ce7dbe0613f4b3e23df93",
      "tree": "bac2ad39971cd43f31241ef123bd4e470f695ac9",
      "parents": [],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:15:29 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:15:29 2002 +0000"
      },
      "message": "Initial revision\n"
    }
  ]
}
