/* * XDR encode/decode for smb_netuserinfo_t. */ bool_t smb_netuserinfo_xdr(XDR *xdrs, smb_netuserinfo_t *objp) { if (!xdr_uint64_t(xdrs, &objp->ui_session_id)) return (FALSE); if (!xdr_uint16_t(xdrs, &objp->ui_smb_uid)) return (FALSE); if (!xdr_uint16_t(xdrs, &objp->ui_domain_len)) return (FALSE); if (!xdr_string(xdrs, &objp->ui_domain, ~0)) return (FALSE); if (!xdr_uint16_t(xdrs, &objp->ui_account_len)) return (FALSE); if (!xdr_string(xdrs, &objp->ui_account, ~0)) return (FALSE); if (!xdr_uint32_t(xdrs, &objp->ui_posix_uid)) return (FALSE); if (!xdr_uint16_t(xdrs, &objp->ui_workstation_len)) return (FALSE); if (!xdr_string(xdrs, &objp->ui_workstation, ~0)) return (FALSE); if (!smb_inaddr_xdr(xdrs, &objp->ui_ipaddr)) return (FALSE); if (!xdr_int32_t(xdrs, &objp->ui_native_os)) return (FALSE); if (!xdr_int64_t(xdrs, &objp->ui_logon_time)) return (FALSE); if (!xdr_uint32_t(xdrs, &objp->ui_numopens)) return (FALSE); if (!xdr_uint32_t(xdrs, &objp->ui_flags)) return (FALSE); return (TRUE); }
/* * Custom XDR routine for our API structure fmd_stat_t. This function must * match the definition of fmd_stat_t in <fm/fmd_api.h> and must also match * the corresponding routine in usr/src/cmd/fm/fmd/common/fmd_rpc_adm.c. */ bool_t xdr_fmd_stat(XDR *xp, fmd_stat_t *sp) { bool_t rv = TRUE; rv &= xdr_opaque(xp, sp->fmds_name, sizeof (sp->fmds_name)); rv &= xdr_u_int(xp, &sp->fmds_type); rv &= xdr_opaque(xp, sp->fmds_desc, sizeof (sp->fmds_desc)); switch (sp->fmds_type) { case FMD_TYPE_BOOL: rv &= xdr_int(xp, &sp->fmds_value.bool); break; case FMD_TYPE_INT32: rv &= xdr_int32_t(xp, &sp->fmds_value.i32); break; case FMD_TYPE_UINT32: rv &= xdr_uint32_t(xp, &sp->fmds_value.ui32); break; case FMD_TYPE_INT64: rv &= xdr_int64_t(xp, &sp->fmds_value.i64); break; case FMD_TYPE_UINT64: case FMD_TYPE_TIME: case FMD_TYPE_SIZE: rv &= xdr_uint64_t(xp, &sp->fmds_value.ui64); break; case FMD_TYPE_STRING: rv &= xdr_string(xp, &sp->fmds_value.str, ~0); break; } return (rv); }
bool_t xdr_int64 (XDR *xdrs, int64 *objp) { if (!xdr_int64_t (xdrs, objp)) return FALSE; return TRUE; }
bool_t xdr_int64(XDR *xdrs, int64 *objp) { if (!xdr_int64_t(xdrs, objp)) return (FALSE); return (TRUE); }
/* * XDR longlong_t's */ bool_t xdr_longlong_t(XDR *xdrs, longlong_t *llp) { /* * Don't bother open-coding this; it's a fair amount of code. Just * call xdr_int64_t(). */ return (xdr_int64_t(xdrs, (int64_t *)llp)); }
bool_t xdr_nlm4_notify(XDR * xdrs, nlm4_notify * objp) { register int32_t *buf; if(!xdr_string(xdrs, &objp->name, LM_MAXNAMELEN)) return FALSE; if(!xdr_int64_t(xdrs, &objp->state)) return FALSE; return TRUE; }