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