DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

lwres_getrrsetbyname(3)




LWRES_GETRRSETBYNAME(3)       BIND9       LWRES_GETRRSETBYNAME(3)


NAME

     lwres_getrrsetbyname, lwres_freerrset - retrieve DNS records


SYNOPSIS

     #include <lwres/netdb.h>

     int lwres_getrrsetbyname(const char *hostname,
                              unsigned int rdclass,
                              unsigned int rdtype

     void lwres_freerrset(struct rrsetinfo *rrset);

     The following structures are used:

     struct  rdatainfo {
             unsigned int            rdi_length;     /* length of data */
             unsigned char           *rdi_data;      /* record data */
     };

     struct  rrsetinfo {
             unsigned int            rri_flags;      /* RRSET_VALIDATED... */
             unsigned int            rri_rdclass;    /* class number */
             unsigned int            rri_rdtype;     /* RR type number */
             unsigned int            rri_ttl;        /* time to live */
             unsigned int            rri_nrdatas;    /* size of rdatas array */
             unsigned int            rri_nsigs;      /* size of sigs array */
             char                    *rri_name;      /* canonical name */
             struct rdatainfo        *rri_rdatas;    /* individual records */
             struct rdatainfo        *rri_sigs;      /* individual signatures */
     };


DESCRIPTION

     lwres_getrrsetbyname() gets a set of resource records
     associated with a hostname, class, and type.  hostname is a
     pointer a to null-terminated string. The flags field is
     currently unused and must be zero.

     After a successful call to lwres_getrrsetbyname(), *res is a
     pointer to an rrsetinfo structure, containing a list of one
     or more rdatainfo structures containing resource records and
     potentially another list of rdatainfo structures containing
     SIG resource records associated with those records. The
     members rri_rdclass and rri_rdtype are copied from the
     parameters.  rri_ttl and rri_name are properties of the
     obtained rrset. The resource records contained in rri_rdatas
     and rri_sigs are in uncompressed DNS wire format. Properties
     of the rdataset are represented in the rri_flags bitfield.
     If the RRSET_VALIDATED bit is set, the data has been DNSSEC
     validated and the signatures verified.

ISC                  Last change: 2007-06-18                    1

LWRES_GETRRSETBYNAME(3)       BIND9       LWRES_GETRRSETBYNAME(3)

     All of the information returned by lwres_getrrsetbyname() is
     dynamically allocated: the rrsetinfo and rdatainfo
     structures, and the canonical host name strings pointed to
     by the rrsetinfostructure. Memory allocated for the
     dynamically allocated structures created by a successful
     call to lwres_getrrsetbyname() is released by
     lwres_freerrset().  rrset is a pointer to a struct rrset
     created by a call to lwres_getrrsetbyname().


RETURN VALUES

     lwres_getrrsetbyname() returns zero on success, and one of
     the following error codes if an error occurred:

     ERRSET_NONAME
         the name does not exist

     ERRSET_NODATA
         the name exists, but does not have data of the desired
         type

     ERRSET_NOMEMORY
         memory could not be allocated

     ERRSET_INVAL
         a parameter is invalid

     ERRSET_FAIL
         other failure


SEE ALSO

     lwres(3).


AUTHOR

     Internet Systems Consortium, Inc.


COPYRIGHT

     Copyright 8c9 2004, 2005, 2007, 2014-2016 Internet Systems
     Consortium, Inc. ("ISC")
     Copyright 8c9 2000, 2001 Internet Software Consortium.

ISC                  Last change: 2007-06-18                    2


Man(1) output converted with man2html