I think it's reasonable to use c-ares. My suggestion would be to pull it in
if nhrpd is enabled and avoid any HAVE_CARES ifdefs in the nhrpd. This
allows to build the existing daemons as is and provides the needed
functionality for nhrpd.

-Christian
On Nov 7, 2015 4:13 PM, "Timo Teras" <[email protected]> wrote:

> On Fri, 06 Nov 2015 16:02:35 -0800
> "Martin Winter" <[email protected]> wrote:
>
> > So Timo’s NHRPD branch requires a new library: libcares   (libc ares).
> >
> > I think this was never really mentioned, but I would prefer if new
> > requirements are
> > clearly highlighted - and discussed.
>
> I did mention it in the beginning. But not sure if it was email or irc.
>
> > I worry that new libraries might break or make it impossible to build
> > on some not so common platforms.
>
> The whole nhrpd module has several Linux dependencies. It really works
> only on linux. It uses at least three different Netlink APIs and some
> proc/sys knobs too. Before merge I'm adding the check that it can be
> enabled only on linux.
>
> > I assume in some cases we have to just accept this (and
> > allow to configure it without this library - potentially loosing
> > some of the new functionality)
> >
> > Not sure if the new library is REALLY needed or if there is a
> > (workaround) without having new dependencies.
>
> It's asynchronous DNS. Doing synchronous DNS with libc function is
> worse. So other option is to just leave DNS support out. However, I'd
> prefer to keep the dependency.
>
> I chose c-ares because that's what I used with the opennhrp
> implementation of nhrp. For that I chose it because:
> a) it's easy to ingegrate to your own main loop
> b) it's C89
> c) it pretty much runs almost on all OSes
>    (it's curl's dns lib, so it runs anything curl runs on)
>
> > So please, if you add new requirements, please highlight this on the
> > list and let’s discuss them.
>
> But I have no strong opinion this. Any async dns lib will do if it does
> better. All I really need is DNS lookup function for which I give the
> FQDN and query type, and I get back parsed A/AAAA records.
>
> Thanks,
> Timo
>
> _______________________________________________
> Quagga-dev mailing list
> [email protected]
> https://lists.quagga.net/mailman/listinfo/quagga-dev
_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to