| XDR(3) | Library Functions Manual | XDR(3) | 
xdr, xdr_array,
  xdr_bool, xdr_bytes,
  xdr_char, xdr_destroy,
  xdr_double, xdr_enum,
  xdr_float, xdr_free,
  xdr_getpos, xdr_hyper,
  xdr_inline, xdr_int,
  xdr_long, xdr_longlong_t,
  xdrmem_create, xdr_opaque,
  xdr_pointer, xdrrec_create,
  xdrrec_endofrecord,
  xdrrec_eof, xdrrec_skiprecord,
  xdr_reference, xdr_setpos,
  xdr_short, xdr_sizeof,
  xdrstdio_create, xdr_string,
  xdr_u_char, xdr_u_hyper,
  xdr_u_long, xdr_u_longlong_t,
  xdr_u_short, xdr_union,
  xdr_vector, xdr_void,
  xdr_wrapstring —
xdr_array(XDR
  *xdrs, char **arrp,
  u_int *sizep,
  u_int maxsize,
  u_int elsize,
  xdrproc_t elproc);
int
  
  xdr_bool(XDR
    *xdrs, bool_t
  *bp);
int
  
  xdr_bytes(XDR
    *xdrs, char **sp,
    u_int *sizep,
    u_int maxsize);
int
  
  xdr_char(XDR
    *xdrs, char
  *cp);
void
  
  xdr_destroy(XDR
    *xdrs);
int
  
  xdr_double(XDR
    *xdrs, double
  *dp);
int
  
  xdr_enum(XDR
    *xdrs, enum_t
  *ep);
int
  
  xdr_float(XDR
    *xdrs, float
  *fp);
void
  
  xdr_free(xdrproc_t
    proc, char
  *objp);
u_int
  
  xdr_getpos(XDR
    *xdrs);
int
  
  xdr_hyper(XDR
    *xdrs, longlong_t
    *llp);
long *
  
  xdr_inline(XDR
    *xdrs, int
  len);
int
  
  xdr_int(XDR
    *xdrs, int
  *ip);
int
  
  xdr_long(XDR
    *xdrs, long
  *lp);
int
  
  xdr_longlong_t(XDR
    *xdrs, longlong_t
    *llp);
void
  
  xdrmem_create(XDR
    *xdrs, char *addr,
    u_int size,
    enum xdr_op op);
int
  
  xdr_opaque(XDR
    *xdrs, char *cp,
    u_int cnt);
int
  
  xdr_pointer(XDR
    *xdrs, char
    **objpp, u_int
    objsize, xdrproc_t
    xdrobj);
void
  
  xdrrec_create(XDR
    *xdrs, u_int
    sendsize, u_int
    recvsize, char
    *handle, int
    (*readit)(), int
    (*writeit)());
int
  
  xdrrec_endofrecord(XDR
    *xdrs, int
    sendnow);
int
  
  xdrrec_eof(XDR
    *xdrs);
int
  
  xdrrec_skiprecord(XDR
    *xdrs);
int
  
  xdr_reference(XDR
    *xdrs, char **pp,
    u_int size,
    xdrproc_t proc);
int
  
  xdr_setpos(XDR
    *xdrs, u_int
  pos);
int
  
  xdr_short(XDR
    *xdrs, short
  *sp);
nsigned long
  
  xdr_sizeof(xdrproc_t
    func, void
  *data);
void
  
  xdrstdio_create(XDR
    *xdrs, FILE *file,
    enum xdr_op op);
int
  
  xdr_string(XDR
    *xdrs, char **sp,
    u_int maxsize);
int
  
  xdr_u_char(XDR
    *xdrs, unsigned char
    *ucp);
int
  
  xdr_u_hyper(XDR
    *xdrs, u_longlong_t
    *ullp);
int
  
  xdr_u_int(XDR
    *xdrs, unsigned
    *up);
int
  
  xdr_u_long(XDR
    *xdrs, unsigned long
    *ulp);
int
  
  xdr_u_longlong_t(XDR
    *xdrs, u_longlong_t
    *ullp);
int
  
  xdr_u_short(XDR
    *xdrs, unsigned short
    *usp);
int
  
  xdr_union(XDR
    *xdrs, int *dscmp,
    char *unp,
    struct xdr_discrim
    *choices, bool_t
    (*defaultarm)());
int
  
  xdr_vector(XDR
    *xdrs, char *arrp,
    u_int size,
    u_int elsize,
    xdrproc_t elproc);
int
  
  xdr_void(void);
int
  
  xdr_wrapstring(XDR
    *xdrs, char
  **sp);
xdr_array()xdr_bool()xdr_bytes()xdr_char()xdr_bytes(), xdr_opaque()
      or xdr_string().xdr_destroy()xdr_destroy() is undefined.xdr_double()xdr_enum()xdr_float()xdr_free()xdr_getpos()xdr_hyper()xdr_inline()Warning: xdr_inline() may return
        NULL if it cannot allocate a contiguous piece of
        a buffer. Therefore the behavior may vary among stream instances; it
        exists for the sake of efficiency.
xdr_int()xdr_long()xdr_longlong_t()xdrmem_create()XDR_ENCODE,
      XDR_DECODE, or
    XDR_FREE).xdr_opaque()xdr_pointer()xdr_reference() except that it serializes
      NULL pointers, whereas
      xdr_reference() does not. Thus,
      xdr_pointer() can represent recursive data
      structures, such as binary trees or linked lists.xdrrec_create()Warning: this XDR stream implements an intermediate record stream. Therefore there are additional bytes in the stream to provide record boundary information.
xdrrec_endofrecord()xdrrec_create(). The data in the output buffer is
      marked as a completed record, and the output buffer is optionally written
      out if sendnow is non-zero. This routine returns one
      if it succeeds, zero otherwise.xdrrec_eof()xdrrec_create(). After consuming the rest of the
      current record in the stream, this routine returns one if the stream has
      no more input, zero otherwise.xdrrec_skiprecord()xdrrec_create(). It tells the XDR implementation
      that the rest of the current record in the stream's input buffer should be
      discarded. This routine returns one if it succeeds, zero otherwise.xdr_reference()Warning: this routine does not understand
        NULL pointers. Use
        xdr_pointer() instead.
xdr_setpos()xdr_getpos().
      This routine returns one if the XDR stream could be repositioned, and zero
      otherwise.
    Warning: it is difficult to reposition some types of XDR streams, so this routine may fail with one type of stream and succeed with another.
xdr_short()xdr_sizeof()xdrstdio_create()XDR_ENCODE,
      XDR_DECODE, or XDR_FREE).
    Warning: the destroy routine associated with such XDR streams calls fflush(3) on the file stream, but never fclose(3).
xdr_string()xdr_u_char()xdr_u_hyper()xdr_u_int()xdr_u_long()xdr_u_longlong_t()xdr_u_short()xdr_union()xdr_discrim() structures. Each structure contains
      an ordered pair of [value,
      proc]. If the union's discriminant is equal to the
      associated value, then the
      proc is called to translate the union. The end of
      the xdr_discrim() structure array is denoted by a
      routine of value NULL. If the discriminant is not
      found in the choices array, then the
      defaultarm procedure is called (if it is not
      NULL). Returns one if it succeeds, zero
    otherwise.xdr_vector()xdr_void()xdr_wrapstring()xdr_string(xdrs,
      sp, MAXUN.UNSIGNED); where
      MAXUN.UNSIGNED is the maximum value of an unsigned
      integer. xdr_wrapstring() is handy because the RPC
      package passes a maximum of two XDR routines as parameters, and
      xdr_string(), one of the most frequently used
      primitives, requires three. Returns one if it succeeds, zero
    otherwise.The following manuals:
eXternal Data Representation Standard: Protocol Specification.
eXternal Data Representation: Sun Technical Notes.
Sun Microsystems, Inc., USC-ISI, XDR: External Data Representation Standard, RFC 1014, USC-ISI, 1014.
| July 4, 2011 | NetBSD 9.4 |