Blame view
fs/nfsd/xdr.h
3.53 KB
b24413180 License cleanup: ... |
1 |
/* SPDX-License-Identifier: GPL-2.0 */ |
7663dacd9 nfsd: remove poin... |
2 |
/* XDR types for nfsd. This is mainly a typing exercise. */ |
1da177e4c Linux-2.6.12-rc2 |
3 4 5 |
#ifndef LINUX_NFSD_H #define LINUX_NFSD_H |
1da177e4c Linux-2.6.12-rc2 |
6 |
#include <linux/vfs.h> |
9a74af213 nfsd: Move privat... |
7 |
#include "nfsd.h" |
1557aca79 nfsd: move most o... |
8 |
#include "nfsfh.h" |
1da177e4c Linux-2.6.12-rc2 |
9 10 11 12 13 14 15 16 17 18 19 20 21 |
struct nfsd_fhandle { struct svc_fh fh; }; struct nfsd_sattrargs { struct svc_fh fh; struct iattr attrs; }; struct nfsd_diropargs { struct svc_fh fh; char * name; |
29d5e5553 NFSD: File name l... |
22 |
unsigned int len; |
1da177e4c Linux-2.6.12-rc2 |
23 24 25 26 27 28 |
}; struct nfsd_readargs { struct svc_fh fh; __u32 offset; __u32 count; |
1da177e4c Linux-2.6.12-rc2 |
29 30 31 32 33 34 35 |
int vlen; }; struct nfsd_writeargs { svc_fh fh; __u32 offset; int len; |
1da177e4c Linux-2.6.12-rc2 |
36 37 38 39 40 41 |
int vlen; }; struct nfsd_createargs { struct svc_fh fh; char * name; |
29d5e5553 NFSD: File name l... |
42 |
unsigned int len; |
1da177e4c Linux-2.6.12-rc2 |
43 44 45 46 47 48 |
struct iattr attrs; }; struct nfsd_renameargs { struct svc_fh ffh; char * fname; |
29d5e5553 NFSD: File name l... |
49 |
unsigned int flen; |
1da177e4c Linux-2.6.12-rc2 |
50 51 |
struct svc_fh tfh; char * tname; |
29d5e5553 NFSD: File name l... |
52 |
unsigned int tlen; |
1da177e4c Linux-2.6.12-rc2 |
53 54 55 56 57 58 59 60 61 62 63 |
}; struct nfsd_readlinkargs { struct svc_fh fh; char * buffer; }; struct nfsd_linkargs { struct svc_fh ffh; struct svc_fh tfh; char * tname; |
29d5e5553 NFSD: File name l... |
64 |
unsigned int tlen; |
1da177e4c Linux-2.6.12-rc2 |
65 66 67 68 69 |
}; struct nfsd_symlinkargs { struct svc_fh ffh; char * fname; |
29d5e5553 NFSD: File name l... |
70 |
unsigned int flen; |
1da177e4c Linux-2.6.12-rc2 |
71 |
char * tname; |
48b4ba3fd NFSD: Path name l... |
72 |
unsigned int tlen; |
1da177e4c Linux-2.6.12-rc2 |
73 74 75 76 77 78 79 |
struct iattr attrs; }; struct nfsd_readdirargs { struct svc_fh fh; __u32 cookie; __u32 count; |
131a21c21 [PATCH] xdr annot... |
80 |
__be32 * buffer; |
1da177e4c Linux-2.6.12-rc2 |
81 82 83 84 |
}; struct nfsd_attrstat { struct svc_fh fh; |
a334de286 [PATCH] knfsd: ch... |
85 |
struct kstat stat; |
1da177e4c Linux-2.6.12-rc2 |
86 87 88 89 |
}; struct nfsd_diropres { struct svc_fh fh; |
a334de286 [PATCH] knfsd: ch... |
90 |
struct kstat stat; |
1da177e4c Linux-2.6.12-rc2 |
91 92 93 94 95 96 97 98 99 |
}; struct nfsd_readlinkres { int len; }; struct nfsd_readres { struct svc_fh fh; unsigned long count; |
a334de286 [PATCH] knfsd: ch... |
100 |
struct kstat stat; |
1da177e4c Linux-2.6.12-rc2 |
101 102 103 104 105 106 |
}; struct nfsd_readdirres { int count; struct readdir_cd common; |
131a21c21 [PATCH] xdr annot... |
107 |
__be32 * buffer; |
1da177e4c Linux-2.6.12-rc2 |
108 |
int buflen; |
131a21c21 [PATCH] xdr annot... |
109 |
__be32 * offset; |
1da177e4c Linux-2.6.12-rc2 |
110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
}; struct nfsd_statfsres { struct kstatfs stats; }; /* * Storage requirements for XDR arguments and results. */ union nfsd_xdrstore { struct nfsd_sattrargs sattr; struct nfsd_diropargs dirop; struct nfsd_readargs read; struct nfsd_writeargs write; struct nfsd_createargs create; struct nfsd_renameargs rename; struct nfsd_linkargs link; struct nfsd_symlinkargs symlink; struct nfsd_readdirargs readdir; }; #define NFS2_SVC_XDRSIZE sizeof(union nfsd_xdrstore) |
026fec7e7 sunrpc: properly ... |
132 133 134 135 136 137 138 139 140 141 142 143 |
int nfssvc_decode_void(struct svc_rqst *, __be32 *); int nfssvc_decode_fhandle(struct svc_rqst *, __be32 *); int nfssvc_decode_sattrargs(struct svc_rqst *, __be32 *); int nfssvc_decode_diropargs(struct svc_rqst *, __be32 *); int nfssvc_decode_readargs(struct svc_rqst *, __be32 *); int nfssvc_decode_writeargs(struct svc_rqst *, __be32 *); int nfssvc_decode_createargs(struct svc_rqst *, __be32 *); int nfssvc_decode_renameargs(struct svc_rqst *, __be32 *); int nfssvc_decode_readlinkargs(struct svc_rqst *, __be32 *); int nfssvc_decode_linkargs(struct svc_rqst *, __be32 *); int nfssvc_decode_symlinkargs(struct svc_rqst *, __be32 *); int nfssvc_decode_readdirargs(struct svc_rqst *, __be32 *); |
63f8de379 sunrpc: properly ... |
144 145 146 147 148 149 150 |
int nfssvc_encode_void(struct svc_rqst *, __be32 *); int nfssvc_encode_attrstat(struct svc_rqst *, __be32 *); int nfssvc_encode_diropres(struct svc_rqst *, __be32 *); int nfssvc_encode_readlinkres(struct svc_rqst *, __be32 *); int nfssvc_encode_readres(struct svc_rqst *, __be32 *); int nfssvc_encode_statfsres(struct svc_rqst *, __be32 *); int nfssvc_encode_readdirres(struct svc_rqst *, __be32 *); |
1da177e4c Linux-2.6.12-rc2 |
151 |
|
a0ad13ef6 [PATCH] knfsd: Fi... |
152 153 |
int nfssvc_encode_entry(void *, const char *name, int namlen, loff_t offset, u64 ino, unsigned int); |
1da177e4c Linux-2.6.12-rc2 |
154 |
|
8537488b5 sunrpc: properly ... |
155 |
void nfssvc_release_fhandle(struct svc_rqst *); |
1da177e4c Linux-2.6.12-rc2 |
156 |
|
a257cdd0e [PATCH] NFSD: Add... |
157 |
/* Helper functions for NFSv2 ACL code */ |
4f4a4fadd nfsd: handle vfs_... |
158 |
__be32 *nfs2svc_encode_fattr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp, struct kstat *stat); |
131a21c21 [PATCH] xdr annot... |
159 |
__be32 *nfs2svc_decode_fh(__be32 *p, struct svc_fh *fhp); |
a257cdd0e [PATCH] NFSD: Add... |
160 |
|
1da177e4c Linux-2.6.12-rc2 |
161 |
#endif /* LINUX_NFSD_H */ |