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
