diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2007-11-01 16:56:53 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@citi.umich.edu> | 2008-02-01 16:42:02 -0500 |
commit | 48df020aa17ac95a012ff765b0086ede5996b320 (patch) | |
tree | 52aa9d1ff1e320ead499bddfe98cb05b06df1311 /include/linux/lockd/xdr.h | |
parent | e5cff482c78a35b9f149a06aa777a1bd693864fb (diff) | |
download | blackbird-op-linux-48df020aa17ac95a012ff765b0086ede5996b320.tar.gz blackbird-op-linux-48df020aa17ac95a012ff765b0086ede5996b320.zip |
NLM: Fix sign of length of NLM variable length strings
According to The Open Group's NLM specification, NLM callers are variable
length strings. XDR variable length strings use an unsigned 32 bit length.
And internally, negative string lengths are not meaningful for the Linux
NLM implementation.
Clean up: Make nlm_lock.len and nlm_reboot.len unsigned integers. This
makes the sign of NLM string lengths consistent with the sign of xdr_netobj
lengths.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Acked-By: NeilBrown <neilb@suse.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Diffstat (limited to 'include/linux/lockd/xdr.h')
-rw-r--r-- | include/linux/lockd/xdr.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/lockd/xdr.h b/include/linux/lockd/xdr.h index 83a1f9f6237b..df18fa053bcd 100644 --- a/include/linux/lockd/xdr.h +++ b/include/linux/lockd/xdr.h @@ -29,7 +29,7 @@ struct svc_rqst; /* Lock info passed via NLM */ struct nlm_lock { char * caller; - int len; /* length of "caller" */ + unsigned int len; /* length of "caller" */ struct nfs_fh fh; struct xdr_netobj oh; u32 svid; @@ -78,7 +78,7 @@ struct nlm_res { */ struct nlm_reboot { char * mon; - int len; + unsigned int len; u32 state; __be32 addr; __be32 vers; |