4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
23 * Copyright 2014 Nexenta Systems, Inc. All rights reserved.
27 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
28 * Use is subject to license terms.
33 #include <rpc/auth_sys.h>
36 xdr_varg(XDR
*xdrs
, varg_t
*vap
)
38 if (!xdr_u_int(xdrs
, &vap
->vers
))
43 if (!xdr_nfsauth_arg(xdrs
, &vap
->arg_u
.arg
))
47 /* Additional versions of the args go here */
58 xdr_nfsauth_arg(XDR
*xdrs
, nfsauth_arg_t
*argp
)
60 if (!xdr_u_int(xdrs
, &argp
->cmd
))
62 if (!xdr_netobj(xdrs
, &argp
->areq
.req_client
))
64 if (!xdr_string(xdrs
, &argp
->areq
.req_netid
, ~0))
66 if (!xdr_string(xdrs
, &argp
->areq
.req_path
, A_MAXPATH
))
68 if (!xdr_int(xdrs
, &argp
->areq
.req_flavor
))
70 if (!xdr_uid_t(xdrs
, &argp
->areq
.req_clnt_uid
))
72 if (!xdr_gid_t(xdrs
, &argp
->areq
.req_clnt_gid
))
74 if (!xdr_array(xdrs
, (caddr_t
*)&argp
->areq
.req_clnt_gids
.val
,
75 &argp
->areq
.req_clnt_gids
.len
, NGROUPS_UMAX
, (uint_t
)sizeof (gid_t
),
82 xdr_nfsauth_res(XDR
*xdrs
, nfsauth_res_t
*argp
)
84 if (!xdr_u_int(xdrs
, &argp
->stat
))
86 if (!xdr_int(xdrs
, &argp
->ares
.auth_perm
))
88 if (!xdr_uid_t(xdrs
, &argp
->ares
.auth_srv_uid
))
90 if (!xdr_gid_t(xdrs
, &argp
->ares
.auth_srv_gid
))
92 if (!xdr_array(xdrs
, (caddr_t
*)&argp
->ares
.auth_srv_gids
.val
,
93 &argp
->ares
.auth_srv_gids
.len
, NGROUPS_UMAX
, (uint_t
)sizeof (gid_t
),