2 - Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
3 - Copyright (C) 2001 Internet Software Consortium.
5 - Permission to use, copy, modify, and distribute this software for any
6 - purpose with or without fee is hereby granted, provided that the above
7 - copyright notice and this permission notice appear in all copies.
9 - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10 - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11 - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12 - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13 - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14 - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15 - PERFORMANCE OF THIS SOFTWARE.
18 <!-- $Id: lwres_getrrsetbyname.html,v 1.5.2.2 2004/03/15 04:45:03 marka Exp $ -->
23 >lwres_getrrsetbyname</TITLE
26 CONTENT="Modular DocBook HTML Stylesheet Version 1.73
38 >lwres_getrrsetbyname</A
47 >lwres_getrrsetbyname, lwres_freerrset -- retrieve DNS records</DIV
49 CLASS="REFSYNOPSISDIV"
63 CLASS="FUNCSYNOPSISINFO"
64 >#include <lwres/netdb.h></PRE
70 lwres_getrrsetbyname</CODE
71 >(const char *hostname, unsigned int rdclass, unsigned int rdtype, unsigned int flags, struct rrsetinfo **res);</CODE
79 >(struct rrsetinfo *rrset);</CODE
85 >The following structures are used:
87 CLASS="PROGRAMLISTING"
89 unsigned int rdi_length; /* length of data */
90 unsigned char *rdi_data; /* record data */
94 unsigned int rri_flags; /* RRSET_VALIDATED... */
95 unsigned int rri_rdclass; /* class number */
96 unsigned int rri_rdtype; /* RR type number */
97 unsigned int rri_ttl; /* time to live */
98 unsigned int rri_nrdatas; /* size of rdatas array */
99 unsigned int rri_nsigs; /* size of sigs array */
100 char *rri_name; /* canonical name */
101 struct rdatainfo *rri_rdatas; /* individual records */
102 struct rdatainfo *rri_sigs; /* individual signatures */
116 >lwres_getrrsetbyname()</TT
118 gets a set of resource records associated with a
148 a pointer a to null-terminated string. The
155 field is currently unused and must be zero.</P
157 >After a successful call to
160 >lwres_getrrsetbyname()</TT
174 structure, containing a list of one or more
179 structures containing resource records and potentially another list of
184 structures containing SIG resource records
185 associated with those records.
196 are copied from the parameters.
206 are properties of the obtained rrset.
207 The resource records contained in
217 are in uncompressed DNS wire format.
218 Properties of the rdataset are represented in the
223 bitfield. If the RRSET_VALIDATED bit is set, the data has been DNSSEC
224 validated and the signatures verified. </P
226 >All of the information returned by
229 >lwres_getrrsetbyname()</TT
231 is dynamically allocated: the
242 and the canonical host name strings pointed to by the
248 Memory allocated for the dynamically allocated structures created by
252 >lwres_getrrsetbyname()</TT
257 >lwres_freerrset()</TT
274 >lwres_getrrsetbyname()</TT
289 >lwres_getrrsetbyname()</TT
291 returns zero on success, and one of the following error
292 codes if an error occurred:
305 >the name does not exist</P
314 >the name exists, but does not have data of the desired type</P
323 >memory could not be allocated</P
332 >a parameter is invalid</P
367 CLASS="REFENTRYTITLE"