)]}'
{
  "log": [
    {
      "commit": "443b993777e3e86fceb988f647d1c5b57661a182",
      "tree": "49e929ef6339feea5bd8b634381f753dd71fa79a",
      "parents": [
        "04f7dd64dfa0f339208f0d4833276b7684ee3343"
      ],
      "author": {
        "name": "Avneesh Sachdev",
        "email": "avneesh@opensourcerouting.org",
        "time": "Tue Nov 13 22:48:58 2012 +0000"
      },
      "committer": {
        "name": "David Lamparter",
        "email": "equinox@opensourcerouting.org",
        "time": "Fri Nov 30 21:41:17 2012 +0100"
      },
      "message": "fpm: Add public header for Forwarding Plane Manager\n\nThe Forwarding Plane Manager (FPM) is an optional component that may\nbe used in scenarios where the router has a forwarding path that is\ndistinct from the kernel, commonly a hardware-based fast path. It is\nresponsible for programming forwarding information (such as routes and\nnexthops) in the fast path.\n\nIn Quagga, the Routing Information Base is maintained in the \u0027zebra\u0027\ninfrastructure daemon. Routing protocols communicate their best routes\nto zebra, and zebra computes the best route across protocols for each\nprefix. This latter information comprises the bulk of the Forwarding\nInformation Base.\n\nThe new header file added by this patch, \u0027fpm/fpm.h\u0027, defines a\npoint-to-point interface using which zebra can update the FPM about\nchanges in routes. The communication takes place over a stream\nsocket. The FPM listens on a well-known TCP port, and zebra initiates\nthe connection.\n\nAll messages sent over the connection start with a short \u0027FPM header\u0027.\nIn the case of route add/delete messages, the header is followed by a\nnetlink message. Zebra should send a complete copy of the forwarding\ntable(s) to the FPM, including routes that it may have picked up from\nthe kernel.\n\nThe FPM interface uses replace semantics. That is, if a \u0027route add\u0027\nmessage for a prefix is followed by another \u0027route add\u0027 message, the\ninformation in the second message is complete by itself, and replaces\nthe information sent in the first message.\n\nIf the connection to the FPM goes down for some reason, the client\n(zebra) should send the FPM a complete copy of the forwarding table(s)\nwhen it reconnects.\n\nSigned-off-by: Avneesh Sachdev \u003cavneesh@opensourcerouting.org\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    }
  ]
}
