|
@@ -68,8 +68,8 @@
|
|
#define NFS4_REFERRAL_FSID_MAJOR 0x8000000ULL
|
|
#define NFS4_REFERRAL_FSID_MAJOR 0x8000000ULL
|
|
#define NFS4_REFERRAL_FSID_MINOR 0x8000000ULL
|
|
#define NFS4_REFERRAL_FSID_MINOR 0x8000000ULL
|
|
|
|
|
|
-static int
|
|
|
|
-check_filename(char *str, int len, int err)
|
|
|
|
|
|
+static __be32
|
|
|
|
+check_filename(char *str, int len, __be32 err)
|
|
{
|
|
{
|
|
int i;
|
|
int i;
|
|
|
|
|
|
@@ -95,7 +95,7 @@ check_filename(char *str, int len, int err)
|
|
*/
|
|
*/
|
|
#define DECODE_HEAD \
|
|
#define DECODE_HEAD \
|
|
__be32 *p; \
|
|
__be32 *p; \
|
|
- int status
|
|
|
|
|
|
+ __be32 status
|
|
#define DECODE_TAIL \
|
|
#define DECODE_TAIL \
|
|
status = 0; \
|
|
status = 0; \
|
|
out: \
|
|
out: \
|
|
@@ -217,7 +217,7 @@ static char *savemem(struct nfsd4_compoundargs *argp, __be32 *p, int nbytes)
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_bitmap(struct nfsd4_compoundargs *argp, u32 *bmval)
|
|
nfsd4_decode_bitmap(struct nfsd4_compoundargs *argp, u32 *bmval)
|
|
{
|
|
{
|
|
u32 bmlen;
|
|
u32 bmlen;
|
|
@@ -240,7 +240,7 @@ nfsd4_decode_bitmap(struct nfsd4_compoundargs *argp, u32 *bmval)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_fattr(struct nfsd4_compoundargs *argp, u32 *bmval, struct iattr *iattr,
|
|
nfsd4_decode_fattr(struct nfsd4_compoundargs *argp, u32 *bmval, struct iattr *iattr,
|
|
struct nfs4_acl **acl)
|
|
struct nfs4_acl **acl)
|
|
{
|
|
{
|
|
@@ -418,7 +418,7 @@ out_nfserr:
|
|
goto out;
|
|
goto out;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_access(struct nfsd4_compoundargs *argp, struct nfsd4_access *access)
|
|
nfsd4_decode_access(struct nfsd4_compoundargs *argp, struct nfsd4_access *access)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -429,7 +429,7 @@ nfsd4_decode_access(struct nfsd4_compoundargs *argp, struct nfsd4_access *access
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_close(struct nfsd4_compoundargs *argp, struct nfsd4_close *close)
|
|
nfsd4_decode_close(struct nfsd4_compoundargs *argp, struct nfsd4_close *close)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -444,7 +444,7 @@ nfsd4_decode_close(struct nfsd4_compoundargs *argp, struct nfsd4_close *close)
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_commit(struct nfsd4_compoundargs *argp, struct nfsd4_commit *commit)
|
|
nfsd4_decode_commit(struct nfsd4_compoundargs *argp, struct nfsd4_commit *commit)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -456,7 +456,7 @@ nfsd4_decode_commit(struct nfsd4_compoundargs *argp, struct nfsd4_commit *commit
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_create(struct nfsd4_compoundargs *argp, struct nfsd4_create *create)
|
|
nfsd4_decode_create(struct nfsd4_compoundargs *argp, struct nfsd4_create *create)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -496,7 +496,7 @@ nfsd4_decode_create(struct nfsd4_compoundargs *argp, struct nfsd4_create *create
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static inline int
|
|
|
|
|
|
+static inline __be32
|
|
nfsd4_decode_delegreturn(struct nfsd4_compoundargs *argp, struct nfsd4_delegreturn *dr)
|
|
nfsd4_decode_delegreturn(struct nfsd4_compoundargs *argp, struct nfsd4_delegreturn *dr)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -508,13 +508,13 @@ nfsd4_decode_delegreturn(struct nfsd4_compoundargs *argp, struct nfsd4_delegretu
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static inline int
|
|
|
|
|
|
+static inline __be32
|
|
nfsd4_decode_getattr(struct nfsd4_compoundargs *argp, struct nfsd4_getattr *getattr)
|
|
nfsd4_decode_getattr(struct nfsd4_compoundargs *argp, struct nfsd4_getattr *getattr)
|
|
{
|
|
{
|
|
return nfsd4_decode_bitmap(argp, getattr->ga_bmval);
|
|
return nfsd4_decode_bitmap(argp, getattr->ga_bmval);
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_link(struct nfsd4_compoundargs *argp, struct nfsd4_link *link)
|
|
nfsd4_decode_link(struct nfsd4_compoundargs *argp, struct nfsd4_link *link)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -529,7 +529,7 @@ nfsd4_decode_link(struct nfsd4_compoundargs *argp, struct nfsd4_link *link)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_lock(struct nfsd4_compoundargs *argp, struct nfsd4_lock *lock)
|
|
nfsd4_decode_lock(struct nfsd4_compoundargs *argp, struct nfsd4_lock *lock)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -568,7 +568,7 @@ nfsd4_decode_lock(struct nfsd4_compoundargs *argp, struct nfsd4_lock *lock)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_lockt(struct nfsd4_compoundargs *argp, struct nfsd4_lockt *lockt)
|
|
nfsd4_decode_lockt(struct nfsd4_compoundargs *argp, struct nfsd4_lockt *lockt)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -587,7 +587,7 @@ nfsd4_decode_lockt(struct nfsd4_compoundargs *argp, struct nfsd4_lockt *lockt)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_locku(struct nfsd4_compoundargs *argp, struct nfsd4_locku *locku)
|
|
nfsd4_decode_locku(struct nfsd4_compoundargs *argp, struct nfsd4_locku *locku)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -606,7 +606,7 @@ nfsd4_decode_locku(struct nfsd4_compoundargs *argp, struct nfsd4_locku *locku)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_lookup(struct nfsd4_compoundargs *argp, struct nfsd4_lookup *lookup)
|
|
nfsd4_decode_lookup(struct nfsd4_compoundargs *argp, struct nfsd4_lookup *lookup)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -621,7 +621,7 @@ nfsd4_decode_lookup(struct nfsd4_compoundargs *argp, struct nfsd4_lookup *lookup
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_open(struct nfsd4_compoundargs *argp, struct nfsd4_open *open)
|
|
nfsd4_decode_open(struct nfsd4_compoundargs *argp, struct nfsd4_open *open)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -699,7 +699,7 @@ nfsd4_decode_open(struct nfsd4_compoundargs *argp, struct nfsd4_open *open)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_open_confirm(struct nfsd4_compoundargs *argp, struct nfsd4_open_confirm *open_conf)
|
|
nfsd4_decode_open_confirm(struct nfsd4_compoundargs *argp, struct nfsd4_open_confirm *open_conf)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -713,7 +713,7 @@ nfsd4_decode_open_confirm(struct nfsd4_compoundargs *argp, struct nfsd4_open_con
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_open_downgrade(struct nfsd4_compoundargs *argp, struct nfsd4_open_downgrade *open_down)
|
|
nfsd4_decode_open_downgrade(struct nfsd4_compoundargs *argp, struct nfsd4_open_downgrade *open_down)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -729,7 +729,7 @@ nfsd4_decode_open_downgrade(struct nfsd4_compoundargs *argp, struct nfsd4_open_d
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_putfh(struct nfsd4_compoundargs *argp, struct nfsd4_putfh *putfh)
|
|
nfsd4_decode_putfh(struct nfsd4_compoundargs *argp, struct nfsd4_putfh *putfh)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -744,7 +744,7 @@ nfsd4_decode_putfh(struct nfsd4_compoundargs *argp, struct nfsd4_putfh *putfh)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_read(struct nfsd4_compoundargs *argp, struct nfsd4_read *read)
|
|
nfsd4_decode_read(struct nfsd4_compoundargs *argp, struct nfsd4_read *read)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -758,7 +758,7 @@ nfsd4_decode_read(struct nfsd4_compoundargs *argp, struct nfsd4_read *read)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_readdir(struct nfsd4_compoundargs *argp, struct nfsd4_readdir *readdir)
|
|
nfsd4_decode_readdir(struct nfsd4_compoundargs *argp, struct nfsd4_readdir *readdir)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -774,7 +774,7 @@ nfsd4_decode_readdir(struct nfsd4_compoundargs *argp, struct nfsd4_readdir *read
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_remove(struct nfsd4_compoundargs *argp, struct nfsd4_remove *remove)
|
|
nfsd4_decode_remove(struct nfsd4_compoundargs *argp, struct nfsd4_remove *remove)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -789,7 +789,7 @@ nfsd4_decode_remove(struct nfsd4_compoundargs *argp, struct nfsd4_remove *remove
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_rename(struct nfsd4_compoundargs *argp, struct nfsd4_rename *rename)
|
|
nfsd4_decode_rename(struct nfsd4_compoundargs *argp, struct nfsd4_rename *rename)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -809,7 +809,7 @@ nfsd4_decode_rename(struct nfsd4_compoundargs *argp, struct nfsd4_rename *rename
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_renew(struct nfsd4_compoundargs *argp, clientid_t *clientid)
|
|
nfsd4_decode_renew(struct nfsd4_compoundargs *argp, clientid_t *clientid)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -820,7 +820,7 @@ nfsd4_decode_renew(struct nfsd4_compoundargs *argp, clientid_t *clientid)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_setattr(struct nfsd4_compoundargs *argp, struct nfsd4_setattr *setattr)
|
|
nfsd4_decode_setattr(struct nfsd4_compoundargs *argp, struct nfsd4_setattr *setattr)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -834,7 +834,7 @@ nfsd4_decode_setattr(struct nfsd4_compoundargs *argp, struct nfsd4_setattr *seta
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_setclientid(struct nfsd4_compoundargs *argp, struct nfsd4_setclientid *setclientid)
|
|
nfsd4_decode_setclientid(struct nfsd4_compoundargs *argp, struct nfsd4_setclientid *setclientid)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -859,7 +859,7 @@ nfsd4_decode_setclientid(struct nfsd4_compoundargs *argp, struct nfsd4_setclient
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_setclientid_confirm(struct nfsd4_compoundargs *argp, struct nfsd4_setclientid_confirm *scd_c)
|
|
nfsd4_decode_setclientid_confirm(struct nfsd4_compoundargs *argp, struct nfsd4_setclientid_confirm *scd_c)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -872,7 +872,7 @@ nfsd4_decode_setclientid_confirm(struct nfsd4_compoundargs *argp, struct nfsd4_s
|
|
}
|
|
}
|
|
|
|
|
|
/* Also used for NVERIFY */
|
|
/* Also used for NVERIFY */
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_verify(struct nfsd4_compoundargs *argp, struct nfsd4_verify *verify)
|
|
nfsd4_decode_verify(struct nfsd4_compoundargs *argp, struct nfsd4_verify *verify)
|
|
{
|
|
{
|
|
#if 0
|
|
#if 0
|
|
@@ -908,7 +908,7 @@ nfsd4_decode_verify(struct nfsd4_compoundargs *argp, struct nfsd4_verify *verify
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_write(struct nfsd4_compoundargs *argp, struct nfsd4_write *write)
|
|
nfsd4_decode_write(struct nfsd4_compoundargs *argp, struct nfsd4_write *write)
|
|
{
|
|
{
|
|
int avail;
|
|
int avail;
|
|
@@ -959,7 +959,7 @@ nfsd4_decode_write(struct nfsd4_compoundargs *argp, struct nfsd4_write *write)
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_release_lockowner(struct nfsd4_compoundargs *argp, struct nfsd4_release_lockowner *rlockowner)
|
|
nfsd4_decode_release_lockowner(struct nfsd4_compoundargs *argp, struct nfsd4_release_lockowner *rlockowner)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -973,7 +973,7 @@ nfsd4_decode_release_lockowner(struct nfsd4_compoundargs *argp, struct nfsd4_rel
|
|
DECODE_TAIL;
|
|
DECODE_TAIL;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_decode_compound(struct nfsd4_compoundargs *argp)
|
|
nfsd4_decode_compound(struct nfsd4_compoundargs *argp)
|
|
{
|
|
{
|
|
DECODE_HEAD;
|
|
DECODE_HEAD;
|
|
@@ -1234,7 +1234,7 @@ nfsd4_decode_compound(struct nfsd4_compoundargs *argp)
|
|
/* Encode as an array of strings the string given with components
|
|
/* Encode as an array of strings the string given with components
|
|
* seperated @sep.
|
|
* seperated @sep.
|
|
*/
|
|
*/
|
|
-static int nfsd4_encode_components(char sep, char *components,
|
|
|
|
|
|
+static __be32 nfsd4_encode_components(char sep, char *components,
|
|
__be32 **pp, int *buflen)
|
|
__be32 **pp, int *buflen)
|
|
{
|
|
{
|
|
__be32 *p = *pp;
|
|
__be32 *p = *pp;
|
|
@@ -1271,10 +1271,10 @@ static int nfsd4_encode_components(char sep, char *components,
|
|
/*
|
|
/*
|
|
* encode a location element of a fs_locations structure
|
|
* encode a location element of a fs_locations structure
|
|
*/
|
|
*/
|
|
-static int nfsd4_encode_fs_location4(struct nfsd4_fs_location *location,
|
|
|
|
|
|
+static __be32 nfsd4_encode_fs_location4(struct nfsd4_fs_location *location,
|
|
__be32 **pp, int *buflen)
|
|
__be32 **pp, int *buflen)
|
|
{
|
|
{
|
|
- int status;
|
|
|
|
|
|
+ __be32 status;
|
|
__be32 *p = *pp;
|
|
__be32 *p = *pp;
|
|
|
|
|
|
status = nfsd4_encode_components(':', location->hosts, &p, buflen);
|
|
status = nfsd4_encode_components(':', location->hosts, &p, buflen);
|
|
@@ -1292,7 +1292,7 @@ static int nfsd4_encode_fs_location4(struct nfsd4_fs_location *location,
|
|
* Returned string is safe to use as long as the caller holds a reference
|
|
* Returned string is safe to use as long as the caller holds a reference
|
|
* to @exp.
|
|
* to @exp.
|
|
*/
|
|
*/
|
|
-static char *nfsd4_path(struct svc_rqst *rqstp, struct svc_export *exp, u32 *stat)
|
|
|
|
|
|
+static char *nfsd4_path(struct svc_rqst *rqstp, struct svc_export *exp, __be32 *stat)
|
|
{
|
|
{
|
|
struct svc_fh tmp_fh;
|
|
struct svc_fh tmp_fh;
|
|
char *path, *rootpath;
|
|
char *path, *rootpath;
|
|
@@ -1318,11 +1318,11 @@ static char *nfsd4_path(struct svc_rqst *rqstp, struct svc_export *exp, u32 *sta
|
|
/*
|
|
/*
|
|
* encode a fs_locations structure
|
|
* encode a fs_locations structure
|
|
*/
|
|
*/
|
|
-static int nfsd4_encode_fs_locations(struct svc_rqst *rqstp,
|
|
|
|
|
|
+static __be32 nfsd4_encode_fs_locations(struct svc_rqst *rqstp,
|
|
struct svc_export *exp,
|
|
struct svc_export *exp,
|
|
__be32 **pp, int *buflen)
|
|
__be32 **pp, int *buflen)
|
|
{
|
|
{
|
|
- u32 status;
|
|
|
|
|
|
+ __be32 status;
|
|
int i;
|
|
int i;
|
|
__be32 *p = *pp;
|
|
__be32 *p = *pp;
|
|
struct nfsd4_fs_locations *fslocs = &exp->ex_fslocs;
|
|
struct nfsd4_fs_locations *fslocs = &exp->ex_fslocs;
|
|
@@ -1353,7 +1353,7 @@ static u32 nfs4_ftypes[16] = {
|
|
NF4SOCK, NF4BAD, NF4LNK, NF4BAD,
|
|
NF4SOCK, NF4BAD, NF4LNK, NF4BAD,
|
|
};
|
|
};
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_encode_name(struct svc_rqst *rqstp, int whotype, uid_t id, int group,
|
|
nfsd4_encode_name(struct svc_rqst *rqstp, int whotype, uid_t id, int group,
|
|
__be32 **p, int *buflen)
|
|
__be32 **p, int *buflen)
|
|
{
|
|
{
|
|
@@ -1375,19 +1375,19 @@ nfsd4_encode_name(struct svc_rqst *rqstp, int whotype, uid_t id, int group,
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-static inline int
|
|
|
|
|
|
+static inline __be32
|
|
nfsd4_encode_user(struct svc_rqst *rqstp, uid_t uid, __be32 **p, int *buflen)
|
|
nfsd4_encode_user(struct svc_rqst *rqstp, uid_t uid, __be32 **p, int *buflen)
|
|
{
|
|
{
|
|
return nfsd4_encode_name(rqstp, NFS4_ACL_WHO_NAMED, uid, 0, p, buflen);
|
|
return nfsd4_encode_name(rqstp, NFS4_ACL_WHO_NAMED, uid, 0, p, buflen);
|
|
}
|
|
}
|
|
|
|
|
|
-static inline int
|
|
|
|
|
|
+static inline __be32
|
|
nfsd4_encode_group(struct svc_rqst *rqstp, uid_t gid, __be32 **p, int *buflen)
|
|
nfsd4_encode_group(struct svc_rqst *rqstp, uid_t gid, __be32 **p, int *buflen)
|
|
{
|
|
{
|
|
return nfsd4_encode_name(rqstp, NFS4_ACL_WHO_NAMED, gid, 1, p, buflen);
|
|
return nfsd4_encode_name(rqstp, NFS4_ACL_WHO_NAMED, gid, 1, p, buflen);
|
|
}
|
|
}
|
|
|
|
|
|
-static inline int
|
|
|
|
|
|
+static inline __be32
|
|
nfsd4_encode_aclname(struct svc_rqst *rqstp, int whotype, uid_t id, int group,
|
|
nfsd4_encode_aclname(struct svc_rqst *rqstp, int whotype, uid_t id, int group,
|
|
__be32 **p, int *buflen)
|
|
__be32 **p, int *buflen)
|
|
{
|
|
{
|
|
@@ -1398,7 +1398,7 @@ nfsd4_encode_aclname(struct svc_rqst *rqstp, int whotype, uid_t id, int group,
|
|
FATTR4_WORD0_RDATTR_ERROR)
|
|
FATTR4_WORD0_RDATTR_ERROR)
|
|
#define WORD1_ABSENT_FS_ATTRS FATTR4_WORD1_MOUNTED_ON_FILEID
|
|
#define WORD1_ABSENT_FS_ATTRS FATTR4_WORD1_MOUNTED_ON_FILEID
|
|
|
|
|
|
-static int fattr_handle_absent_fs(u32 *bmval0, u32 *bmval1, u32 *rdattr_err)
|
|
|
|
|
|
+static __be32 fattr_handle_absent_fs(u32 *bmval0, u32 *bmval1, u32 *rdattr_err)
|
|
{
|
|
{
|
|
/* As per referral draft: */
|
|
/* As per referral draft: */
|
|
if (*bmval0 & ~WORD0_ABSENT_FS_ATTRS ||
|
|
if (*bmval0 & ~WORD0_ABSENT_FS_ATTRS ||
|
|
@@ -1421,7 +1421,7 @@ static int fattr_handle_absent_fs(u32 *bmval0, u32 *bmval1, u32 *rdattr_err)
|
|
* @countp is the buffer size in _words_; upon successful return this becomes
|
|
* @countp is the buffer size in _words_; upon successful return this becomes
|
|
* replaced with the number of words written.
|
|
* replaced with the number of words written.
|
|
*/
|
|
*/
|
|
-int
|
|
|
|
|
|
+__be32
|
|
nfsd4_encode_fattr(struct svc_fh *fhp, struct svc_export *exp,
|
|
nfsd4_encode_fattr(struct svc_fh *fhp, struct svc_export *exp,
|
|
struct dentry *dentry, __be32 *buffer, int *countp, u32 *bmval,
|
|
struct dentry *dentry, __be32 *buffer, int *countp, u32 *bmval,
|
|
struct svc_rqst *rqstp)
|
|
struct svc_rqst *rqstp)
|
|
@@ -1437,7 +1437,7 @@ nfsd4_encode_fattr(struct svc_fh *fhp, struct svc_export *exp,
|
|
u64 dummy64;
|
|
u64 dummy64;
|
|
u32 rdattr_err = 0;
|
|
u32 rdattr_err = 0;
|
|
__be32 *p = buffer;
|
|
__be32 *p = buffer;
|
|
- int status;
|
|
|
|
|
|
+ __be32 status;
|
|
int aclsupport = 0;
|
|
int aclsupport = 0;
|
|
struct nfs4_acl *acl = NULL;
|
|
struct nfs4_acl *acl = NULL;
|
|
|
|
|
|
@@ -1829,13 +1829,13 @@ out_serverfault:
|
|
goto out;
|
|
goto out;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static __be32
|
|
nfsd4_encode_dirent_fattr(struct nfsd4_readdir *cd,
|
|
nfsd4_encode_dirent_fattr(struct nfsd4_readdir *cd,
|
|
const char *name, int namlen, __be32 *p, int *buflen)
|
|
const char *name, int namlen, __be32 *p, int *buflen)
|
|
{
|
|
{
|
|
struct svc_export *exp = cd->rd_fhp->fh_export;
|
|
struct svc_export *exp = cd->rd_fhp->fh_export;
|
|
struct dentry *dentry;
|
|
struct dentry *dentry;
|
|
- int nfserr;
|
|
|
|
|
|
+ __be32 nfserr;
|
|
|
|
|
|
dentry = lookup_one_len(name, cd->rd_fhp->fh_dentry, namlen);
|
|
dentry = lookup_one_len(name, cd->rd_fhp->fh_dentry, namlen);
|
|
if (IS_ERR(dentry))
|
|
if (IS_ERR(dentry))
|
|
@@ -1865,7 +1865,7 @@ out_put:
|
|
}
|
|
}
|
|
|
|
|
|
static __be32 *
|
|
static __be32 *
|
|
-nfsd4_encode_rdattr_error(__be32 *p, int buflen, int nfserr)
|
|
|
|
|
|
+nfsd4_encode_rdattr_error(__be32 *p, int buflen, __be32 nfserr)
|
|
{
|
|
{
|
|
__be32 *attrlenp;
|
|
__be32 *attrlenp;
|
|
|
|
|
|
@@ -1888,7 +1888,7 @@ nfsd4_encode_dirent(struct readdir_cd *ccd, const char *name, int namlen,
|
|
struct nfsd4_readdir *cd = container_of(ccd, struct nfsd4_readdir, common);
|
|
struct nfsd4_readdir *cd = container_of(ccd, struct nfsd4_readdir, common);
|
|
int buflen;
|
|
int buflen;
|
|
__be32 *p = cd->buffer;
|
|
__be32 *p = cd->buffer;
|
|
- int nfserr = nfserr_toosmall;
|
|
|
|
|
|
+ __be32 nfserr = nfserr_toosmall;
|
|
|
|
|
|
/* In nfsv4, "." and ".." never make it onto the wire.. */
|
|
/* In nfsv4, "." and ".." never make it onto the wire.. */
|
|
if (name && isdotent(name, namlen)) {
|
|
if (name && isdotent(name, namlen)) {
|
|
@@ -1944,7 +1944,7 @@ fail:
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_access(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_access *access)
|
|
|
|
|
|
+nfsd4_encode_access(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_access *access)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -1957,7 +1957,7 @@ nfsd4_encode_access(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_acc
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_close(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_close *close)
|
|
|
|
|
|
+nfsd4_encode_close(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_close *close)
|
|
{
|
|
{
|
|
ENCODE_SEQID_OP_HEAD;
|
|
ENCODE_SEQID_OP_HEAD;
|
|
|
|
|
|
@@ -1972,7 +1972,7 @@ nfsd4_encode_close(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_clos
|
|
|
|
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_commit(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_commit *commit)
|
|
|
|
|
|
+nfsd4_encode_commit(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_commit *commit)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -1984,7 +1984,7 @@ nfsd4_encode_commit(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_com
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_create(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_create *create)
|
|
|
|
|
|
+nfsd4_encode_create(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_create *create)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -1998,8 +1998,8 @@ nfsd4_encode_create(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_cre
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
-nfsd4_encode_getattr(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_getattr *getattr)
|
|
|
|
|
|
+static __be32
|
|
|
|
+nfsd4_encode_getattr(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_getattr *getattr)
|
|
{
|
|
{
|
|
struct svc_fh *fhp = getattr->ga_fhp;
|
|
struct svc_fh *fhp = getattr->ga_fhp;
|
|
int buflen;
|
|
int buflen;
|
|
@@ -2017,7 +2017,7 @@ nfsd4_encode_getattr(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_ge
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_getfh(struct nfsd4_compoundres *resp, int nfserr, struct svc_fh *fhp)
|
|
|
|
|
|
+nfsd4_encode_getfh(struct nfsd4_compoundres *resp, __be32 nfserr, struct svc_fh *fhp)
|
|
{
|
|
{
|
|
unsigned int len;
|
|
unsigned int len;
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
@@ -2057,7 +2057,7 @@ nfsd4_encode_lock_denied(struct nfsd4_compoundres *resp, struct nfsd4_lock_denie
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_lock(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_lock *lock)
|
|
|
|
|
|
+nfsd4_encode_lock(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_lock *lock)
|
|
{
|
|
{
|
|
ENCODE_SEQID_OP_HEAD;
|
|
ENCODE_SEQID_OP_HEAD;
|
|
|
|
|
|
@@ -2073,14 +2073,14 @@ nfsd4_encode_lock(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_lock
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_lockt(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_lockt *lockt)
|
|
|
|
|
|
+nfsd4_encode_lockt(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_lockt *lockt)
|
|
{
|
|
{
|
|
if (nfserr == nfserr_denied)
|
|
if (nfserr == nfserr_denied)
|
|
nfsd4_encode_lock_denied(resp, &lockt->lt_denied);
|
|
nfsd4_encode_lock_denied(resp, &lockt->lt_denied);
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_locku(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_locku *locku)
|
|
|
|
|
|
+nfsd4_encode_locku(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_locku *locku)
|
|
{
|
|
{
|
|
ENCODE_SEQID_OP_HEAD;
|
|
ENCODE_SEQID_OP_HEAD;
|
|
|
|
|
|
@@ -2096,7 +2096,7 @@ nfsd4_encode_locku(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_lock
|
|
|
|
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_link(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_link *link)
|
|
|
|
|
|
+nfsd4_encode_link(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_link *link)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -2109,7 +2109,7 @@ nfsd4_encode_link(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_link
|
|
|
|
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_open(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_open *open)
|
|
|
|
|
|
+nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_open *open)
|
|
{
|
|
{
|
|
ENCODE_SEQID_OP_HEAD;
|
|
ENCODE_SEQID_OP_HEAD;
|
|
|
|
|
|
@@ -2174,7 +2174,7 @@ out:
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_open_confirm(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_open_confirm *oc)
|
|
|
|
|
|
+nfsd4_encode_open_confirm(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_open_confirm *oc)
|
|
{
|
|
{
|
|
ENCODE_SEQID_OP_HEAD;
|
|
ENCODE_SEQID_OP_HEAD;
|
|
|
|
|
|
@@ -2189,7 +2189,7 @@ nfsd4_encode_open_confirm(struct nfsd4_compoundres *resp, int nfserr, struct nfs
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_open_downgrade(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_open_downgrade *od)
|
|
|
|
|
|
+nfsd4_encode_open_downgrade(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_open_downgrade *od)
|
|
{
|
|
{
|
|
ENCODE_SEQID_OP_HEAD;
|
|
ENCODE_SEQID_OP_HEAD;
|
|
|
|
|
|
@@ -2203,8 +2203,8 @@ nfsd4_encode_open_downgrade(struct nfsd4_compoundres *resp, int nfserr, struct n
|
|
ENCODE_SEQID_OP_TAIL(od->od_stateowner);
|
|
ENCODE_SEQID_OP_TAIL(od->od_stateowner);
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
-nfsd4_encode_read(struct nfsd4_compoundres *resp, int nfserr,
|
|
|
|
|
|
+static __be32
|
|
|
|
+nfsd4_encode_read(struct nfsd4_compoundres *resp, __be32 nfserr,
|
|
struct nfsd4_read *read)
|
|
struct nfsd4_read *read)
|
|
{
|
|
{
|
|
u32 eof;
|
|
u32 eof;
|
|
@@ -2268,8 +2268,8 @@ nfsd4_encode_read(struct nfsd4_compoundres *resp, int nfserr,
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
-nfsd4_encode_readlink(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_readlink *readlink)
|
|
|
|
|
|
+static __be32
|
|
|
|
+nfsd4_encode_readlink(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_readlink *readlink)
|
|
{
|
|
{
|
|
int maxcount;
|
|
int maxcount;
|
|
char *page;
|
|
char *page;
|
|
@@ -2316,8 +2316,8 @@ nfsd4_encode_readlink(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_r
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
-nfsd4_encode_readdir(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_readdir *readdir)
|
|
|
|
|
|
+static __be32
|
|
|
|
+nfsd4_encode_readdir(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_readdir *readdir)
|
|
{
|
|
{
|
|
int maxcount;
|
|
int maxcount;
|
|
loff_t offset;
|
|
loff_t offset;
|
|
@@ -2396,7 +2396,7 @@ err_no_verf:
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_remove(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_remove *remove)
|
|
|
|
|
|
+nfsd4_encode_remove(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_remove *remove)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -2408,7 +2408,7 @@ nfsd4_encode_remove(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_rem
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_rename(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_rename *rename)
|
|
|
|
|
|
+nfsd4_encode_rename(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_rename *rename)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -2425,7 +2425,7 @@ nfsd4_encode_rename(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_ren
|
|
* regardless of the error status.
|
|
* regardless of the error status.
|
|
*/
|
|
*/
|
|
static void
|
|
static void
|
|
-nfsd4_encode_setattr(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_setattr *setattr)
|
|
|
|
|
|
+nfsd4_encode_setattr(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_setattr *setattr)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -2444,7 +2444,7 @@ nfsd4_encode_setattr(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_se
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_setclientid(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_setclientid *scd)
|
|
|
|
|
|
+nfsd4_encode_setclientid(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_setclientid *scd)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -2463,7 +2463,7 @@ nfsd4_encode_setclientid(struct nfsd4_compoundres *resp, int nfserr, struct nfsd
|
|
}
|
|
}
|
|
|
|
|
|
static void
|
|
static void
|
|
-nfsd4_encode_write(struct nfsd4_compoundres *resp, int nfserr, struct nfsd4_write *write)
|
|
|
|
|
|
+nfsd4_encode_write(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_write *write)
|
|
{
|
|
{
|
|
ENCODE_HEAD;
|
|
ENCODE_HEAD;
|
|
|
|
|
|
@@ -2641,7 +2641,7 @@ void nfsd4_release_compoundargs(struct nfsd4_compoundargs *args)
|
|
int
|
|
int
|
|
nfs4svc_decode_compoundargs(struct svc_rqst *rqstp, __be32 *p, struct nfsd4_compoundargs *args)
|
|
nfs4svc_decode_compoundargs(struct svc_rqst *rqstp, __be32 *p, struct nfsd4_compoundargs *args)
|
|
{
|
|
{
|
|
- int status;
|
|
|
|
|
|
+ __be32 status;
|
|
|
|
|
|
args->p = p;
|
|
args->p = p;
|
|
args->end = rqstp->rq_arg.head[0].iov_base + rqstp->rq_arg.head[0].iov_len;
|
|
args->end = rqstp->rq_arg.head[0].iov_base + rqstp->rq_arg.head[0].iov_len;
|