2009-12-17 14:20:34

by liu weni

[permalink] [raw]
Subject: [PATCH 2/3]posix acl:Add an acl check

In this function, the parameter of acl will be called by FOREACH_ACL_ENTRY(macro)
without null pointer check.

I add a Null point checker to it.

In the fs/btrfs/btrfs_acl.c, the posix_acl_equiv_mode will make a error by null pointer.


---
Signed-off-by: Liuwenyi <[email protected]>
Cc: Alexander Viro <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
diff --git a/fs/posix_acl.c b/fs/posix_acl.c
index 39df95a..37d0485 100644
--- a/fs/posix_acl.c
+++ b/fs/posix_acl.c
@@ -150,6 +150,9 @@ posix_acl_equiv_mode(const struct posix_acl *acl, mode_t *mode_p)
mode_t mode = 0;
int not_equiv = 0;

+ if(!acl)
+ return -EINVAL;
+
FOREACH_ACL_ENTRY(pa, acl, pe) {
switch (pa->e_tag) {
case ACL_USER_OBJ:


--------------
Best Regards,
Liuweni
2009-12-17