|
@@ -37,8 +37,8 @@ static u32 nfs_ftypes[] = {
|
|
|
/*
|
|
|
* XDR functions for basic NFS types
|
|
|
*/
|
|
|
-static u32 *
|
|
|
-decode_fh(u32 *p, struct svc_fh *fhp)
|
|
|
+static __be32 *
|
|
|
+decode_fh(__be32 *p, struct svc_fh *fhp)
|
|
|
{
|
|
|
fh_init(fhp, NFS_FHSIZE);
|
|
|
memcpy(&fhp->fh_handle.fh_base, p, NFS_FHSIZE);
|
|
@@ -50,13 +50,13 @@ decode_fh(u32 *p, struct svc_fh *fhp)
|
|
|
}
|
|
|
|
|
|
/* Helper function for NFSv2 ACL code */
|
|
|
-u32 *nfs2svc_decode_fh(u32 *p, struct svc_fh *fhp)
|
|
|
+__be32 *nfs2svc_decode_fh(__be32 *p, struct svc_fh *fhp)
|
|
|
{
|
|
|
return decode_fh(p, fhp);
|
|
|
}
|
|
|
|
|
|
-static inline u32 *
|
|
|
-encode_fh(u32 *p, struct svc_fh *fhp)
|
|
|
+static inline __be32 *
|
|
|
+encode_fh(__be32 *p, struct svc_fh *fhp)
|
|
|
{
|
|
|
memcpy(p, &fhp->fh_handle.fh_base, NFS_FHSIZE);
|
|
|
return p + (NFS_FHSIZE>> 2);
|
|
@@ -66,8 +66,8 @@ encode_fh(u32 *p, struct svc_fh *fhp)
|
|
|
* Decode a file name and make sure that the path contains
|
|
|
* no slashes or null bytes.
|
|
|
*/
|
|
|
-static inline u32 *
|
|
|
-decode_filename(u32 *p, char **namp, int *lenp)
|
|
|
+static inline __be32 *
|
|
|
+decode_filename(__be32 *p, char **namp, int *lenp)
|
|
|
{
|
|
|
char *name;
|
|
|
int i;
|
|
@@ -82,8 +82,8 @@ decode_filename(u32 *p, char **namp, int *lenp)
|
|
|
return p;
|
|
|
}
|
|
|
|
|
|
-static inline u32 *
|
|
|
-decode_pathname(u32 *p, char **namp, int *lenp)
|
|
|
+static inline __be32 *
|
|
|
+decode_pathname(__be32 *p, char **namp, int *lenp)
|
|
|
{
|
|
|
char *name;
|
|
|
int i;
|
|
@@ -98,8 +98,8 @@ decode_pathname(u32 *p, char **namp, int *lenp)
|
|
|
return p;
|
|
|
}
|
|
|
|
|
|
-static inline u32 *
|
|
|
-decode_sattr(u32 *p, struct iattr *iap)
|
|
|
+static inline __be32 *
|
|
|
+decode_sattr(__be32 *p, struct iattr *iap)
|
|
|
{
|
|
|
u32 tmp, tmp1;
|
|
|
|
|
@@ -151,8 +151,8 @@ decode_sattr(u32 *p, struct iattr *iap)
|
|
|
return p;
|
|
|
}
|
|
|
|
|
|
-static u32 *
|
|
|
-encode_fattr(struct svc_rqst *rqstp, u32 *p, struct svc_fh *fhp,
|
|
|
+static __be32 *
|
|
|
+encode_fattr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp,
|
|
|
struct kstat *stat)
|
|
|
{
|
|
|
struct dentry *dentry = fhp->fh_dentry;
|
|
@@ -195,7 +195,7 @@ encode_fattr(struct svc_rqst *rqstp, u32 *p, struct svc_fh *fhp,
|
|
|
}
|
|
|
|
|
|
/* Helper function for NFSv2 ACL code */
|
|
|
-u32 *nfs2svc_encode_fattr(struct svc_rqst *rqstp, u32 *p, struct svc_fh *fhp)
|
|
|
+__be32 *nfs2svc_encode_fattr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp)
|
|
|
{
|
|
|
struct kstat stat;
|
|
|
vfs_getattr(fhp->fh_export->ex_mnt, fhp->fh_dentry, &stat);
|
|
@@ -206,13 +206,13 @@ u32 *nfs2svc_encode_fattr(struct svc_rqst *rqstp, u32 *p, struct svc_fh *fhp)
|
|
|
* XDR decode functions
|
|
|
*/
|
|
|
int
|
|
|
-nfssvc_decode_void(struct svc_rqst *rqstp, u32 *p, void *dummy)
|
|
|
+nfssvc_decode_void(struct svc_rqst *rqstp, __be32 *p, void *dummy)
|
|
|
{
|
|
|
return xdr_argsize_check(rqstp, p);
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_fhandle(struct svc_rqst *rqstp, u32 *p, struct nfsd_fhandle *args)
|
|
|
+nfssvc_decode_fhandle(struct svc_rqst *rqstp, __be32 *p, struct nfsd_fhandle *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->fh)))
|
|
|
return 0;
|
|
@@ -220,7 +220,7 @@ nfssvc_decode_fhandle(struct svc_rqst *rqstp, u32 *p, struct nfsd_fhandle *args)
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_sattrargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_sattrargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_sattrargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->fh))
|
|
@@ -231,7 +231,7 @@ nfssvc_decode_sattrargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_diropargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_diropargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_diropargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->fh))
|
|
@@ -242,7 +242,7 @@ nfssvc_decode_diropargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_readargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_readargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_readargs *args)
|
|
|
{
|
|
|
unsigned int len;
|
|
@@ -273,7 +273,7 @@ nfssvc_decode_readargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_writeargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_writeargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_writeargs *args)
|
|
|
{
|
|
|
unsigned int len;
|
|
@@ -303,7 +303,7 @@ nfssvc_decode_writeargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_createargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_createargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_createargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->fh))
|
|
@@ -315,7 +315,7 @@ nfssvc_decode_createargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_renameargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_renameargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_renameargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->ffh))
|
|
@@ -328,7 +328,7 @@ nfssvc_decode_renameargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_readlinkargs(struct svc_rqst *rqstp, u32 *p, struct nfsd_readlinkargs *args)
|
|
|
+nfssvc_decode_readlinkargs(struct svc_rqst *rqstp, __be32 *p, struct nfsd_readlinkargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->fh)))
|
|
|
return 0;
|
|
@@ -338,7 +338,7 @@ nfssvc_decode_readlinkargs(struct svc_rqst *rqstp, u32 *p, struct nfsd_readlinka
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_linkargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_linkargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_linkargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->ffh))
|
|
@@ -350,7 +350,7 @@ nfssvc_decode_linkargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_symlinkargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_symlinkargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_symlinkargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->ffh))
|
|
@@ -363,7 +363,7 @@ nfssvc_decode_symlinkargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_decode_readdirargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_decode_readdirargs(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_readdirargs *args)
|
|
|
{
|
|
|
if (!(p = decode_fh(p, &args->fh)))
|
|
@@ -382,13 +382,13 @@ nfssvc_decode_readdirargs(struct svc_rqst *rqstp, u32 *p,
|
|
|
* XDR encode functions
|
|
|
*/
|
|
|
int
|
|
|
-nfssvc_encode_void(struct svc_rqst *rqstp, u32 *p, void *dummy)
|
|
|
+nfssvc_encode_void(struct svc_rqst *rqstp, __be32 *p, void *dummy)
|
|
|
{
|
|
|
return xdr_ressize_check(rqstp, p);
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_encode_attrstat(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_encode_attrstat(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_attrstat *resp)
|
|
|
{
|
|
|
p = encode_fattr(rqstp, p, &resp->fh, &resp->stat);
|
|
@@ -396,7 +396,7 @@ nfssvc_encode_attrstat(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_encode_diropres(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_encode_diropres(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_diropres *resp)
|
|
|
{
|
|
|
p = encode_fh(p, &resp->fh);
|
|
@@ -405,7 +405,7 @@ nfssvc_encode_diropres(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_encode_readlinkres(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_encode_readlinkres(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_readlinkres *resp)
|
|
|
{
|
|
|
*p++ = htonl(resp->len);
|
|
@@ -421,7 +421,7 @@ nfssvc_encode_readlinkres(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_encode_readres(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_encode_readres(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_readres *resp)
|
|
|
{
|
|
|
p = encode_fattr(rqstp, p, &resp->fh, &resp->stat);
|
|
@@ -440,7 +440,7 @@ nfssvc_encode_readres(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_encode_readdirres(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_encode_readdirres(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_readdirres *resp)
|
|
|
{
|
|
|
xdr_ressize_check(rqstp, p);
|
|
@@ -453,7 +453,7 @@ nfssvc_encode_readdirres(struct svc_rqst *rqstp, u32 *p,
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-nfssvc_encode_statfsres(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_encode_statfsres(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_statfsres *resp)
|
|
|
{
|
|
|
struct kstatfs *stat = &resp->stats;
|
|
@@ -471,7 +471,7 @@ nfssvc_encode_entry(struct readdir_cd *ccd, const char *name,
|
|
|
int namlen, loff_t offset, ino_t ino, unsigned int d_type)
|
|
|
{
|
|
|
struct nfsd_readdirres *cd = container_of(ccd, struct nfsd_readdirres, common);
|
|
|
- u32 *p = cd->buffer;
|
|
|
+ __be32 *p = cd->buffer;
|
|
|
int buflen, slen;
|
|
|
|
|
|
/*
|
|
@@ -497,7 +497,7 @@ nfssvc_encode_entry(struct readdir_cd *ccd, const char *name,
|
|
|
*p++ = htonl((u32) ino); /* file id */
|
|
|
p = xdr_encode_array(p, name, namlen);/* name length & name */
|
|
|
cd->offset = p; /* remember pointer */
|
|
|
- *p++ = ~(u32) 0; /* offset of next entry */
|
|
|
+ *p++ = htonl(~0U); /* offset of next entry */
|
|
|
|
|
|
cd->buflen = buflen;
|
|
|
cd->buffer = p;
|
|
@@ -509,7 +509,7 @@ nfssvc_encode_entry(struct readdir_cd *ccd, const char *name,
|
|
|
* XDR release functions
|
|
|
*/
|
|
|
int
|
|
|
-nfssvc_release_fhandle(struct svc_rqst *rqstp, u32 *p,
|
|
|
+nfssvc_release_fhandle(struct svc_rqst *rqstp, __be32 *p,
|
|
|
struct nfsd_fhandle *resp)
|
|
|
{
|
|
|
fh_put(&resp->fh);
|