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, 2012 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.
25 <date>Jun 30, 2000</date>
29 <refentrytitle>lwres_getnameinfo</refentrytitle>
30 <manvolnum>3</manvolnum>
31 <refmiscinfo>BIND9</refmiscinfo>
40 <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
45 <holder>Internet Software Consortium.</holder>
50 <refname>lwres_getnameinfo</refname>
51 <refpurpose>lightweight resolver socket address structure to hostname and
57 <funcsynopsisinfo>#include <lwres/netdb.h></funcsynopsisinfo>
61 <function>lwres_getnameinfo</function></funcdef>
62 <paramdef>const struct sockaddr *<parameter>sa</parameter></paramdef>
63 <paramdef>size_t <parameter>salen</parameter></paramdef>
64 <paramdef>char *<parameter>host</parameter></paramdef>
65 <paramdef>size_t <parameter>hostlen</parameter></paramdef>
66 <paramdef>char *<parameter>serv</parameter></paramdef>
67 <paramdef>size_t <parameter>servlen</parameter></paramdef>
68 <paramdef>int <parameter>flags</parameter></paramdef>
74 <title>DESCRIPTION</title>
77 This function is equivalent to the
79 <refentrytitle>getnameinfo</refentrytitle><manvolnum>3</manvolnum>
80 </citerefentry> function defined in RFC2133.
81 <function>lwres_getnameinfo()</function> returns the
83 <type>struct sockaddr</type> <parameter>sa</parameter> which
85 <parameter>salen</parameter> bytes long. The hostname is of
87 <parameter>hostlen</parameter> and is returned via
88 <parameter>*host.</parameter> The maximum length of the
90 1025 bytes: <constant>NI_MAXHOST</constant>.
93 <para> The name of the service associated with the port number in
94 <parameter>sa</parameter> is returned in <parameter>*serv.</parameter>
95 It is <parameter>servlen</parameter> bytes long. The
97 of the service name is <constant>NI_MAXSERV</constant> - 32
102 The <parameter>flags</parameter> argument sets the
107 <term><constant>NI_NOFQDN</constant></term>
110 A fully qualified domain name is not required for local hosts.
111 The local part of the fully qualified domain name is returned
117 <term><constant>NI_NUMERICHOST</constant></term>
120 Return the address in numeric form, as if calling inet_ntop(),
121 instead of a host name.
126 <term><constant>NI_NAMEREQD</constant></term>
129 A name is required. If the hostname cannot be found in the DNS
131 this flag is set, a non-zero error code is returned.
132 If the hostname is not found and the flag is not set, the
133 address is returned in numeric form.
138 <term><constant>NI_NUMERICSERV</constant></term>
141 The service name is returned as a digit string representing the
147 <term><constant>NI_DGRAM</constant></term>
150 Specifies that the service being looked up is a datagram
151 service, and causes getservbyport() to be called with a second
152 argument of "udp" instead of its default of "tcp". This is
154 for the few ports (512-514) that have different services for UDP
165 <title>RETURN VALUES</title>
166 <para><function>lwres_getnameinfo()</function>
167 returns 0 on success or a non-zero error code if an error occurs.
171 <title>SEE ALSO</title>
173 <refentrytitle>RFC2133</refentrytitle>
176 <refentrytitle>getservbyport</refentrytitle><manvolnum>3</manvolnum>
179 <refentrytitle>lwres</refentrytitle><manvolnum>3</manvolnum>
182 <refentrytitle>lwres_getnameinfo</refentrytitle><manvolnum>3</manvolnum>
185 <refentrytitle>lwres_getnamebyaddr</refentrytitle><manvolnum>3</manvolnum>
188 <refentrytitle>lwres_net_ntop</refentrytitle><manvolnum>3</manvolnum>
195 RFC2133 fails to define what the nonzero return values of
197 <refentrytitle>getnameinfo</refentrytitle><manvolnum>3</manvolnum>