5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
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.
12 *
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]
18 *
19 * CDDL HEADER END
20 */
21 /*
22 * Copyright 2010 Sun Microsystems, Inc. All rights reserved.
23 * Use is subject to license terms.
24 *
25 * Copyright 2015 Nexenta Systems, Inc. All rights reserved.
26 */
27
28 /*
29 * This file was originally generated using rpcgen.
30 */
31
32 #if !defined(_KERNEL) && !defined(_FAKE_KERNEL)
33 #include <stdlib.h>
34 #endif /* !_KERNEL */
35 #include <smbsrv/wintypes.h>
36 #include <smbsrv/smb_sid.h>
37 #include <smbsrv/smb_xdr.h>
38 #include <smbsrv/smb_token.h>
39
40 static bool_t smb_privset_xdr(XDR *, smb_privset_t *);
41 static bool_t smb_sid_xdr(XDR *, smb_sid_t *);
42
43 static bool_t
44 smb_privset_helper_xdr(XDR *xdrs, char **privs)
45 {
46 uint32_t pos, len;
47 uint32_t cnt;
48 bool_t rc;
49 smb_privset_t *p;
50
51 if (xdrs->x_op == XDR_DECODE) {
52 pos = xdr_getpos(xdrs);
53
54 if (!xdr_bool(xdrs, &rc))
55 return (FALSE);
260 if (!smb_id_xdr(xdrs, &objp->tkn_owner))
261 return (FALSE);
262 if (!smb_id_xdr(xdrs, &objp->tkn_primary_grp))
263 return (FALSE);
264 if (!smb_ids_xdr(xdrs, &objp->tkn_win_grps))
265 return (FALSE);
266 if (!smb_privset_helper_xdr(xdrs, (char **)&objp->tkn_privileges))
267 return (FALSE);
268 if (!xdr_string(xdrs, &objp->tkn_account_name, ~0))
269 return (FALSE);
270 if (!xdr_string(xdrs, &objp->tkn_domain_name, ~0))
271 return (FALSE);
272 if (!xdr_uint32_t(xdrs, &objp->tkn_flags))
273 return (FALSE);
274 if (!xdr_uint32_t(xdrs, &objp->tkn_audit_sid))
275 return (FALSE);
276 if (!smb_buf32_xdr(xdrs, &objp->tkn_ssnkey))
277 return (FALSE);
278 if (!smb_posix_grps_helper_xdr(xdrs, (char **)&objp->tkn_posix_grps))
279 return (FALSE);
280 return (TRUE);
281 }
|
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
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.
12 *
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]
18 *
19 * CDDL HEADER END
20 */
21 /*
22 * Copyright 2010 Sun Microsystems, Inc. All rights reserved.
23 * Use is subject to license terms.
24 *
25 * Copyright 2018 Nexenta Systems, Inc. All rights reserved.
26 */
27
28 /*
29 * This file was originally generated using rpcgen.
30 */
31
32 #if !defined(_KERNEL) && !defined(_FAKE_KERNEL)
33 #include <stdlib.h>
34 #endif /* !_KERNEL */
35 #include <smb/wintypes.h>
36 #include <smbsrv/smb_sid.h>
37 #include <smbsrv/smb_xdr.h>
38 #include <smbsrv/smb_token.h>
39
40 static bool_t smb_privset_xdr(XDR *, smb_privset_t *);
41 static bool_t smb_sid_xdr(XDR *, smb_sid_t *);
42
43 static bool_t
44 smb_privset_helper_xdr(XDR *xdrs, char **privs)
45 {
46 uint32_t pos, len;
47 uint32_t cnt;
48 bool_t rc;
49 smb_privset_t *p;
50
51 if (xdrs->x_op == XDR_DECODE) {
52 pos = xdr_getpos(xdrs);
53
54 if (!xdr_bool(xdrs, &rc))
55 return (FALSE);
260 if (!smb_id_xdr(xdrs, &objp->tkn_owner))
261 return (FALSE);
262 if (!smb_id_xdr(xdrs, &objp->tkn_primary_grp))
263 return (FALSE);
264 if (!smb_ids_xdr(xdrs, &objp->tkn_win_grps))
265 return (FALSE);
266 if (!smb_privset_helper_xdr(xdrs, (char **)&objp->tkn_privileges))
267 return (FALSE);
268 if (!xdr_string(xdrs, &objp->tkn_account_name, ~0))
269 return (FALSE);
270 if (!xdr_string(xdrs, &objp->tkn_domain_name, ~0))
271 return (FALSE);
272 if (!xdr_uint32_t(xdrs, &objp->tkn_flags))
273 return (FALSE);
274 if (!xdr_uint32_t(xdrs, &objp->tkn_audit_sid))
275 return (FALSE);
276 if (!smb_buf32_xdr(xdrs, &objp->tkn_ssnkey))
277 return (FALSE);
278 if (!smb_posix_grps_helper_xdr(xdrs, (char **)&objp->tkn_posix_grps))
279 return (FALSE);
280 if (!xdr_u_int(xdrs, &objp->tkn_auid))
281 return (FALSE);
282 if (!xdr_u_int(xdrs, &objp->tkn_amask.am_success))
283 return (FALSE);
284 if (!xdr_u_int(xdrs, &objp->tkn_amask.am_failure))
285 return (FALSE);
286 if (!xdr_u_int(xdrs, &objp->tkn_asid))
287 return (FALSE);
288 return (TRUE);
289 }
|