Messages in this thread | | | Date | Mon, 28 Dec 2009 23:32:36 +0800 | From | Américo Wang <> | Subject | Re: [PATCHv3 1/3]posix_acl: add the pointer check into fs/posix_acl.c |
| |
On Mon, Dec 28, 2009 at 11:00:58PM +0800, liu weni wrote: >If the acl pointer is NULL or have some error, the acl is invalid. >The Macro of FOREACH_ACL_ENTRY will make some error. > >--- >Signed-off-by: Liuwenyi <qingshenlwy@gmail.com> >Cc: Alexander Viro <viro@zeniv.linux.org.uk> >Cc: linux-fsdevel@vger.kernel.org >Cc: linux-kernel@vger.kernel.org > >--- >diff --git a/fs/posix_acl.c b/fs/posix_acl.c >index 39df95a..45f8afa 100644 >--- a/fs/posix_acl.c >+++ b/fs/posix_acl.c >@@ -76,6 +76,12 @@ posix_acl_valid(const struct posix_acl *acl) > unsigned int id = 0; /* keep gcc happy */ > int needs_mask = 0; > >+ if (!acl) >+ return -EINVAL; >+ >+ if (IS_ERR)
Did you even do a compile test? I don't think this line will work...
>+ return PTR_ERR(acl); >+ > FOREACH_ACL_ENTRY(pa, acl, pe) { > if (pa->e_perm & ~(ACL_READ|ACL_WRITE|ACL_EXECUTE)) > return -EINVAL; >-- >To unsubscribe from this list: send the line "unsubscribe linux-kernel" in >the body of a message to majordomo@vger.kernel.org >More majordomo info at http://vger.kernel.org/majordomo-info.html >Please read the FAQ at http://www.tux.org/lkml/
-- Live like a child, think like the god.
| |