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_policy.h 104533 2002-10-05 18:40:10Z rwatson $
38 */
39/*
40 * Kernel interface for MAC policy modules.
41 */
42#ifndef _SYS_MAC_POLICY_H
43#define _SYS_MAC_POLICY_H
44
45/*-
--- 59 unchanged lines hidden (view full) ---
105 /*
106 * Labeling event operations: file system objects, and things that
107 * look a lot like file system objects.
108 */
109 void (*mpo_create_devfs_device)(dev_t dev, struct devfs_dirent *de,
110 struct label *label);
111 void (*mpo_create_devfs_directory)(char *dirname, int dirnamelen,
112 struct devfs_dirent *de, struct label *label);
113 void (*mpo_create_devfs_symlink)(struct ucred *cred,
114 struct devfs_dirent *dd, struct label *ddlabel,
115 struct devfs_dirent *de, struct label *delabel);
116 void (*mpo_create_devfs_vnode)(struct devfs_dirent *de,
117 struct label *direntlabel, struct vnode *vp,
118 struct label *vnodelabel);
119 void (*mpo_create_vnode)(struct ucred *cred, struct vnode *parent,
120 struct label *parentlabel, struct vnode *child,
121 struct label *childlabel);
122 void (*mpo_create_mount)(struct ucred *cred, struct mount *mp,
123 struct label *mntlabel, struct label *fslabel);
--- 261 unchanged lines hidden (view full) ---
385 MAC_DESTROY_SOCKET_LABEL,
386 MAC_DESTROY_SOCKET_PEER_LABEL,
387 MAC_DESTROY_TEMP_LABEL,
388 MAC_DESTROY_VNODE_LABEL,
389 MAC_EXTERNALIZE,
390 MAC_INTERNALIZE,
391 MAC_CREATE_DEVFS_DEVICE,
392 MAC_CREATE_DEVFS_DIRECTORY,
393 MAC_CREATE_DEVFS_SYMLINK,
394 MAC_CREATE_DEVFS_VNODE,
395 MAC_CREATE_VNODE,
396 MAC_CREATE_MOUNT,
397 MAC_CREATE_ROOT_MOUNT,
398 MAC_RELABEL_VNODE,
399 MAC_STDCREATEVNODE_EA,
400 MAC_UPDATE_DEVFSDIRENT,
401 MAC_UPDATE_PROCFSVNODE,
--- 131 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_policy.h 104533 2002-10-05 18:40:10Z rwatson $
38 */
39/*
40 * Kernel interface for MAC policy modules.
41 */
42#ifndef _SYS_MAC_POLICY_H
43#define _SYS_MAC_POLICY_H
44
45/*-
--- 59 unchanged lines hidden (view full) ---
105 /*
106 * Labeling event operations: file system objects, and things that
107 * look a lot like file system objects.
108 */
109 void (*mpo_create_devfs_device)(dev_t dev, struct devfs_dirent *de,
110 struct label *label);
111 void (*mpo_create_devfs_directory)(char *dirname, int dirnamelen,
112 struct devfs_dirent *de, struct label *label);
113 void (*mpo_create_devfs_symlink)(struct ucred *cred,
114 struct devfs_dirent *dd, struct label *ddlabel,
115 struct devfs_dirent *de, struct label *delabel);
116 void (*mpo_create_devfs_vnode)(struct devfs_dirent *de,
117 struct label *direntlabel, struct vnode *vp,
118 struct label *vnodelabel);
119 void (*mpo_create_vnode)(struct ucred *cred, struct vnode *parent,
120 struct label *parentlabel, struct vnode *child,
121 struct label *childlabel);
122 void (*mpo_create_mount)(struct ucred *cred, struct mount *mp,
123 struct label *mntlabel, struct label *fslabel);
--- 261 unchanged lines hidden (view full) ---
385 MAC_DESTROY_SOCKET_LABEL,
386 MAC_DESTROY_SOCKET_PEER_LABEL,
387 MAC_DESTROY_TEMP_LABEL,
388 MAC_DESTROY_VNODE_LABEL,
389 MAC_EXTERNALIZE,
390 MAC_INTERNALIZE,
391 MAC_CREATE_DEVFS_DEVICE,
392 MAC_CREATE_DEVFS_DIRECTORY,
393 MAC_CREATE_DEVFS_SYMLINK,
394 MAC_CREATE_DEVFS_VNODE,
395 MAC_CREATE_VNODE,
396 MAC_CREATE_MOUNT,
397 MAC_CREATE_ROOT_MOUNT,
398 MAC_RELABEL_VNODE,
399 MAC_STDCREATEVNODE_EA,
400 MAC_UPDATE_DEVFSDIRENT,
401 MAC_UPDATE_PROCFSVNODE,
--- 131 unchanged lines hidden ---