)]}'
{
  "log": [
    {
      "commit": "a6a11765d4206a00b0875988ce352be7cdfa3617",
      "tree": "961fe1aba2fec0f81155bd1fcf7a89542111f678",
      "parents": [
        "4edf1c6aea8fd93e8fdeb2a651bf34bb24329611"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Fri Oct 02 12:27:27 2015 -0400"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul@quagga.net",
        "time": "Tue Oct 27 10:53:22 2015 +0000"
      },
      "message": "pimd: Cleanup interface startup\n\nThis patch cleans up some interface startup, removes duplicate\ndebug messages and protects against some always being displayed.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "f3734dd5fc00886b1d3f497d22295cea591d7685",
      "tree": "c3cad3398bf77cbd12c3ae77ac6187aa05186dff",
      "parents": [
        "0cee0384f6c223f6cf507e980f03f2f3dd65478f"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Sep 30 10:22:46 2015 -0400"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul@quagga.net",
        "time": "Tue Oct 27 10:53:21 2015 +0000"
      },
      "message": "pimd: Cleanup zebra debugs to be protected by debug commands\n\npimd is very chatty without any pim debugs turned on.\nThis commit fixes a bunch of the debugs to be protected\nby appropriate pim debug statement.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "7125293d65d73a451ec203c8c1630c236171f5a3",
      "tree": "f9d118c9a8f8374d69fb9c75c87531a2ca478fb2",
      "parents": [
        "fd1c1a133af47ae5533a5ed41b73ff62e7aa1058"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Thu Sep 24 09:25:19 2015 -0400"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul@quagga.net",
        "time": "Tue Oct 27 10:53:21 2015 +0000"
      },
      "message": "lib: zclient.c remove extern struct thread_master *\n\nzclient.c depended upon link time inclusion of a\nextern struct thread_master *master.  This is a violation of the\nnamespace of the calling daemon.  If a library needs the pointer\npass it in and save it for future use.\n\nThis code change also makes the zclient code consistent with\nthe other lib functions that need to schedule work on your behalf\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "c99f3481a598e9cadd1de96714f6b5df9ad85c4a",
      "tree": "aac6df566f28c13fce5c9f02275f159fab73a24d",
      "parents": [
        "758fb8f99a7bfac3d31c419fd1a5694fc5f33f6a"
      ],
      "author": {
        "name": "Feng Lu",
        "email": "lu.feng@6wind.com",
        "time": "Thu Oct 16 09:52:36 2014 +0800"
      },
      "committer": {
        "name": "Nicolas Dichtel",
        "email": "nicolas.dichtel@6wind.com",
        "time": "Wed Jun 03 10:24:12 2015 +0200"
      },
      "message": "*: add VRF ID in the API message header\n\nThe API messages are used by zebra to exchange the interfaces, addresses,\nroutes and router-id information with its clients. To distinguish which\nVRF the information belongs to, a new field \"VRF ID\" is added in the\nmessage header. And hence the message version is increased to 3.\n\n* The new field \"VRF ID\" in the message header:\n\n    Length    (2 bytes)\n    Marker    (1 byte)\n    Version   (1 byte)\n    VRF ID    (2 bytes, newly added)\n    Command   (2 bytes)\n\n  - Client side:\n\n    - zclient_create_header() adds the VRF ID in the message header.\n    - zclient_read() extracts and validates the VRF ID from the header,\n      and passes the VRF ID to the callback functions registered to\n      the API messages.\n    - All relative functions are appended with a new parameter \"vrf_id\",\n      including all the callback functions.\n    - \"vrf_id\" is also added to \"struct zapi_ipv4\" and \"struct zapi_ipv6\".\n      Clients need to correctly set the VRF ID when using the API\n      functions zapi_ipv4_route() and zapi_ipv6_route().\n    - Till now all messages sent from a client have the default VRF ID\n      \"0\" in the header.\n    - The HELLO message is special, which is used as the heart-beat of\n      a client, and has no relation with VRF. The VRF ID in the HELLO\n      message header will always be 0 and ignored by zebra.\n\n  - Zebra side:\n\n    - zserv_create_header() adds the VRF ID in the message header.\n    - zebra_client_read() extracts and validates the VRF ID from the\n      header, and passes the VRF ID to the functions which process\n      the received messages.\n    - All relative functions are appended with a new parameter \"vrf_id\".\n\n* Suppress the messages in a VRF which a client does not care:\n\n  Some clients may not care about the information in the VRF X, and\n  zebra should not send the messages in the VRF X to those clients.\n\n  Extra flags are used to indicate which VRF is registered by a client,\n  and a new message ZEBRA_VRF_UNREGISTER is introduced to let a client\n  can unregister a VRF when it does not need any information in that\n  VRF.\n\n  A client sends any message other than ZEBRA_VRF_UNREGISTER in a VRF\n  will automatically register to that VRF.\n\n  - lib/vrf:\n\n    A new utility \"VRF bit-map\" is provided to manage the flags for\n    VRFs, one bit per VRF ID.\n\n    - Use vrf_bitmap_init()/vrf_bitmap_free() to initialize/free a\n      bit-map;\n    - Use vrf_bitmap_set()/vrf_bitmap_unset() to set/unset a flag\n      in the given bit-map, corresponding to the given VRF ID;\n    - Use vrf_bitmap_check() to test whether the flag, in the given\n      bit-map and for the given VRF ID, is set.\n\n  - Client side:\n\n    - In \"struct zclient\", the following flags are changed from\n      \"u_char\" to \"vrf_bitmap_t\":\n          redist[ZEBRA_ROUTE_MAX]\n          default_information\n      These flags are extended for each VRF, and controlled by the\n      clients themselves (or with the help of zclient_redistribute()\n      and zclient_redistribute_default()).\n\n  - Zebra side:\n\n    - In \"struct zserv\", the following flags are changed from\n      \"u_char\" to \"vrf_bitmap_t\":\n          redist[ZEBRA_ROUTE_MAX]\n          redist_default\n          ifinfo\n          ridinfo\n\n      These flags are extended for each VRF, as the VRF registration\n      flags. They are maintained on receiving a ZEBRA_XXX_ADD or\n      ZEBRA_XXX_DELETE message.\n\n      When sending an interface/address/route/router-id message in\n      a VRF to a client, if the corresponding VRF registration flag\n      is not set, this message will not be dropped by zebra.\n\n    - A new function zread_vrf_unregister() is introduced to process\n      the new command ZEBRA_VRF_UNREGISTER. All the VRF registration\n      flags are cleared for the requested VRF.\n\n  Those clients, who support only the default VRF, will never receive\n  a message in a non-default VRF, thanks to the filter in zebra.\n\n* New callback for the event of successful connection to zebra:\n\n  - zclient_start() is splitted, keeping only the code of connecting\n    to zebra.\n\n  - Now zclient_init()\u003d\u003ezclient_connect()\u003d\u003ezclient_start() operations\n    are purely dealing with the connection to zbera.\n\n  - Once zebra is successfully connected, at the end of zclient_start(),\n    a new callback is used to inform the client about connection.\n\n  - Till now, in the callback of connect-to-zebra event, all clients\n    send messages to zebra to request the router-id/interface/routes\n    information in the default VRF.\n\n    Of corse in future the client can do anything it wants in this\n    callback. For example, it may send requests for both default VRF\n    and some non-default VRFs.\n\nSigned-off-by: Feng Lu \u003clu.feng@6wind.com\u003e\nReviewed-by: Alain Ritoux \u003calain.ritoux@6wind.com\u003e\nSigned-off-by: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "e070452d981f58d60d79d7b4b38c93fb034c49b3",
      "tree": "d9003c1ff67b53b45d554d4e307c321ceaa79353",
      "parents": [
        "a3466abd93f83424f9f83e56282e42188e1f94ce"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Tue Mar 03 10:41:21 2015 +0100"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Tue Apr 21 10:18:32 2015 +0200"
      },
      "message": "pimd: mask unused zclient_broken()\n\nthis function is used by the currently not present zclient reconnect\ncode.  It\u0027ll be unmasked again when that code hits master.\n\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "bb7feff0af6c8519df45a4f40f06cdd819fe70d0",
      "tree": "f0d3d4cc743f0eccf8c2a8e7b738d108324952d4",
      "parents": [
        "5d5af78a1b9310c0c2290f81ee8abc12d5376500"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:40:25 2015 +0100"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:48:06 2015 +0100"
      },
      "message": "Revert \"pimd: clear zclient-update: Reset zclient update connection to zebra daemon\"\n\nThis reverts commit 3456a80f5f8e6e44c30453bd92eabf5faf7ab25b.\n\nConflicts:\n\tpimd/pim_zebra.c\n\nThis depends on the zebra reconnect changes, which we\u0027re not picking up\nat this point.  This revert is partial, only bumping out the\nreconnect-related changes.\n\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "5d5af78a1b9310c0c2290f81ee8abc12d5376500",
      "tree": "a7fbdbb336c73f12c391a1945ebb2dd51f3bb346",
      "parents": [
        "a2805de2b25383695f38a3ebbefe75e26a5e9aba"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:33:59 2015 +0100"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:33:59 2015 +0100"
      },
      "message": "Revert \"pim: Remove connected addresses on loss of zebra connection.\"\n\nThis reverts commit 96b6dfe98793549aca6a7cc77eaf0957b1168ed2.\n\nThis depends on the zebra reconnect changes, which we\u0027re not picking up\nat this point.\n\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "a2805de2b25383695f38a3ebbefe75e26a5e9aba",
      "tree": "500c1331137ed45c38776baa5132910f50e8405d",
      "parents": [
        "b3c6afe9fdc8c65d71abde3a2f26525b87189297"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:33:26 2015 +0100"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:33:26 2015 +0100"
      },
      "message": "Revert \"pimd: Explicitly restart zclient update connection.\"\n\nThis reverts commit 8150beed9a4f50a72696a65c1f40889ab65ad7ff.\n\nThis depends on the zebra reconnect changes, which we\u0027re not picking up\nat this point.\n\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "b3c6afe9fdc8c65d71abde3a2f26525b87189297",
      "tree": "9c496a76960036ccccd56a319bc1779a2bb91cea",
      "parents": [
        "1b47764f50cc074ba795d2b4477a3bc2372a8d9b"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:32:28 2015 +0100"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:32:28 2015 +0100"
      },
      "message": "Revert \"pimd: Revert: Explicitly restart zclient update connection.\"\n\nThis reverts commit 199f85ade39f751dd493fe011107736c9b168953.\n\nThis depends on the zebra reconnect changes, which we\u0027re not picking up\nat this point.\n\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "85385f7eeee14d529065db7b863478c3ba455dd4",
      "tree": "2bd0f78e9da970f6153fd266d2214fe91c33dac9",
      "parents": [
        "d632689579bbcbfb5f38c3faf05ad675e002c059"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Mon Jan 19 18:25:45 2015 -0200"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:08:02 2015 +0100"
      },
      "message": "pimd: Log ifindex found for an interface when zebra lib reports a new connected address.\n"
    },
    {
      "commit": "24e3a9b5ff17553d20a2f9e4ce2a61b5012cd0f6",
      "tree": "6e2dc00ba0b41e56b9527182532e4460c119fd75",
      "parents": [
        "ddc6659dd0f05b304ef579dcee6ac803e1a4b6d2"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Tue Sep 30 19:14:19 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:08:02 2015 +0100"
      },
      "message": "pimd: Report del_oif() failure within igmp_source_forward_stop().\n"
    },
    {
      "commit": "199f85ade39f751dd493fe011107736c9b168953",
      "tree": "4a62c71f6f889b0c862241bafaba1cc8b3efe85f",
      "parents": [
        "a59f21b1a58f121aac466710f32b557a4c75061d"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Tue Sep 30 16:50:40 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:08:01 2015 +0100"
      },
      "message": "pimd: Revert: Explicitly restart zclient update connection.\n"
    },
    {
      "commit": "8150beed9a4f50a72696a65c1f40889ab65ad7ff",
      "tree": "899d127a1e4f1dc739d51babf627d3f8becce524",
      "parents": [
        "e324ddc5c73b2e2fb1c450a5fe927aa336e568e6"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Mon Sep 29 17:58:30 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:08:01 2015 +0100"
      },
      "message": "pimd: Explicitly restart zclient update connection.\n"
    },
    {
      "commit": "6ab3e2f5759db58469ceb1702df1bc3d18f7a952",
      "tree": "7269b53fd89ec279b5d16a471b4753a688a541b9",
      "parents": [
        "ecc1fb93419e0f9d9297f0417bee0b697ce24dec"
      ],
      "author": {
        "name": "Savannah SR#108542",
        "email": "nbahr@atcorp.com",
        "time": "Thu Sep 25 16:59:38 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:08:01 2015 +0100"
      },
      "message": "pimd: Fix attempted out of bounds read when deleteing an interface.\n\nhttps://savannah.nongnu.org/support/index.php?108542\n"
    },
    {
      "commit": "ecc1fb93419e0f9d9297f0417bee0b697ce24dec",
      "tree": "5c2bb58462a924d4f65980d5b16f74c6c5b46a86",
      "parents": [
        "05c6dcdf8cd8e50681de76cc787f46389a7b9238"
      ],
      "author": {
        "name": "Savannah SR#108542",
        "email": "nbahr@atcorp.com",
        "time": "Thu Sep 25 14:41:43 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:08:01 2015 +0100"
      },
      "message": "pimd: Fix igmp_source_forward_stop called when IGMP forwarding flag is not set in oif_flags.\n\nhttps://savannah.nongnu.org/support/index.php?108542\n"
    },
    {
      "commit": "96b6dfe98793549aca6a7cc77eaf0957b1168ed2",
      "tree": "9c6d51b5365a65115e049a944e2205611acb0667",
      "parents": [
        "679fab42343381f609527166f48dbf9ba19f3aab"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Mon Sep 22 15:47:52 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:08:00 2015 +0100"
      },
      "message": "pim: Remove connected addresses on loss of zebra connection.\n"
    },
    {
      "commit": "c1b228c5cfd589b3fee5c0cbe1564f38df57f7f6",
      "tree": "dfa29a1de02793968ed40f2d6b6670336240cc0f",
      "parents": [
        "bb61be2e5acd272d4e1467406bc13e5b56b8ef66"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Wed Aug 27 15:27:26 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:59 2015 +0100"
      },
      "message": "pimd: Reduce informative mandatory logging.\n"
    },
    {
      "commit": "1f298949bea9e58623eb81f245491dcdb1df8c59",
      "tree": "43f99443889cd692a3f6c8adfc40328a868efb67",
      "parents": [
        "7cb0d4a384b4964cc53b61549ffdef37fb0d76c5"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Thu Aug 21 15:47:28 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:59 2015 +0100"
      },
      "message": "pimd: -z command-line switch to specify zebra socket path.\n"
    },
    {
      "commit": "3456a80f5f8e6e44c30453bd92eabf5faf7ab25b",
      "tree": "878fe14709ab997bdd7f793e1bf102edece1995c",
      "parents": [
        "ee61109c045f3c9960ec52912ebdbb8998ac63a1"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Tue Jul 22 14:52:57 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:58 2015 +0100"
      },
      "message": "pimd: clear zclient-update: Reset zclient update connection to zebra daemon\n"
    },
    {
      "commit": "2a0ecf21d6c0918da92033fbe4741ede63f108f2",
      "tree": "7a608eb4bd34b52560b99480a987bb7df3866f94",
      "parents": [
        "b24c7fed49a861562bfb713db70ed1db2b89ff42"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Mon Sep 22 18:18:26 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:58 2015 +0100"
      },
      "message": "pimd: Withstand zclient connection restablishment.\n"
    },
    {
      "commit": "075ac8ddbd6aa782619565a97ec474a90f1b6f4c",
      "tree": "5865489f9a6e6fc2f7b0a6860167d366c8029680",
      "parents": [
        "306c99eae67a7966a3994be1007f03665eb6682b"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Wed Sep 24 15:18:37 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:57 2015 +0100"
      },
      "message": "pimd: Prevent interfaces\u0027 addresses duplication when zebra connection is restored.\n"
    },
    {
      "commit": "306c99eae67a7966a3994be1007f03665eb6682b",
      "tree": "d15449843211da7e2fc1cf05189792744a9a2256",
      "parents": [
        "f6e16b9f3592a3213e94f44b71caa311e0270cd9"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Wed Jul 16 15:51:37 2014 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:57 2015 +0100"
      },
      "message": "pimd: FIXED C14 T32 Detection of interface primary address changes may fail.\n"
    },
    {
      "commit": "f24200d77a98c8091d23638096faf366e7c6c953",
      "tree": "15f277522a2a3d9580f376159c168ba34553d9f4",
      "parents": [
        "777fe1f2b63c76d0df5c136dbd335bd2718785fb"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Fri Feb 14 16:40:34 2014 -0200"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:55 2015 +0100"
      },
      "message": "C18 MFC never recovers from removal of static route to source\n"
    },
    {
      "commit": "105ad8615da1bcb417e1757ef4787cd2cdbb3cbc",
      "tree": "9a786be4e7f0750ebd7efb1510f1cecfd3b9d16d",
      "parents": [
        "f8cfeb25e62206aaf940b2aabf6a96c36ad4627d"
      ],
      "author": {
        "name": "David Lamparter",
        "email": "equinox@diac24.net",
        "time": "Thu Feb 16 04:50:35 2012 +0000"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:55 2015 +0100"
      },
      "message": "pimd: fix wtf code\n\n * pim_hello.c,\n * pim_neighbor.c: print pointers as %p\n * pim_time.c: comment out unused function\n * pim_zebra.c: wtf\n"
    },
    {
      "commit": "67faabc18026bf3f8ae6d7ee1df9f2b1729ea06b",
      "tree": "a8408f073596e83cc4d761f942095252d5b7b4b0",
      "parents": [
        "9986fb3a25a0432dbd89aa1e319c89691db05bc0"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Tue Feb 23 12:11:11 2010 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:53 2015 +0100"
      },
      "message": "[pim] debug mroute\n"
    },
    {
      "commit": "bcc4abe09d3faa9b392be2d46e3f6a29b75e46d9",
      "tree": "b17cb8398321cf9affcc79ddd970a359e993015e",
      "parents": [
        "942b0fdcc18c3841c6781f6a3f36aa47a604ba1f"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Mon Aug 17 18:18:59 2009 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:50 2015 +0100"
      },
      "message": "[pim] More RPF cache refresh statistics\n"
    },
    {
      "commit": "613938d48abb863660691641a5761f10402cf3f3",
      "tree": "0efe84a9b6949b52abfa692660629a72f8bb9d76",
      "parents": [
        "d12beab1b9ce09c50672adb3c980e64ccd11edb4"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Thu Aug 13 15:39:31 2009 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:50 2015 +0100"
      },
      "message": "[pim] RPF cache refresh statistics\n"
    },
    {
      "commit": "e96f0af2679e3c91518f62b3a86d811cafba1adc",
      "tree": "dc6d563472991c383e1437475d29d487de8d2974",
      "parents": [
        "596470f2a410fb58109fd880f04362984ffd7c69"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Tue Aug 11 15:48:02 2009 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:49 2015 +0100"
      },
      "message": "[pim] Log physical interface up/down\n[pim] Replace strerror with safe_strerror\n[pim] Fix PIM socket removal from non-PIM interfaces\n[pim] show ip igmp querier: left-align Querier string\n[pim] Version up to 0.157\n[pim] Recipe to re-sync with Quagga repository\n[pim] Build vtysh in development script\n"
    },
    {
      "commit": "871dbcfede60a8d2d286728bcbd88f27c2035b87",
      "tree": "f3188f3ab1c4856febf70647a32f6d854668aa50",
      "parents": [
        "b162ab753e70328cb6815e58b4bc5b03e9dd4f42"
      ],
      "author": {
        "name": "Everton Marques",
        "email": "everton.marques@gmail.com",
        "time": "Tue Aug 11 15:43:05 2009 -0300"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Wed Feb 04 06:07:49 2015 +0100"
      },
      "message": "[pim] Initial pim 0.155\n"
    }
  ]
}
