瀏覽代碼

xfs: validate acl count

This prevents in-memory corruption and possible panics if the on-disk
ACL is badly corrupted.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Ben Myers <bpm@sgi.com>
Christoph Hellwig 13 年之前
父節點
當前提交
fa8b18edd7
共有 1 個文件被更改,包括 2 次插入0 次删除
  1. 2 0
      fs/xfs/xfs_acl.c

+ 2 - 0
fs/xfs/xfs_acl.c

@@ -42,6 +42,8 @@ xfs_acl_from_disk(struct xfs_acl *aclp)
 	int count, i;
 
 	count = be32_to_cpu(aclp->acl_cnt);
+	if (count > XFS_ACL_MAX_ENTRIES)
+		return ERR_PTR(-EFSCORRUPTED);
 
 	acl = posix_acl_alloc(count, GFP_KERNEL);
 	if (!acl)