NAME¶
hesiod_getservbyname, hesiod_free_servent - Hesiod functions for retrieving
service information
SYNOPSIS¶
#include <hesiod.h>
struct servent *hesiod_getservbyname(void *context,
const char *name, const char *proto)
void hesiod_free_servent(void *context, struct servent *serv)
cc file.c -lhesiod
DESCRIPTION¶
This family of functions allows you to retrieve service to port mappings using
Hesiod. To perform lookups, you need an initialized Hesiod context; see
hesiod(3) for details. Information is returned in the same format as by
getservbyname. It is the caller's responsibility to call
hesiod_free_servent with the returned service entry to free the
resources used by the service entry.
Hesiod queries for service information are made using the
``service'' Hesiod type, using the service name as the Hesiod name. The
corresponding records should be space-separated lists of strings giving the
service name, protocol, port number (in decimal), and zero or more aliases
for the service. There may be multiple records per service name;
hesiod_getservbyname will pick the first one whose protocol matches
proto.
RETURN VALUES¶
On failure, hesiod_getservbyname returns NULL and sets the global
variable errno to indicate the error.
ERRORS¶
hesiod_getservbyname may fail for any of the reasons the routine
hesiod_resolve may fail.