diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-04-13 13:49:47 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-04-13 13:50:52 -0400 |
commit | e847469bf77a1d339274074ed068d461f0c872bc (patch) | |
tree | 4e5e9b3fea923432d6745ed1369100d2b941af0d /fs | |
parent | 72094e43e3af5020510f920321d71f1798fa896d (diff) | |
download | kernel_goldelico_gta04-e847469bf77a1d339274074ed068d461f0c872bc.zip kernel_goldelico_gta04-e847469bf77a1d339274074ed068d461f0c872bc.tar.gz kernel_goldelico_gta04-e847469bf77a1d339274074ed068d461f0c872bc.tar.bz2 |
lockd: fix the endianness bug
comparing be32 values for < is not doing the right thing...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/lockd/clnt4xdr.c | 2 | ||||
-rw-r--r-- | fs/lockd/clntxdr.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/fs/lockd/clnt4xdr.c b/fs/lockd/clnt4xdr.c index 3ddcbb1..13ad153 100644 --- a/fs/lockd/clnt4xdr.c +++ b/fs/lockd/clnt4xdr.c @@ -241,7 +241,7 @@ static int decode_nlm4_stat(struct xdr_stream *xdr, __be32 *stat) p = xdr_inline_decode(xdr, 4); if (unlikely(p == NULL)) goto out_overflow; - if (unlikely(*p > nlm4_failed)) + if (unlikely(ntohl(*p) > ntohl(nlm4_failed))) goto out_bad_xdr; *stat = *p; return 0; diff --git a/fs/lockd/clntxdr.c b/fs/lockd/clntxdr.c index 3d35e3e..d269ada 100644 --- a/fs/lockd/clntxdr.c +++ b/fs/lockd/clntxdr.c @@ -236,7 +236,7 @@ static int decode_nlm_stat(struct xdr_stream *xdr, p = xdr_inline_decode(xdr, 4); if (unlikely(p == NULL)) goto out_overflow; - if (unlikely(*p > nlm_lck_denied_grace_period)) + if (unlikely(ntohl(*p) > ntohl(nlm_lck_denied_grace_period))) goto out_enum; *stat = *p; return 0; |