Date: Fri, 21 Sep 2001 14:33:23 -0700 (PDT) From: Robert Watson <rwatson@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern vfs_syscalls.c syscalls.master Message-ID: <200109212133.f8LLXNJ06986@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
rwatson 2001/09/21 14:33:23 PDT
Modified files:
sys/kern vfs_syscalls.c syscalls.master
Log:
o Introduce eaccess(2), a version of access(2) that uses the effective
credentials rather than the real credentials. This is useful for
implementing GUI's which need to modify icons based on access rights,
but where use of open(2) is too expensive, use of stat(2) doesn't
reflect the file system's real protection model, and use of
access() suffers from real/effective credential confusion. This
implementation provides the same semantics as the call of the same
name on SCO OpenServer. Note: using this call improperly can
leave you subject to some of the same races present in the
access(2) call.
o To implement this, break out the basic logic of access(2) into
vpaccess(), which accepts a passed credential to perform the
invocation of VOP_ACCESS(). Add eaccess(2) to invoke vpaccess(),
and modify access(2) to use vpaccess().
Obtained from: TrustedBSD Project
Revision Changes Path
1.98 +2 -1 src/sys/kern/syscalls.master
1.205 +68 -15 src/sys/kern/vfs_syscalls.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200109212133.f8LLXNJ06986>
