File indexing completed on 2025-01-18 10:12:36
0001
0002
0003
0004
0005
0006 #ifndef _MOUNT_H_RPCGEN
0007 #define _MOUNT_H_RPCGEN
0008
0009 #include <rpc/rpc.h>
0010
0011
0012 #ifdef __cplusplus
0013 extern "C" {
0014 #endif
0015
0016 #define MNTPATHLEN 1024
0017 #define MNTNAMLEN 255
0018 #define FHSIZE 32
0019
0020 typedef char fhandle[FHSIZE];
0021
0022 struct fhstatus {
0023 u_int fhs_status;
0024 union {
0025 fhandle fhs_fhandle;
0026 } fhstatus_u;
0027 };
0028 typedef struct fhstatus fhstatus;
0029
0030 typedef char *dirpath;
0031
0032 typedef char *name;
0033
0034 typedef struct mountbody *mountlist;
0035
0036 struct mountbody {
0037 name ml_hostname;
0038 dirpath ml_directory;
0039 mountlist ml_next;
0040 };
0041 typedef struct mountbody mountbody;
0042
0043 typedef struct groupnode *groups;
0044
0045 struct groupnode {
0046 name gr_name;
0047 groups gr_next;
0048 };
0049 typedef struct groupnode groupnode;
0050
0051 typedef struct exportnode *exports;
0052
0053 struct exportnode {
0054 dirpath ex_dir;
0055 groups ex_groups;
0056 exports ex_next;
0057 };
0058 typedef struct exportnode exportnode;
0059
0060 #define MOUNTPROG 100005
0061 #define MOUNTVERS 1
0062
0063 #if defined(__STDC__) || defined(__cplusplus)
0064 #define MOUNTPROC_NULL 0
0065 extern void * mountproc_null_1(void *, CLIENT *);
0066 extern void * mountproc_null_1_svc(void *, struct svc_req *);
0067 #define MOUNTPROC_MNT 1
0068 extern fhstatus * mountproc_mnt_1(dirpath *, CLIENT *);
0069 extern fhstatus * mountproc_mnt_1_svc(dirpath *, struct svc_req *);
0070 #define MOUNTPROC_DUMP 2
0071 extern mountlist * mountproc_dump_1(void *, CLIENT *);
0072 extern mountlist * mountproc_dump_1_svc(void *, struct svc_req *);
0073 #define MOUNTPROC_UMNT 3
0074 extern void * mountproc_umnt_1(dirpath *, CLIENT *);
0075 extern void * mountproc_umnt_1_svc(dirpath *, struct svc_req *);
0076 #define MOUNTPROC_UMNTALL 4
0077 extern void * mountproc_umntall_1(void *, CLIENT *);
0078 extern void * mountproc_umntall_1_svc(void *, struct svc_req *);
0079 #define MOUNTPROC_EXPORT 5
0080 extern exports * mountproc_export_1(void *, CLIENT *);
0081 extern exports * mountproc_export_1_svc(void *, struct svc_req *);
0082 #define MOUNTPROC_EXPORTALL 6
0083 extern exports * mountproc_exportall_1(void *, CLIENT *);
0084 extern exports * mountproc_exportall_1_svc(void *, struct svc_req *);
0085 extern int mountprog_1_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
0086
0087 #else
0088 #define MOUNTPROC_NULL 0
0089 extern void * mountproc_null_1();
0090 extern void * mountproc_null_1_svc();
0091 #define MOUNTPROC_MNT 1
0092 extern fhstatus * mountproc_mnt_1();
0093 extern fhstatus * mountproc_mnt_1_svc();
0094 #define MOUNTPROC_DUMP 2
0095 extern mountlist * mountproc_dump_1();
0096 extern mountlist * mountproc_dump_1_svc();
0097 #define MOUNTPROC_UMNT 3
0098 extern void * mountproc_umnt_1();
0099 extern void * mountproc_umnt_1_svc();
0100 #define MOUNTPROC_UMNTALL 4
0101 extern void * mountproc_umntall_1();
0102 extern void * mountproc_umntall_1_svc();
0103 #define MOUNTPROC_EXPORT 5
0104 extern exports * mountproc_export_1();
0105 extern exports * mountproc_export_1_svc();
0106 #define MOUNTPROC_EXPORTALL 6
0107 extern exports * mountproc_exportall_1();
0108 extern exports * mountproc_exportall_1_svc();
0109 extern int mountprog_1_freeresult ();
0110 #endif
0111
0112
0113
0114 #if defined(__STDC__) || defined(__cplusplus)
0115 extern bool_t xdr_fhandle (XDR *, fhandle);
0116 extern bool_t xdr_fhstatus (XDR *, fhstatus*);
0117 extern bool_t xdr_dirpath (XDR *, dirpath*);
0118 extern bool_t xdr_name (XDR *, name*);
0119 extern bool_t xdr_mountlist (XDR *, mountlist*);
0120 extern bool_t xdr_mountbody (XDR *, mountbody*);
0121 extern bool_t xdr_groups (XDR *, groups*);
0122 extern bool_t xdr_groupnode (XDR *, groupnode*);
0123 extern bool_t xdr_exports (XDR *, exports*);
0124 extern bool_t xdr_exportnode (XDR *, exportnode*);
0125
0126 #else
0127 extern bool_t xdr_fhandle ();
0128 extern bool_t xdr_fhstatus ();
0129 extern bool_t xdr_dirpath ();
0130 extern bool_t xdr_name ();
0131 extern bool_t xdr_mountlist ();
0132 extern bool_t xdr_mountbody ();
0133 extern bool_t xdr_groups ();
0134 extern bool_t xdr_groupnode ();
0135 extern bool_t xdr_exports ();
0136 extern bool_t xdr_exportnode ();
0137
0138 #endif
0139
0140 #ifdef __cplusplus
0141 }
0142 #endif
0143
0144 #endif