IPnom Home • Manuals • FreeBSD

 FreeBSD Man Pages

Man Sections:Commands (1)System Calls (2)Library Functions (3)Device Drivers (4)File Formats (5)Miscellaneous (7)System Utilities (8)
Keyword Live Search (10 results max):
 Type in part of a command in the search box.
 


hesiod(3)

NAME

     hesiod, hesiod_init, hesiod_resolve, hesiod_free_list, hesiod_to_bind,
     hesiod_end -- Hesiod name server interface library


LIBRARY

     Standard C Library (libc, -lc)


SYNOPSIS

     #include <hesiod.h>

     int
     hesiod_init(void **context);

     char **
     hesiod_resolve(void *context, const char *name, const char *type);

     void
     hesiod_free_list(void *context, char **list);

     char *
     hesiod_to_bind(void *context, const char *name, const char *type);

     void
     hesiod_end(void *context);


DESCRIPTION

     This family of functions allows you to perform lookups of Hesiod informa-
     tion, which is stored as text records in the Domain Name Service.	To
     perform lookups, you must first initialize a context, an opaque object
     which stores information used internally by the library between calls.
     The hesiod_init() function initializes a context, storing a pointer to
     the context in the location pointed to by the context argument.  The
     hesiod_end() function frees the resources used by a context.

     The hesiod_resolve() function is the primary interface to the library.
     If successful, it returns a list of one or more strings giving the
     records matching name and type.  The last element of the list is followed
     by a NULL pointer.  It is the caller's responsibility to call
     hesiod_free_list() to free the resources used by the returned list.

     The hesiod_to_bind() function converts name and type into the DNS name
     used by hesiod_resolve().	It is the caller's responsibility to free the
     returned string using free().


RETURN VALUES

     The hesiod_init() function returns the value 0 if successful; otherwise
     the value -1 is returned and the global variable errno is set to indicate
     the error.  On failure, hesiod_resolve() and hesiod_to_bind() return NULL
     and set the global variable errno to indicate the error.


ENVIRONMENT

     HES_DOMAIN     If the environment variable HES_DOMAIN is set, it will
		    override the domain in the Hesiod configuration file.

     HESIOD_CONFIG  If the environment variable HESIOD_CONFIG is set, it spec-
		    ifies the location of the Hesiod configuration file.

     [ENOMEM]		Insufficient memory was available to carry out the
			requested operation.

     [ENOEXEC]		The hesiod_init() function failed because the Hesiod
			configuration file was invalid.

     [ECONNREFUSED]	The hesiod_resolve() function failed because no name
			server could be contacted to answer the query.

     [EMSGSIZE] 	The hesiod_resolve() or hesiod_to_bind() function
			failed because the query or response was too big to
			fit into the packet buffers.

     [ENOENT]		The hesiod_resolve() function failed because the name
			server had no text records matching name and type, or
			hesiod_to_bind() failed because the name argument had
			a domain extension which could not be resolved with
			type ``rhs-extension'' in the local Hesiod domain.


AUTHORS

     Steve Dyer, IBM/Project Athena
     Greg Hudson, MIT Team Athena

     Copyright 1987, 1988, 1995, 1996 by the Massachusetts Institute of Tech-
     nology.


BUGS

     The strings corresponding to the errno values set by the Hesiod functions
     are not particularly indicative of what went wrong, especially for
     ENOEXEC and ENOENT.

FreeBSD 5.4		       November 30, 1996		   FreeBSD 5.4

SPONSORED LINKS




Man(1) output converted with man2html , sed , awk