summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorJeff Mahoney <jeffm@suse.com>2006-02-13 11:12:36 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-02-13 08:56:01 -0800
commit90947ef26fa689a3252aa8282a01f60648e70fdb (patch)
tree317ab8984d68fed9e4ad6e259c44134907b3021a /fs
parent326a625748535c4cdb1c632b1dcb07030989a393 (diff)
downloadlinux-90947ef26fa689a3252aa8282a01f60648e70fdb.tar.gz
linux-90947ef26fa689a3252aa8282a01f60648e70fdb.tar.bz2
linux-90947ef26fa689a3252aa8282a01f60648e70fdb.zip
[PATCH] reiserfs: fix potential (unlikely) oops in reiserfs_get_acl
This fixes a potential oops if there is an error reported by posix_acl_from_disk(). This is mostly theoretical due to the use of magics and checksums in xattrs, but is still possible. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/reiserfs/xattr_acl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/reiserfs/xattr_acl.c b/fs/reiserfs/xattr_acl.c
index 43de3ba83332..ab8894c3b9e5 100644
--- a/fs/reiserfs/xattr_acl.c
+++ b/fs/reiserfs/xattr_acl.c
@@ -228,7 +228,8 @@ struct posix_acl *reiserfs_get_acl(struct inode *inode, int type)
acl = ERR_PTR(retval);
} else {
acl = posix_acl_from_disk(value, retval);
- *p_acl = posix_acl_dup(acl);
+ if (!IS_ERR(acl))
+ *p_acl = posix_acl_dup(acl);
}
kfree(value);