Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Sep 2012 20:58:15 +0000 (UTC)
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r240928 - head/sys/kern
Message-ID:  <201209252058.q8PKwFOa094577@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: pjd
Date: Tue Sep 25 20:58:15 2012
New Revision: 240928
URL: http://svn.freebsd.org/changeset/base/240928

Log:
  Require CAP_CREATE on directory descriptor for linkat(2).
  
  Sponsored by:	FreeBSD Foundation
  MFC after:	2 weeks

Modified:
  head/sys/kern/vfs_syscalls.c

Modified: head/sys/kern/vfs_syscalls.c
==============================================================================
--- head/sys/kern/vfs_syscalls.c	Tue Sep 25 20:48:49 2012	(r240927)
+++ head/sys/kern/vfs_syscalls.c	Tue Sep 25 20:58:15 2012	(r240928)
@@ -1622,8 +1622,8 @@ kern_linkat(struct thread *td, int fd1, 
 		VFS_UNLOCK_GIANT(vfslocked);
 		return (error);
 	}
-	NDINIT_AT(&nd, CREATE, LOCKPARENT | SAVENAME | MPSAFE | AUDITVNODE2,
-	    segflg, path2, fd2, td);
+	NDINIT_ATRIGHTS(&nd, CREATE, LOCKPARENT | SAVENAME | MPSAFE |
+	    AUDITVNODE2, segflg, path2, fd2, CAP_CREATE, td);
 	if ((error = namei(&nd)) == 0) {
 		lvfslocked = NDHASGIANT(&nd);
 		if (nd.ni_vp != NULL) {



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