1
0

mount.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. /*
  2. * Please do not edit this file.
  3. * It was generated using rpcgen.
  4. */
  5. #ifndef _MOUNT_H_RPCGEN
  6. #define _MOUNT_H_RPCGEN
  7. #include <rpc/rpc.h>
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. /* This file is copied from RFC1813
  12. * Copyright 1995 Sun Micrososystems (I assume)
  13. */
  14. #define MNTPATHLEN 1024
  15. #define MNTNAMLEN 255
  16. #define FHSIZE3 64
  17. typedef struct {
  18. u_int fhandle3_len;
  19. char *fhandle3_val;
  20. } fhandle3;
  21. typedef char *dirpath;
  22. typedef char *name;
  23. typedef struct exportnode *exports;
  24. typedef struct groupnode *groups;
  25. typedef struct mountbody *mountlist;
  26. enum mountstat3 {
  27. MNT3_OK = 0,
  28. MNT3ERR_PERM = 1,
  29. MNT3ERR_NOENT = 2,
  30. MNT3ERR_IO = 5,
  31. MNT3ERR_ACCES = 13,
  32. MNT3ERR_NOTDIR = 20,
  33. MNT3ERR_INVAL = 22,
  34. MNT3ERR_NAMETOOLONG = 63,
  35. MNT3ERR_NOTSUPP = 10004,
  36. MNT3ERR_SERVERFAULT = 10006
  37. };
  38. typedef enum mountstat3 mountstat3;
  39. struct mountres3_ok {
  40. fhandle3 fhandle;
  41. struct {
  42. u_int auth_flavors_len;
  43. int *auth_flavors_val;
  44. } auth_flavors;
  45. };
  46. typedef struct mountres3_ok mountres3_ok;
  47. struct mountres3 {
  48. mountstat3 fhs_status;
  49. union {
  50. mountres3_ok mountinfo;
  51. } mountres3_u;
  52. };
  53. typedef struct mountres3 mountres3;
  54. struct mountbody {
  55. name ml_hostname;
  56. dirpath ml_directory;
  57. mountlist ml_next;
  58. };
  59. typedef struct mountbody mountbody;
  60. struct groupnode {
  61. name gr_name;
  62. groups gr_next;
  63. };
  64. typedef struct groupnode groupnode;
  65. struct exportnode {
  66. dirpath ex_dir;
  67. groups ex_groups;
  68. exports ex_next;
  69. };
  70. typedef struct exportnode exportnode;
  71. #define MOUNT_PROGRAM 100005
  72. #define MOUNT_V3 3
  73. #define MOUNTPROC3_NULL 0
  74. extern enum clnt_stat mountproc3_null_3(void *, CLIENT *);
  75. #define MOUNTPROC3_MNT 1
  76. extern enum clnt_stat mountproc3_mnt_3(dirpath , mountres3 *, CLIENT *);
  77. #define MOUNTPROC3_DUMP 2
  78. extern enum clnt_stat mountproc3_dump_3(mountlist *, CLIENT *);
  79. #define MOUNTPROC3_UMNT 3
  80. extern enum clnt_stat mountproc3_umnt_3(dirpath , void *, CLIENT *);
  81. #define MOUNTPROC3_UMNTALL 4
  82. extern enum clnt_stat mountproc3_umntall_3(void *, CLIENT *);
  83. #define MOUNTPROC3_EXPORT 5
  84. extern enum clnt_stat mountproc3_export_3(exports *, CLIENT *);
  85. /* the xdr functions */
  86. extern bool_t xdr_fhandle3(XDR *, fhandle3*);
  87. extern bool_t xdr_dirpath(XDR *, dirpath*);
  88. extern bool_t xdr_name(XDR *, name*);
  89. extern bool_t xdr_exports(XDR *, exports*);
  90. extern bool_t xdr_groups(XDR *, groups*);
  91. extern bool_t xdr_mountlist(XDR *, mountlist*);
  92. extern bool_t xdr_mountstat3(XDR *, mountstat3*);
  93. extern bool_t xdr_mountres3_ok(XDR *, mountres3_ok*);
  94. extern bool_t xdr_mountres3(XDR *, mountres3*);
  95. extern bool_t xdr_mountbody(XDR *, mountbody*);
  96. extern bool_t xdr_groupnode(XDR *, groupnode*);
  97. extern bool_t xdr_exportnode(XDR *, exportnode*);
  98. #ifdef __cplusplus
  99. }
  100. #endif
  101. #endif /* !_MOUNT_H_RPCGEN */