svn commit: r203222 - projects/capabilities8/sys/kern
Robert Watson
rwatson at FreeBSD.org
Sat Jan 30 19:26:35 UTC 2010
Author: rwatson
Date: Sat Jan 30 19:26:34 2010
New Revision: 203222
URL: http://svn.freebsd.org/changeset/base/203222
Log:
Merge c171327 from the p4 TrustedBSD Capabilities branch to capabilities8:
We should, of course, be setting *base to 0, not the local variable base.
Submitted by: Jonathan Anderson <jonathan.anderson at cl.cam.ac.uk>
Modified:
projects/capabilities8/sys/kern/vfs_syscalls.c
Modified: projects/capabilities8/sys/kern/vfs_syscalls.c
==============================================================================
--- projects/capabilities8/sys/kern/vfs_syscalls.c Sat Jan 30 19:26:28 2010 (r203221)
+++ projects/capabilities8/sys/kern/vfs_syscalls.c Sat Jan 30 19:26:34 2010 (r203222)
@@ -165,7 +165,7 @@ getvnode_cap(struct filedesc *fdp, int f
* Several *at() system calls are now supported in capability mode. This function
* finds out what their "*at base" vnode, which is needed by namei(), should be:
*
- * 1. In non-capability (and thus unconstrained) mode, base = 0.
+ * 1. In non-capability (and thus unconstrained) mode, *base = 0.
* 2. In capability mode, base is the vnode given by the fd parameter, subject to
* the condition that the supplied 'rights' parameter (OR'ed with CAP_LOOKUP
* and CAP_ATBASE) is satisfied. The vnode is returned with a shared lock.
@@ -174,7 +174,7 @@ int
fgetbase(struct thread *td, int fd, cap_rights_t rights, struct vnode **base)
{
if (!(td->td_ucred->cr_flags & CRED_FLAG_CAPMODE))
- base = 0;
+ *base = 0;
else {
int error;
More information about the svn-src-projects
mailing list