1 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
2 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
3 [<!ENTITY mdash "—">]>
5 - Copyright (C) 2004, 2005, 2007, 2014 Internet Systems Consortium, Inc. ("ISC")
6 - Copyright (C) 2000, 2001 Internet Software Consortium.
8 - Permission to use, copy, modify, and/or distribute this software for any
9 - purpose with or without fee is hereby granted, provided that the above
10 - copyright notice and this permission notice appear in all copies.
12 - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
13 - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
14 - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
15 - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
16 - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
17 - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
18 - PERFORMANCE OF THIS SOFTWARE.
24 <date>June 18, 2007</date>
28 <refentrytitle>lwres_getnameinfo</refentrytitle>
29 <manvolnum>3</manvolnum>
30 <refmiscinfo>BIND9</refmiscinfo>
39 <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
44 <holder>Internet Software Consortium.</holder>
49 <refname>lwres_getnameinfo</refname>
50 <refpurpose>lightweight resolver socket address structure to hostname and
56 <funcsynopsisinfo>#include <lwres/netdb.h></funcsynopsisinfo>
60 <function>lwres_getnameinfo</function></funcdef>
61 <paramdef>const struct sockaddr *<parameter>sa</parameter></paramdef>
62 <paramdef>size_t <parameter>salen</parameter></paramdef>
63 <paramdef>char *<parameter>host</parameter></paramdef>
64 <paramdef>size_t <parameter>hostlen</parameter></paramdef>
65 <paramdef>char *<parameter>serv</parameter></paramdef>
66 <paramdef>size_t <parameter>servlen</parameter></paramdef>
67 <paramdef>int <parameter>flags</parameter></paramdef>
73 <title>DESCRIPTION</title>
76 This function is equivalent to the
78 <refentrytitle>getnameinfo</refentrytitle><manvolnum>3</manvolnum>
79 </citerefentry> function defined in RFC2133.
80 <function>lwres_getnameinfo()</function> returns the
82 <type>struct sockaddr</type> <parameter>sa</parameter> which
84 <parameter>salen</parameter> bytes long. The hostname is of
86 <parameter>hostlen</parameter> and is returned via
87 <parameter>*host.</parameter> The maximum length of the
89 1025 bytes: <constant>NI_MAXHOST</constant>.
92 <para> The name of the service associated with the port number in
93 <parameter>sa</parameter> is returned in <parameter>*serv.</parameter>
94 It is <parameter>servlen</parameter> bytes long. The
96 of the service name is <constant>NI_MAXSERV</constant> - 32
101 The <parameter>flags</parameter> argument sets the
106 <term><constant>NI_NOFQDN</constant></term>
109 A fully qualified domain name is not required for local hosts.
110 The local part of the fully qualified domain name is returned
116 <term><constant>NI_NUMERICHOST</constant></term>
119 Return the address in numeric form, as if calling inet_ntop(),
120 instead of a host name.
125 <term><constant>NI_NAMEREQD</constant></term>
128 A name is required. If the hostname cannot be found in the DNS
130 this flag is set, a non-zero error code is returned.
131 If the hostname is not found and the flag is not set, the
132 address is returned in numeric form.
137 <term><constant>NI_NUMERICSERV</constant></term>
140 The service name is returned as a digit string representing the
146 <term><constant>NI_DGRAM</constant></term>
149 Specifies that the service being looked up is a datagram
150 service, and causes getservbyport() to be called with a second
151 argument of "udp" instead of its default of "tcp". This is
153 for the few ports (512-514) that have different services for UDP
164 <title>RETURN VALUES</title>
165 <para><function>lwres_getnameinfo()</function>
166 returns 0 on success or a non-zero error code if an error occurs.
170 <title>SEE ALSO</title>
172 <refentrytitle>RFC2133</refentrytitle>
175 <refentrytitle>getservbyport</refentrytitle><manvolnum>3</manvolnum>
178 <refentrytitle>lwres</refentrytitle><manvolnum>3</manvolnum>
181 <refentrytitle>lwres_getnameinfo</refentrytitle><manvolnum>3</manvolnum>
184 <refentrytitle>lwres_getnamebyaddr</refentrytitle><manvolnum>3</manvolnum>
187 <refentrytitle>lwres_net_ntop</refentrytitle><manvolnum>3</manvolnum>
194 RFC2133 fails to define what the nonzero return values of
196 <refentrytitle>getnameinfo</refentrytitle><manvolnum>3</manvolnum>