OSDN Git Service

(split) LDP: Update POT and ja.po to LDP v3.39.
[linuxjm/LDP_man-pages.git] / po4a / rpc / po / rpc.pot
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 #, fuzzy
7 msgid ""
8 msgstr ""
9 "Project-Id-Version: PACKAGE VERSION\n"
10 "POT-Creation-Date: 2012-04-25 05:36+0900\n"
11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 "Language-Team: LANGUAGE <LL@li.org>\n"
14 "Language: \n"
15 "MIME-Version: 1.0\n"
16 "Content-Type: text/plain; charset=CHARSET\n"
17 "Content-Transfer-Encoding: 8bit\n"
18
19 #. type: TH
20 #: build/C/man3/getrpcent.3:4
21 #, no-wrap
22 msgid "GETRPCENT"
23 msgstr ""
24
25 #. type: TH
26 #: build/C/man3/getrpcent.3:4
27 #, no-wrap
28 msgid "2008-08-19"
29 msgstr ""
30
31 #. type: TH
32 #: build/C/man3/getrpcent.3:4 build/C/man3/getrpcent_r.3:24 build/C/man3/getrpcport.3:4 build/C/man3/key_setsecret.3:5 build/C/man3/rpc.3:7 build/C/man5/rpc.5:4 build/C/man3/rtime.3:8 build/C/man3/xdr.3:7
33 #, no-wrap
34 msgid "Linux Programmer's Manual"
35 msgstr ""
36
37 #. type: SH
38 #: build/C/man3/getrpcent.3:5 build/C/man3/getrpcent_r.3:25 build/C/man3/getrpcport.3:5 build/C/man3/key_setsecret.3:6 build/C/man3/rpc.3:8 build/C/man5/rpc.5:5 build/C/man3/rtime.3:9 build/C/man3/xdr.3:8
39 #, no-wrap
40 msgid "NAME"
41 msgstr ""
42
43 #. type: Plain text
44 #: build/C/man3/getrpcent.3:8
45 msgid ""
46 "getrpcent, getrpcbyname, getrpcbynumber, setrpcent, endrpcent - get RPC "
47 "entry"
48 msgstr ""
49
50 #. type: SH
51 #: build/C/man3/getrpcent.3:8 build/C/man3/getrpcent_r.3:28 build/C/man3/getrpcport.3:7 build/C/man3/key_setsecret.3:9 build/C/man5/rpc.5:7 build/C/man3/rtime.3:11
52 #, no-wrap
53 msgid "SYNOPSIS"
54 msgstr ""
55
56 #. type: Plain text
57 #: build/C/man3/getrpcent.3:11 build/C/man3/getrpcent_r.3:31
58 #, no-wrap
59 msgid "B<#include E<lt>netdb.hE<gt>>\n"
60 msgstr ""
61
62 #. type: Plain text
63 #: build/C/man3/getrpcent.3:13
64 #, no-wrap
65 msgid "B<struct rpcent *getrpcent(void);>\n"
66 msgstr ""
67
68 #. type: Plain text
69 #: build/C/man3/getrpcent.3:15
70 #, no-wrap
71 msgid "B<struct rpcent *getrpcbyname(char *>I<name>B<);>\n"
72 msgstr ""
73
74 #. type: Plain text
75 #: build/C/man3/getrpcent.3:17
76 #, no-wrap
77 msgid "B<struct rpcent *getrpcbynumber(int >I<number>B<);>\n"
78 msgstr ""
79
80 #. type: Plain text
81 #: build/C/man3/getrpcent.3:19
82 #, no-wrap
83 msgid "B<void setrpcent(int >I<stayopen>B<);>\n"
84 msgstr ""
85
86 #. type: Plain text
87 #: build/C/man3/getrpcent.3:21
88 #, no-wrap
89 msgid "B<void endrpcent(void);>\n"
90 msgstr ""
91
92 #. type: SH
93 #: build/C/man3/getrpcent.3:22 build/C/man3/getrpcent_r.3:57 build/C/man3/getrpcport.3:12 build/C/man3/key_setsecret.3:23 build/C/man5/rpc.5:9 build/C/man3/rtime.3:18
94 #, no-wrap
95 msgid "DESCRIPTION"
96 msgstr ""
97
98 #. type: Plain text
99 #: build/C/man3/getrpcent.3:31
100 msgid ""
101 "B<getrpcent>(), B<getrpcbyname>(), and B<getrpcbynumber>()  each return a "
102 "pointer to an object with the following structure containing the broken-out "
103 "fields of an entry in the RPC program number data base."
104 msgstr ""
105
106 #. type: Plain text
107 #: build/C/man3/getrpcent.3:39
108 #, no-wrap
109 msgid ""
110 "struct rpcent {\n"
111 "    char  *r_name;     /* name of server for this RPC program */\n"
112 "    char **r_aliases;  /* alias list */\n"
113 "    long   r_number;   /* RPC program number */\n"
114 "};\n"
115 msgstr ""
116
117 #. type: Plain text
118 #: build/C/man3/getrpcent.3:43
119 msgid "The members of this structure are:"
120 msgstr ""
121
122 #. type: TP
123 #: build/C/man3/getrpcent.3:44
124 #, no-wrap
125 msgid "I<r_name>"
126 msgstr ""
127
128 #. type: Plain text
129 #: build/C/man3/getrpcent.3:47
130 msgid "The name of the server for this RPC program."
131 msgstr ""
132
133 #. type: TP
134 #: build/C/man3/getrpcent.3:47
135 #, no-wrap
136 msgid "I<r_aliases>"
137 msgstr ""
138
139 #. type: Plain text
140 #: build/C/man3/getrpcent.3:50
141 msgid "A NULL-terminated list of alternate names for the RPC program."
142 msgstr ""
143
144 #. type: TP
145 #: build/C/man3/getrpcent.3:50
146 #, no-wrap
147 msgid "I<r_number>"
148 msgstr ""
149
150 #. type: Plain text
151 #: build/C/man3/getrpcent.3:53
152 msgid "The RPC program number for this service."
153 msgstr ""
154
155 #. type: Plain text
156 #: build/C/man3/getrpcent.3:58
157 msgid ""
158 "B<getrpcent>()  reads the next entry from the database.  A connection is "
159 "opened to the database if necessary."
160 msgstr ""
161
162 #. type: Plain text
163 #: build/C/man3/getrpcent.3:67
164 msgid ""
165 "B<setrpcent>()  function opens a connection to the database, and sets the "
166 "next entry to the first entry.  If I<stayopen> is nonzero, then the "
167 "connection to the database will not be closed between calls to one of the "
168 "B<getrpc*>()  functions."
169 msgstr ""
170
171 #. type: Plain text
172 #: build/C/man3/getrpcent.3:71
173 msgid "The B<endrpcent>()  function closes the connection to the database."
174 msgstr ""
175
176 #. type: Plain text
177 #: build/C/man3/getrpcent.3:78
178 msgid ""
179 "B<getrpcbyname>()  and B<getrpcbynumber>()  sequentially search from the "
180 "beginning of the file until a matching RPC program name or program number is "
181 "found, or until end-of-file is encountered."
182 msgstr ""
183
184 #. type: SH
185 #: build/C/man3/getrpcent.3:78 build/C/man3/getrpcent_r.3:105 build/C/man3/key_setsecret.3:55 build/C/man3/rtime.3:32
186 #, no-wrap
187 msgid "RETURN VALUE"
188 msgstr ""
189
190 #. type: Plain text
191 #: build/C/man3/getrpcent.3:88
192 msgid ""
193 "On success, B<getrpcent>(), B<getrpcbyname>(), and B<getrpcbynumber>()  "
194 "return a pointer to a statically allocated I<rpcent> structure.  A NULL "
195 "pointer is returned on EOF or error."
196 msgstr ""
197
198 #. type: SH
199 #: build/C/man3/getrpcent.3:88 build/C/man5/rpc.5:71
200 #, no-wrap
201 msgid "FILES"
202 msgstr ""
203
204 #. type: TP
205 #: build/C/man3/getrpcent.3:89 build/C/man5/rpc.5:72
206 #, no-wrap
207 msgid "I</etc/rpc>"
208 msgstr ""
209
210 #. type: Plain text
211 #: build/C/man3/getrpcent.3:92
212 msgid "RPC program number database."
213 msgstr ""
214
215 #. type: SH
216 #: build/C/man3/getrpcent.3:92 build/C/man3/getrpcent_r.3:128 build/C/man3/getrpcport.3:32
217 #, no-wrap
218 msgid "CONFORMING TO"
219 msgstr ""
220
221 #. type: Plain text
222 #: build/C/man3/getrpcent.3:95 build/C/man3/getrpcport.3:34
223 msgid "Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other systems."
224 msgstr ""
225
226 #. type: SH
227 #: build/C/man3/getrpcent.3:95 build/C/man3/rtime.3:71
228 #, no-wrap
229 msgid "BUGS"
230 msgstr ""
231
232 #. type: Plain text
233 #: build/C/man3/getrpcent.3:100
234 msgid ""
235 "All information is contained in a static area so it must be copied if it is "
236 "to be saved."
237 msgstr ""
238
239 #. type: SH
240 #: build/C/man3/getrpcent.3:100 build/C/man3/getrpcent_r.3:132 build/C/man3/key_setsecret.3:64 build/C/man3/rpc.3:1098 build/C/man5/rpc.5:75 build/C/man3/rtime.3:120 build/C/man3/xdr.3:538
241 #, no-wrap
242 msgid "SEE ALSO"
243 msgstr ""
244
245 #. type: Plain text
246 #: build/C/man3/getrpcent.3:104
247 msgid "B<getrpcent_r>(3), B<rpc>(5), B<rpcinfo>(8), B<ypserv>(8)"
248 msgstr ""
249
250 #. type: TH
251 #: build/C/man3/getrpcent_r.3:24
252 #, no-wrap
253 msgid "GETRPCENT_R"
254 msgstr ""
255
256 #. type: TH
257 #: build/C/man3/getrpcent_r.3:24
258 #, no-wrap
259 msgid "2010-09-10"
260 msgstr ""
261
262 #. type: TH
263 #: build/C/man3/getrpcent_r.3:24 build/C/man3/rtime.3:8
264 #, no-wrap
265 msgid "GNU"
266 msgstr ""
267
268 #. type: Plain text
269 #: build/C/man3/getrpcent_r.3:28
270 msgid "getrpcent_r, getrpcbyname_r, getrpcbynumber_r - get RPC entry (reentrant)"
271 msgstr ""
272
273 #. type: Plain text
274 #: build/C/man3/getrpcent_r.3:34
275 #, no-wrap
276 msgid ""
277 "B<int getrpcent_r(struct rpcent *>I<result_buf>B<, char *>I<buf>B<,>\n"
278 "B<                size_t >I<buflen>B<, struct rpcent **>I<result>B<);>\n"
279 msgstr ""
280
281 #. type: Plain text
282 #: build/C/man3/getrpcent_r.3:38
283 #, no-wrap
284 msgid ""
285 "B<int getrpcbyname_r(const char *>I<name>B<,>\n"
286 "B<                struct rpcent *>I<result_buf>B<, char *>I<buf>B<,>\n"
287 "B<                size_t >I<buflen>B<, struct rpcent **>I<result>B<);>\n"
288 msgstr ""
289
290 #. type: Plain text
291 #: build/C/man3/getrpcent_r.3:42
292 #, no-wrap
293 msgid ""
294 "B<int getrpcbynumber_r(int >I<number>B<,>\n"
295 "B<                struct rpcent *>I<result_buf>B<, char *>I<buf>B<,>\n"
296 "B<                size_t >I<buflen>B<, struct rpcent **>I<result>B<);>\n"
297 msgstr ""
298
299 #. type: Plain text
300 #: build/C/man3/getrpcent_r.3:47
301 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
302 msgstr ""
303
304 #. type: Plain text
305 #: build/C/man3/getrpcent_r.3:53
306 msgid "B<getrpcent_r>(), B<getrpcbyname_r>(), B<getrpcbynumber_r>():"
307 msgstr ""
308
309 #. type: Plain text
310 #: build/C/man3/getrpcent_r.3:55
311 msgid "_BSD_SOURCE || _SVID_SOURCE"
312 msgstr ""
313
314 #. type: Plain text
315 #: build/C/man3/getrpcent_r.3:74
316 msgid ""
317 "The B<getrpcent_r>(), B<getrpcbyname_r>(), and B<getrpcbynumber_r>()  "
318 "functions are the reentrant equivalents of, respectively, B<getrpcent>(3), "
319 "B<getrpcbyname>(3), and B<getrpcbynumber>(3).  They differ in the way that "
320 "the I<rpcent> structure is returned, and in the function calling signature "
321 "and return value.  This manual page describes just the differences from the "
322 "nonreentrant functions."
323 msgstr ""
324
325 #. type: Plain text
326 #: build/C/man3/getrpcent_r.3:80
327 msgid ""
328 "Instead of returning a pointer to a statically allocated I<rpcent> structure "
329 "as the function result, these functions copy the structure into the location "
330 "pointed to by I<result_buf>."
331 msgstr ""
332
333 #.  I can find no information on the required/recommended buffer size;
334 #.  the nonreentrant functions use a 1024 byte buffer -- mtk.
335 #. type: Plain text
336 #: build/C/man3/getrpcent_r.3:97
337 msgid ""
338 "The I<buf> array is used to store the string fields pointed to by the "
339 "returned I<rpcent> structure.  (The nonreentrant functions allocate these "
340 "strings in static storage.)  The size of this array is specified in "
341 "I<buflen>.  If I<buf> is too small, the call fails with the error B<ERANGE>, "
342 "and the caller must try again with a larger buffer.  (A buffer of length "
343 "1024 bytes should be sufficient for most applications.)"
344 msgstr ""
345
346 #. type: Plain text
347 #: build/C/man3/getrpcent_r.3:105
348 msgid ""
349 "If the function call successfully obtains an RPC record, then I<*result> is "
350 "set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
351 msgstr ""
352
353 #. type: Plain text
354 #: build/C/man3/getrpcent_r.3:108
355 msgid ""
356 "On success, these functions return 0.  On error, they return one of the "
357 "positive error numbers listed in ERRORS."
358 msgstr ""
359
360 #. type: Plain text
361 #: build/C/man3/getrpcent_r.3:116
362 msgid ""
363 "On error, record not found (B<getrpcbyname_r>(), B<getrpcbynumber_r>()), or "
364 "end of input (B<getrpcent_r>())  I<result> is set to NULL."
365 msgstr ""
366
367 #. type: SH
368 #: build/C/man3/getrpcent_r.3:116 build/C/man3/rtime.3:38
369 #, no-wrap
370 msgid "ERRORS"
371 msgstr ""
372
373 #. type: TP
374 #: build/C/man3/getrpcent_r.3:117
375 #, no-wrap
376 msgid "B<ENOENT>"
377 msgstr ""
378
379 #. type: Plain text
380 #: build/C/man3/getrpcent_r.3:121
381 msgid "(B<getrpcent_r>())  No more records in database."
382 msgstr ""
383
384 #. type: TP
385 #: build/C/man3/getrpcent_r.3:121
386 #, no-wrap
387 msgid "B<ERANGE>"
388 msgstr ""
389
390 #. type: Plain text
391 #: build/C/man3/getrpcent_r.3:128
392 msgid ""
393 "I<buf> is too small.  Try again with a larger buffer (and increased "
394 "I<buflen>)."
395 msgstr ""
396
397 #. type: Plain text
398 #: build/C/man3/getrpcent_r.3:132
399 msgid ""
400 "These functions are GNU extensions.  Functions with similar names exist on "
401 "some other systems, though typically with different calling signatures."
402 msgstr ""
403
404 #. type: Plain text
405 #: build/C/man3/getrpcent_r.3:134
406 msgid "B<getrpcent>(3), B<rpc>(5)"
407 msgstr ""
408
409 #. type: TH
410 #: build/C/man3/getrpcport.3:4
411 #, no-wrap
412 msgid "GETRPCPORT"
413 msgstr ""
414
415 #. type: TH
416 #: build/C/man3/getrpcport.3:4
417 #, no-wrap
418 msgid "2007-12-23"
419 msgstr ""
420
421 #. type: Plain text
422 #: build/C/man3/getrpcport.3:7
423 msgid "getrpcport - get RPC port number"
424 msgstr ""
425
426 #. type: Plain text
427 #: build/C/man3/getrpcport.3:11
428 #, no-wrap
429 msgid ""
430 "B<int getrpcport(char *>I<host>B<, int >I<prognum>B<, int >I<versnum>B<, int "
431 ">I<proto>B<);>\n"
432 msgstr ""
433
434 #. type: Plain text
435 #: build/C/man3/getrpcport.3:32
436 msgid ""
437 "B<getrpcport>()  returns the port number for version I<versnum> of the RPC "
438 "program I<prognum> running on I<host> and using protocol I<proto>.  It "
439 "returns 0 if it cannot contact the portmapper, or if I<prognum> is not "
440 "registered.  If I<prognum> is registered but not with version I<versnum>, it "
441 "will still return a port number (for some version of the program)  "
442 "indicating that the program is indeed registered.  The version mismatch will "
443 "be detected upon the first call to the service."
444 msgstr ""
445
446 #. type: TH
447 #: build/C/man3/key_setsecret.3:5
448 #, no-wrap
449 msgid "KEY_SETSECRET"
450 msgstr ""
451
452 #. type: TH
453 #: build/C/man3/key_setsecret.3:5
454 #, no-wrap
455 msgid "2002-07-18"
456 msgstr ""
457
458 #. type: Plain text
459 #: build/C/man3/key_setsecret.3:9
460 msgid ""
461 "key_decryptsession, key_encryptsession, key_setsecret, key_gendes, "
462 "key_secretkey_is_set - interfaces to rpc keyserver daemon"
463 msgstr ""
464
465 #. type: Plain text
466 #: build/C/man3/key_setsecret.3:11
467 msgid "B<#include E<lt>rpc/rpc.hE<gt>>"
468 msgstr ""
469
470 #. type: Plain text
471 #: build/C/man3/key_setsecret.3:14
472 msgid ""
473 "B<int key_decryptsession(const char *>I<remotename>B<,> B<des_block "
474 "*>I<deskey>B<);>"
475 msgstr ""
476
477 #. type: Plain text
478 #: build/C/man3/key_setsecret.3:17
479 msgid ""
480 "B<int key_encryptsession(const char *>I<remotename>B<,> B<des_block "
481 "*>I<deskey>B<);>"
482 msgstr ""
483
484 #. type: Plain text
485 #: build/C/man3/key_setsecret.3:19
486 msgid "B<int key_gendes(des_block *>I<deskey>B<);>"
487 msgstr ""
488
489 #. type: Plain text
490 #: build/C/man3/key_setsecret.3:21
491 msgid "B<int key_setsecret(const char *>I<key>B<);>"
492 msgstr ""
493
494 #. type: Plain text
495 #: build/C/man3/key_setsecret.3:23
496 msgid "B<int key_secretkey_is_set(void);>"
497 msgstr ""
498
499 #. type: Plain text
500 #: build/C/man3/key_setsecret.3:28
501 msgid ""
502 "The functions here are used within the RPC's secure authentication mechanism "
503 "(AUTH_DES).  There should be no need for user programs to use this "
504 "functions."
505 msgstr ""
506
507 #. type: Plain text
508 #: build/C/man3/key_setsecret.3:35
509 msgid ""
510 "The function B<key_decryptsession>()  uses the (remote) server netname and "
511 "takes the DES key for decrypting.  It uses the public key of the server and "
512 "the secret key associated with the effective UID of the calling process."
513 msgstr ""
514
515 #. type: Plain text
516 #: build/C/man3/key_setsecret.3:42
517 msgid ""
518 "The function B<key_encryptsession>()  is the inverse of "
519 "B<key_decryptsession>().  It encrypts the DES keys with the public key of "
520 "the server and the secret key associated with the effective UID of the "
521 "calling process."
522 msgstr ""
523
524 #. type: Plain text
525 #: build/C/man3/key_setsecret.3:46
526 msgid ""
527 "The function B<key_gendes>()  is used to ask the keyserver for a secure "
528 "conversation key."
529 msgstr ""
530
531 #. type: Plain text
532 #: build/C/man3/key_setsecret.3:50
533 msgid ""
534 "The function B<key_setsecret>()  is used to set the key for the effective "
535 "UID of the calling process."
536 msgstr ""
537
538 #. type: Plain text
539 #: build/C/man3/key_setsecret.3:55
540 msgid ""
541 "The function B<key_secretkey_is_set>()  can be used to determine whether a "
542 "key has been set for the effective UID of the calling process."
543 msgstr ""
544
545 #. type: Plain text
546 #: build/C/man3/key_setsecret.3:57
547 msgid "These functions return 1 on success and 0 on failure."
548 msgstr ""
549
550 #. type: SH
551 #: build/C/man3/key_setsecret.3:57 build/C/man3/rtime.3:53
552 #, no-wrap
553 msgid "NOTES"
554 msgstr ""
555
556 #. type: Plain text
557 #: build/C/man3/key_setsecret.3:62
558 msgid ""
559 "Note that we talk about two types of encryption here.  One is asymmetric "
560 "using a public and secret key.  The other is symmetric, the 64-bit DES."
561 msgstr ""
562
563 #. type: Plain text
564 #: build/C/man3/key_setsecret.3:64
565 msgid "These routines were part of the Linux/Doors-project, abandoned by now."
566 msgstr ""
567
568 #. type: Plain text
569 #: build/C/man3/key_setsecret.3:65
570 msgid "B<crypt>(3)"
571 msgstr ""
572
573 #. type: TH
574 #: build/C/man3/rpc.3:7 build/C/man5/rpc.5:4
575 #, no-wrap
576 msgid "RPC"
577 msgstr ""
578
579 #. type: TH
580 #: build/C/man3/rpc.3:7
581 #, no-wrap
582 msgid "2008-07-17"
583 msgstr ""
584
585 #. type: Plain text
586 #: build/C/man3/rpc.3:10
587 msgid "rpc - library routines for remote procedure calls"
588 msgstr ""
589
590 #. type: SH
591 #: build/C/man3/rpc.3:10 build/C/man3/xdr.3:10
592 #, no-wrap
593 msgid "SYNOPSIS AND DESCRIPTION"
594 msgstr ""
595
596 #.  .LP
597 #.  We don't have an rpc_secure.3 page at the moment -- MTK, 19 Sep 05
598 #.  Routines that are used for Secure RPC (DES authentication) are described in
599 #.  .BR rpc_secure (3).
600 #.  Secure RPC can be used only if DES encryption is available.
601 #. type: Plain text
602 #: build/C/man3/rpc.3:22
603 msgid ""
604 "These routines allow C programs to make procedure calls on other machines "
605 "across the network.  First, the client calls a procedure to send a data "
606 "packet to the server.  Upon receipt of the packet, the server calls a "
607 "dispatch routine to perform the requested service, and then sends back a "
608 "reply.  Finally, the procedure call returns to the client."
609 msgstr ""
610
611 #. type: Plain text
612 #: build/C/man3/rpc.3:25
613 msgid ""
614 "To take use of these routines, include the header file "
615 "I<E<lt>rpc/rpc.hE<gt>>."
616 msgstr ""
617
618 #. type: Plain text
619 #: build/C/man3/rpc.3:27
620 msgid "The prototypes below make use of the following types:"
621 msgstr ""
622
623 #. type: Plain text
624 #: build/C/man3/rpc.3:31 build/C/man3/xdr.3:24
625 #, no-wrap
626 msgid "typedef int I<bool_t>;\n"
627 msgstr ""
628
629 #. type: Plain text
630 #: build/C/man3/rpc.3:33 build/C/man3/xdr.3:26
631 #, no-wrap
632 msgid "typedef bool_t (*I<xdrproc_t>) (XDR *, void *,...);\n"
633 msgstr ""
634
635 #. type: Plain text
636 #: build/C/man3/rpc.3:36
637 #, no-wrap
638 msgid ""
639 "typedef bool_t (*I<resultproc_t>) (caddr_t resp,\n"
640 "                                struct sockaddr_in *raddr);\n"
641 msgstr ""
642
643 #. type: Plain text
644 #: build/C/man3/rpc.3:46
645 msgid ""
646 "See the header files for the declarations of the I<AUTH>, I<CLIENT>, "
647 "I<SVCXPRT>, and I<XDR> types."
648 msgstr ""
649
650 #. type: Plain text
651 #: build/C/man3/rpc.3:49
652 #, no-wrap
653 msgid "B<void auth_destroy(AUTH *>I<auth>B<);>\n"
654 msgstr ""
655
656 #. type: Plain text
657 #: build/C/man3/rpc.3:58
658 msgid ""
659 "A macro that destroys the authentication information associated with "
660 "I<auth>.  Destruction usually involves deallocation of private data "
661 "structures.  The use of I<auth> is undefined after calling "
662 "B<auth_destroy>()."
663 msgstr ""
664
665 #. type: Plain text
666 #: build/C/man3/rpc.3:61
667 #, no-wrap
668 msgid "B<AUTH *authnone_create(void);>\n"
669 msgstr ""
670
671 #. type: Plain text
672 #: build/C/man3/rpc.3:67
673 msgid ""
674 "Create and return an RPC authentication handle that passes nonusable "
675 "authentication information with each remote procedure call.  This is the "
676 "default authentication used by RPC."
677 msgstr ""
678
679 #. type: Plain text
680 #: build/C/man3/rpc.3:71
681 #, no-wrap
682 msgid ""
683 "B<AUTH *authunix_create(char *>I<host>B<, int >I<uid>B<, int >I<gid>B<,>\n"
684 "B<                      int >I<len>B<, int *>I<aup_gids>B<);>\n"
685 msgstr ""
686
687 #. type: Plain text
688 #: build/C/man3/rpc.3:87
689 msgid ""
690 "Create and return an RPC authentication handle that contains authentication "
691 "information.  The parameter I<host> is the name of the machine on which the "
692 "information was created; I<uid> is the user's user ID; I<gid> is the user's "
693 "current group ID; I<len> and I<aup_gids> refer to a counted array of groups "
694 "to which the user belongs.  It is easy to impersonate a user."
695 msgstr ""
696
697 #. type: Plain text
698 #: build/C/man3/rpc.3:90
699 #, no-wrap
700 msgid "B<AUTH *authunix_create_default(void);>\n"
701 msgstr ""
702
703 #. type: Plain text
704 #: build/C/man3/rpc.3:95
705 msgid "Calls B<authunix_create>()  with the appropriate parameters."
706 msgstr ""
707
708 #. type: Plain text
709 #: build/C/man3/rpc.3:101
710 #, no-wrap
711 msgid ""
712 "B<int callrpc(char *>I<host>B<, unsigned long >I<prognum>B<,>\n"
713 "B<            unsigned long >I<versnum>B<, unsigned long >I<procnum>B<,>\n"
714 "B<            xdrproc_t >I<inproc>B<, char *>I<in>B<,>\n"
715 "B<            xdrproc_t >I<outproc>B<, char *>I<out>B<);>\n"
716 msgstr ""
717
718 #. type: Plain text
719 #: build/C/man3/rpc.3:125
720 msgid ""
721 "Call the remote procedure associated with I<prognum>, I<versnum>, and "
722 "I<procnum> on the machine, I<host>.  The parameter I<in> is the address of "
723 "the procedure's argument(s), and I<out> is the address of where to place the "
724 "result(s); I<inproc> is used to encode the procedure's parameters, and "
725 "I<outproc> is used to decode the procedure's results.  This routine returns "
726 "zero if it succeeds, or the value of B<enum clnt_stat> cast to an integer if "
727 "it fails.  The routine B<clnt_perrno>()  is handy for translating failure "
728 "statuses into messages."
729 msgstr ""
730
731 #. type: Plain text
732 #: build/C/man3/rpc.3:131
733 msgid ""
734 "Warning: calling remote procedures with this routine uses UDP/IP as a "
735 "transport; see B<clntudp_create>()  for restrictions.  You do not have "
736 "control of timeouts or authentication using this routine."
737 msgstr ""
738
739 #. type: Plain text
740 #: build/C/man3/rpc.3:138
741 #, no-wrap
742 msgid ""
743 "B<enum clnt_stat clnt_broadcast(unsigned long >I<prognum>B<,>\n"
744 "B<                     unsigned long >I<versnum>B<, unsigned long "
745 ">I<procnum>B<,>\n"
746 "B<                     xdrproc_t >I<inproc>B<, char *>I<in>B<,>\n"
747 "B<                     xdrproc_t >I<outproc>B<, char *>I<out>B<,>\n"
748 "B<                     resultproc_t >I<eachresult>B<);>\n"
749 msgstr ""
750
751 #. type: Plain text
752 #: build/C/man3/rpc.3:147
753 msgid ""
754 "Like B<callrpc>(), except the call message is broadcast to all locally "
755 "connected broadcast nets.  Each time it receives a response, this routine "
756 "calls B<eachresult>(), whose form is:"
757 msgstr ""
758
759 #. type: Plain text
760 #: build/C/man3/rpc.3:151
761 #, no-wrap
762 msgid "B<eachresult(char *>I<out>B<, struct sockaddr_in *>I<addr>B<);>\n"
763 msgstr ""
764
765 #. type: Plain text
766 #: build/C/man3/rpc.3:168
767 msgid ""
768 "where I<out> is the same as I<out> passed to B<clnt_broadcast>(), except "
769 "that the remote procedure's output is decoded there; I<addr> points to the "
770 "address of the machine that sent the results.  If B<eachresult>()  returns "
771 "zero, B<clnt_broadcast>()  waits for more replies; otherwise it returns with "
772 "appropriate status."
773 msgstr ""
774
775 #. type: Plain text
776 #: build/C/man3/rpc.3:172
777 msgid ""
778 "Warning: broadcast sockets are limited in size to the maximum transfer unit "
779 "of the data link.  For ethernet, this value is 1500 bytes."
780 msgstr ""
781
782 #. type: Plain text
783 #: build/C/man3/rpc.3:178
784 #, no-wrap
785 msgid ""
786 "B<enum clnt_stat clnt_call(CLIENT *>I<clnt>B<, unsigned long "
787 ">I<procnum>B<,>\n"
788 "B<                    xdrproc_t >I<inproc>B<, char *>I<in>B<,>\n"
789 "B<                    xdrproc_t >I<outproc>B<, char *>I<out>B<,>\n"
790 "B<                    struct timeval >I<tout>B<);>\n"
791 msgstr ""
792
793 #. type: Plain text
794 #: build/C/man3/rpc.3:197
795 msgid ""
796 "A macro that calls the remote procedure I<procnum> associated with the "
797 "client handle, I<clnt>, which is obtained with an RPC client creation "
798 "routine such as B<clnt_create>().  The parameter I<in> is the address of the "
799 "procedure's argument(s), and I<out> is the address of where to place the "
800 "result(s); I<inproc> is used to encode the procedure's parameters, and "
801 "I<outproc> is used to decode the procedure's results; I<tout> is the time "
802 "allowed for results to come back."
803 msgstr ""
804
805 #. type: Plain text
806 #: build/C/man3/rpc.3:200
807 #, no-wrap
808 msgid "B<clnt_destroy(CLIENT *>I<clnt>B<);>\n"
809 msgstr ""
810
811 #. type: Plain text
812 #: build/C/man3/rpc.3:213
813 msgid ""
814 "A macro that destroys the client's RPC handle.  Destruction usually involves "
815 "deallocation of private data structures, including I<clnt> itself.  Use of "
816 "I<clnt> is undefined after calling B<clnt_destroy>().  If the RPC library "
817 "opened the associated socket, it will close it also.  Otherwise, the socket "
818 "remains open."
819 msgstr ""
820
821 #. type: Plain text
822 #: build/C/man3/rpc.3:217
823 #, no-wrap
824 msgid ""
825 "B<CLIENT *clnt_create(char *>I<host>B<, unsigned long >I<prog>B<,>\n"
826 "B<                    unsigned long >I<vers>B<, char *>I<proto>B<);>\n"
827 msgstr ""
828
829 #. type: Plain text
830 #: build/C/man3/rpc.3:228
831 msgid ""
832 "Generic client creation routine.  I<host> identifies the name of the remote "
833 "host where the server is located.  I<proto> indicates which kind of "
834 "transport protocol to use.  The currently supported values for this field "
835 "are \\(lqudp\\(rq and \\(lqtcp\\(rq.  Default timeouts are set, but can be "
836 "modified using B<clnt_control>()."
837 msgstr ""
838
839 #. type: Plain text
840 #: build/C/man3/rpc.3:233
841 msgid ""
842 "Warning: Using UDP has its shortcomings.  Since UDP-based RPC messages can "
843 "only hold up to 8 Kbytes of encoded data, this transport cannot be used for "
844 "procedures that take large arguments or return huge results."
845 msgstr ""
846
847 #. type: Plain text
848 #: build/C/man3/rpc.3:236
849 #, no-wrap
850 msgid "B<bool_t clnt_control(CLIENT *>I<cl>B<, int >I<req>B<, char *>I<info>B<);>\n"
851 msgstr ""
852
853 #. type: Plain text
854 #: build/C/man3/rpc.3:247
855 msgid ""
856 "A macro used to change or retrieve various information about a client "
857 "object.  I<req> indicates the type of operation, and I<info> is a pointer to "
858 "the information.  For both UDP and TCP, the supported values of I<req> and "
859 "their argument types and what they do are:"
860 msgstr ""
861
862 #. type: Plain text
863 #: build/C/man3/rpc.3:252
864 #, no-wrap
865 msgid ""
866 "B<CLSET_TIMEOUT>  I<struct timeval> // set total timeout\n"
867 "B<CLGET_TIMEOUT>  I<struct timeval> // get total timeout\n"
868 msgstr ""
869
870 #. type: Plain text
871 #: build/C/man3/rpc.3:260
872 msgid ""
873 "Note: if you set the timeout using B<clnt_control>(), the timeout parameter "
874 "passed to B<clnt_call>()  will be ignored in all future calls."
875 msgstr ""
876
877 #. type: Plain text
878 #: build/C/man3/rpc.3:264
879 #, no-wrap
880 msgid "B<CLGET_SERVER_ADDR>  I<struct sockaddr_in > // get server's address\n"
881 msgstr ""
882
883 #. type: Plain text
884 #: build/C/man3/rpc.3:268
885 msgid "The following operations are valid for UDP only:"
886 msgstr ""
887
888 #. type: Plain text
889 #: build/C/man3/rpc.3:273
890 #, no-wrap
891 msgid ""
892 "B<CLSET_RETRY_TIMEOUT>  I<struct timeval> // set the retry timeout\n"
893 "B<CLGET_RETRY_TIMEOUT>  I<struct timeval> // get the retry timeout\n"
894 msgstr ""
895
896 #. type: Plain text
897 #: build/C/man3/rpc.3:279
898 msgid ""
899 "The retry timeout is the time that \"UDP RPC\" waits for the server to reply "
900 "before retransmitting the request."
901 msgstr ""
902
903 #. type: Plain text
904 #: build/C/man3/rpc.3:282
905 #, no-wrap
906 msgid ""
907 "B<clnt_freeres(CLIENT * >I<clnt>B<, xdrproc_t >I<outproc>B<, char "
908 "*>I<out>B<);>\n"
909 msgstr ""
910
911 #. type: Plain text
912 #: build/C/man3/rpc.3:293
913 msgid ""
914 "A macro that frees any data allocated by the RPC/XDR system when it decoded "
915 "the results of an RPC call.  The parameter I<out> is the address of the "
916 "results, and I<outproc> is the XDR routine describing the results.  This "
917 "routine returns one if the results were successfully freed, and zero "
918 "otherwise."
919 msgstr ""
920
921 #. type: Plain text
922 #: build/C/man3/rpc.3:296
923 #, no-wrap
924 msgid "B<void clnt_geterr(CLIENT *>I<clnt>B<, struct rpc_err *>I<errp>B<);>\n"
925 msgstr ""
926
927 #. type: Plain text
928 #: build/C/man3/rpc.3:301
929 msgid ""
930 "A macro that copies the error structure out of the client handle to the "
931 "structure at address I<errp>."
932 msgstr ""
933
934 #. type: Plain text
935 #: build/C/man3/rpc.3:304
936 #, no-wrap
937 msgid "B<void clnt_pcreateerror(char *>I<s>B<);>\n"
938 msgstr ""
939
940 #. type: Plain text
941 #: build/C/man3/rpc.3:318
942 msgid ""
943 "Print a message to standard error indicating why a client RPC handle could "
944 "not be created.  The message is prepended with string I<s> and a colon.  "
945 "Used when a B<clnt_create>(), B<clntraw_create>(), B<clnttcp_create>(), or "
946 "B<clntudp_create>()  call fails."
947 msgstr ""
948
949 #. type: Plain text
950 #: build/C/man3/rpc.3:321
951 #, no-wrap
952 msgid "B<void clnt_perrno(enum clnt_stat >I<stat>B<);>\n"
953 msgstr ""
954
955 #. type: Plain text
956 #: build/C/man3/rpc.3:328
957 msgid ""
958 "Print a message to standard error corresponding to the condition indicated "
959 "by I<stat>.  Used after B<callrpc>()."
960 msgstr ""
961
962 #. type: Plain text
963 #: build/C/man3/rpc.3:331
964 #, no-wrap
965 msgid "B<clnt_perror(CLIENT *>I<clnt>B<, char *>I<s>B<);>\n"
966 msgstr ""
967
968 #. type: Plain text
969 #: build/C/man3/rpc.3:341
970 msgid ""
971 "Print a message to standard error indicating why an RPC call failed; I<clnt> "
972 "is the handle used to do the call.  The message is prepended with string "
973 "I<s> and a colon.  Used after B<clnt_call>()."
974 msgstr ""
975
976 #. type: Plain text
977 #: build/C/man3/rpc.3:344
978 #, no-wrap
979 msgid "B<char *clnt_spcreateerror(char *>I<s>B<);>\n"
980 msgstr ""
981
982 #. type: Plain text
983 #: build/C/man3/rpc.3:349
984 msgid ""
985 "Like B<clnt_pcreateerror>(), except that it returns a string instead of "
986 "printing to the standard error."
987 msgstr ""
988
989 #. type: Plain text
990 #: build/C/man3/rpc.3:351 build/C/man3/rpc.3:391
991 msgid "Bugs: returns pointer to static data that is overwritten on each call."
992 msgstr ""
993
994 #. type: Plain text
995 #: build/C/man3/rpc.3:354
996 #, no-wrap
997 msgid "B<char *clnt_sperrno(enum clnt_stat >I<stat>B<);>\n"
998 msgstr ""
999
1000 #. type: Plain text
1001 #: build/C/man3/rpc.3:361
1002 msgid ""
1003 "Take the same arguments as B<clnt_perrno>(), but instead of sending a "
1004 "message to the standard error indicating why an RPC call failed, return a "
1005 "pointer to a string which contains the message.  The string ends with a "
1006 "NEWLINE."
1007 msgstr ""
1008
1009 #. type: Plain text
1010 #: build/C/man3/rpc.3:379
1011 msgid ""
1012 "B<clnt_sperrno>()  is used instead of B<clnt_perrno>()  if the program does "
1013 "not have a standard error (as a program running as a server quite likely "
1014 "does not), or if the programmer does not want the message to be output with "
1015 "B<printf>(3), or if a message format different than that supported by "
1016 "B<clnt_perrno>()  is to be used.  Note: unlike B<clnt_sperror>()  and "
1017 "B<clnt_spcreaterror>(), B<clnt_sperrno>()  returns pointer to static data, "
1018 "but the result will not get overwritten on each call."
1019 msgstr ""
1020
1021 #. type: Plain text
1022 #: build/C/man3/rpc.3:382
1023 #, no-wrap
1024 msgid "B<char *clnt_sperror(CLIENT *>I<rpch>B<, char *>I<s>B<);>\n"
1025 msgstr ""
1026
1027 #. type: Plain text
1028 #: build/C/man3/rpc.3:389
1029 msgid ""
1030 "Like B<clnt_perror>(), except that (like B<clnt_sperrno>())  it returns a "
1031 "string instead of printing to standard error."
1032 msgstr ""
1033
1034 #. type: Plain text
1035 #: build/C/man3/rpc.3:395
1036 #, no-wrap
1037 msgid ""
1038 "B<CLIENT *clntraw_create(unsigned long >I<prognum>B<, unsigned long "
1039 ">I<versnum>B<);>\n"
1040 msgstr ""
1041
1042 #. type: Plain text
1043 #: build/C/man3/rpc.3:408
1044 msgid ""
1045 "This routine creates a toy RPC client for the remote program I<prognum>, "
1046 "version I<versnum>.  The transport used to pass messages to the service is "
1047 "actually a buffer within the process's address space, so the corresponding "
1048 "RPC server should live in the same address space; see B<svcraw_create>().  "
1049 "This allows simulation of RPC and acquisition of RPC overheads, such as "
1050 "round trip times, without any kernel interference.  This routine returns "
1051 "NULL if it fails."
1052 msgstr ""
1053
1054 #. type: Plain text
1055 #: build/C/man3/rpc.3:414
1056 #, no-wrap
1057 msgid ""
1058 "B<CLIENT *clnttcp_create(struct sockaddr_in *>I<addr>B<,>\n"
1059 "B<                unsigned long >I<prognum>B<, unsigned long "
1060 ">I<versnum>B<,>\n"
1061 "B<                int *>I<sockp>B<, unsigned int >I<sendsz>B<, unsigned int "
1062 ">I<recvsz>B<);>\n"
1063 msgstr ""
1064
1065 #. The following inline font conversion is necessary for the hyphen indicator
1066 #. type: Plain text
1067 #: build/C/man3/rpc.3:444
1068 msgid ""
1069 "This routine creates an RPC client for the remote program I<prognum>, "
1070 "version I<versnum>; the client uses TCP/IP as a transport.  The remote "
1071 "program is located at Internet address I<*addr>.  If I<addr-E<gt>sin_port> "
1072 "is zero, then it is set to the actual port that the remote program is "
1073 "listening on (the remote B<portmap> service is consulted for this "
1074 "information).  The parameter I<sockp> is a socket; if it is B<RPC_ANYSOCK>, "
1075 "then this routine opens a new one and sets I<sockp>.  Since TCP-based RPC "
1076 "uses buffered I/O, the user may specify the size of the send and receive "
1077 "buffers with the parameters I<sendsz> and I<recvsz>; values of zero choose "
1078 "suitable defaults.  This routine returns NULL if it fails."
1079 msgstr ""
1080
1081 #. type: Plain text
1082 #: build/C/man3/rpc.3:449
1083 #, no-wrap
1084 msgid ""
1085 "B<CLIENT *clntudp_create(struct sockaddr_in *>I<addr>B<,>\n"
1086 "B<                unsigned long >I<prognum>B<, unsigned long "
1087 ">I<versnum>B<,>\n"
1088 "B<                struct timeval >I<wait>B<, int *>I<sockp>B<);>\n"
1089 msgstr ""
1090
1091 #. type: Plain text
1092 #: build/C/man3/rpc.3:475
1093 msgid ""
1094 "This routine creates an RPC client for the remote program I<prognum>, "
1095 "version I<versnum>; the client uses use UDP/IP as a transport.  The remote "
1096 "program is located at Internet address I<addr>.  If I<addr-E<gt>sin_port> is "
1097 "zero, then it is set to actual port that the remote program is listening on "
1098 "(the remote B<portmap> service is consulted for this information).  The "
1099 "parameter I<sockp> is a socket; if it is B<RPC_ANYSOCK>, then this routine "
1100 "opens a new one and sets I<sockp>.  The UDP transport resends the call "
1101 "message in intervals of I<wait> time until a response is received or until "
1102 "the call times out.  The total time for the call to time out is specified by "
1103 "B<clnt_call>()."
1104 msgstr ""
1105
1106 #. type: Plain text
1107 #: build/C/man3/rpc.3:479
1108 msgid ""
1109 "Warning: since UDP-based RPC messages can only hold up to 8 Kbytes of "
1110 "encoded data, this transport cannot be used for procedures that take large "
1111 "arguments or return huge results."
1112 msgstr ""
1113
1114 #. type: Plain text
1115 #: build/C/man3/rpc.3:485
1116 #, no-wrap
1117 msgid ""
1118 "B<CLIENT *clntudp_bufcreate(struct sockaddr_in *>I<addr>B<,>\n"
1119 "B<            unsigned long >I<prognum>B<, unsigned long >I<versnum>B<,>\n"
1120 "B<            struct timeval >I<wait>B<, int *>I<sockp>B<,>\n"
1121 "B<            unsigned int >I<sendsize>B<, unsigned int >I<recosize>B<);>\n"
1122 msgstr ""
1123
1124 #. type: Plain text
1125 #: build/C/man3/rpc.3:511
1126 msgid ""
1127 "This routine creates an RPC client for the remote program I<prognum>, on "
1128 "I<versnum>; the client uses use UDP/IP as a transport.  The remote program "
1129 "is located at Internet address I<addr>.  If I<addr-E<gt>sin_port> is zero, "
1130 "then it is set to actual port that the remote program is listening on (the "
1131 "remote B<portmap> service is consulted for this information).  The parameter "
1132 "I<sockp> is a socket; if it is B<RPC_ANYSOCK>, then this routine opens a new "
1133 "one and sets I<sockp>.  The UDP transport resends the call message in "
1134 "intervals of I<wait> time until a response is received or until the call "
1135 "times out.  The total time for the call to time out is specified by "
1136 "B<clnt_call>()."
1137 msgstr ""
1138
1139 #. type: Plain text
1140 #: build/C/man3/rpc.3:514 build/C/man3/rpc.3:991
1141 msgid ""
1142 "This allows the user to specify the maximum packet size for sending and "
1143 "receiving UDP-based RPC messages."
1144 msgstr ""
1145
1146 #. type: Plain text
1147 #: build/C/man3/rpc.3:517
1148 #, no-wrap
1149 msgid "B<void get_myaddress(struct sockaddr_in *>I<addr>B<);>\n"
1150 msgstr ""
1151
1152 #. type: Plain text
1153 #: build/C/man3/rpc.3:525
1154 msgid ""
1155 "Stuff the machine's IP address into I<*addr>, without consulting the library "
1156 "routines that deal with I</etc/hosts>.  The port number is always set to "
1157 "B<htons(PMAPPORT)>."
1158 msgstr ""
1159
1160 #. type: Plain text
1161 #: build/C/man3/rpc.3:528
1162 #, no-wrap
1163 msgid "B<struct pmaplist *pmap_getmaps(struct sockaddr_in *>I<addr>B<);>\n"
1164 msgstr ""
1165
1166 #. type: Plain text
1167 #: build/C/man3/rpc.3:539
1168 msgid ""
1169 "A user interface to the B<portmap> service, which returns a list of the "
1170 "current RPC program-to-port mappings on the host located at IP address "
1171 "I<*addr>.  This routine can return NULL.  The command I<rpcinfo\\ -p> uses "
1172 "this routine."
1173 msgstr ""
1174
1175 #. type: Plain text
1176 #: build/C/man3/rpc.3:544
1177 #, no-wrap
1178 msgid ""
1179 "B<unsigned short pmap_getport(struct sockaddr_in *>I<addr>B<,>\n"
1180 "B<                    unsigned long >I<prognum>B<, unsigned long "
1181 ">I<versnum>B<,>\n"
1182 "B<                    unsigned int >I<protocol>B<);>\n"
1183 msgstr ""
1184
1185 #. type: Plain text
1186 #: build/C/man3/rpc.3:568
1187 msgid ""
1188 "A user interface to the B<portmap> service, which returns the port number on "
1189 "which waits a service that supports program number I<prognum>, version "
1190 "I<versnum>, and speaks the transport protocol associated with I<protocol>.  "
1191 "The value of I<protocol> is most likely B<IPPROTO_UDP> or B<IPPROTO_TCP>.  A "
1192 "return value of zero means that the mapping does not exist or that the RPC "
1193 "system failed to contact the remote B<portmap> service.  In the latter case, "
1194 "the global variable I<rpc_createerr> contains the RPC status."
1195 msgstr ""
1196
1197 #. type: Plain text
1198 #: build/C/man3/rpc.3:576
1199 #, no-wrap
1200 msgid ""
1201 "B<enum clnt_stat pmap_rmtcall(struct sockaddr_in *>I<addr>B<,>\n"
1202 "B<                    unsigned long >I<prognum>B<, unsigned long "
1203 ">I<versnum>B<,>\n"
1204 "B<                    unsigned long >I<procnum>B<,>\n"
1205 "B<                    xdrproc_t >I<inproc>B<, char *>I<in>B<,>\n"
1206 "B<                    xdrproc_t >I<outproc>B<, char *>I<out>B<,>\n"
1207 "B<                    struct timeval >I<tout>B<, unsigned long "
1208 "*>I<portp>B<);>\n"
1209 msgstr ""
1210
1211 #. type: Plain text
1212 #: build/C/man3/rpc.3:596
1213 msgid ""
1214 "A user interface to the B<portmap> service, which instructs B<portmap> on "
1215 "the host at IP address I<*addr> to make an RPC call on your behalf to a "
1216 "procedure on that host.  The parameter I<*portp> will be modified to the "
1217 "program's port number if the procedure succeeds.  The definitions of other "
1218 "parameters are discussed in B<callrpc>()  and B<clnt_call>().  This "
1219 "procedure should be used for a \\(lqping\\(rq and nothing else.  See also "
1220 "B<clnt_broadcast>()."
1221 msgstr ""
1222
1223 #. type: Plain text
1224 #: build/C/man3/rpc.3:600
1225 #, no-wrap
1226 msgid ""
1227 "B<bool_t pmap_set(unsigned long >I<prognum>B<, unsigned long "
1228 ">I<versnum>B<,>\n"
1229 "B<                unsigned int >I<protocol>B<, unsigned short "
1230 ">I<port>B<);>\n"
1231 msgstr ""
1232
1233 #. type: Plain text
1234 #: build/C/man3/rpc.3:620
1235 msgid ""
1236 "A user interface to the B<portmap> service, which establishes a mapping "
1237 "between the triple [I<prognum>,I<versnum>,I<protocol>] and I<port> on the "
1238 "machine's B<portmap> service.  The value of I<protocol> is most likely "
1239 "B<IPPROTO_UDP> or B<IPPROTO_TCP>.  This routine returns one if it succeeds, "
1240 "zero otherwise.  Automatically done by B<svc_register>()."
1241 msgstr ""
1242
1243 #. type: Plain text
1244 #: build/C/man3/rpc.3:623
1245 #, no-wrap
1246 msgid ""
1247 "B<bool_t pmap_unset(unsigned long >I<prognum>B<, unsigned long "
1248 ">I<versnum>B<);>\n"
1249 msgstr ""
1250
1251 #. type: Plain text
1252 #: build/C/man3/rpc.3:635
1253 msgid ""
1254 "A user interface to the B<portmap> service, which destroys all mapping "
1255 "between the triple [I<prognum>,I<versnum>,I<*>] and B<ports> on the "
1256 "machine's B<portmap> service.  This routine returns one if it succeeds, zero "
1257 "otherwise."
1258 msgstr ""
1259
1260 #. type: Plain text
1261 #: build/C/man3/rpc.3:640
1262 #, no-wrap
1263 msgid ""
1264 "B<int registerrpc(unsigned long >I<prognum>B<, unsigned long "
1265 ">I<versnum>B<,>\n"
1266 "B<                unsigned long >I<procnum>B<, char *(*>I<procname>B<)(char "
1267 "*),>\n"
1268 "B<                xdrproc_t >I<inproc>B<, xdrproc_t >I<outproc>B<);>\n"
1269 msgstr ""
1270
1271 #. type: Plain text
1272 #: build/C/man3/rpc.3:660
1273 msgid ""
1274 "Register procedure I<procname> with the RPC service package.  If a request "
1275 "arrives for program I<prognum>, version I<versnum>, and procedure "
1276 "I<procnum>, I<procname> is called with a pointer to its parameter(s); "
1277 "I<progname> should return a pointer to its static result(s); I<inproc> is "
1278 "used to decode the parameters while I<outproc> is used to encode the "
1279 "results.  This routine returns zero if the registration succeeded, -1 "
1280 "otherwise."
1281 msgstr ""
1282
1283 #. type: Plain text
1284 #: build/C/man3/rpc.3:665
1285 msgid ""
1286 "Warning: remote procedures registered in this form are accessed using the "
1287 "UDP/IP transport; see B<svcudp_create>()  for restrictions."
1288 msgstr ""
1289
1290 #. type: Plain text
1291 #: build/C/man3/rpc.3:668
1292 #, no-wrap
1293 msgid "B<struct rpc_createerr >I<rpc_createerr>B<;>\n"
1294 msgstr ""
1295
1296 #. type: Plain text
1297 #: build/C/man3/rpc.3:675
1298 msgid ""
1299 "A global variable whose value is set by any RPC client creation routine that "
1300 "does not succeed.  Use the routine B<clnt_pcreateerror>()  to print the "
1301 "reason why."
1302 msgstr ""
1303
1304 #. type: Plain text
1305 #: build/C/man3/rpc.3:678
1306 #, no-wrap
1307 msgid "B<void svc_destroy(SVCXPRT *>I<xprt>B<);>\n"
1308 msgstr ""
1309
1310 #. type: Plain text
1311 #: build/C/man3/rpc.3:689
1312 msgid ""
1313 "A macro that destroys the RPC service transport handle, I<xprt>.  "
1314 "Destruction usually involves deallocation of private data structures, "
1315 "including I<xprt> itself.  Use of I<xprt> is undefined after calling this "
1316 "routine."
1317 msgstr ""
1318
1319 #. type: Plain text
1320 #: build/C/man3/rpc.3:692
1321 #, no-wrap
1322 msgid "B<fd_set >I<svc_fdset>B<;>\n"
1323 msgstr ""
1324
1325 #. type: Plain text
1326 #: build/C/man3/rpc.3:706
1327 msgid ""
1328 "A global variable reflecting the RPC service side's read file descriptor bit "
1329 "mask; it is suitable as a parameter to the B<select>(2)  system call.  This "
1330 "is only of interest if a service implementor does not call B<svc_run>(), but "
1331 "rather does his own asynchronous event processing.  This variable is "
1332 "read-only (do not pass its address to B<select>(2)!), yet it may change "
1333 "after calls to B<svc_getreqset>()  or any creation routines."
1334 msgstr ""
1335
1336 #. type: Plain text
1337 #: build/C/man3/rpc.3:709
1338 #, no-wrap
1339 msgid "B<int >I<svc_fds>B<;>\n"
1340 msgstr ""
1341
1342 #. type: Plain text
1343 #: build/C/man3/rpc.3:716
1344 msgid ""
1345 "Similar to B<svc_fdset>, but limited to 32 descriptors.  This interface is "
1346 "obsoleted by B<svc_fdset>."
1347 msgstr ""
1348
1349 #. type: Plain text
1350 #: build/C/man3/rpc.3:719
1351 #, no-wrap
1352 msgid ""
1353 "B<svc_freeargs(SVCXPRT *>I<xprt>B<, xdrproc_t >I<inproc>B<, char "
1354 "*>I<in>B<);>\n"
1355 msgstr ""
1356
1357 #. type: Plain text
1358 #: build/C/man3/rpc.3:726
1359 msgid ""
1360 "A macro that frees any data allocated by the RPC/XDR system when it decoded "
1361 "the arguments to a service procedure using B<svc_getargs>().  This routine "
1362 "returns 1 if the results were successfully freed, and zero otherwise."
1363 msgstr ""
1364
1365 #. type: Plain text
1366 #: build/C/man3/rpc.3:729
1367 #, no-wrap
1368 msgid ""
1369 "B<svc_getargs(SVCXPRT *>I<xprt>B<, xdrproc_t >I<inproc>B<, char "
1370 "*>I<in>B<);>\n"
1371 msgstr ""
1372
1373 #. type: Plain text
1374 #: build/C/man3/rpc.3:740
1375 msgid ""
1376 "A macro that decodes the arguments of an RPC request associated with the RPC "
1377 "service transport handle, I<xprt>.  The parameter I<in> is the address where "
1378 "the arguments will be placed; I<inproc> is the XDR routine used to decode "
1379 "the arguments.  This routine returns one if decoding succeeds, and zero "
1380 "otherwise."
1381 msgstr ""
1382
1383 #. type: Plain text
1384 #: build/C/man3/rpc.3:743
1385 #, no-wrap
1386 msgid "B<struct sockaddr_in *svc_getcaller(SVCXPRT *>I<xprt>B<);>\n"
1387 msgstr ""
1388
1389 #. type: Plain text
1390 #: build/C/man3/rpc.3:748
1391 msgid ""
1392 "The approved way of getting the network address of the caller of a procedure "
1393 "associated with the RPC service transport handle, I<xprt>."
1394 msgstr ""
1395
1396 #. type: Plain text
1397 #: build/C/man3/rpc.3:751
1398 #, no-wrap
1399 msgid "B<void svc_getreqset(fd_set *>I<rdfds>B<);>\n"
1400 msgstr ""
1401
1402 #. type: Plain text
1403 #: build/C/man3/rpc.3:765
1404 msgid ""
1405 "This routine is only of interest if a service implementor does not call "
1406 "B<svc_run>(), but instead implements custom asynchronous event processing.  "
1407 "It is called when the B<select>(2)  system call has determined that an RPC "
1408 "request has arrived on some RPC socket(s); I<rdfds> is the resultant read "
1409 "file descriptor bit mask.  The routine returns when all sockets associated "
1410 "with the value of I<rdfds> have been serviced."
1411 msgstr ""
1412
1413 #. type: Plain text
1414 #: build/C/man3/rpc.3:768
1415 #, no-wrap
1416 msgid "B<void svc_getreq(int >I<rdfds>B<);>\n"
1417 msgstr ""
1418
1419 #. type: Plain text
1420 #: build/C/man3/rpc.3:775
1421 msgid ""
1422 "Similar to B<svc_getreqset>(), but limited to 32 descriptors.  This "
1423 "interface is obsoleted by B<svc_getreqset>()."
1424 msgstr ""
1425
1426 #. type: Plain text
1427 #: build/C/man3/rpc.3:781
1428 #, no-wrap
1429 msgid ""
1430 "B<bool_t svc_register(SVCXPRT *>I<xprt>B<, unsigned long >I<prognum>B<,>\n"
1431 "B<                    unsigned long >I<versnum>B<,>\n"
1432 "B<                    void (*>I<dispatch>B<)(svc_req *, SVCXPRT *),>\n"
1433 "B<                    unsigned long >I<protocol>B<);>\n"
1434 msgstr ""
1435
1436 #. type: Plain text
1437 #: build/C/man3/rpc.3:811
1438 msgid ""
1439 "Associates I<prognum> and I<versnum> with the service dispatch procedure, "
1440 "I<dispatch>.  If I<protocol> is zero, the service is not registered with the "
1441 "B<portmap> service.  If I<protocol> is nonzero, then a mapping of the triple "
1442 "[I<prognum>,I<versnum>,I<protocol>] to I<xprt-E<gt>xp_port> is established "
1443 "with the local B<portmap> service (generally I<protocol> is zero, "
1444 "B<IPPROTO_UDP> or B<IPPROTO_TCP>).  The procedure I<dispatch> has the "
1445 "following form:"
1446 msgstr ""
1447
1448 #. type: Plain text
1449 #: build/C/man3/rpc.3:815
1450 #, no-wrap
1451 msgid "dispatch(struct svc_req *request, SVCXPRT *xprt);\n"
1452 msgstr ""
1453
1454 #. type: Plain text
1455 #: build/C/man3/rpc.3:821
1456 msgid ""
1457 "The B<svc_register>()  routine returns one if it succeeds, and zero "
1458 "otherwise."
1459 msgstr ""
1460
1461 #. type: Plain text
1462 #: build/C/man3/rpc.3:824
1463 #, no-wrap
1464 msgid "B<void svc_run(void);>\n"
1465 msgstr ""
1466
1467 #. type: Plain text
1468 #: build/C/man3/rpc.3:834
1469 msgid ""
1470 "This routine never returns.  It waits for RPC requests to arrive, and calls "
1471 "the appropriate service procedure using B<svc_getreq>()  when one arrives.  "
1472 "This procedure is usually waiting for a B<select>(2)  system call to return."
1473 msgstr ""
1474
1475 #. type: Plain text
1476 #: build/C/man3/rpc.3:838
1477 #, no-wrap
1478 msgid ""
1479 "B<bool_t svc_sendreply(SVCXPRT *>I<xprt>B<, xdrproc_t >I<outproc>B<, char "
1480 "*>I<out>B<);>\n"
1481 msgstr ""
1482
1483 #. type: Plain text
1484 #: build/C/man3/rpc.3:850
1485 msgid ""
1486 "Called by an RPC service's dispatch routine to send the results of a remote "
1487 "procedure call.  The parameter I<xprt> is the request's associated transport "
1488 "handle; I<outproc> is the XDR routine which is used to encode the results; "
1489 "and I<out> is the address of the results.  This routine returns one if it "
1490 "succeeds, zero otherwise."
1491 msgstr ""
1492
1493 #. type: Plain text
1494 #: build/C/man3/rpc.3:853
1495 #, no-wrap
1496 msgid ""
1497 "B<void svc_unregister(unsigned long >I<prognum>B<, unsigned long "
1498 ">I<versnum>B<);>\n"
1499 msgstr ""
1500
1501 #. type: Plain text
1502 #: build/C/man3/rpc.3:860
1503 msgid ""
1504 "Remove all mapping of the double [I<prognum>,I<versnum>] to dispatch "
1505 "routines, and of the triple [I<prognum>,I<versnum>,I<*>] to port number."
1506 msgstr ""
1507
1508 #. type: Plain text
1509 #: build/C/man3/rpc.3:863
1510 #, no-wrap
1511 msgid "B<void svcerr_auth(SVCXPRT *>I<xprt>B<, enum auth_stat >I<why>B<);>\n"
1512 msgstr ""
1513
1514 #. type: Plain text
1515 #: build/C/man3/rpc.3:867
1516 msgid ""
1517 "Called by a service dispatch routine that refuses to perform a remote "
1518 "procedure call due to an authentication error."
1519 msgstr ""
1520
1521 #. type: Plain text
1522 #: build/C/man3/rpc.3:870
1523 #, no-wrap
1524 msgid "B<void svcerr_decode(SVCXPRT *>I<xprt>B<);>\n"
1525 msgstr ""
1526
1527 #. type: Plain text
1528 #: build/C/man3/rpc.3:876
1529 msgid ""
1530 "Called by a service dispatch routine that cannot successfully decode its "
1531 "parameters.  See also B<svc_getargs>()."
1532 msgstr ""
1533
1534 #. type: Plain text
1535 #: build/C/man3/rpc.3:879
1536 #, no-wrap
1537 msgid "B<void svcerr_noproc(SVCXPRT *>I<xprt>B<);>\n"
1538 msgstr ""
1539
1540 #. type: Plain text
1541 #: build/C/man3/rpc.3:883
1542 msgid ""
1543 "Called by a service dispatch routine that does not implement the procedure "
1544 "number that the caller requests."
1545 msgstr ""
1546
1547 #. type: Plain text
1548 #: build/C/man3/rpc.3:886
1549 #, no-wrap
1550 msgid "B<void svcerr_noprog(SVCXPRT *>I<xprt>B<);>\n"
1551 msgstr ""
1552
1553 #. type: Plain text
1554 #: build/C/man3/rpc.3:890
1555 msgid ""
1556 "Called when the desired program is not registered with the RPC package.  "
1557 "Service implementors usually do not need this routine."
1558 msgstr ""
1559
1560 #. type: Plain text
1561 #: build/C/man3/rpc.3:893
1562 #, no-wrap
1563 msgid "B<void svcerr_progvers(SVCXPRT *>I<xprt>B<);>\n"
1564 msgstr ""
1565
1566 #. type: Plain text
1567 #: build/C/man3/rpc.3:898
1568 msgid ""
1569 "Called when the desired version of a program is not registered with the RPC "
1570 "package.  Service implementors usually do not need this routine."
1571 msgstr ""
1572
1573 #. type: Plain text
1574 #: build/C/man3/rpc.3:901
1575 #, no-wrap
1576 msgid "B<void svcerr_systemerr(SVCXPRT *>I<xprt>B<);>\n"
1577 msgstr ""
1578
1579 #. type: Plain text
1580 #: build/C/man3/rpc.3:907
1581 msgid ""
1582 "Called by a service dispatch routine when it detects a system error not "
1583 "covered by any particular protocol.  For example, if a service can no longer "
1584 "allocate storage, it may call this routine."
1585 msgstr ""
1586
1587 #. type: Plain text
1588 #: build/C/man3/rpc.3:910
1589 #, no-wrap
1590 msgid "B<void svcerr_weakauth(SVCXPRT *>I<xprt>B<);>\n"
1591 msgstr ""
1592
1593 #. type: Plain text
1594 #: build/C/man3/rpc.3:916
1595 msgid ""
1596 "Called by a service dispatch routine that refuses to perform a remote "
1597 "procedure call due to insufficient authentication parameters.  The routine "
1598 "calls B<svcerr_auth(xprt, AUTH_TOOWEAK)>."
1599 msgstr ""
1600
1601 #. type: Plain text
1602 #: build/C/man3/rpc.3:920
1603 #, no-wrap
1604 msgid ""
1605 "B<SVCXPRT *svcfd_create(int >I<fd>B<, unsigned int >I<sendsize>B<,>\n"
1606 "B<                      unsigned int >I<recvsize>B<);>\n"
1607 msgstr ""
1608
1609 #. type: Plain text
1610 #: build/C/man3/rpc.3:930
1611 msgid ""
1612 "Create a service on top of any open descriptor.  Typically, this descriptor "
1613 "is a connected socket for a stream protocol such as TCP.  I<sendsize> and "
1614 "I<recvsize> indicate sizes for the send and receive buffers.  If they are "
1615 "zero, a reasonable default is chosen."
1616 msgstr ""
1617
1618 #. type: Plain text
1619 #: build/C/man3/rpc.3:933
1620 #, no-wrap
1621 msgid "B<SVCXPRT *svcraw_create(void);>\n"
1622 msgstr ""
1623
1624 #. type: Plain text
1625 #: build/C/man3/rpc.3:943
1626 msgid ""
1627 "This routine creates a toy RPC service transport, to which it returns a "
1628 "pointer.  The transport is really a buffer within the process's address "
1629 "space, so the corresponding RPC client should live in the same address "
1630 "space; see B<clntraw_create>().  This routine allows simulation of RPC and "
1631 "acquisition of RPC overheads (such as round trip times), without any kernel "
1632 "interference.  This routine returns NULL if it fails."
1633 msgstr ""
1634
1635 #. type: Plain text
1636 #: build/C/man3/rpc.3:947
1637 #, no-wrap
1638 msgid ""
1639 "B<SVCXPRT *svctcp_create(int >I<sock>B<, unsigned int "
1640 ">I<send_buf_size>B<,>\n"
1641 "B<                       unsigned int >I<recv_buf_size>B<);>\n"
1642 msgstr ""
1643
1644 #. type: Plain text
1645 #: build/C/man3/rpc.3:967
1646 msgid ""
1647 "This routine creates a TCP/IP-based RPC service transport, to which it "
1648 "returns a pointer.  The transport is associated with the socket I<sock>, "
1649 "which may be B<RPC_ANYSOCK>, in which case a new socket is created.  If the "
1650 "socket is not bound to a local TCP port, then this routine binds it to an "
1651 "arbitrary port.  Upon completion, I<xprt-E<gt>xp_sock> is the transport's "
1652 "socket descriptor, and I<xprt-E<gt>xp_port> is the transport's port number.  "
1653 "This routine returns NULL if it fails.  Since TCP-based RPC uses buffered "
1654 "I/O, users may specify the size of buffers; values of zero choose suitable "
1655 "defaults."
1656 msgstr ""
1657
1658 #. type: Plain text
1659 #: build/C/man3/rpc.3:971
1660 #, no-wrap
1661 msgid ""
1662 "B<SVCXPRT *svcudp_bufcreate(int >I<sock>B<, unsigned int >I<sendsize>B<,>\n"
1663 "B<                          unsigned int >I<recosize>B<);>\n"
1664 msgstr ""
1665
1666 #. type: Plain text
1667 #: build/C/man3/rpc.3:988
1668 msgid ""
1669 "This routine creates a UDP/IP-based RPC service transport, to which it "
1670 "returns a pointer.  The transport is associated with the socket I<sock>, "
1671 "which may be B<RPC_ANYSOCK>, in which case a new socket is created.  If the "
1672 "socket is not bound to a local UDP port, then this routine binds it to an "
1673 "arbitrary port.  Upon completion, I<xprt-E<gt>xp_sock> is the transport's "
1674 "socket descriptor, and I<xprt-E<gt>xp_port> is the transport's port number.  "
1675 "This routine returns NULL if it fails."
1676 msgstr ""
1677
1678 #. type: Plain text
1679 #: build/C/man3/rpc.3:994
1680 #, no-wrap
1681 msgid "B<SVCXPRT *svcudp_create(int >I<sock>B<);>\n"
1682 msgstr ""
1683
1684 #. type: Plain text
1685 #: build/C/man3/rpc.3:999
1686 msgid ""
1687 "This call is equivalent to I<svcudp_bufcreate(sock,SZ,SZ)> for some default "
1688 "size I<SZ>."
1689 msgstr ""
1690
1691 #. type: Plain text
1692 #: build/C/man3/rpc.3:1002
1693 #, no-wrap
1694 msgid ""
1695 "B<bool_t xdr_accepted_reply(XDR *>I<xdrs>B<, struct accepted_reply "
1696 "*>I<ar>B<);>\n"
1697 msgstr ""
1698
1699 #. type: Plain text
1700 #: build/C/man3/rpc.3:1007
1701 msgid ""
1702 "Used for encoding RPC reply messages.  This routine is useful for users who "
1703 "wish to generate RPC-style messages without using the RPC package."
1704 msgstr ""
1705
1706 #. type: Plain text
1707 #: build/C/man3/rpc.3:1010
1708 #, no-wrap
1709 msgid ""
1710 "B<bool_t xdr_authunix_parms(XDR *>I<xdrs>B<, struct authunix_parms "
1711 "*>I<aupp>B<);>\n"
1712 msgstr ""
1713
1714 #. type: Plain text
1715 #: build/C/man3/rpc.3:1016
1716 msgid ""
1717 "Used for describing UNIX credentials.  This routine is useful for users who "
1718 "wish to generate these credentials without using the RPC authentication "
1719 "package."
1720 msgstr ""
1721
1722 #. type: Plain text
1723 #: build/C/man3/rpc.3:1019
1724 #, no-wrap
1725 msgid "B<void xdr_callhdr(XDR *>I<xdrs>B<, struct rpc_msg *>I<chdr>B<);>\n"
1726 msgstr ""
1727
1728 #. type: Plain text
1729 #: build/C/man3/rpc.3:1024
1730 msgid ""
1731 "Used for describing RPC call header messages.  This routine is useful for "
1732 "users who wish to generate RPC-style messages without using the RPC package."
1733 msgstr ""
1734
1735 #. type: Plain text
1736 #: build/C/man3/rpc.3:1027
1737 #, no-wrap
1738 msgid "B<bool_t xdr_callmsg(XDR *>I<xdrs>B<, struct rpc_msg *>I<cmsg>B<);>\n"
1739 msgstr ""
1740
1741 #. type: Plain text
1742 #: build/C/man3/rpc.3:1032
1743 msgid ""
1744 "Used for describing RPC call messages.  This routine is useful for users who "
1745 "wish to generate RPC-style messages without using the RPC package."
1746 msgstr ""
1747
1748 #. type: Plain text
1749 #: build/C/man3/rpc.3:1035
1750 #, no-wrap
1751 msgid "B<bool_t xdr_opaque_auth(XDR *>I<xdrs>B<, struct opaque_auth *>I<ap>B<);>\n"
1752 msgstr ""
1753
1754 #. type: Plain text
1755 #: build/C/man3/rpc.3:1040
1756 msgid ""
1757 "Used for describing RPC authentication information messages.  This routine "
1758 "is useful for users who wish to generate RPC-style messages without using "
1759 "the RPC package."
1760 msgstr ""
1761
1762 #. type: Plain text
1763 #: build/C/man3/rpc.3:1043
1764 #, no-wrap
1765 msgid "B<bool_t xdr_pmap(XDR *>I<xdrs>B<, struct pmap *>I<regs>B<);>\n"
1766 msgstr ""
1767
1768 #. type: Plain text
1769 #: build/C/man3/rpc.3:1052
1770 msgid ""
1771 "Used for describing parameters to various B<portmap> procedures, "
1772 "externally.  This routine is useful for users who wish to generate these "
1773 "parameters without using the B<pmap> interface."
1774 msgstr ""
1775
1776 #. type: Plain text
1777 #: build/C/man3/rpc.3:1055
1778 #, no-wrap
1779 msgid "B<bool_t xdr_pmaplist(XDR *>I<xdrs>B<, struct pmaplist **>I<rp>B<);>\n"
1780 msgstr ""
1781
1782 #. type: Plain text
1783 #: build/C/man3/rpc.3:1062
1784 msgid ""
1785 "Used for describing a list of port mappings, externally.  This routine is "
1786 "useful for users who wish to generate these parameters without using the "
1787 "B<pmap> interface."
1788 msgstr ""
1789
1790 #. type: Plain text
1791 #: build/C/man3/rpc.3:1065
1792 #, no-wrap
1793 msgid ""
1794 "B<bool_t xdr_rejected_reply(XDR *>I<xdrs>B<, struct rejected_reply "
1795 "*>I<rr>B<);>\n"
1796 msgstr ""
1797
1798 #. type: Plain text
1799 #: build/C/man3/rpc.3:1070
1800 msgid ""
1801 "Used for describing RPC reply messages.  This routine is useful for users "
1802 "who wish to generate RPC-style messages without using the RPC package."
1803 msgstr ""
1804
1805 #. type: Plain text
1806 #: build/C/man3/rpc.3:1073
1807 #, no-wrap
1808 msgid "B<bool_t xdr_replymsg(XDR *>I<xdrs>B<, struct rpc_msg *>I<rmsg>B<);>\n"
1809 msgstr ""
1810
1811 #. type: Plain text
1812 #: build/C/man3/rpc.3:1078
1813 msgid ""
1814 "Used for describing RPC reply messages.  This routine is useful for users "
1815 "who wish to generate RPC style messages without using the RPC package."
1816 msgstr ""
1817
1818 #. type: Plain text
1819 #: build/C/man3/rpc.3:1081
1820 #, no-wrap
1821 msgid "B<void xprt_register(SVCXPRT *>I<xprt>B<);>\n"
1822 msgstr ""
1823
1824 #. type: Plain text
1825 #: build/C/man3/rpc.3:1088
1826 msgid ""
1827 "After RPC service transport handles are created, they should register "
1828 "themselves with the RPC service package.  This routine modifies the global "
1829 "variable I<svc_fds>.  Service implementors usually do not need this routine."
1830 msgstr ""
1831
1832 #. type: Plain text
1833 #: build/C/man3/rpc.3:1091
1834 #, no-wrap
1835 msgid "B<void xprt_unregister(SVCXPRT *>I<xprt>B<);>\n"
1836 msgstr ""
1837
1838 #. type: Plain text
1839 #: build/C/man3/rpc.3:1098
1840 msgid ""
1841 "Before an RPC service transport handle is destroyed, it should unregister "
1842 "itself with the RPC service package.  This routine modifies the global "
1843 "variable I<svc_fds>.  Service implementors usually do not need this routine."
1844 msgstr ""
1845
1846 #.  We don't have an rpc_secure.3 page in the set at the moment -- MTK, 19 Sep 05
1847 #.  .BR rpc_secure (3),
1848 #. type: Plain text
1849 #: build/C/man3/rpc.3:1102
1850 msgid "B<xdr>(3)"
1851 msgstr ""
1852
1853 #. type: Plain text
1854 #: build/C/man3/rpc.3:1104 build/C/man3/xdr.3:542
1855 msgid "The following manuals:"
1856 msgstr ""
1857
1858 #. type: Plain text
1859 #: build/C/man3/rpc.3:1106
1860 msgid "Remote Procedure Calls: Protocol Specification"
1861 msgstr ""
1862
1863 #. type: Plain text
1864 #: build/C/man3/rpc.3:1108
1865 msgid "Remote Procedure Call Programming Guide"
1866 msgstr ""
1867
1868 #. type: Plain text
1869 #: build/C/man3/rpc.3:1110
1870 msgid "rpcgen Programming Guide"
1871 msgstr ""
1872
1873 #. type: Plain text
1874 #: build/C/man3/rpc.3:1114
1875 msgid ""
1876 "I<RPC: Remote Procedure Call Protocol Specification>, RFC\\ 1050, Sun "
1877 "Microsystems, Inc., USC-ISI."
1878 msgstr ""
1879
1880 #. type: TH
1881 #: build/C/man5/rpc.5:4
1882 #, no-wrap
1883 msgid "1985-09-26"
1884 msgstr ""
1885
1886 #. type: Plain text
1887 #: build/C/man5/rpc.5:7
1888 msgid "rpc - RPC program number data base"
1889 msgstr ""
1890
1891 #. type: Plain text
1892 #: build/C/man5/rpc.5:9
1893 msgid "B</etc/rpc>"
1894 msgstr ""
1895
1896 #. type: Plain text
1897 #: build/C/man5/rpc.5:15
1898 msgid ""
1899 "The I<rpc> file contains user readable names that can be used in place of "
1900 "RPC program numbers.  Each line has the following information:"
1901 msgstr ""
1902
1903 #. type: Plain text
1904 #: build/C/man5/rpc.5:17
1905 msgid "name of server for the RPC program"
1906 msgstr ""
1907
1908 #. type: Plain text
1909 #: build/C/man5/rpc.5:21
1910 msgid "RPC program number"
1911 msgstr ""
1912
1913 #. type: Plain text
1914 #: build/C/man5/rpc.5:25
1915 msgid "aliases"
1916 msgstr ""
1917
1918 #. type: Plain text
1919 #: build/C/man5/rpc.5:31
1920 msgid ""
1921 "Items are separated by any number of blanks and/or tab characters.  A "
1922 "\\(aq#\\(aq indicates the beginning of a comment; characters from the "
1923 "\\(aq#\\(aq to the end of the line are not interpreted by routines which "
1924 "search the file."
1925 msgstr ""
1926
1927 #. type: Plain text
1928 #: build/C/man5/rpc.5:34
1929 msgid ""
1930 "Here is an example of the I</etc/rpc> file from the Sun RPC Source "
1931 "distribution."
1932 msgstr ""
1933
1934 #. type: ta
1935 #: build/C/man5/rpc.5:35
1936 #, no-wrap
1937 msgid "1.5i +0.5i +1.0i +1.0i"
1938 msgstr ""
1939
1940 #. type: Plain text
1941 #: build/C/man5/rpc.5:69
1942 #, no-wrap
1943 msgid ""
1944 "#\n"
1945 "# rpc 88/08/01 4.0 RPCSRC; from 1.12   88/02/07 SMI\n"
1946 "#\n"
1947 "portmapper\t\t100000\tportmap sunrpc\n"
1948 "rstatd\t\t100001\trstat rstat_svc rup perfmeter\n"
1949 "rusersd\t\t100002\trusers\n"
1950 "nfs\t\t100003\tnfsprog\n"
1951 "ypserv\t\t100004\typprog\n"
1952 "mountd\t\t100005\tmount showmount\n"
1953 "ypbind\t\t100007\n"
1954 "walld\t\t100008\trwall shutdown\n"
1955 "yppasswdd\t\t100009\typpasswd\n"
1956 "etherstatd\t\t100010\tetherstat\n"
1957 "rquotad\t\t100011\trquotaprog quota rquota\n"
1958 "sprayd\t\t100012\tspray\n"
1959 "3270_mapper\t\t100013\n"
1960 "rje_mapper\t\t100014\n"
1961 "selection_svc\t\t100015\tselnsvc\n"
1962 "database_svc\t\t100016\n"
1963 "rexd\t\t100017\trex\n"
1964 "alis\t\t100018\n"
1965 "sched\t\t100019\n"
1966 "llockmgr\t\t100020\n"
1967 "nlockmgr\t\t100021\n"
1968 "x25.inr\t\t100022\n"
1969 "statmon\t\t100023\n"
1970 "status\t\t100024\n"
1971 "bootparam\t\t100026\n"
1972 "ypupdated\t\t100028\typupdate\n"
1973 "keyserv\t\t100029\tkeyserver\n"
1974 "tfsd\t\t100037\n"
1975 "nsed\t\t100038\n"
1976 "nsemntd\t\t100039\n"
1977 msgstr ""
1978
1979 #. type: Plain text
1980 #: build/C/man5/rpc.5:75
1981 msgid "RPC program number data base"
1982 msgstr ""
1983
1984 #. type: Plain text
1985 #: build/C/man5/rpc.5:76
1986 msgid "B<getrpcent>(3)"
1987 msgstr ""
1988
1989 #. type: TH
1990 #: build/C/man3/rtime.3:8
1991 #, no-wrap
1992 msgid "RTIME"
1993 msgstr ""
1994
1995 #. type: TH
1996 #: build/C/man3/rtime.3:8
1997 #, no-wrap
1998 msgid "2010-02-25"
1999 msgstr ""
2000
2001 #. type: Plain text
2002 #: build/C/man3/rtime.3:11
2003 msgid "rtime - get time from a remote machine"
2004 msgstr ""
2005
2006 #. type: Plain text
2007 #: build/C/man3/rtime.3:14
2008 #, no-wrap
2009 msgid "B<#include E<lt>rpc/des_crypt.hE<gt>>\n"
2010 msgstr ""
2011
2012 #. type: Plain text
2013 #: build/C/man3/rtime.3:17
2014 #, no-wrap
2015 msgid ""
2016 "B<int rtime(struct sockaddr_in *>I<addrp>B<, struct rpc_timeval "
2017 "*>I<timep>B<,>\n"
2018 "B<          struct rpc_timeval *>I<timeout>B<);>\n"
2019 msgstr ""
2020
2021 #. type: Plain text
2022 #: build/C/man3/rtime.3:21
2023 msgid ""
2024 "This function uses the Time Server Protocol as described in RFC\\ 868 to "
2025 "obtain the time from a remote machine."
2026 msgstr ""
2027
2028 #. type: Plain text
2029 #: build/C/man3/rtime.3:27
2030 msgid ""
2031 "The Time Server Protocol gives the time in seconds since 00:00:00 UTC, 1 Jan "
2032 "1900, and this function subtracts the appropriate constant in order to "
2033 "convert the result to seconds since the Epoch, 1970-01-01 00:00:00 +0000 "
2034 "(UTC)."
2035 msgstr ""
2036
2037 #. type: Plain text
2038 #: build/C/man3/rtime.3:32
2039 msgid ""
2040 "When I<timeout> is non-NULL, the udp/time socket (port 37) is used.  "
2041 "Otherwise, the tcp/time socket (port 37) is used."
2042 msgstr ""
2043
2044 #. type: Plain text
2045 #: build/C/man3/rtime.3:38
2046 msgid ""
2047 "On success, 0 is returned, and the obtained 32-bit time value is stored in "
2048 "I<timep-E<gt>tv_sec>.  In case of error -1 is returned, and I<errno> is set "
2049 "appropriately."
2050 msgstr ""
2051
2052 #. type: Plain text
2053 #: build/C/man3/rtime.3:47
2054 msgid ""
2055 "All errors for underlying functions (B<sendto>(2), B<poll>(2), "
2056 "B<recvfrom>(2), B<connect>(2), B<read>(2))  can occur.  Moreover:"
2057 msgstr ""
2058
2059 #. type: TP
2060 #: build/C/man3/rtime.3:47
2061 #, no-wrap
2062 msgid "B<EIO>"
2063 msgstr ""
2064
2065 #. type: Plain text
2066 #: build/C/man3/rtime.3:50
2067 msgid "The number of returned bytes is not 4."
2068 msgstr ""
2069
2070 #. type: TP
2071 #: build/C/man3/rtime.3:50
2072 #, no-wrap
2073 msgid "B<ETIMEDOUT>"
2074 msgstr ""
2075
2076 #. type: Plain text
2077 #: build/C/man3/rtime.3:53
2078 msgid "The waiting time as defined in timeout has expired."
2079 msgstr ""
2080
2081 #. type: Plain text
2082 #: build/C/man3/rtime.3:55
2083 msgid "Only IPv4 is supported."
2084 msgstr ""
2085
2086 #. type: Plain text
2087 #: build/C/man3/rtime.3:62
2088 msgid ""
2089 "Some I<in.timed> versions only support TCP.  Try the example program with "
2090 "I<use_tcp> set to 1."
2091 msgstr ""
2092
2093 #. type: Plain text
2094 #: build/C/man3/rtime.3:64
2095 msgid "Libc5 uses the prototype"
2096 msgstr ""
2097
2098 #. type: Plain text
2099 #: build/C/man3/rtime.3:66
2100 msgid "int rtime(struct sockaddr_in *, struct timeval *, struct timeval *);"
2101 msgstr ""
2102
2103 #. type: Plain text
2104 #: build/C/man3/rtime.3:71
2105 msgid "and requires I<E<lt>sys/time.hE<gt>> instead of I<E<lt>rpc/auth_des.hE<gt>>."
2106 msgstr ""
2107
2108 #. type: Plain text
2109 #: build/C/man3/rtime.3:74
2110 msgid ""
2111 "B<rtime>()  in glibc 2.2.5 and earlier does not work properly on 64-bit "
2112 "machines."
2113 msgstr ""
2114
2115 #. type: SH
2116 #: build/C/man3/rtime.3:74
2117 #, no-wrap
2118 msgid "EXAMPLE"
2119 msgstr ""
2120
2121 #. type: Plain text
2122 #: build/C/man3/rtime.3:80
2123 msgid ""
2124 "This example requires that port 37 is up and open.  You may check that the "
2125 "time entry within I</etc/inetd.conf> is not commented out."
2126 msgstr ""
2127
2128 #. type: Plain text
2129 #: build/C/man3/rtime.3:84
2130 msgid ""
2131 "The program connects to a computer called \"linux\".  Using \"localhost\" "
2132 "does not work.  The result is the localtime of the computer \"linux\"."
2133 msgstr ""
2134
2135 #. type: Plain text
2136 #: build/C/man3/rtime.3:93
2137 #, no-wrap
2138 msgid ""
2139 "#include E<lt>stdio.hE<gt>\n"
2140 "#include E<lt>stdlib.hE<gt>\n"
2141 "#include E<lt>errno.hE<gt>\n"
2142 "#include E<lt>string.hE<gt>\n"
2143 "#include E<lt>time.hE<gt>\n"
2144 "#include E<lt>rpc/auth_des.hE<gt>\n"
2145 "#include E<lt>netdb.hE<gt>\n"
2146 msgstr ""
2147
2148 #. type: Plain text
2149 #: build/C/man3/rtime.3:96
2150 #, no-wrap
2151 msgid ""
2152 "int use_tcp = 0;\n"
2153 "char *servername = \"linux\";\n"
2154 msgstr ""
2155
2156 #. type: Plain text
2157 #: build/C/man3/rtime.3:105
2158 #, no-wrap
2159 msgid ""
2160 "int\n"
2161 "main(void)\n"
2162 "{\n"
2163 "    struct sockaddr_in name;\n"
2164 "    struct rpc_timeval time1 = {0,0};\n"
2165 "    struct rpc_timeval timeout = {1,0};\n"
2166 "    struct hostent *hent;\n"
2167 "    int ret;\n"
2168 msgstr ""
2169
2170 #. type: Plain text
2171 #: build/C/man3/rtime.3:110
2172 #, no-wrap
2173 msgid ""
2174 "    memset((char *) &name, 0, sizeof(name));\n"
2175 "    sethostent(1);\n"
2176 "    hent = gethostbyname(servername);\n"
2177 "    memcpy((char *) &name.sin_addr, hent-E<gt>h_addr, hent-E<gt>h_length);\n"
2178 msgstr ""
2179
2180 #. type: Plain text
2181 #: build/C/man3/rtime.3:116
2182 #, no-wrap
2183 msgid ""
2184 "    ret = rtime(&name, &time1, use_tcp ? NULL : &timeout);\n"
2185 "    if (ret E<lt> 0)\n"
2186 "        perror(\"rtime error\");\n"
2187 "    else\n"
2188 "        printf(\"%s\\en\", ctime((time_t *) &time1.tv_sec));\n"
2189 msgstr ""
2190
2191 #. type: Plain text
2192 #: build/C/man3/rtime.3:119
2193 #, no-wrap
2194 msgid ""
2195 "    exit(EXIT_SUCCESS);\n"
2196 "}\n"
2197 msgstr ""
2198
2199 #.  .BR netdate (1),
2200 #.  .BR rdate (1),
2201 #. type: Plain text
2202 #: build/C/man3/rtime.3:124
2203 msgid "B<ntpdate>(1), B<inetd>(8)"
2204 msgstr ""
2205
2206 #. type: TH
2207 #: build/C/man3/xdr.3:7
2208 #, no-wrap
2209 msgid "XDR"
2210 msgstr ""
2211
2212 #. type: TH
2213 #: build/C/man3/xdr.3:7
2214 #, no-wrap
2215 msgid "2007-12-30"
2216 msgstr ""
2217
2218 #. type: Plain text
2219 #: build/C/man3/xdr.3:10
2220 msgid "xdr - library routines for external data representation"
2221 msgstr ""
2222
2223 #. type: Plain text
2224 #: build/C/man3/xdr.3:16
2225 msgid ""
2226 "These routines allow C programmers to describe arbitrary data structures in "
2227 "a machine-independent fashion.  Data for remote procedure calls are "
2228 "transmitted using these routines."
2229 msgstr ""
2230
2231 #. type: Plain text
2232 #: build/C/man3/xdr.3:20
2233 msgid ""
2234 "The prototypes below are declared in I<E<lt>rpc/xdr.hE<gt>> and make use of "
2235 "the following types:"
2236 msgstr ""
2237
2238 #. type: Plain text
2239 #: build/C/man3/xdr.3:33
2240 msgid "For the declaration of the I<XDR> type, see I<E<lt>rpc/xdr.hE<gt>>."
2241 msgstr ""
2242
2243 #. type: Plain text
2244 #: build/C/man3/xdr.3:38
2245 #, no-wrap
2246 msgid ""
2247 "B<bool_t xdr_array(XDR *>I<xdrs>B<, char **>I<arrp>B<, unsigned int "
2248 "*>I<sizep>B<,>\n"
2249 "B<                 unsigned int >I<maxsize>B<, unsigned int >I<elsize>B<,>\n"
2250 "B<                 xdrproc_t >I<elproc>B<);>\n"
2251 msgstr ""
2252
2253 #. type: Plain text
2254 #: build/C/man3/xdr.3:59
2255 msgid ""
2256 "A filter primitive that translates between variable-length arrays and their "
2257 "corresponding external representations.  The argument I<arrp> is the address "
2258 "of the pointer to the array, while I<sizep> is the address of the element "
2259 "count of the array; this element count cannot exceed I<maxsize>.  The "
2260 "argument I<elsize> is the I<sizeof> each of the array's elements, and "
2261 "I<elproc> is an XDR filter that translates between the array elements' C "
2262 "form, and their external representation.  This routine returns one if it "
2263 "succeeds, zero otherwise."
2264 msgstr ""
2265
2266 #. type: Plain text
2267 #: build/C/man3/xdr.3:62
2268 #, no-wrap
2269 msgid "B<bool_t xdr_bool(XDR *>I<xdrs>B<, bool_t *>I<bp>B<);>\n"
2270 msgstr ""
2271
2272 #. type: Plain text
2273 #: build/C/man3/xdr.3:70
2274 msgid ""
2275 "A filter primitive that translates between booleans (C integers)  and their "
2276 "external representations.  When encoding data, this filter produces values "
2277 "of either one or zero.  This routine returns one if it succeeds, zero "
2278 "otherwise."
2279 msgstr ""
2280
2281 #. type: Plain text
2282 #: build/C/man3/xdr.3:74
2283 #, no-wrap
2284 msgid ""
2285 "B<bool_t xdr_bytes(XDR *>I<xdrs>B<, char **>I<sp>B<, unsigned int "
2286 "*>I<sizep>B<,>\n"
2287 "B<                 unsigned int >I<maxsize>B<);>\n"
2288 msgstr ""
2289
2290 #. type: Plain text
2291 #: build/C/man3/xdr.3:87
2292 msgid ""
2293 "A filter primitive that translates between counted byte strings and their "
2294 "external representations.  The argument I<sp> is the address of the string "
2295 "pointer.  The length of the string is located at address I<sizep>; strings "
2296 "cannot be longer than I<maxsize>.  This routine returns one if it succeeds, "
2297 "zero otherwise."
2298 msgstr ""
2299
2300 #. type: Plain text
2301 #: build/C/man3/xdr.3:90
2302 #, no-wrap
2303 msgid "B<bool_t xdr_char(XDR *>I<xdrs>B<, char *>I<cp>B<);>\n"
2304 msgstr ""
2305
2306 #. type: Plain text
2307 #: build/C/man3/xdr.3:102
2308 msgid ""
2309 "A filter primitive that translates between C characters and their external "
2310 "representations.  This routine returns one if it succeeds, zero otherwise.  "
2311 "Note: encoded characters are not packed, and occupy 4 bytes each.  For "
2312 "arrays of characters, it is worthwhile to consider B<xdr_bytes>(), "
2313 "B<xdr_opaque>()  or B<xdr_string>()."
2314 msgstr ""
2315
2316 #. type: Plain text
2317 #: build/C/man3/xdr.3:105
2318 #, no-wrap
2319 msgid "B<void xdr_destroy(XDR *>I<xdrs>B<);>\n"
2320 msgstr ""
2321
2322 #. type: Plain text
2323 #: build/C/man3/xdr.3:116
2324 msgid ""
2325 "A macro that invokes the destroy routine associated with the XDR stream, "
2326 "I<xdrs>.  Destruction usually involves freeing private data structures "
2327 "associated with the stream.  Using I<xdrs> after invoking B<xdr_destroy>()  "
2328 "is undefined."
2329 msgstr ""
2330
2331 #. type: Plain text
2332 #: build/C/man3/xdr.3:119
2333 #, no-wrap
2334 msgid "B<bool_t xdr_double(XDR *>I<xdrs>B<, double *>I<dp>B<);>\n"
2335 msgstr ""
2336
2337 #. type: Plain text
2338 #: build/C/man3/xdr.3:125
2339 msgid ""
2340 "A filter primitive that translates between C I<double> precision numbers and "
2341 "their external representations.  This routine returns one if it succeeds, "
2342 "zero otherwise."
2343 msgstr ""
2344
2345 #. type: Plain text
2346 #: build/C/man3/xdr.3:128
2347 #, no-wrap
2348 msgid "B<bool_t xdr_enum(XDR *>I<xdrs>B<, enum_t *>I<ep>B<);>\n"
2349 msgstr ""
2350
2351 #. type: Plain text
2352 #: build/C/man3/xdr.3:134
2353 msgid ""
2354 "A filter primitive that translates between C I<enum>s (actually integers) "
2355 "and their external representations.  This routine returns one if it "
2356 "succeeds, zero otherwise."
2357 msgstr ""
2358
2359 #. type: Plain text
2360 #: build/C/man3/xdr.3:137
2361 #, no-wrap
2362 msgid "B<bool_t xdr_float(XDR *>I<xdrs>B<, float *>I<fp>B<);>\n"
2363 msgstr ""
2364
2365 #. type: Plain text
2366 #: build/C/man3/xdr.3:143
2367 msgid ""
2368 "A filter primitive that translates between C I<float>s and their external "
2369 "representations.  This routine returns one if it succeeds, zero otherwise."
2370 msgstr ""
2371
2372 #. type: Plain text
2373 #: build/C/man3/xdr.3:146
2374 #, no-wrap
2375 msgid "B<void xdr_free(xdrproc_t >I<proc>B<, char *>I<objp>B<);>\n"
2376 msgstr ""
2377
2378 #. type: Plain text
2379 #: build/C/man3/xdr.3:156
2380 msgid ""
2381 "Generic freeing routine.  The first argument is the XDR routine for the "
2382 "object being freed.  The second argument is a pointer to the object itself.  "
2383 "Note: the pointer passed to this routine is I<not> freed, but what it points "
2384 "to I<is> freed (recursively)."
2385 msgstr ""
2386
2387 #. type: Plain text
2388 #: build/C/man3/xdr.3:159
2389 #, no-wrap
2390 msgid "B<unsigned int xdr_getpos(XDR *>I<xdrs>B<);>\n"
2391 msgstr ""
2392
2393 #. type: Plain text
2394 #: build/C/man3/xdr.3:169
2395 msgid ""
2396 "A macro that invokes the get-position routine associated with the XDR "
2397 "stream, I<xdrs>.  The routine returns an unsigned integer, which indicates "
2398 "the position of the XDR byte stream.  A desirable feature of XDR streams is "
2399 "that simple arithmetic works with this number, although the XDR stream "
2400 "instances need not guarantee this."
2401 msgstr ""
2402
2403 #. type: Plain text
2404 #: build/C/man3/xdr.3:172
2405 #, no-wrap
2406 msgid "B<long *xdr_inline(XDR *>I<xdrs>B<, int >I<len>B<);>\n"
2407 msgstr ""
2408
2409 #. type: Plain text
2410 #: build/C/man3/xdr.3:182
2411 msgid ""
2412 "A macro that invokes the inline routine associated with the XDR stream, "
2413 "I<xdrs>.  The routine returns a pointer to a contiguous piece of the "
2414 "stream's buffer; I<len> is the byte length of the desired buffer.  Note: "
2415 "pointer is cast to I<long *>."
2416 msgstr ""
2417
2418 #. type: Plain text
2419 #: build/C/man3/xdr.3:189
2420 msgid ""
2421 "Warning: B<xdr_inline>()  may return NULL (0)  if it cannot allocate a "
2422 "contiguous piece of a buffer.  Therefore the behavior may vary among stream "
2423 "instances; it exists for the sake of efficiency."
2424 msgstr ""
2425
2426 #. type: Plain text
2427 #: build/C/man3/xdr.3:192
2428 #, no-wrap
2429 msgid "B<bool_t xdr_int(XDR *>I<xdrs>B<, int *>I<ip>B<);>\n"
2430 msgstr ""
2431
2432 #. type: Plain text
2433 #: build/C/man3/xdr.3:197
2434 msgid ""
2435 "A filter primitive that translates between C integers and their external "
2436 "representations.  This routine returns one if it succeeds, zero otherwise."
2437 msgstr ""
2438
2439 #. type: Plain text
2440 #: build/C/man3/xdr.3:200
2441 #, no-wrap
2442 msgid "B<bool_t xdr_long(XDR *>I<xdrs>B<, long *>I<lp>B<);>\n"
2443 msgstr ""
2444
2445 #. type: Plain text
2446 #: build/C/man3/xdr.3:206
2447 msgid ""
2448 "A filter primitive that translates between C I<long> integers and their "
2449 "external representations.  This routine returns one if it succeeds, zero "
2450 "otherwise."
2451 msgstr ""
2452
2453 #. type: Plain text
2454 #: build/C/man3/xdr.3:210
2455 #, no-wrap
2456 msgid ""
2457 "B<void xdrmem_create(XDR *>I<xdrs>B<, char *>I<addr>B<, unsigned int "
2458 ">I<size>B<,>\n"
2459 "B<                   enum xdr_op >I<op>B<);>\n"
2460 msgstr ""
2461
2462 #. type: Plain text
2463 #: build/C/man3/xdr.3:227
2464 msgid ""
2465 "This routine initializes the XDR stream object pointed to by I<xdrs>.  The "
2466 "stream's data is written to, or read from, a chunk of memory at location "
2467 "I<addr> whose length is no more than I<size> bytes long.  The I<op> "
2468 "determines the direction of the XDR stream (either B<XDR_ENCODE>, "
2469 "B<XDR_DECODE>, or B<XDR_FREE>)."
2470 msgstr ""
2471
2472 #. type: Plain text
2473 #: build/C/man3/xdr.3:230
2474 #, no-wrap
2475 msgid ""
2476 "B<bool_t xdr_opaque(XDR *>I<xdrs>B<, char *>I<cp>B<, unsigned int "
2477 ">I<cnt>B<);>\n"
2478 msgstr ""
2479
2480 #. type: Plain text
2481 #: build/C/man3/xdr.3:240
2482 msgid ""
2483 "A filter primitive that translates between fixed size opaque data and its "
2484 "external representation.  The argument I<cp> is the address of the opaque "
2485 "object, and I<cnt> is its size in bytes.  This routine returns one if it "
2486 "succeeds, zero otherwise."
2487 msgstr ""
2488
2489 #. type: Plain text
2490 #: build/C/man3/xdr.3:244
2491 #, no-wrap
2492 msgid ""
2493 "B<bool_t xdr_pointer(XDR *>I<xdrs>B<, char **>I<objpp>B<,>\n"
2494 "B<                   unsigned int >I<objsize>B<, xdrproc_t >I<xdrobj>B<);>\n"
2495 msgstr ""
2496
2497 #. type: Plain text
2498 #: build/C/man3/xdr.3:256
2499 msgid ""
2500 "Like B<xdr_reference>()  except that it serializes NULL pointers, whereas "
2501 "B<xdr_reference>()  does not.  Thus, B<xdr_pointer>()  can represent "
2502 "recursive data structures, such as binary trees or linked lists."
2503 msgstr ""
2504
2505 #. type: Plain text
2506 #: build/C/man3/xdr.3:262
2507 #, no-wrap
2508 msgid ""
2509 "B<void xdrrec_create(XDR *>I<xdrs>B<, unsigned int >I<sendsize>B<,>\n"
2510 "B<                   unsigned int >I<recvsize>B<, char *>I<handle>B<,>\n"
2511 "B<                   int (*>I<readit>B<) (char *, char *, int),>\n"
2512 "B<                   int (*>I<writeit>B<) (char *, char *, int));>\n"
2513 msgstr ""
2514
2515 #. type: Plain text
2516 #: build/C/man3/xdr.3:289
2517 msgid ""
2518 "This routine initializes the XDR stream object pointed to by I<xdrs>.  The "
2519 "stream's data is written to a buffer of size I<sendsize>; a value of zero "
2520 "indicates the system should use a suitable default.  The stream's data is "
2521 "read from a buffer of size I<recvsize>; it too can be set to a suitable "
2522 "default by passing a zero value.  When a stream's output buffer is full, "
2523 "I<writeit> is called.  Similarly, when a stream's input buffer is empty, "
2524 "I<readit> is called.  The behavior of these two routines is similar to the "
2525 "system calls B<read>(2)  and B<write>(2), except that I<handle> is passed to "
2526 "the former routines as the first argument.  Note: the XDR stream's I<op> "
2527 "field must be set by the caller."
2528 msgstr ""
2529
2530 #. type: Plain text
2531 #: build/C/man3/xdr.3:293
2532 msgid ""
2533 "Warning: this XDR stream implements an intermediate record stream.  "
2534 "Therefore there are additional bytes in the stream to provide record "
2535 "boundary information."
2536 msgstr ""
2537
2538 #. type: Plain text
2539 #: build/C/man3/xdr.3:296
2540 #, no-wrap
2541 msgid "B<bool_t xdrrec_endofrecord(XDR *>I<xdrs>B<, int >I<sendnow>B<);>\n"
2542 msgstr ""
2543
2544 #. type: Plain text
2545 #: build/C/man3/xdr.3:305
2546 msgid ""
2547 "This routine can be invoked only on streams created by B<xdrrec_create>().  "
2548 "The data in the output buffer is marked as a completed record, and the "
2549 "output buffer is optionally written out if I<sendnow> is nonzero.  This "
2550 "routine returns one if it succeeds, zero otherwise."
2551 msgstr ""
2552
2553 #. type: Plain text
2554 #: build/C/man3/xdr.3:308
2555 #, no-wrap
2556 msgid "B<bool_t xdrrec_eof(XDR *>I<xdrs>B<);>\n"
2557 msgstr ""
2558
2559 #. type: Plain text
2560 #: build/C/man3/xdr.3:315
2561 msgid ""
2562 "This routine can be invoked only on streams created by B<xdrrec_create>().  "
2563 "After consuming the rest of the current record in the stream, this routine "
2564 "returns one if the stream has no more input, zero otherwise."
2565 msgstr ""
2566
2567 #. type: Plain text
2568 #: build/C/man3/xdr.3:318
2569 #, no-wrap
2570 msgid "B<bool_t xdrrec_skiprecord(XDR *>I<xdrs>B<);>\n"
2571 msgstr ""
2572
2573 #. type: Plain text
2574 #: build/C/man3/xdr.3:326
2575 msgid ""
2576 "This routine can be invoked only on streams created by B<xdrrec_create>().  "
2577 "It tells the XDR implementation that the rest of the current record in the "
2578 "stream's input buffer should be discarded.  This routine returns one if it "
2579 "succeeds, zero otherwise."
2580 msgstr ""
2581
2582 #. type: Plain text
2583 #: build/C/man3/xdr.3:330
2584 #, no-wrap
2585 msgid ""
2586 "B<bool_t xdr_reference(XDR *>I<xdrs>B<, char **>I<pp>B<, unsigned int "
2587 ">I<size>B<,>\n"
2588 "B<                     xdrproc_t >I<proc>B<);>\n"
2589 msgstr ""
2590
2591 #. type: Plain text
2592 #: build/C/man3/xdr.3:346
2593 msgid ""
2594 "A primitive that provides pointer chasing within structures.  The argument "
2595 "I<pp> is the address of the pointer; I<size> is the I<sizeof> the structure "
2596 "that I<*pp> points to; and I<proc> is an XDR procedure that filters the "
2597 "structure between its C form and its external representation.  This routine "
2598 "returns one if it succeeds, zero otherwise."
2599 msgstr ""
2600
2601 #. type: Plain text
2602 #: build/C/man3/xdr.3:351
2603 msgid ""
2604 "Warning: this routine does not understand NULL pointers.  Use "
2605 "B<xdr_pointer>()  instead."
2606 msgstr ""
2607
2608 #. type: Plain text
2609 #: build/C/man3/xdr.3:354
2610 #, no-wrap
2611 msgid "B<xdr_setpos(XDR *>I<xdrs>B<, unsigned int >I<pos>B<);>\n"
2612 msgstr ""
2613
2614 #. type: Plain text
2615 #: build/C/man3/xdr.3:365
2616 msgid ""
2617 "A macro that invokes the set position routine associated with the XDR stream "
2618 "I<xdrs>.  The argument I<pos> is a position value obtained from "
2619 "B<xdr_getpos>().  This routine returns one if the XDR stream could be "
2620 "repositioned, and zero otherwise."
2621 msgstr ""
2622
2623 #. type: Plain text
2624 #: build/C/man3/xdr.3:369
2625 msgid ""
2626 "Warning: it is difficult to reposition some types of XDR streams, so this "
2627 "routine may fail with one type of stream and succeed with another."
2628 msgstr ""
2629
2630 #. type: Plain text
2631 #: build/C/man3/xdr.3:372
2632 #, no-wrap
2633 msgid "B<bool_t xdr_short(XDR *>I<xdrs>B<, short *>I<sp>B<);>\n"
2634 msgstr ""
2635
2636 #. type: Plain text
2637 #: build/C/man3/xdr.3:378
2638 msgid ""
2639 "A filter primitive that translates between C I<short> integers and their "
2640 "external representations.  This routine returns one if it succeeds, zero "
2641 "otherwise."
2642 msgstr ""
2643
2644 #. type: Plain text
2645 #: build/C/man3/xdr.3:381
2646 #, no-wrap
2647 msgid ""
2648 "B<void xdrstdio_create(XDR *>I<xdrs>B<, FILE *>I<file>B<, enum xdr_op "
2649 ">I<op>B<);>\n"
2650 msgstr ""
2651
2652 #. type: Plain text
2653 #: build/C/man3/xdr.3:396
2654 msgid ""
2655 "This routine initializes the XDR stream object pointed to by I<xdrs>.  The "
2656 "XDR stream data is written to, or read from, the I<stdio> stream I<file>.  "
2657 "The argument I<op> determines the direction of the XDR stream (either "
2658 "B<XDR_ENCODE>, B<XDR_DECODE>, or B<XDR_FREE>)."
2659 msgstr ""
2660
2661 #. type: Plain text
2662 #: build/C/man3/xdr.3:403
2663 msgid ""
2664 "Warning: the destroy routine associated with such XDR streams calls "
2665 "B<fflush>(3)  on the I<file> stream, but never B<fclose>(3)."
2666 msgstr ""
2667
2668 #. type: Plain text
2669 #: build/C/man3/xdr.3:406
2670 #, no-wrap
2671 msgid ""
2672 "B<bool_t xdr_string(XDR *>I<xdrs>B<, char **>I<sp>B<, unsigned int "
2673 ">I<maxsize>B<);>\n"
2674 msgstr ""
2675
2676 #. type: Plain text
2677 #: build/C/man3/xdr.3:416
2678 msgid ""
2679 "A filter primitive that translates between C strings and their corresponding "
2680 "external representations.  Strings cannot be longer than I<maxsize>.  Note: "
2681 "I<sp> is the address of the string's pointer.  This routine returns one if "
2682 "it succeeds, zero otherwise."
2683 msgstr ""
2684
2685 #. type: Plain text
2686 #: build/C/man3/xdr.3:419
2687 #, no-wrap
2688 msgid "B<bool_t xdr_u_char(XDR *>I<xdrs>B<, unsigned char *>I<ucp>B<);>\n"
2689 msgstr ""
2690
2691 #. type: Plain text
2692 #: build/C/man3/xdr.3:425
2693 msgid ""
2694 "A filter primitive that translates between I<unsigned> C characters and "
2695 "their external representations.  This routine returns one if it succeeds, "
2696 "zero otherwise."
2697 msgstr ""
2698
2699 #. type: Plain text
2700 #: build/C/man3/xdr.3:428
2701 #, no-wrap
2702 msgid "B<bool_t xdr_u_int(XDR *>I<xdrs>B<, unsigned *>I<up>B<);>\n"
2703 msgstr ""
2704
2705 #. type: Plain text
2706 #: build/C/man3/xdr.3:434
2707 msgid ""
2708 "A filter primitive that translates between C I<unsigned> integers and their "
2709 "external representations.  This routine returns one if it succeeds, zero "
2710 "otherwise."
2711 msgstr ""
2712
2713 #. type: Plain text
2714 #: build/C/man3/xdr.3:437
2715 #, no-wrap
2716 msgid "B<bool_t xdr_u_long(XDR *>I<xdrs>B<, unsigned long *>I<ulp>B<);>\n"
2717 msgstr ""
2718
2719 #. type: Plain text
2720 #: build/C/man3/xdr.3:443
2721 msgid ""
2722 "A filter primitive that translates between C I<unsigned long> integers and "
2723 "their external representations.  This routine returns one if it succeeds, "
2724 "zero otherwise."
2725 msgstr ""
2726
2727 #. type: Plain text
2728 #: build/C/man3/xdr.3:446
2729 #, no-wrap
2730 msgid "B<bool_t xdr_u_short(XDR *>I<xdrs>B<, unsigned short *>I<usp>B<);>\n"
2731 msgstr ""
2732
2733 #. type: Plain text
2734 #: build/C/man3/xdr.3:452
2735 msgid ""
2736 "A filter primitive that translates between C I<unsigned short> integers and "
2737 "their external representations.  This routine returns one if it succeeds, "
2738 "zero otherwise."
2739 msgstr ""
2740
2741 #. type: Plain text
2742 #: build/C/man3/xdr.3:457
2743 #, no-wrap
2744 msgid ""
2745 "B<bool_t xdr_union(XDR *>I<xdrs>B<, int *>I<dscmp>B<, char *>I<unp>B<,>\n"
2746 "B<                 struct xdr_discrim *>I<choices>B<,>\n"
2747 "B<                 xdrproc_t >I<defaultarm>B<);     /* may equal NULL */>\n"
2748 msgstr ""
2749
2750 #. type: Plain text
2751 #: build/C/man3/xdr.3:491
2752 msgid ""
2753 "A filter primitive that translates between a discriminated C I<union> and "
2754 "its corresponding external representation.  It first translates the "
2755 "discriminant of the union located at I<dscmp>.  This discriminant is always "
2756 "an I<enum_t>.  Next the union located at I<unp> is translated.  The argument "
2757 "I<choices> is a pointer to an array of B<xdr_discrim>()  structures.  Each "
2758 "structure contains an ordered pair of [I<value>,I<proc>].  If the union's "
2759 "discriminant is equal to the associated I<value>, then the I<proc> is called "
2760 "to translate the union.  The end of the B<xdr_discrim>()  structure array is "
2761 "denoted by a routine of value NULL.  If the discriminant is not found in the "
2762 "I<choices> array, then the I<defaultarm> procedure is called (if it is not "
2763 "NULL).  Returns one if it succeeds, zero otherwise."
2764 msgstr ""
2765
2766 #. type: Plain text
2767 #: build/C/man3/xdr.3:495
2768 #, no-wrap
2769 msgid ""
2770 "B<bool_t xdr_vector(XDR *>I<xdrs>B<, char *>I<arrp>B<, unsigned int "
2771 ">I<size>B<,>\n"
2772 "B<                  unsigned int >I<elsize>B<, xdrproc_t >I<elproc>B<);>\n"
2773 msgstr ""
2774
2775 #. type: Plain text
2776 #: build/C/man3/xdr.3:514
2777 msgid ""
2778 "A filter primitive that translates between fixed-length arrays and their "
2779 "corresponding external representations.  The argument I<arrp> is the address "
2780 "of the pointer to the array, while I<size> is the element count of the "
2781 "array.  The argument I<elsize> is the I<sizeof> each of the array's "
2782 "elements, and I<elproc> is an XDR filter that translates between the array "
2783 "elements' C form, and their external representation.  This routine returns "
2784 "one if it succeeds, zero otherwise."
2785 msgstr ""
2786
2787 #. type: Plain text
2788 #: build/C/man3/xdr.3:517
2789 #, no-wrap
2790 msgid "B<bool_t xdr_void(void);>\n"
2791 msgstr ""
2792
2793 #. type: Plain text
2794 #: build/C/man3/xdr.3:522
2795 msgid ""
2796 "This routine always returns one.  It may be passed to RPC routines that "
2797 "require a function argument, where nothing is to be done."
2798 msgstr ""
2799
2800 #. type: Plain text
2801 #: build/C/man3/xdr.3:525
2802 #, no-wrap
2803 msgid "B<bool_t xdr_wrapstring(XDR *>I<xdrs>B<, char **>I<sp>B<);>\n"
2804 msgstr ""
2805
2806 #. type: Plain text
2807 #: build/C/man3/xdr.3:538
2808 msgid ""
2809 "A primitive that calls B<xdr_string(xdrs, sp,MAXUN.UNSIGNED );> where "
2810 "B<MAXUN.UNSIGNED> is the maximum value of an unsigned integer.  "
2811 "B<xdr_wrapstring>()  is handy because the RPC package passes a maximum of "
2812 "two XDR routines as arguments, and B<xdr_string>(), one of the most "
2813 "frequently used primitives, requires three.  Returns one if it succeeds, "
2814 "zero otherwise."
2815 msgstr ""
2816
2817 #. type: Plain text
2818 #: build/C/man3/xdr.3:540
2819 msgid "B<rpc>(3)"
2820 msgstr ""
2821
2822 #. type: Plain text
2823 #: build/C/man3/xdr.3:544
2824 msgid "eXternal Data Representation Standard: Protocol Specification"
2825 msgstr ""
2826
2827 #. type: Plain text
2828 #: build/C/man3/xdr.3:546
2829 msgid "eXternal Data Representation: Sun Technical Notes"
2830 msgstr ""
2831
2832 #. type: Plain text
2833 #: build/C/man3/xdr.3:550
2834 msgid ""
2835 "I<XDR: External Data Representation Standard>, RFC\\ 1014, Sun Microsystems, "
2836 "Inc., USC-ISI."
2837 msgstr ""