1/*-
2 * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson
3 * Copyright (c) 2001, 2002 Networks Associates Technology, Inc.
4 * All rights reserved.
5 *
6 * This software was developed by Robert Watson for the TrustedBSD Project.
7 *
8 * This software was developed for the FreeBSD Project in part by NAI Labs,
--- 20 unchanged lines hidden (view full) ---
29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35 * SUCH DAMAGE.
36 *
37 * $FreeBSD: head/sys/security/mac/mac_framework.h 104533 2002-10-05 18:40:10Z rwatson $
38 */
39/*
40 * Userland/kernel interface for Mandatory Access Control.
41 *
42 * The POSIX.1e implementation page may be reached at:
43 * http://www.trustedbsd.org/
44 */
45#ifndef _SYS_MAC_H
--- 193 unchanged lines hidden (view full) ---
239/*
240 * Labeling event operations: file system objects, and things that
241 * look a lot like file system objects.
242 */
243void mac_create_devfs_device(dev_t dev, struct devfs_dirent *de);
244void mac_create_devfs_directory(char *dirname, int dirnamelen,
245 struct devfs_dirent *de);
246void mac_create_devfs_vnode(struct devfs_dirent *de, struct vnode *vp);
247void mac_create_devfs_symlink(struct ucred *cred, struct devfs_dirent *dd,
248 struct devfs_dirent *de);
249void mac_create_vnode(struct ucred *cred, struct vnode *parent,
250 struct vnode *child);
251void mac_create_mount(struct ucred *cred, struct mount *mp);
252void mac_create_root_mount(struct ucred *cred, struct mount *mp);
253void mac_relabel_vnode(struct ucred *cred, struct vnode *vp,
254 struct label *newlabel);
255void mac_update_devfsdirent(struct devfs_dirent *de, struct vnode *vp);
256void mac_update_procfsvnode(struct vnode *vp, struct ucred *cred);
--- 142 unchanged lines hidden ---
2 * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson
3 * Copyright (c) 2001, 2002 Networks Associates Technology, Inc.
4 * All rights reserved.
5 *
6 * This software was developed by Robert Watson for the TrustedBSD Project.
7 *
8 * This software was developed for the FreeBSD Project in part by NAI Labs,
--- 20 unchanged lines hidden (view full) ---
29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35 * SUCH DAMAGE.
36 *
37 * $FreeBSD: head/sys/security/mac/mac_framework.h 104533 2002-10-05 18:40:10Z rwatson $
38 */
39/*
40 * Userland/kernel interface for Mandatory Access Control.
41 *
42 * The POSIX.1e implementation page may be reached at:
43 * http://www.trustedbsd.org/
44 */
45#ifndef _SYS_MAC_H
--- 193 unchanged lines hidden (view full) ---
239/*
240 * Labeling event operations: file system objects, and things that
241 * look a lot like file system objects.
242 */
243void mac_create_devfs_device(dev_t dev, struct devfs_dirent *de);
244void mac_create_devfs_directory(char *dirname, int dirnamelen,
245 struct devfs_dirent *de);
246void mac_create_devfs_vnode(struct devfs_dirent *de, struct vnode *vp);
247void mac_create_devfs_symlink(struct ucred *cred, struct devfs_dirent *dd,
248 struct devfs_dirent *de);
249void mac_create_vnode(struct ucred *cred, struct vnode *parent,
250 struct vnode *child);
251void mac_create_mount(struct ucred *cred, struct mount *mp);
252void mac_create_root_mount(struct ucred *cred, struct mount *mp);
253void mac_relabel_vnode(struct ucred *cred, struct vnode *vp,
254 struct label *newlabel);
255void mac_update_devfsdirent(struct devfs_dirent *de, struct vnode *vp);
256void mac_update_procfsvnode(struct vnode *vp, struct ucred *cred);
--- 142 unchanged lines hidden ---