OSDN Git Service

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