./net/libasyncns, C library for executing name service queries asynchronously

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: pkgsrc-2011Q1, Version: 0.7, Package name: libasyncns-0.7, Maintainer: pkgsrc-users

libasyncns is a C library for Linux/Unix for executing name service
queries asynchronously. It is an asynchronous wrapper around
getaddrinfo(3), getnameinfo(3), res_query(3) and res_search(3) from
libc and libresolv.

In contrast to GNU's asynchronous name resolving API getaddrinfo_a(),
libasyncns does not make use of UNIX signals for reporting completion
of name queries. Instead, the API exports a standard UNIX file
descriptor which may be integerated cleanly into custom main loops.

In contrast to asynchronous DNS resolving libraries like libdenise,
skadns, adns, libasyncns is just an asynchronous wrapper around
the libc's synchronous getaddrinfo() API, which has the advantage
of allowing name resolution using techniques like Multicast DNS,
LDAP or NIS using standard libc NSS (Name Service Switch) modules.
libasyncns is compatible with IPv6 if the underlying libc is.

libasyncns is very tiny, consisting of just one header and one
source file. It has no dependencies besides libc.

By default libasyncns spawns a number of worker threads (LWPs) to
process name queries. Alternatively or when POSIX Threads are not
supported, libasyncns can fork() off worker processes instead.


Master sites:

SHA1: 6b67944c3623e23d08e58a7e6eec8eaf08e5395b
RMD160: caa0cc61bdd1ba6a9294fe4f1043009a0addacee
Filesize: 366.08 KB

Version history: (Expand)