/*
* Please do not edit this file.
* It was generated using rpcgen.
*/

#include "mount.h"

bool_t
xdr_fhandle(XDR *xdrs, fhandle objp)
{

        register long *buf;

        if (!xdr_opaque(xdrs, objp, FHSIZE)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_fhstatus(XDR *xdrs, fhstatus *objp)
{

        register long *buf;

        if (!xdr_u_int(xdrs, &objp->fhs_status)) {
                return (FALSE);
        }
       switch (objp->fhs_status) {
       case 0:
                if (!xdr_fhandle(xdrs, objp->fhstatus_u.fhs_fhandle)) {
                        return (FALSE);
                }
               break;
       default:
               break;
       }
       return (TRUE);
}

bool_t
xdr_dirpath(XDR *xdrs, dirpath *objp)
{

        register long *buf;

        if (!xdr_string(xdrs, objp, MNTPATHLEN)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_name(XDR *xdrs, name *objp)
{

        register long *buf;

        if (!xdr_string(xdrs, objp, MNTNAMLEN)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_mountlist(XDR *xdrs, mountlist *objp)
{

        register long *buf;

        if (!xdr_pointer(xdrs, (char **)objp, sizeof(struct mountbody), (xdrproc_t)xdr_mountbody)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_mountbody(XDR *xdrs, mountbody *objp)
{

        register long *buf;

        if (!xdr_name(xdrs, &objp->ml_hostname)) {
                return (FALSE);
        }
        if (!xdr_dirpath(xdrs, &objp->ml_directory)) {
                return (FALSE);
        }
        if (!xdr_mountlist(xdrs, &objp->ml_next)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_groups(XDR *xdrs, groups *objp)
{

        register long *buf;

        if (!xdr_pointer(xdrs, (char **)objp, sizeof(struct groupnode), (xdrproc_t)xdr_groupnode)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_groupnode(XDR *xdrs, groupnode *objp)
{

        register long *buf;

        if (!xdr_name(xdrs, &objp->gr_name)) {
                return (FALSE);
        }
        if (!xdr_groups(xdrs, &objp->gr_next)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_exports(XDR *xdrs, exports *objp)
{

        register long *buf;

        if (!xdr_pointer(xdrs, (char **)objp, sizeof(struct exportnode), (xdrproc_t)xdr_exportnode)) {
                return (FALSE);
        }
       return (TRUE);
}

bool_t
xdr_exportnode(XDR *xdrs, exportnode *objp)
{

        register long *buf;

        if (!xdr_dirpath(xdrs, &objp->ex_dir)) {
                return (FALSE);
        }
        if (!xdr_groups(xdrs, &objp->ex_groups)) {
                return (FALSE);
        }
        if (!xdr_exports(xdrs, &objp->ex_next)) {
                return (FALSE);
        }
       return (TRUE);
}