summaryrefslogtreecommitdiff
path: root/fs/nfs_common/nfsacl.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2005-08-11 02:15:12 +0400
committerLinus Torvalds <torvalds@g5.osdl.org>2005-08-16 19:52:11 +0400
commit58fcb8df0bf663bb6b8f46cd3010bfe8d13d97cf (patch)
tree24edbecfb5875cf6c602b1fd5126c7dfce9ae127 /fs/nfs_common/nfsacl.c
parent75cd968ab251ac84dd3a5dc252af7036dc4a64f4 (diff)
downloadlinux-58fcb8df0bf663bb6b8f46cd3010bfe8d13d97cf.tar.xz
[PATCH] NFS: Ensure ACL xdr code doesn't overflow.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/nfs_common/nfsacl.c')
-rw-r--r--fs/nfs_common/nfsacl.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs_common/nfsacl.c b/fs/nfs_common/nfsacl.c
index 18c58c32e326..251e5a1bb1c4 100644
--- a/fs/nfs_common/nfsacl.c
+++ b/fs/nfs_common/nfsacl.c
@@ -239,6 +239,7 @@ nfsacl_decode(struct xdr_buf *buf, unsigned int base, unsigned int *aclcnt,
if (xdr_decode_word(buf, base, &entries) ||
entries > NFS_ACL_MAX_ENTRIES)
return -EINVAL;
+ nfsacl_desc.desc.array_maxlen = entries;
err = xdr_decode_array2(buf, base + 4, &nfsacl_desc.desc);
if (err)
return err;