Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Dec 2009 13:29:24 +0000 (UTC)
From:      Edward Tomasz Napierala <trasz@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r200058 - head/sys/kern
Message-ID:  <200912031329.nB3DTOk9015128@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: trasz
Date: Thu Dec  3 13:29:24 2009
New Revision: 200058
URL: http://svn.freebsd.org/changeset/base/200058

Log:
  Add change that was somehow missed in r192586.  It could manifest by
  incorrectly returning EINVAL from acl_valid(3) for applications linked
  against pre-8.0 libc.

Modified:
  head/sys/kern/vfs_acl.c

Modified: head/sys/kern/vfs_acl.c
==============================================================================
--- head/sys/kern/vfs_acl.c	Thu Dec  3 12:59:39 2009	(r200057)
+++ head/sys/kern/vfs_acl.c	Thu Dec  3 13:29:24 2009	(r200058)
@@ -173,7 +173,7 @@ acl_copyout(struct acl *kernel_acl, void
 
 /*
  * Convert "old" type - ACL_TYPE_{ACCESS,DEFAULT}_OLD - into its "new"
- * counterpart.  It's required for old (pre-NFS4 ACLs) libc to work
+ * counterpart.  It's required for old (pre-NFSv4 ACLs) libc to work
  * with new kernel.  Fixing 'type' for old binaries with new libc
  * is being done in lib/libc/posix1e/acl_support.c:_acl_type_unold().
  */
@@ -307,7 +307,8 @@ vacl_aclcheck(struct thread *td, struct 
 	error = acl_copyin(aclp, inkernelacl, type);
 	if (error != 0)
 		goto out;
-	error = VOP_ACLCHECK(vp, type, inkernelacl, td->td_ucred, td);
+	error = VOP_ACLCHECK(vp, acl_type_unold(type), inkernelacl,
+	    td->td_ucred, td);
 out:
 	acl_free(inkernelacl);
 	return (error);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912031329.nB3DTOk9015128>