Sorry. I forgot diff it again. 2009/12/28 Américo Wang <xiyou.wangcong@xxxxxxxxx>: > 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@xxxxxxxxx> >>Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx> >>Cc: linux-fsdevel@xxxxxxxxxxxxxxx >>Cc: linux-kernel@xxxxxxxxxxxxxxx >> >>--- >>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@xxxxxxxxxxxxxxx >>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. > > -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html