nfs-ganesha 1.4

mount.h

Go to the documentation of this file.
00001 /*
00002  * Please do not edit this file.
00003  * It was generated using rpcgen.
00004  */
00005 
00006 #ifndef _MOUNT_H_RPCGEN
00007 #define _MOUNT_H_RPCGEN
00008 
00009 #ifndef _USE_SWIG
00010 
00011 #ifdef _SOLARIS
00012 #include "solaris_port.h"
00013 #endif
00014 
00015 #endif                          /* ifndef _USE_SWIG */
00016 
00017 #define MNTPATHLEN 1024
00018 #define MNTNAMLEN 255
00019 
00020 #define NB_AUTH_FLAVOR 10
00021 
00022 /* RPCSEC_GSS flavor, for MOUNT */
00023 #define MNT_RPC_GSS_NONE      390003
00024 #define MNT_RPC_GSS_INTEGRITY 390004
00025 #define MNT_RPC_GSS_PRIVACY   390005
00026 
00027 enum mountstat3
00028 {
00029   MNT3_OK = 0,
00030   MNT3ERR_PERM = 1,
00031   MNT3ERR_NOENT = 2,
00032   MNT3ERR_IO = 5,
00033   MNT3ERR_ACCES = 13,
00034   MNT3ERR_NOTDIR = 20,
00035   MNT3ERR_INVAL = 22,
00036   MNT3ERR_NAMETOOLONG = 63,
00037   MNT3ERR_NOTSUPP = 10004,
00038   MNT3ERR_SERVERFAULT = 10006
00039 };
00040 typedef enum mountstat3 mountstat3;
00041 
00047 typedef struct
00048 {
00049   u_int fhandle3_len;
00050   char *fhandle3_val;
00051 } fhandle3;
00052 
00053 typedef char *dirpath;
00054 
00055 typedef char *name;
00056 
00057 typedef struct groupnode *groups;
00058 
00059 struct groupnode
00060 {
00061   name gr_name;
00062   groups gr_next;
00063 };
00064 typedef struct groupnode groupnode;
00065 
00066 typedef struct exportnode *exports;
00067 
00068 struct exportnode
00069 {
00070   dirpath ex_dir;
00071   groups ex_groups;
00072   exports ex_next;
00073 };
00074 typedef struct exportnode exportnode;
00075 
00076 typedef struct mountbody *mountlist;
00077 
00078 struct mountbody
00079 {
00080   name ml_hostname;
00081   dirpath ml_directory;
00082   mountlist ml_next;
00083 };
00084 typedef struct mountbody mountbody;
00085 
00086 struct mountres3_ok
00087 {
00088   fhandle3 fhandle;
00089   struct
00090   {
00091     u_int auth_flavors_len;
00092     int *auth_flavors_val;
00093   } auth_flavors;
00094 };
00095 typedef struct mountres3_ok mountres3_ok;
00096 
00097 struct mountres3
00098 {
00099   mountstat3 fhs_status;
00100   union
00101   {
00102     mountres3_ok mountinfo;
00103   } mountres3_u;
00104 };
00105 typedef struct mountres3 mountres3;
00106 
00107 #define MOUNTPROG       100005
00108 #define MOUNT_V1        1
00109 #define MOUNTPROC2_NULL 0
00110 #define MOUNTPROC2_MNT  1
00111 #define MOUNTPROC2_DUMP 2
00112 #define MOUNTPROC2_UMNT 3
00113 #define MOUNTPROC2_UMNTALL      4
00114 #define MOUNTPROC2_EXPORT       5
00115 #define MOUNT_V3        3
00116 #define MOUNTPROC3_NULL 0
00117 #define MOUNTPROC3_MNT  1
00118 #define MOUNTPROC3_DUMP 2
00119 #define MOUNTPROC3_UMNT 3
00120 #define MOUNTPROC3_UMNTALL      4
00121 #define MOUNTPROC3_EXPORT       5
00122 
00123 #ifndef _USE_SWIG
00124 
00125 /* the xdr functions */
00126 extern bool_t xdr_mountstat3(XDR *, mountstat3 *);
00127 extern bool_t xdr_fhandle3(XDR *, fhandle3 *);
00128 extern bool_t xdr_dirpath(XDR *, dirpath *);
00129 extern bool_t xdr_name(XDR *, name *);
00130 extern bool_t xdr_groups(XDR *, groups *);
00131 extern bool_t xdr_groupnode(XDR *, groupnode *);
00132 extern bool_t xdr_exports(XDR *, exports *);
00133 extern bool_t xdr_exportnode(XDR *, exportnode *);
00134 extern bool_t xdr_mountlist(XDR *, mountlist *);
00135 extern bool_t xdr_mountbody(XDR *, mountbody *);
00136 extern bool_t xdr_mountres3_ok(XDR *, mountres3_ok *);
00137 extern bool_t xdr_mountres3(XDR *, mountres3 *);
00138 
00139 #endif                          /* ifndef _USE_SWIG */
00140 
00141 #endif                          /* !_MOUNT_H_RPCGEN */