diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2013-12-09 11:17:50 -0500 |
---|---|---|
committer | Steve Dickson <steved@redhat.com> | 2013-12-09 11:19:10 -0500 |
commit | 5190a70de9ff9339c8ef0c536cc4d420fb0cdf89 (patch) | |
tree | bf0b278159d420c17dcdf911517b93792a23c172 | |
parent | 45b16c0a6a4c7c05dc26cff232d173bac16c969d (diff) | |
download | ti-rpc-5190a70de9ff9339c8ef0c536cc4d420fb0cdf89.tar.gz |
glibc rpcgen compatibility
xdr_quad_t() and xdr_u_quad_t() call sites are generated by glibc's
rpcgen, which uses them to marshal 64-bit integers.
Since we want libtirpc to maintain glibc compatibility, introduce
xdr_quad_t() and xdr_u_quad_t() to libtirpc.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
-rw-r--r-- | src/xdr.c | 23 | ||||
-rw-r--r-- | tirpc/rpc/xdr.h | 2 |
2 files changed, 25 insertions, 0 deletions
@@ -979,3 +979,26 @@ xdr_u_longlong_t(xdrs, ullp) */ return (xdr_u_int64_t(xdrs, (u_int64_t *)ullp)); } + +/* + * XDR quad_t + */ +bool_t +xdr_quad_t(xdrs, llp) + XDR *xdrs; + int64_t *llp; +{ + return (xdr_int64_t(xdrs, (int64_t *)llp)); +} + + +/* + * XDR u_quad_t + */ +bool_t +xdr_u_quad_t(xdrs, ullp) + XDR *xdrs; + u_int64_t *ullp; +{ + return (xdr_u_int64_t(xdrs, (u_int64_t *)ullp)); +} diff --git a/tirpc/rpc/xdr.h b/tirpc/rpc/xdr.h index 450aa17..613fab0 100644 --- a/tirpc/rpc/xdr.h +++ b/tirpc/rpc/xdr.h @@ -307,6 +307,8 @@ extern bool_t xdr_uint32_t(XDR *, uint32_t *); extern bool_t xdr_int64_t(XDR *, int64_t *); extern bool_t xdr_u_int64_t(XDR *, u_int64_t *); extern bool_t xdr_uint64_t(XDR *, uint64_t *); +extern bool_t xdr_quad_t(XDR *, int64_t *); +extern bool_t xdr_u_quad_t(XDR *, u_int64_t *); extern bool_t xdr_bool(XDR *, bool_t *); extern bool_t xdr_enum(XDR *, enum_t *); extern bool_t xdr_array(XDR *, char **, u_int *, u_int, u_int, xdrproc_t); |