lwres_getrrsetbyname.docbook revision dafcb997e390efa4423883dafd100c975c4095d6
f743002678eb67b99bbc29fee116b65d9530fec0wrowe<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
80833bb9a1bf25dcf19e814438a4b311d2e1f4cffuankg<!--
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem - Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic - Copyright (C) 2001 Internet Software Consortium.
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic -
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic - Permission to use, copy, modify, and distribute this software for any
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic - purpose with or without fee is hereby granted, provided that the above
4da61833a1cbbca94094f9653fd970582b97a72etrawick - copyright notice and this permission notice appear in all copies.
4da61833a1cbbca94094f9653fd970582b97a72etrawick -
4da61833a1cbbca94094f9653fd970582b97a72etrawick - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
4da61833a1cbbca94094f9653fd970582b97a72etrawick - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
4da61833a1cbbca94094f9653fd970582b97a72etrawick - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
4789804be088bcd86ae637a29cdb7fda25169521jailletc - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
4789804be088bcd86ae637a29cdb7fda25169521jailletc - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
4789804be088bcd86ae637a29cdb7fda25169521jailletc - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
4789804be088bcd86ae637a29cdb7fda25169521jailletc - PERFORMANCE OF THIS SOFTWARE.
e50c3026198fd496f183cda4c32a202925476778covener-->
e50c3026198fd496f183cda4c32a202925476778covener
e50c3026198fd496f183cda4c32a202925476778covener<!-- $Id: lwres_getrrsetbyname.docbook,v 1.4 2004/03/05 05:12:57 marka Exp $ -->
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin<refentry>
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic<refentryinfo>
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic<date>Oct 18, 2000</date>
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic</refentryinfo>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic<refmeta>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic<refentrytitle>lwres_getrrsetbyname</refentrytitle>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic<manvolnum>3</manvolnum>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic<refmiscinfo>BIND9</refmiscinfo>
69301145375a889e7e37caf7cc7321ac0f91801erpluem</refmeta>
69301145375a889e7e37caf7cc7321ac0f91801erpluem<refnamediv>
69301145375a889e7e37caf7cc7321ac0f91801erpluem<refname>lwres_getrrsetbyname</refname>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza<refname>lwres_freerrset</refname>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza<refpurpose>retrieve DNS records</refpurpose>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza</refnamediv>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza<refsynopsisdiv>
d58a848a016d401b965111e50ef829e1641f7834minfrin<funcsynopsis>
d58a848a016d401b965111e50ef829e1641f7834minfrin<funcsynopsisinfo>#include &lt;lwres/netdb.h&gt;</funcsynopsisinfo>
d58a848a016d401b965111e50ef829e1641f7834minfrin<funcprototype>
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf<funcdef>
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfint
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf<function>lwres_getrrsetbyname</function></funcdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>const char *hostname</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>unsigned int rdclass</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>unsigned int rdtype</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>unsigned int flags</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>struct rrsetinfo **res</paramdef>
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic</funcprototype>
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic<funcprototype>
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic<funcdef>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicvoid
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic<function>lwres_freerrset</function></funcdef>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic<paramdef>struct rrsetinfo *rrset</paramdef>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic</funcprototype>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic</funcsynopsis>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic<para>
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerThe following structures are used:
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener<programlisting>
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerstruct rdatainfo {
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener unsigned int rdi_length; /* length of data */
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener unsigned char *rdi_data; /* record data */
44ff304057225e944e220e981d434a046d14cf06covener};
44ff304057225e944e220e981d434a046d14cf06covener
44ff304057225e944e220e981d434a046d14cf06covenerstruct rrsetinfo {
44ff304057225e944e220e981d434a046d14cf06covener unsigned int rri_flags; /* RRSET_VALIDATED... */
5d1ba75b8794925e67591c209085a49279791de9covener unsigned int rri_rdclass; /* class number */
5d1ba75b8794925e67591c209085a49279791de9covener unsigned int rri_rdtype; /* RR type number */
5d1ba75b8794925e67591c209085a49279791de9covener unsigned int rri_ttl; /* time to live */
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand unsigned int rri_nrdatas; /* size of rdatas array */
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand unsigned int rri_nsigs; /* size of sigs array */
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand char *rri_name; /* canonical name */
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand struct rdatainfo *rri_rdatas; /* individual records */
caad2986f81ab263f7af41467dd622dc9add17f3ylavic struct rdatainfo *rri_sigs; /* individual signatures */
caad2986f81ab263f7af41467dd622dc9add17f3ylavic};
caad2986f81ab263f7af41467dd622dc9add17f3ylavic</programlisting>
caad2986f81ab263f7af41467dd622dc9add17f3ylavic</para>
45a10d38e6051fd7bdf9d742aaae633d97ff02abjailletc</refsynopsisdiv>
f7317ff316c2b141feea31bddb74d5d3fa1584edjorton
f7317ff316c2b141feea31bddb74d5d3fa1584edjorton<refsect1>
2165214331e4afafca4048f66f303d0253d7b001covener<title>DESCRIPTION</title>
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem<para>
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem<function>lwres_getrrsetbyname()</function>
1e2d421a36999d292042a5539971070d54aa6c63ylavicgets a set of resource records associated with a
1e2d421a36999d292042a5539971070d54aa6c63ylavic<parameter>hostname</parameter>,
1e2d421a36999d292042a5539971070d54aa6c63ylavic
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedooh<parameter>class</parameter>,
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedooh
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohand
0b67eb8568cd58bb77082703951679b42cf098actrawick<parameter>type</parameter>.
0b67eb8568cd58bb77082703951679b42cf098actrawick
0b67eb8568cd58bb77082703951679b42cf098actrawick<parameter>hostname</parameter>
0b67eb8568cd58bb77082703951679b42cf098actrawickis
5ef3c61605a3a021ff71f488983cb0065f8e1a79covenera pointer a to null-terminated string. The
fb1985a97912b25ec6564c73e610a31e5fc6e25fcovener<parameter>flags</parameter>
09c87c777bed1655621bb20e1c46cb6b1a63279dcovenerfield is currently unused and must be zero.
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavic</para>
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavic<para>
3060ce7f798fbda7999cd4ddf89b525d2b294185covenerAfter a successful call to
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic<function>lwres_getrrsetbyname()</function>,
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic<parameter>*res</parameter>
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletcis a pointer to an
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc<type>rrsetinfo</type>
e466c40e1801982602ee0200c9e8b61cc148742djailletcstructure, containing a list of one or more
e466c40e1801982602ee0200c9e8b61cc148742djailletc<type>rdatainfo</type>
457468b82e59d01eba00dd9d0817309c8f5e414ejimstructures containing resource records and potentially another list of
457468b82e59d01eba00dd9d0817309c8f5e414ejim<type>rdatainfo</type>
457468b82e59d01eba00dd9d0817309c8f5e414ejimstructures containing SIG resource records
04983e3bd1754764eec7d6bb772fe3b0bf391771jortonassociated with those records.
04983e3bd1754764eec7d6bb772fe3b0bf391771jortonThe members
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem<constant>rri_rdclass</constant>
15660979a30d251681463de2e0584853890082accovenerand
15660979a30d251681463de2e0584853890082accovener<constant>rri_rdtype</constant>
49dacedb6c387b786b7911082ff35121a45f414bcovenerare copied from the parameters.
49dacedb6c387b786b7911082ff35121a45f414bcovener<constant>rri_ttl</constant>
cfd9415521847b2f9394fad04fb701cfb955f503rjungand
cfd9415521847b2f9394fad04fb701cfb955f503rjung<constant>rri_name</constant>
cfd9415521847b2f9394fad04fb701cfb955f503rjungare properties of the obtained rrset.
28c31fb73c1264bd1d0ff932573677030b024c7dwroweThe resource records contained in
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe<constant>rri_rdatas</constant>
28c31fb73c1264bd1d0ff932573677030b024c7dwroweand
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe<constant>rri_sigs</constant>
28c31fb73c1264bd1d0ff932573677030b024c7dwroweare in uncompressed DNS wire format.
8491e0600f69b0405e156ea8a419653c065c645bcovenerProperties of the rdataset are represented in the
63b9f1f5880391261705f696d7d65507bbe9ace3covener<constant>rri_flags</constant>
63b9f1f5880391261705f696d7d65507bbe9ace3covenerbitfield. If the RRSET_VALIDATED bit is set, the data has been DNSSEC
63b9f1f5880391261705f696d7d65507bbe9ace3covenervalidated and the signatures verified.
49dacedb6c387b786b7911082ff35121a45f414bcovener</para>
49dacedb6c387b786b7911082ff35121a45f414bcovener<para>
49dacedb6c387b786b7911082ff35121a45f414bcovenerAll of the information returned by
49dacedb6c387b786b7911082ff35121a45f414bcovener<function>lwres_getrrsetbyname()</function>
3c990331fc6702119e4f5b8ba9eae3021aea5265jimis dynamically allocated: the
3c990331fc6702119e4f5b8ba9eae3021aea5265jim<constant>rrsetinfo</constant>
3c990331fc6702119e4f5b8ba9eae3021aea5265jimand
3c990331fc6702119e4f5b8ba9eae3021aea5265jim<constant>rdatainfo</constant>
fc42512879dd0504532f52fe5d0d0383dda96a1eniqstructures,
fc42512879dd0504532f52fe5d0d0383dda96a1eniqand the canonical host name strings pointed to by the
fc42512879dd0504532f52fe5d0d0383dda96a1eniq<constant>rrsetinfo</constant>structure.
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niqMemory allocated for the dynamically allocated structures created by
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niqa successful call to
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc<function>lwres_getrrsetbyname()</function>
983528026996668ea295be95aedb9c7a346af470ylavicis released by
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc<function>lwres_freerrset()</function>.
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc
06b8f183140c8e02e0974e938a05078b511d1603covener<parameter>rrset</parameter>
06b8f183140c8e02e0974e938a05078b511d1603coveneris a pointer to a
06b8f183140c8e02e0974e938a05078b511d1603covener<type>struct rrset</type>
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluemcreated by a call to
259878293a997ff49f5ddfc53d3739cbdc25444ecovener<function>lwres_getrrsetbyname()</function>.
259878293a997ff49f5ddfc53d3739cbdc25444ecovener
259878293a997ff49f5ddfc53d3739cbdc25444ecovener</para>
259878293a997ff49f5ddfc53d3739cbdc25444ecovener<para>
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem</para>
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin</refsect1>
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin<refsect1>
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin<title>RETURN VALUES</title>
65967d05f839dbf27cf91d91fa79585eeae19660minfrin<para>
65967d05f839dbf27cf91d91fa79585eeae19660minfrin<function>lwres_getrrsetbyname()</function>
65967d05f839dbf27cf91d91fa79585eeae19660minfrinreturns zero on success, and one of the following error
65967d05f839dbf27cf91d91fa79585eeae19660minfrincodes if an error occurred:
8152945ae46857b170cb227e79bb799f4fc7710dminfrin<variablelist>
8152945ae46857b170cb227e79bb799f4fc7710dminfrin
8152945ae46857b170cb227e79bb799f4fc7710dminfrin<varlistentry><term><constant>ERRSET_NONAME</constant></term>
8152945ae46857b170cb227e79bb799f4fc7710dminfrin<listitem><para>
75f5c2db254c0167a0e396254460de09b775d203trawickthe name does not exist
75f5c2db254c0167a0e396254460de09b775d203trawick</para></listitem></varlistentry>
75f5c2db254c0167a0e396254460de09b775d203trawick
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph<varlistentry><term><constant>ERRSET_NODATA</constant></term>
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph<listitem><para>
4f0358189bfa57b8e75bd6b94db264302a8f336amrumphthe name exists, but does not have data of the desired type
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick</para></listitem></varlistentry>
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick<varlistentry><term><constant>ERRSET_NOMEMORY</constant></term>
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick<listitem><para>
54d750a84a175d8e338880514d440773eb986b50covenermemory could not be allocated
54d750a84a175d8e338880514d440773eb986b50covener</para></listitem></varlistentry>
54d750a84a175d8e338880514d440773eb986b50covener
54d750a84a175d8e338880514d440773eb986b50covener<varlistentry><term><constant>ERRSET_INVAL</constant></term>
54d750a84a175d8e338880514d440773eb986b50covener<listitem><para>
54d750a84a175d8e338880514d440773eb986b50covenera parameter is invalid
54d750a84a175d8e338880514d440773eb986b50covener</para></listitem></varlistentry>
54d750a84a175d8e338880514d440773eb986b50covener
7a3aa12f0eda24793ee26d6a179bd53132e9dae8covener<varlistentry><term><constant>ERRSET_FAIL</constant></term>
54d750a84a175d8e338880514d440773eb986b50covener<listitem><para>
54d750a84a175d8e338880514d440773eb986b50covenerother failure
83b50288fa7d306324bba68832011ea08f5c7832covener</para></listitem></varlistentry>
4e30ef014533a7e93c92d88306291f5e49c9692ftrawick
83b50288fa7d306324bba68832011ea08f5c7832covener<varlistentry><term><constant></constant></term>
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick<listitem><para>
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick</para></listitem></varlistentry>
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick
2e15620d724fb8e3a5be183b917359a2fd6e9468covener</variablelist>
2e15620d724fb8e3a5be183b917359a2fd6e9468covener
2e15620d724fb8e3a5be183b917359a2fd6e9468covener</para>
2e15620d724fb8e3a5be183b917359a2fd6e9468covener</refsect1>
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener<refsect1>
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener<title>SEE ALSO</title>
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener<para>
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener<citerefentry>
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener<refentrytitle>lwres</refentrytitle><manvolnum>3</manvolnum>
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener</citerefentry>.
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener</para>
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd</refsect1>
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd</refentry>
179565be4043d7e5f9161aa75271fa0a001866d9covener