1 .\" $NetBSD: hesiod.3,v 1.1 1999/01/25 03:43:04 lukem Exp $
3 .\" from: #Id: hesiod.3,v 1.9.2.1 1997/01/03 21:02:23 ghudson Exp #
5 .\" Copyright 1988, 1996 by the Massachusetts Institute of Technology.
7 .\" Permission to use, copy, modify, and distribute this
8 .\" software and its documentation for any purpose and without
9 .\" fee is hereby granted, provided that the above copyright
10 .\" notice appear in all copies and that both that copyright
11 .\" notice and this permission notice appear in supporting
12 .\" documentation, and that the name of M.I.T. not be used in
13 .\" advertising or publicity pertaining to distribution of the
14 .\" software without specific, written prior permission.
15 .\" M.I.T. makes no representations about the suitability of
16 .\" this software for any purpose. It is provided "as is"
17 .\" without express or implied warranty.
26 .Nm hesiod_free_list ,
29 .Nd Hesiod name server interface library
35 .Fn hesiod_init "void **context"
37 .Fn hesiod_resolve "void *context" "const char *name" "const char *type"
39 .Fn hesiod_free_list "void *context" "char **list"
41 .Fn hesiod_to_bind "void *context" "const char *name" "const char *type"
43 .Fn hesiod_end "void *context"
45 This family of functions allows you to perform lookups of Hesiod
46 information, which is stored as text records in the Domain Name
48 To perform lookups, you must first initialize a
50 an opaque object which stores information used internally by the
51 library between calls.
55 initializes a context, storing a pointer to the context in the
56 location pointed to by the
62 frees the resources used by a context.
67 is the primary interface to the library.
68 If successful, it returns a
69 list of one or more strings giving the records matching
73 The last element of the list is followed by a
77 caller's responsibility to call
79 to free the resources used by the returned list.
88 into the DNS name used by
90 It is the caller's responsibility to free the returned string using
100 and set the global variable
102 to indicate the error.
104 .Bl -tag -width HESIOD_CONFIG
106 If the environment variable
108 is set, it will override the domain in the Hesiod configuration file.
110 If the environment variable
112 is set, it specifies the location of the Hesiod configuration file.
115 Hesiod calls may fail because of:
118 Insufficient memory was available to carry out the requested
124 failed because the Hesiod configuration file was invalid.
125 .It Bq Er ECONNREFUSED
129 failed because no name server could be contacted to answer the query.
136 failed because the query or response was too big to fit into the
142 failed because the name server had no text records matching
150 argument had a domain extension which could not be resolved with type
152 in the local Hesiod domain.
157 .%T "Hesiod - Project Athena Technical Plan -- Name Service"
165 Copyright 1987, 1988, 1995, 1996 by the Massachusetts Institute of Technology.
167 The strings corresponding to the
169 values set by the Hesiod functions are not particularly indicative of
170 what went wrong, especially for