[frr] support for capnproto API on Quagga

Philippe Guibert philippe.guibert at 6wind.com
Tue Jan 10 08:01:56 EST 2017

Hello David, all,

It is to inform the community that I will start to work on a pull
request of capnproto, rebased on frr branch, by end january.
I will probably use that rebase to test c-capnproto 0.2.

Best Regards,


On Mon, Dec 12, 2016 at 7:02 PM, Philippe Guibert
<philippe.guibert at 6wind.com> wrote:
> Hello David,
> In order to facilitate the review, I juste pushed the capnproto patch
> into osr repository.
> The branch is quagga_1_1_0_mpbgp_capnp
> Please let me give you some pointers regarding the capnproto changes:
> Most of the work is inherited from your work.
> As far as I know, one issue is related to c-code generation, since
> currently, the qzc.capnp and bgp.capnp files are manually maintained.
> I don't know how this case will be handled, since currently I think
> the improved capnp compiler is not available yet.
> Compared to the initial proposal you made, other changed points are
> - some sanity checks on "auto-generated" code has been fixed
> more information:
>   * bgpd: capnp warning compilation fix*
> - the BGPVRFInfoIter mecanism has been enhanced to parse the multipath entries
> An opaque pointer is transferred between the client and the server.
> This pointer permits the client to know that an ECMP information is
> next information.
> more information:
>   * bgpd: pubsub route updates *
>   * bgpd: change capnproto way for retrieving multipath entries
> through capnproto *
> - the structures settings have been completed ( new or already existing fields).
> I would also like to submit you some other points related to capnproto.
> Those points are out of the scope of the patch, but will be discussed
> with the next capnproto patch I willl send when applied to EVPN.
> - what about generation related to union structures ?
> The following capnproto extract should carry more complex prefix
> structure, embedding macaddress, ethernet tag, and IP addresses.
> * lib: add new prefix macip *
> * bgpd: add capnproto support for prefix definition *
> - I encountered a case where a return code from BGP had to be
> returned. capnproto code does not handle well the return code. An
> more information:
> * lib: check return code in qzc setelement *
> * bgpd: check return code in qzc setelement adaptations *
> A fresh lookup on the review will be welcome,
> Best Regards,
> Philippe
> On Wed, Dec 7, 2016 at 8:09 AM, Philippe Guibert
> <philippe.guibert at 6wind.com> wrote:
>> Hi all,
>> Hi David,
>> Following the weekly technical meeting, it appeared that capnproto is
>> a feature that will be needed by cmaster-next.
>> It also appears, that as first contributor to quagga canproto, you
>> could help me in reviewing the capnproto work ( link sent in previous
>> mail).
>> Based on your review, I will update the patch series and rebase i on
>> cmaster-next too.
>> Thanks for your help,
>> Best Regards,
>> Philippe
>> On Sun, Dec 4, 2016 at 3:16 PM, Philippe Guibert
>> <philippe.guibert at 6wind.com> wrote:
>>> Hi all,
>>> I am working on some support of capnproto interface on Quagga
>>> (following David's contribution).
>>> In order to avoid duplication of effort, I would like first to get
>>> your review from cmaster-next community,
>>> The code can be seen here:
>>> https://lists.quagga.net/pipermail/quagga-dev/2016-December/016521.html
>>> then, based on your reviews, I'll update the patch series and I'll
>>> work to rebase it on cmaster-next too.
>>> Thanks,
>>> Regards,
>>> Philippe

More information about the dev mailing list