MySQL 8.3.0
Source Code Documentation
xdr.c File Reference

Generic XDR routines implementation. More...

#include <libintl.h>
#include <limits.h>
#include <stdio.h>
#include <string.h>
#include <rpc/types.h>
#include <rpc/xdr.h>
#include "xcom/xcom_vp_platform.h"

Macros

#define XDR_FALSE   ((long)0)
 
#define XDR_TRUE   ((long)1)
 
#define LASTUNSIGNED   ((u_int)0 - 1)
 

Functions

void xdr_free (xdrproc_t proc, char *objp)
 
bool_t xdr_void (void)
 
bool_t xdr_int (XDR *xdrs, int *ip)
 
bool_t xdr_int32_t (XDR *xdrs, int32_t *ip)
 
bool_t xdr_u_int (XDR *xdrs, u_int *up)
 
bool_t xdr_uint32_t (XDR *xdrs, uint32_t *ip)
 
bool_t xdr_long (XDR *xdrs, long *lp)
 
bool_t xdr_u_long (XDR *xdrs, u_long *ulp)
 
bool_t xdr_hyper (XDR *xdrs, quad_t *llp)
 
bool_t xdr_u_hyper (XDR *xdrs, u_quad_t *ullp)
 
bool_t xdr_longlong_t (XDR *xdrs, quad_t *llp)
 
bool_t xdr_u_longlong_t (XDR *xdrs, u_quad_t *ullp)
 
bool_t xdr_int64_t (XDR *xdrs, quad_t *llp)
 
bool_t xdr_uint64_t (XDR *xdrs, u_quad_t *ullp)
 
bool_t xdr_short (XDR *xdrs, short *sp)
 
bool_t xdr_u_short (XDR *xdrs, u_short *usp)
 
bool_t xdr_char (XDR *xdrs, char *cp)
 
bool_t xdr_u_char (XDR *xdrs, u_char *cp)
 
bool_t xdr_bool (XDR *xdrs, bool_t *bp)
 
bool_t xdr_enum (XDR *xdrs, enum_t *ep)
 
bool_t xdr_opaque (XDR *xdrs, caddr_t cp, u_int cnt)
 
bool_t xdr_bytes (XDR *xdrs, char **cpp, u_int *sizep, u_int maxsize)
 
bool_t xdr_netobj (XDR *xdrs, struct netobj *np)
 
bool_t xdr_union (XDR *xdrs, enum_t *dscmp, char *unp, const struct xdr_discrim *choices, xdrproc_t dfault)
 
bool_t xdr_string (XDR *xdrs, char **cpp, u_int maxsize)
 
bool_t xdr_wrapstring (XDR *xdrs, char **cpp)
 

Variables

static const char xdr_zero [BYTES_PER_XDR_UNIT] = {0, 0, 0, 0}
 

Detailed Description

Generic XDR routines implementation.

These are the "generic" xdr routines used to serialize and de-serialize most common data items. See xdr.h for more info on the interface to xdr.

Macro Definition Documentation

◆ LASTUNSIGNED

#define LASTUNSIGNED   ((u_int)0 - 1)

◆ XDR_FALSE

#define XDR_FALSE   ((long)0)

◆ XDR_TRUE

#define XDR_TRUE   ((long)1)

Function Documentation

◆ xdr_bool()

bool_t xdr_bool ( XDR xdrs,
bool_t bp 
)

◆ xdr_bytes()

bool_t xdr_bytes ( XDR xdrs,
char **  cpp,
u_int sizep,
u_int  maxsize 
)

◆ xdr_char()

bool_t xdr_char ( XDR xdrs,
char *  cp 
)

◆ xdr_enum()

bool_t xdr_enum ( XDR xdrs,
enum_t ep 
)

◆ xdr_free()

void xdr_free ( xdrproc_t  proc,
char *  objp 
)

◆ xdr_hyper()

bool_t xdr_hyper ( XDR xdrs,
quad_t llp 
)

◆ xdr_int()

bool_t xdr_int ( XDR xdrs,
int *  ip 
)

◆ xdr_int32_t()

bool_t xdr_int32_t ( XDR xdrs,
int32_t *  ip 
)

◆ xdr_int64_t()

bool_t xdr_int64_t ( XDR xdrs,
quad_t llp 
)

◆ xdr_long()

bool_t xdr_long ( XDR xdrs,
long *  lp 
)

◆ xdr_longlong_t()

bool_t xdr_longlong_t ( XDR xdrs,
quad_t llp 
)

◆ xdr_netobj()

bool_t xdr_netobj ( XDR xdrs,
struct netobj np 
)

◆ xdr_opaque()

bool_t xdr_opaque ( XDR xdrs,
caddr_t  cp,
u_int  cnt 
)

◆ xdr_short()

bool_t xdr_short ( XDR xdrs,
short *  sp 
)

◆ xdr_string()

bool_t xdr_string ( XDR xdrs,
char **  cpp,
u_int  maxsize 
)

◆ xdr_u_char()

bool_t xdr_u_char ( XDR xdrs,
u_char cp 
)

◆ xdr_u_hyper()

bool_t xdr_u_hyper ( XDR xdrs,
u_quad_t ullp 
)

◆ xdr_u_int()

bool_t xdr_u_int ( XDR xdrs,
u_int up 
)

◆ xdr_u_long()

bool_t xdr_u_long ( XDR xdrs,
u_long ulp 
)

◆ xdr_u_longlong_t()

bool_t xdr_u_longlong_t ( XDR xdrs,
u_quad_t ullp 
)

◆ xdr_u_short()

bool_t xdr_u_short ( XDR xdrs,
u_short usp 
)

◆ xdr_uint32_t()

bool_t xdr_uint32_t ( XDR xdrs,
uint32_t *  ip 
)

◆ xdr_uint64_t()

bool_t xdr_uint64_t ( XDR xdrs,
u_quad_t ullp 
)

◆ xdr_union()

bool_t xdr_union ( XDR xdrs,
enum_t dscmp,
char *  unp,
const struct xdr_discrim choices,
xdrproc_t  dfault 
)

◆ xdr_void()

bool_t xdr_void ( void  )

◆ xdr_wrapstring()

bool_t xdr_wrapstring ( XDR xdrs,
char **  cpp 
)

Variable Documentation

◆ xdr_zero

const char xdr_zero[BYTES_PER_XDR_UNIT] = {0, 0, 0, 0}
static