]> git.ipfire.org Git - people/ms/strongswan.git/blob - lib/liblwres/man/lwres_getnameinfo.html
- fixed stroke error output to starter
[people/ms/strongswan.git] / lib / liblwres / man / lwres_getnameinfo.html
1 <!--
2 - Copyright (C) 2000, 2001 Internet Software Consortium.
3 -
4 - Permission to use, copy, modify, and distribute this software for any
5 - purpose with or without fee is hereby granted, provided that the above
6 - copyright notice and this permission notice appear in all copies.
7 -
8 - THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
9 - DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
10 - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
11 - INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
12 - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
13 - FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
14 - NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
15 - WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 -->
17 <HTML
18 ><HEAD
19 ><TITLE
20 >lwres_getnameinfo</TITLE
21 ><META
22 NAME="GENERATOR"
23 CONTENT="Modular DocBook HTML Stylesheet Version 1.61
24 "></HEAD
25 ><BODY
26 CLASS="REFENTRY"
27 BGCOLOR="#FFFFFF"
28 TEXT="#000000"
29 LINK="#0000FF"
30 VLINK="#840084"
31 ALINK="#0000FF"
32 ><H1
33 ><A
34 NAME="AEN1"
35 >lwres_getnameinfo</A
36 ></H1
37 ><DIV
38 CLASS="REFNAMEDIV"
39 ><A
40 NAME="AEN8"
41 ></A
42 ><H2
43 >Name</H2
44 >lwres_getnameinfo&nbsp;--&nbsp;lightweight resolver socket address structure to hostname and service name</DIV
45 ><DIV
46 CLASS="REFSYNOPSISDIV"
47 ><A
48 NAME="AEN11"
49 ></A
50 ><H2
51 >Synopsis</H2
52 ><DIV
53 CLASS="FUNCSYNOPSIS"
54 ><A
55 NAME="AEN12"
56 ></A
57 ><P
58 ></P
59 ><PRE
60 CLASS="FUNCSYNOPSISINFO"
61 >#include &lt;lwres/netdb.h&gt;</PRE
62 ><P
63 ><CODE
64 ><CODE
65 CLASS="FUNCDEF"
66 >int
67 lwres_getnameinfo</CODE
68 >(const struct sockaddr *sa, size_t salen, char *host, size_t hostlen, char *serv, size_t servlen, int flags);</CODE
69 ></P
70 ><P
71 ></P
72 ></DIV
73 ></DIV
74 ><DIV
75 CLASS="REFSECT1"
76 ><A
77 NAME="AEN24"
78 ></A
79 ><H2
80 >DESCRIPTION</H2
81 ><P
82 > This function is equivalent to the <SPAN
83 CLASS="CITEREFENTRY"
84 ><SPAN
85 CLASS="REFENTRYTITLE"
86 >getnameinfo</SPAN
87 >(3)</SPAN
88 > function defined in RFC2133.
89 <TT
90 CLASS="FUNCTION"
91 >lwres_getnameinfo()</TT
92 > returns the hostname for the
93 <SPAN
94 CLASS="TYPE"
95 >struct sockaddr</SPAN
96 > <TT
97 CLASS="PARAMETER"
98 ><I
99 >sa</I
100 ></TT
101 > which is
102 <TT
103 CLASS="PARAMETER"
104 ><I
105 >salen</I
106 ></TT
107 > bytes long. The hostname is of length
108 <TT
109 CLASS="PARAMETER"
110 ><I
111 >hostlen</I
112 ></TT
113 > and is returned via
114 <TT
115 CLASS="PARAMETER"
116 ><I
117 >*host.</I
118 ></TT
119 > The maximum length of the hostname is
120 1025 bytes: <TT
121 CLASS="CONSTANT"
122 >NI_MAXHOST</TT
123 >.</P
124 ><P
125 > The name of the service associated with the port number in
126 <TT
127 CLASS="PARAMETER"
128 ><I
129 >sa</I
130 ></TT
131 > is returned in <TT
132 CLASS="PARAMETER"
133 ><I
134 >*serv.</I
135 ></TT
136 >
137 It is <TT
138 CLASS="PARAMETER"
139 ><I
140 >servlen</I
141 ></TT
142 > bytes long. The maximum length
143 of the service name is <TT
144 CLASS="CONSTANT"
145 >NI_MAXSERV</TT
146 > - 32 bytes.</P
147 ><P
148 > The <TT
149 CLASS="PARAMETER"
150 ><I
151 >flags</I
152 ></TT
153 > argument sets the following
154 bits:
155 <P
156 ></P
157 ><DIV
158 CLASS="VARIABLELIST"
159 ><DL
160 ><DT
161 ><TT
162 CLASS="CONSTANT"
163 >NI_NOFQDN</TT
164 ></DT
165 ><DD
166 ><P
167 >A fully qualified domain name is not required for local hosts.
168 The local part of the fully qualified domain name is returned instead.</P
169 ></DD
170 ><DT
171 ><TT
172 CLASS="CONSTANT"
173 >NI_NUMERICHOST</TT
174 ></DT
175 ><DD
176 ><P
177 >Return the address in numeric form, as if calling inet_ntop(),
178 instead of a host name.</P
179 ></DD
180 ><DT
181 ><TT
182 CLASS="CONSTANT"
183 >NI_NAMEREQD</TT
184 ></DT
185 ><DD
186 ><P
187 >A name is required. If the hostname cannot be found in the DNS and
188 this flag is set, a non-zero error code is returned.
189 If the hostname is not found and the flag is not set, the
190 address is returned in numeric form.</P
191 ></DD
192 ><DT
193 ><TT
194 CLASS="CONSTANT"
195 >NI_NUMERICSERV</TT
196 ></DT
197 ><DD
198 ><P
199 >The service name is returned as a digit string representing the port number.</P
200 ></DD
201 ><DT
202 ><TT
203 CLASS="CONSTANT"
204 >NI_DGRAM</TT
205 ></DT
206 ><DD
207 ><P
208 >Specifies that the service being looked up is a datagram
209 service, and causes getservbyport() to be called with a second
210 argument of "udp" instead of its default of "tcp". This is required
211 for the few ports (512-514) that have different services for UDP and
212 TCP.</P
213 ></DD
214 ></DL
215 ></DIV
216 ></P
217 ></DIV
218 ><DIV
219 CLASS="REFSECT1"
220 ><A
221 NAME="AEN70"
222 ></A
223 ><H2
224 >RETURN VALUES</H2
225 ><P
226 ><TT
227 CLASS="FUNCTION"
228 >lwres_getnameinfo()</TT
229 >
230 returns 0 on success or a non-zero error code if an error occurs.</P
231 ></DIV
232 ><DIV
233 CLASS="REFSECT1"
234 ><A
235 NAME="AEN74"
236 ></A
237 ><H2
238 >SEE ALSO</H2
239 ><P
240 ><SPAN
241 CLASS="CITEREFENTRY"
242 ><SPAN
243 CLASS="REFENTRYTITLE"
244 >RFC2133</SPAN
245 ></SPAN
246 >,
247 <SPAN
248 CLASS="CITEREFENTRY"
249 ><SPAN
250 CLASS="REFENTRYTITLE"
251 >getservbyport</SPAN
252 >(3)</SPAN
253 >,
254 <SPAN
255 CLASS="CITEREFENTRY"
256 ><SPAN
257 CLASS="REFENTRYTITLE"
258 >lwres</SPAN
259 >(3)</SPAN
260 >,
261 <SPAN
262 CLASS="CITEREFENTRY"
263 ><SPAN
264 CLASS="REFENTRYTITLE"
265 >lwres_getnameinfo</SPAN
266 >(3)</SPAN
267 >,
268 <SPAN
269 CLASS="CITEREFENTRY"
270 ><SPAN
271 CLASS="REFENTRYTITLE"
272 >lwres_getnamebyaddr</SPAN
273 >(3)</SPAN
274 >.
275 <SPAN
276 CLASS="CITEREFENTRY"
277 ><SPAN
278 CLASS="REFENTRYTITLE"
279 >lwres_net_ntop</SPAN
280 >(3)</SPAN
281 >.</P
282 ></DIV
283 ><DIV
284 CLASS="REFSECT1"
285 ><A
286 NAME="AEN94"
287 ></A
288 ><H2
289 >BUGS</H2
290 ><P
291 >RFC2133 fails to define what the nonzero return values of
292 <SPAN
293 CLASS="CITEREFENTRY"
294 ><SPAN
295 CLASS="REFENTRYTITLE"
296 >getnameinfo</SPAN
297 >(3)</SPAN
298 >
299 are.</P
300 ></DIV
301 ></BODY
302 ></HTML
303 >