Logo Search packages:      
Sourcecode: nfs-user-server version File versions  Download package

mount_xdr.c

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

#include <rpc/types.h>
#include <rpc/xdr.h>

#include "mount.h"
/*
 * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
 * unrestricted use provided that this legend is included on all tape
 * media and as a part of the software program in whole or part.  Users
 * may copy or modify Sun RPC without charge, but are not authorized
 * to license or distribute it to anyone else except as part of a product or
 * program developed by the user or with the express written consent of
 * Sun Microsystems, Inc.
 *
 * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
 * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
 *
 * Sun RPC is provided with no support and without any obligation on the
 * part of Sun Microsystems, Inc. to assist in its use, correction,
 * modification or enhancement.
 *
 * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
 * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
 * OR ANY PART THEREOF.
 *
 * In no event will Sun Microsystems, Inc. be liable for any lost revenue
 * or profits or other special, indirect and consequential damages, even if
 * Sun has been advised of the possibility of such damages.
 *
 * Sun Microsystems, Inc.
 * 2550 Garcia Avenue
 * Mountain View, California  94043
 */
/*
 * Copyright (c) 1985, 1990 by Sun Microsystems, Inc.
 */

/* from @(#)mount.x     1.3 91/03/11 TIRPC 1.0 */

bool_t
xdr_fhandle(XDR *xdrs, fhandle objp)
{

       register long *buf=buf;

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

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

       register long *buf=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=buf;

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

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

       register long *buf=buf;

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

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

       register long *buf=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=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=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=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=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=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);
}

bool_t
xdr_ppathcnf(XDR *xdrs, ppathcnf *objp)
{

       register long *buf=buf;

       int i=i;

       if (xdrs->x_op == XDR_ENCODE) {
       buf = XDR_INLINE(xdrs,6 * BYTES_PER_XDR_UNIT);
         if (buf == NULL) {
             if (!xdr_int(xdrs, &objp->pc_link_max)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_max_canon)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_max_input)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_name_max)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_path_max)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_pipe_buf)) {
                   return (FALSE);
             }

        }
        else {
             IXDR_PUT_LONG(buf,objp->pc_link_max);
             IXDR_PUT_SHORT(buf,objp->pc_max_canon);
             IXDR_PUT_SHORT(buf,objp->pc_max_input);
             IXDR_PUT_SHORT(buf,objp->pc_name_max);
             IXDR_PUT_SHORT(buf,objp->pc_path_max);
             IXDR_PUT_SHORT(buf,objp->pc_pipe_buf);
        }
       if (!xdr_u_char(xdrs, &objp->pc_vdisable)) {
             return (FALSE);
       }
       if (!xdr_char(xdrs, &objp->pc_xxx)) {
             return (FALSE);
       }
            buf = XDR_INLINE(xdrs,   2  * BYTES_PER_XDR_UNIT);
            if (buf == NULL) {
             if (!xdr_vector(xdrs, (char *)objp->pc_mask, 2, sizeof(short), (xdrproc_t)xdr_short)) {
                   return (FALSE);
             }

        }
        else {
            { register short *genp; 
              for ( i = 0,genp=objp->pc_mask;
                  i < 2; i++){
                         IXDR_PUT_SHORT(buf,*genp++);
               }
             };
        }

       return (TRUE);
      } else if (xdrs->x_op == XDR_DECODE) {
       buf = XDR_INLINE(xdrs,6 * BYTES_PER_XDR_UNIT);
         if (buf == NULL) {
             if (!xdr_int(xdrs, &objp->pc_link_max)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_max_canon)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_max_input)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_name_max)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_path_max)) {
                   return (FALSE);
             }
             if (!xdr_short(xdrs, &objp->pc_pipe_buf)) {
                   return (FALSE);
             }

        }
        else {
             objp->pc_link_max = IXDR_GET_LONG(buf);
             objp->pc_max_canon = IXDR_GET_SHORT(buf);
             objp->pc_max_input = IXDR_GET_SHORT(buf);
             objp->pc_name_max = IXDR_GET_SHORT(buf);
             objp->pc_path_max = IXDR_GET_SHORT(buf);
             objp->pc_pipe_buf = IXDR_GET_SHORT(buf);
        }
       if (!xdr_u_char(xdrs, &objp->pc_vdisable)) {
             return (FALSE);
       }
       if (!xdr_char(xdrs, &objp->pc_xxx)) {
             return (FALSE);
       }
            buf = XDR_INLINE(xdrs,   2  * BYTES_PER_XDR_UNIT);
            if (buf == NULL) {
             if (!xdr_vector(xdrs, (char *)objp->pc_mask, 2, sizeof(short), (xdrproc_t)xdr_short)) {
                   return (FALSE);
             }

        }
        else {
            { register short *genp; 
              for ( i = 0,genp=objp->pc_mask;
                  i < 2; i++){
                         *genp++ = IXDR_GET_SHORT(buf);
               }
             };
        }
       return(TRUE);
      }

       if (!xdr_int(xdrs, &objp->pc_link_max)) {
             return (FALSE);
       }
       if (!xdr_short(xdrs, &objp->pc_max_canon)) {
             return (FALSE);
       }
       if (!xdr_short(xdrs, &objp->pc_max_input)) {
             return (FALSE);
       }
       if (!xdr_short(xdrs, &objp->pc_name_max)) {
             return (FALSE);
       }
       if (!xdr_short(xdrs, &objp->pc_path_max)) {
             return (FALSE);
       }
       if (!xdr_short(xdrs, &objp->pc_pipe_buf)) {
             return (FALSE);
       }
       if (!xdr_u_char(xdrs, &objp->pc_vdisable)) {
             return (FALSE);
       }
       if (!xdr_char(xdrs, &objp->pc_xxx)) {
             return (FALSE);
       }
       if (!xdr_vector(xdrs, (char *)objp->pc_mask, 2, sizeof(short), (xdrproc_t)xdr_short)) {
             return (FALSE);
       }
      return (TRUE);
}

Generated by  Doxygen 1.6.0   Back to index