freebsd-dev/sys/security
Christian S.J. Peron dfc714fba1 Currently, BSM audit pathname token generation for chrooted or jailed
processes are not producing absolute pathname tokens.  It is required
that audited pathnames are generated relative to the global root mount
point.  This modification changes our implementation of audit_canon_path(9)
and introduces a new function: vn_fullpath_global(9) which performs a
vnode -> pathname translation relative to the global mount point based
on the contents of the name cache.  Much like vn_fullpath,
vn_fullpath_global is a wrapper function which called vn_fullpath1.

Further, the string parsing routines have been converted to use the
sbuf(9) framework.  This change also removes the conditional acquisition
of Giant, since the vn_fullpath1 method will not dip into file system
dependent code.

The vnode locking was modified to use vhold()/vdrop() instead the vref()
and vrele().  This will modify the hold count instead of modifying the
user count.  This makes more sense since it's the kernel that requires
the reference to the vnode.  This also makes sure that the vnode does not
get recycled we hold the reference to it. [1]

Discussed with:	rwatson
Reviewed by:	kib [1]
MFC after:	2 weeks
2008-07-31 16:57:41 +00:00
..
audit Currently, BSM audit pathname token generation for chrooted or jailed 2008-07-31 16:57:41 +00:00
mac Rework the lifetime management of the kernel implementation of POSIX 2008-06-27 05:39:04 +00:00
mac_biba Rework the lifetime management of the kernel implementation of POSIX 2008-06-27 05:39:04 +00:00
mac_bsdextended Resort TrustedBSD MAC Framework policy entry point implementations and 2007-10-29 13:33:06 +00:00
mac_ifoff Resort TrustedBSD MAC Framework policy entry point implementations and 2007-10-29 13:33:06 +00:00
mac_lomac The TrustedBSD MAC Framework named struct ipq instances 'ipq', which is the 2008-06-13 22:14:15 +00:00
mac_mls Rework the lifetime management of the kernel implementation of POSIX 2008-06-27 05:39:04 +00:00
mac_none Consistently name functions for mac_<policy> as <policy>_whatever rather 2007-10-25 11:31:11 +00:00
mac_partition Resort TrustedBSD MAC Framework policy entry point implementations and 2007-10-29 13:33:06 +00:00
mac_portacl Consistently name functions for mac_<policy> as <policy>_whatever rather 2007-10-25 11:31:11 +00:00
mac_seeotheruids Resort TrustedBSD MAC Framework policy entry point implementations and 2007-10-29 13:33:06 +00:00
mac_stub Rework the lifetime management of the kernel implementation of POSIX 2008-06-27 05:39:04 +00:00
mac_test Rework the lifetime management of the kernel implementation of POSIX 2008-06-27 05:39:04 +00:00