GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
libfiredns(3) FreeBSD Library Functions Manual libfiredns(3)

libfiredns - library for asynchronous DNS requests

#include <firedns.h>
-lfiredns

libfiredns is a library for handling asynchronous DNS requests. It provides a very simple interface for sending requests and parsing reponses, as well as low-timeout blocking functions. It can also be compiled to override the BIND/LIBC functions with its alternative implementations. libfiredns functions have much lower timeouts than the stock functions and tend to be faster because they send requests to all configured system nameservers at the same time.

Any function ending in "_r" is reentrant; it is safe to be used from threaded programs, and it returns a dynamically allocated buffer which must be free()'d later.

Any function ending in "_s" takes a buffer as a parameter that it will write to.

Non-network functions:
firedns_aton4(3)
firedns_aton6(3)
firedns_ntoa4(3)
firedns_ntoa6(3)

Non-blocking functions:
firedns_getip4(3)
firedns_getip4list(3)
firedns_getip6(3)
firedns_getip6list(3)
firedns_gettxt(3)
firedns_gettxtlist(3)
firedns_getmx(3)
firedns_getmxlist(3)
firedns_getname4(3)
firedns_getname6(3)
firedns_getcname(3)
firedns_getresult(3)

Blocking functions:
firedns_resolveip4(3)
firedns_resolveip4list(3)
firedns_resolveip6(3)
firedns_resolveip6list(3)
firedns_resolvetxt(3)
firedns_resolvetxtlist(3)
firedns_resolvemx(3)
firedns_resolvemxlist(3)
firedns_resolvemxalist(3)
firedns_resolvename4(3)
firedns_resolvename6(3)
firedns_resolvecname(3)

Miscellaneous functions:
firedns_free_mxalist(3)

/usr/local/include/firedns.h
/usr/local/lib/libfiredns.so
/usr/local/lib/libfiredns.a
/usr/local/etc/firedns.conf
/etc/resolv.conf

This used to say:

FireDNS is very network unfriendly. It sends queries to all nameservers in /usr/local/etc/firedns.conf or (fallback) /etc/resolv.conf at the same time. This loads the nameservers and the network much more than existing implementations but tends to get responses much faster.

However, it seems that the network usage is well worth the 10 - 15% speed increase (in ideal situations) that this program can provide. If a primary nameserver is down, this speed increase is > 10000%.

Ian Gulliver <ian@penguinhosting.net>
2004-02-12

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.