14 \fBXDR\fR library routines allow C programmers to describe arbitrary data
15 structures in a machine-independent fashion. Protocols such as remote procedure
16 calls (RPC) use these routines to describe the format of the data.
17 .sp
18 .LP
19 These routines deal specifically with the management of the \fBXDR\fR stream.
20 .SS "Routines"
21 .sp
22 .LP
23 See \fBrpc\fR(3NSL) for the definition of the \fBXDR\fR data structure. Note
24 that any buffers passed to the \fBXDR\fR routines must be properly aligned. It
25 is suggested either that \fBmalloc\fR(3C) be used to allocate these buffers, or
26 that the programmer insure that the buffer address is divisible evenly by
27 four.
28 .sp
29 .LP
30 \fB#include <rpc/xdr.h>\fR
31 .sp
32 .ne 2
33 .na
34 \fB\fBbool_t xdr_control( XDR *\fR\fIxdrs\fR\fB, int\fR\fI req\fR\fB, void
35 *\fR\fIinfo\fR\fB);\fR\fR
36 .ad
37 .sp .6
38 .RS 4n
39 A function macro to change or retrieve various information about an \fBXDR\fR
40 stream. \fIreq\fR indicates the type of operation and \fIinfo\fR is a pointer
41 to the information. The supported values of \fIreq\fR is
42 \fBXDR_GET_BYTES_AVAIL\fR and its argument type is \fBxdr_bytesrec *\fR. They
43 return the number of bytes left unconsumed in the stream and a flag indicating
44 whether or not this is the last fragment.
45 .RE
46
47 .sp
48 .ne 2
49 .na
50 \fB\fBuint_t xdr_getpos(const XDR *\fR\fIxdrs\fR\fB);\fR\fR
51 .ad
52 .sp .6
53 .RS 4n
54 A macro that invokes the get-position routine associated with the \fBXDR\fR
|
14 \fBXDR\fR library routines allow C programmers to describe arbitrary data
15 structures in a machine-independent fashion. Protocols such as remote procedure
16 calls (RPC) use these routines to describe the format of the data.
17 .sp
18 .LP
19 These routines deal specifically with the management of the \fBXDR\fR stream.
20 .SS "Routines"
21 .sp
22 .LP
23 See \fBrpc\fR(3NSL) for the definition of the \fBXDR\fR data structure. Note
24 that any buffers passed to the \fBXDR\fR routines must be properly aligned. It
25 is suggested either that \fBmalloc\fR(3C) be used to allocate these buffers, or
26 that the programmer insure that the buffer address is divisible evenly by
27 four.
28 .sp
29 .LP
30 \fB#include <rpc/xdr.h>\fR
31 .sp
32 .ne 2
33 .na
34 \fB\fBbool_t xdr_control(XDR *\fR\fIxdrs\fR\fB, int\fR\fI req\fR\fB, void
35 *\fR\fIinfo\fR\fB);\fR\fR
36 .ad
37 .sp .6
38 .RS 4n
39 A function macro to change or retrieve various information about an \fBXDR\fR
40 stream. \fIreq\fR indicates the type of operation and \fIinfo\fR is a pointer
41 to the information. The supported values of \fIreq\fR is
42 \fBXDR_GET_BYTES_AVAIL\fR and its argument type is \fBxdr_bytesrec *\fR. They
43 return the number of bytes left unconsumed in the stream and a flag indicating
44 whether or not this is the last fragment.
45 .RE
46
47 .sp
48 .ne 2
49 .na
50 \fB\fBuint_t xdr_getpos(const XDR *\fR\fIxdrs\fR\fB);\fR\fR
51 .ad
52 .sp .6
53 .RS 4n
54 A macro that invokes the get-position routine associated with the \fBXDR\fR
|