144928Smckusick /* 244928Smckusick * Copyright (c) 1990 Jan-Simon Pendry 344928Smckusick * Copyright (c) 1990 Imperial College of Science, Technology & Medicine 444928Smckusick * Copyright (c) 1990 The Regents of the University of California. 544928Smckusick * All rights reserved. 644928Smckusick * 744928Smckusick * This code is derived from software contributed to Berkeley by 844928Smckusick * Jan-Simon Pendry at Imperial College, London. 944928Smckusick * 1044928Smckusick * %sccs.include.redist.c% 1144928Smckusick * 12*52457Spendry * @(#)amq_xdr.c 5.4 (Berkeley) 02/09/92 1349685Spendry * 14*52457Spendry * $Id: amq_xdr.c,v 5.2.2.1 1992/02/09 15:09:23 jsp beta $ 1549685Spendry * 1644928Smckusick */ 1744928Smckusick 1844928Smckusick #include "am.h" 1944928Smckusick #include "amq.h" 2044928Smckusick 2144928Smckusick 2244928Smckusick bool_t 2344928Smckusick xdr_amq_string(xdrs, objp) 2444928Smckusick XDR *xdrs; 2544928Smckusick amq_string *objp; 2644928Smckusick { 2744928Smckusick if (!xdr_string(xdrs, objp, AMQ_STRLEN)) { 2844928Smckusick return (FALSE); 2944928Smckusick } 3044928Smckusick return (TRUE); 3144928Smckusick } 3244928Smckusick 3344928Smckusick 3444928Smckusick 3544928Smckusick 3644928Smckusick bool_t 3744928Smckusick xdr_time_type(xdrs, objp) 3844928Smckusick XDR *xdrs; 3944928Smckusick time_type *objp; 4044928Smckusick { 4144928Smckusick if (!xdr_long(xdrs, objp)) { 4244928Smckusick return (FALSE); 4344928Smckusick } 4444928Smckusick return (TRUE); 4544928Smckusick } 4644928Smckusick 4744928Smckusick 4844928Smckusick 4944928Smckusick 5044928Smckusick bool_t 5144928Smckusick xdr_amq_mount_tree(xdrs, objp) 5244928Smckusick XDR *xdrs; 5344928Smckusick amq_mount_tree *objp; 5444928Smckusick { 5544928Smckusick if (!xdr_amq_string(xdrs, &objp->mt_mountinfo)) { 5644928Smckusick return (FALSE); 5744928Smckusick } 5844928Smckusick if (!xdr_amq_string(xdrs, &objp->mt_directory)) { 5944928Smckusick return (FALSE); 6044928Smckusick } 6144928Smckusick if (!xdr_amq_string(xdrs, &objp->mt_mountpoint)) { 6244928Smckusick return (FALSE); 6344928Smckusick } 6444928Smckusick if (!xdr_amq_string(xdrs, &objp->mt_type)) { 6544928Smckusick return (FALSE); 6644928Smckusick } 6744928Smckusick if (!xdr_time_type(xdrs, &objp->mt_mounttime)) { 6844928Smckusick return (FALSE); 6944928Smckusick } 7044928Smckusick if (!xdr_u_short(xdrs, &objp->mt_mountuid)) { 7144928Smckusick return (FALSE); 7244928Smckusick } 7344928Smckusick if (!xdr_int(xdrs, &objp->mt_getattr)) { 7444928Smckusick return (FALSE); 7544928Smckusick } 7644928Smckusick if (!xdr_int(xdrs, &objp->mt_lookup)) { 7744928Smckusick return (FALSE); 7844928Smckusick } 7944928Smckusick if (!xdr_int(xdrs, &objp->mt_readdir)) { 8044928Smckusick return (FALSE); 8144928Smckusick } 8244928Smckusick if (!xdr_int(xdrs, &objp->mt_readlink)) { 8344928Smckusick return (FALSE); 8444928Smckusick } 8544928Smckusick if (!xdr_int(xdrs, &objp->mt_statfs)) { 8644928Smckusick return (FALSE); 8744928Smckusick } 8844928Smckusick if (!xdr_pointer(xdrs, (char **)&objp->mt_next, sizeof(amq_mount_tree), xdr_amq_mount_tree)) { 8944928Smckusick return (FALSE); 9044928Smckusick } 9144928Smckusick if (!xdr_pointer(xdrs, (char **)&objp->mt_child, sizeof(amq_mount_tree), xdr_amq_mount_tree)) { 9244928Smckusick return (FALSE); 9344928Smckusick } 9444928Smckusick return (TRUE); 9544928Smckusick } 9644928Smckusick 9744928Smckusick 9844928Smckusick 9944928Smckusick 10044928Smckusick bool_t 10144928Smckusick xdr_amq_mount_tree_p(xdrs, objp) 10244928Smckusick XDR *xdrs; 10344928Smckusick amq_mount_tree_p *objp; 10444928Smckusick { 10544928Smckusick if (!xdr_pointer(xdrs, (char **)objp, sizeof(amq_mount_tree), xdr_amq_mount_tree)) { 10644928Smckusick return (FALSE); 10744928Smckusick } 10844928Smckusick return (TRUE); 10944928Smckusick } 11044928Smckusick 11144928Smckusick 11244928Smckusick 11344928Smckusick bool_t 11444928Smckusick xdr_amq_mount_info(xdrs, objp) 11544928Smckusick XDR *xdrs; 11644928Smckusick amq_mount_info *objp; 11744928Smckusick { 11844928Smckusick if (!xdr_amq_string(xdrs, &objp->mi_type)) { 11944928Smckusick return (FALSE); 12044928Smckusick } 12144928Smckusick if (!xdr_amq_string(xdrs, &objp->mi_mountpt)) { 12244928Smckusick return (FALSE); 12344928Smckusick } 12444928Smckusick if (!xdr_amq_string(xdrs, &objp->mi_mountinfo)) { 12544928Smckusick return (FALSE); 12644928Smckusick } 12744928Smckusick if (!xdr_amq_string(xdrs, &objp->mi_fserver)) { 12844928Smckusick return (FALSE); 12944928Smckusick } 13044928Smckusick if (!xdr_int(xdrs, &objp->mi_error)) { 13144928Smckusick return (FALSE); 13244928Smckusick } 13344928Smckusick if (!xdr_int(xdrs, &objp->mi_refc)) { 13444928Smckusick return (FALSE); 13544928Smckusick } 13644928Smckusick if (!xdr_int(xdrs, &objp->mi_up)) { 13744928Smckusick return (FALSE); 13844928Smckusick } 13944928Smckusick return (TRUE); 14044928Smckusick } 14144928Smckusick 14244928Smckusick 14344928Smckusick 14444928Smckusick bool_t 14544928Smckusick xdr_amq_mount_info_list(xdrs, objp) 14644928Smckusick XDR *xdrs; 14744928Smckusick amq_mount_info_list *objp; 14844928Smckusick { 14944928Smckusick if (!xdr_array(xdrs, (char **)&objp->amq_mount_info_list_val, (u_int *)&objp->amq_mount_info_list_len, ~0, sizeof(amq_mount_info), xdr_amq_mount_info)) { 15044928Smckusick return (FALSE); 15144928Smckusick } 15244928Smckusick return (TRUE); 15344928Smckusick } 15444928Smckusick 15544928Smckusick 15644928Smckusick 15744928Smckusick bool_t 15844928Smckusick xdr_amq_mount_tree_list(xdrs, objp) 15944928Smckusick XDR *xdrs; 16044928Smckusick amq_mount_tree_list *objp; 16144928Smckusick { 16244928Smckusick if (!xdr_array(xdrs, (char **)&objp->amq_mount_tree_list_val, (u_int *)&objp->amq_mount_tree_list_len, ~0, sizeof(amq_mount_tree_p), xdr_amq_mount_tree_p)) { 16344928Smckusick return (FALSE); 16444928Smckusick } 16544928Smckusick return (TRUE); 16644928Smckusick } 16744928Smckusick 16844928Smckusick 16944928Smckusick 17044928Smckusick 17144928Smckusick bool_t 17244928Smckusick xdr_amq_mount_stats(xdrs, objp) 17344928Smckusick XDR *xdrs; 17444928Smckusick amq_mount_stats *objp; 17544928Smckusick { 17644928Smckusick if (!xdr_int(xdrs, &objp->as_drops)) { 17744928Smckusick return (FALSE); 17844928Smckusick } 17944928Smckusick if (!xdr_int(xdrs, &objp->as_stale)) { 18044928Smckusick return (FALSE); 18144928Smckusick } 18244928Smckusick if (!xdr_int(xdrs, &objp->as_mok)) { 18344928Smckusick return (FALSE); 18444928Smckusick } 18544928Smckusick if (!xdr_int(xdrs, &objp->as_merr)) { 18644928Smckusick return (FALSE); 18744928Smckusick } 18844928Smckusick if (!xdr_int(xdrs, &objp->as_uerr)) { 18944928Smckusick return (FALSE); 19044928Smckusick } 19144928Smckusick return (TRUE); 19244928Smckusick } 19344928Smckusick 19444928Smckusick 19544928Smckusick 19644928Smckusick 19744928Smckusick bool_t 19844928Smckusick xdr_amq_opt(xdrs, objp) 19944928Smckusick XDR *xdrs; 20044928Smckusick amq_opt *objp; 20144928Smckusick { 20244928Smckusick if (!xdr_enum(xdrs, (enum_t *)objp)) { 20344928Smckusick return (FALSE); 20444928Smckusick } 20544928Smckusick return (TRUE); 20644928Smckusick } 20744928Smckusick 20844928Smckusick 20944928Smckusick 21044928Smckusick 21144928Smckusick bool_t 21244928Smckusick xdr_amq_setopt(xdrs, objp) 21344928Smckusick XDR *xdrs; 21444928Smckusick amq_setopt *objp; 21544928Smckusick { 21644928Smckusick if (!xdr_amq_opt(xdrs, &objp->as_opt)) { 21744928Smckusick return (FALSE); 21844928Smckusick } 21944928Smckusick if (!xdr_amq_string(xdrs, &objp->as_str)) { 22044928Smckusick return (FALSE); 22144928Smckusick } 22244928Smckusick return (TRUE); 22344928Smckusick } 22444928Smckusick 22544928Smckusick 226