diff options
author | Benny Halevy <bhalevy@panasas.com> | 2008-08-12 13:43:37 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@citi.umich.edu> | 2008-09-29 17:56:58 -0400 |
commit | c47b2ca42e848e2dce122acbefa0de59320f5683 (patch) | |
tree | 118ae754894d503371e0907c1f529841811d5bf9 | |
parent | 8e40741494bd08a15af17b8cfd26a1f7ad1f5081 (diff) |
nfsd: properly xdr-encode deleg stateid returned from open
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
-rw-r--r-- | fs/nfsd/nfs4xdr.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c index 14ba4d9b2859..d7e4bd50ed3c 100644 --- a/fs/nfsd/nfs4xdr.c +++ b/fs/nfsd/nfs4xdr.c | |||
@@ -2149,7 +2149,9 @@ nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_op | |||
2149 | break; | 2149 | break; |
2150 | case NFS4_OPEN_DELEGATE_READ: | 2150 | case NFS4_OPEN_DELEGATE_READ: |
2151 | RESERVE_SPACE(20 + sizeof(stateid_t)); | 2151 | RESERVE_SPACE(20 + sizeof(stateid_t)); |
2152 | WRITEMEM(&open->op_delegate_stateid, sizeof(stateid_t)); | 2152 | WRITE32(open->op_delegate_stateid.si_generation); |
2153 | WRITEMEM(&open->op_delegate_stateid.si_opaque, | ||
2154 | sizeof(stateid_opaque_t)); | ||
2153 | WRITE32(open->op_recall); | 2155 | WRITE32(open->op_recall); |
2154 | 2156 | ||
2155 | /* | 2157 | /* |
@@ -2163,7 +2165,9 @@ nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_op | |||
2163 | break; | 2165 | break; |
2164 | case NFS4_OPEN_DELEGATE_WRITE: | 2166 | case NFS4_OPEN_DELEGATE_WRITE: |
2165 | RESERVE_SPACE(32 + sizeof(stateid_t)); | 2167 | RESERVE_SPACE(32 + sizeof(stateid_t)); |
2166 | WRITEMEM(&open->op_delegate_stateid, sizeof(stateid_t)); | 2168 | WRITE32(open->op_delegate_stateid.si_generation); |
2169 | WRITEMEM(&open->op_delegate_stateid.si_opaque, | ||
2170 | sizeof(stateid_opaque_t)); | ||
2167 | WRITE32(0); | 2171 | WRITE32(0); |
2168 | 2172 | ||
2169 | /* | 2173 | /* |