lwres_getnameinfo.docbook revision ddccd5811feff696ba460dabfb666ce61040f545
f743002678eb67b99bbc29fee116b65d9530fec0wrowe<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
80833bb9a1bf25dcf19e814438a4b311d2e1f4cffuankg<!--
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem - Copyright (C) 2000, 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
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic - copyright notice and this permission notice appear in all copies.
4da61833a1cbbca94094f9653fd970582b97a72etrawick -
4da61833a1cbbca94094f9653fd970582b97a72etrawick - THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
4da61833a1cbbca94094f9653fd970582b97a72etrawick - DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
4da61833a1cbbca94094f9653fd970582b97a72etrawick - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
4da61833a1cbbca94094f9653fd970582b97a72etrawick - INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
4789804be088bcd86ae637a29cdb7fda25169521jailletc - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
4789804be088bcd86ae637a29cdb7fda25169521jailletc - FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
4789804be088bcd86ae637a29cdb7fda25169521jailletc - NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
4789804be088bcd86ae637a29cdb7fda25169521jailletc - WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
e50c3026198fd496f183cda4c32a202925476778covener-->
e50c3026198fd496f183cda4c32a202925476778covener
e50c3026198fd496f183cda4c32a202925476778covener<!-- $Id: lwres_getnameinfo.docbook,v 1.1 2001/03/31 00:08:13 gson Exp $ -->
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin<refentry>
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic<refentryinfo>
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic<date>Jun 30, 2000</date>
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic</refentryinfo>
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic<refmeta>
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic<refentrytitle>lwres_getnameinfo</refentrytitle>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic<manvolnum>3</manvolnum>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic<refmiscinfo>BIND9</refmiscinfo>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic</refmeta>
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic<refnamediv>
69301145375a889e7e37caf7cc7321ac0f91801erpluem<refname>lwres_getnameinfo</refname>
69301145375a889e7e37caf7cc7321ac0f91801erpluem<refpurpose>lightweight resolver socket address structure to hostname and service name</refpurpose>
69301145375a889e7e37caf7cc7321ac0f91801erpluem</refnamediv>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza<refsynopsisdiv>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza<funcsynopsis>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza<funcsynopsisinfo>#include &lt;lwres/netdb.h&gt;</funcsynopsisinfo>
506bfe33206b2fece40ef25f695af39dd4130facjkaluza<funcprototype>
d58a848a016d401b965111e50ef829e1641f7834minfrin<funcdef>
d58a848a016d401b965111e50ef829e1641f7834minfrinint
d58a848a016d401b965111e50ef829e1641f7834minfrin<function>lwres_getnameinfo</function></funcdef>
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf<paramdef>const struct sockaddr *sa</paramdef>
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf<paramdef>size_t salen</paramdef>
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf<paramdef>char *host</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>size_t hostlen</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>char *serv</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>size_t servlen</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic<paramdef>int flags</paramdef>
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic</funcprototype>
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic</funcsynopsis>
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic</refsynopsisdiv>
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic<refsect1>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic<title>DESCRIPTION</title>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic<para>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicThis function is equivalent to the
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic<citerefentry>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic<refentrytitle>getnameinfo</refentrytitle><manvolnum>3
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic</manvolnum>
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic</citerefentry>
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerfunction defined in RFC2133.
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener<function>lwres_getnameinfo()</function>
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerreturns the hostname for the
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener<type>struct sockaddr</type>
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener<parameter>sa</parameter>
44ff304057225e944e220e981d434a046d14cf06covenerwhich is
44ff304057225e944e220e981d434a046d14cf06covener<parameter>salen</parameter>
44ff304057225e944e220e981d434a046d14cf06covenerbytes long.
44ff304057225e944e220e981d434a046d14cf06covenerThe hostname is of length
5d1ba75b8794925e67591c209085a49279791de9covener<parameter>hostlen</parameter>
5d1ba75b8794925e67591c209085a49279791de9covenerand is returned via
5d1ba75b8794925e67591c209085a49279791de9covener<parameter>*host.</parameter>
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandThe maximum length of the hostname is
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand1025 bytes:
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand<constant>NI_MAXHOST</constant>.
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand
caad2986f81ab263f7af41467dd622dc9add17f3ylavic</para>
caad2986f81ab263f7af41467dd622dc9add17f3ylavic<para>
caad2986f81ab263f7af41467dd622dc9add17f3ylavicThe name of the service associated with the port number in
caad2986f81ab263f7af41467dd622dc9add17f3ylavic<parameter>sa</parameter>
45a10d38e6051fd7bdf9d742aaae633d97ff02abjailletcis returned in
f7317ff316c2b141feea31bddb74d5d3fa1584edjorton<parameter>*serv.</parameter>
f7317ff316c2b141feea31bddb74d5d3fa1584edjortonIt is
2165214331e4afafca4048f66f303d0253d7b001covener<parameter>servlen</parameter>
a34684a59b60a4173c25035d0c627ef17e6dc215rpluembytes long.
a34684a59b60a4173c25035d0c627ef17e6dc215rpluemThe maximum length of the service name is
1e2d421a36999d292042a5539971070d54aa6c63ylavic<constant>NI_MAXSERV</constant> - 32 bytes.
1e2d421a36999d292042a5539971070d54aa6c63ylavic</para>
1e2d421a36999d292042a5539971070d54aa6c63ylavic<para>
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohThe
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedooh<parameter>flags</parameter>
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohargument sets the following bits:
0b67eb8568cd58bb77082703951679b42cf098actrawick<variablelist>
0b67eb8568cd58bb77082703951679b42cf098actrawick<varlistentry><term><constant>NI_NOFQDN</constant></term>
0b67eb8568cd58bb77082703951679b42cf098actrawick<listitem>
0b67eb8568cd58bb77082703951679b42cf098actrawick<para>
5ef3c61605a3a021ff71f488983cb0065f8e1a79covenerA fully qualified domain name is not required for local hosts.
fb1985a97912b25ec6564c73e610a31e5fc6e25fcovenerThe local part of the fully qualified domain name is returned instead.
09c87c777bed1655621bb20e1c46cb6b1a63279dcovener</listitem>
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavic<varlistentry><term><constant>NI_NUMERICHOST</constant></term>
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavic<listitem>
3060ce7f798fbda7999cd4ddf89b525d2b294185covener<para>
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicReturn the address in numeric form, as if calling inet_ntop(),
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicinstead of a host name.
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic</listitem>
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc<varlistentry><term><constant>NI_NAMEREQD</constant></term>
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc<listitem>
e466c40e1801982602ee0200c9e8b61cc148742djailletc<para>
e466c40e1801982602ee0200c9e8b61cc148742djailletcA name is required. If the hostname cannot be found in the DNS and
457468b82e59d01eba00dd9d0817309c8f5e414ejimthis flag is set, a non-zero error code is returned.
457468b82e59d01eba00dd9d0817309c8f5e414ejimIf the hostname is not found and the flag is not set, the
457468b82e59d01eba00dd9d0817309c8f5e414ejimaddress is returned in numeric form.
04983e3bd1754764eec7d6bb772fe3b0bf391771jorton</listitem>
04983e3bd1754764eec7d6bb772fe3b0bf391771jorton<varlistentry><term><constant>NI_NUMERICSERV</constant></term>
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem<listitem>
15660979a30d251681463de2e0584853890082accovener<para>
15660979a30d251681463de2e0584853890082accovenerThe service name is returned as a digit string representing the port number.
49dacedb6c387b786b7911082ff35121a45f414bcovener</listitem>
49dacedb6c387b786b7911082ff35121a45f414bcovener<varlistentry><term><constant>NI_DGRAM</constant></term>
cfd9415521847b2f9394fad04fb701cfb955f503rjung<listitem>
cfd9415521847b2f9394fad04fb701cfb955f503rjung<para>
cfd9415521847b2f9394fad04fb701cfb955f503rjungSpecifies that the service being looked up is a datagram
28c31fb73c1264bd1d0ff932573677030b024c7dwroweservice, and causes getservbyport() to be called with a second
28c31fb73c1264bd1d0ff932573677030b024c7dwroweargument of "udp" instead of its default of "tcp". This is required
28c31fb73c1264bd1d0ff932573677030b024c7dwrowefor the few ports (512-514) that have different services for UDP and
28c31fb73c1264bd1d0ff932573677030b024c7dwroweTCP.
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe</para>
8491e0600f69b0405e156ea8a419653c065c645bcovener</listitem>
63b9f1f5880391261705f696d7d65507bbe9ace3covener</variablelist>
63b9f1f5880391261705f696d7d65507bbe9ace3covener</para>
63b9f1f5880391261705f696d7d65507bbe9ace3covener<para>
49dacedb6c387b786b7911082ff35121a45f414bcovener</para>
49dacedb6c387b786b7911082ff35121a45f414bcovener</refsect1>
49dacedb6c387b786b7911082ff35121a45f414bcovener<refsect1>
49dacedb6c387b786b7911082ff35121a45f414bcovener<title>RETURN VALUES</title>
3c990331fc6702119e4f5b8ba9eae3021aea5265jim<para>
3c990331fc6702119e4f5b8ba9eae3021aea5265jim<function>lwres_getnameinfo()</function>
3c990331fc6702119e4f5b8ba9eae3021aea5265jimreturns 0 on success or a non-zero error code if an error occurs.
3c990331fc6702119e4f5b8ba9eae3021aea5265jim</para>
fc42512879dd0504532f52fe5d0d0383dda96a1eniq</refsect1>
fc42512879dd0504532f52fe5d0d0383dda96a1eniq<refsect1>
fc42512879dd0504532f52fe5d0d0383dda96a1eniq<title>SEE ALSO</title>
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq<para>
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq<citerefentry>
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq<refentrytitle>RFC2133</refentrytitle>
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc</citerefentry>,
983528026996668ea295be95aedb9c7a346af470ylavic<citerefentry>
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc<refentrytitle>getservbyport</refentrytitle><manvolnum>3</manvolnum>
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc</citerefentry>,
06b8f183140c8e02e0974e938a05078b511d1603covener<citerefentry>
06b8f183140c8e02e0974e938a05078b511d1603covener<refentrytitle>lwres</refentrytitle><manvolnum>3</manvolnum>
06b8f183140c8e02e0974e938a05078b511d1603covener</citerefentry>,
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem<citerefentry>
259878293a997ff49f5ddfc53d3739cbdc25444ecovener<refentrytitle>lwres_getnameinfo</refentrytitle><manvolnum>3</manvolnum>
259878293a997ff49f5ddfc53d3739cbdc25444ecovener</citerefentry>,
259878293a997ff49f5ddfc53d3739cbdc25444ecovener<citerefentry>
259878293a997ff49f5ddfc53d3739cbdc25444ecovener<refentrytitle>lwres_getnamebyaddr</refentrytitle><manvolnum>3</manvolnum>
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem</citerefentry>.
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin<citerefentry>
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin<refentrytitle>lwres_net_ntop</refentrytitle><manvolnum>3</manvolnum>
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin</citerefentry>.
65967d05f839dbf27cf91d91fa79585eeae19660minfrin</refsect1>
65967d05f839dbf27cf91d91fa79585eeae19660minfrin<refsect1>
65967d05f839dbf27cf91d91fa79585eeae19660minfrin<title>BUGS</title>
65967d05f839dbf27cf91d91fa79585eeae19660minfrin<para>
8152945ae46857b170cb227e79bb799f4fc7710dminfrinRFC2133 fails to define what the nonzero return values of
8152945ae46857b170cb227e79bb799f4fc7710dminfrin<citerefentry>
8152945ae46857b170cb227e79bb799f4fc7710dminfrin<refentrytitle>getnameinfo</refentrytitle><manvolnum>3</manvolnum>
8152945ae46857b170cb227e79bb799f4fc7710dminfrin</citerefentry>
75f5c2db254c0167a0e396254460de09b775d203trawickare.
75f5c2db254c0167a0e396254460de09b775d203trawick</para>
75f5c2db254c0167a0e396254460de09b775d203trawick</refsect1>
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph</refentry>
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph