Deleted Added
full compact
mac_policy.h (107105) mac_policy.h (107698)
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 Network

--- 17 unchanged lines hidden (view full) ---

26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32 * SUCH DAMAGE.
33 *
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 Network

--- 17 unchanged lines hidden (view full) ---

26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32 * SUCH DAMAGE.
33 *
34 * $FreeBSD: head/sys/security/mac/mac_policy.h 107105 2002-11-20 15:41:25Z rwatson $
34 * $FreeBSD: head/sys/security/mac/mac_policy.h 107698 2002-12-09 03:44:28Z rwatson $
35 */
36/*
37 * Kernel interface for MAC policy modules.
38 */
39#ifndef _SYS_MAC_POLICY_H
40#define _SYS_MAC_POLICY_H
41
42/*-

--- 94 unchanged lines hidden (view full) ---

137 struct label *delabel, struct vnode *vp,
138 struct label *vlabel);
139 int (*mpo_associate_vnode_extattr)(struct mount *mp,
140 struct label *fslabel, struct vnode *vp,
141 struct label *vlabel);
142 void (*mpo_associate_vnode_singlelabel)(struct mount *mp,
143 struct label *fslabel, struct vnode *vp,
144 struct label *vlabel);
35 */
36/*
37 * Kernel interface for MAC policy modules.
38 */
39#ifndef _SYS_MAC_POLICY_H
40#define _SYS_MAC_POLICY_H
41
42/*-

--- 94 unchanged lines hidden (view full) ---

137 struct label *delabel, struct vnode *vp,
138 struct label *vlabel);
139 int (*mpo_associate_vnode_extattr)(struct mount *mp,
140 struct label *fslabel, struct vnode *vp,
141 struct label *vlabel);
142 void (*mpo_associate_vnode_singlelabel)(struct mount *mp,
143 struct label *fslabel, struct vnode *vp,
144 struct label *vlabel);
145 void (*mpo_create_devfs_device)(dev_t dev, struct devfs_dirent *de,
146 struct label *label);
147 void (*mpo_create_devfs_directory)(char *dirname, int dirnamelen,
145 void (*mpo_create_devfs_device)(struct mount *mp, dev_t dev,
148 struct devfs_dirent *de, struct label *label);
146 struct devfs_dirent *de, struct label *label);
147 void (*mpo_create_devfs_directory)(struct mount *mp, char *dirname,
148 int dirnamelen, struct devfs_dirent *de,
149 struct label *label);
149 void (*mpo_create_devfs_symlink)(struct ucred *cred,
150 void (*mpo_create_devfs_symlink)(struct ucred *cred,
150 struct devfs_dirent *dd, struct label *ddlabel,
151 struct devfs_dirent *de, struct label *delabel);
151 struct mount *mp, struct devfs_dirent *dd,
152 struct label *ddlabel, struct devfs_dirent *de,
153 struct label *delabel);
152 int (*mpo_create_vnode_extattr)(struct ucred *cred,
153 struct mount *mp, struct label *fslabel,
154 struct vnode *dvp, struct label *dlabel,
155 struct vnode *vp, struct label *vlabel,
156 struct componentname *cnp);
157 void (*mpo_create_mount)(struct ucred *cred, struct mount *mp,
158 struct label *mntlabel, struct label *fslabel);
159 void (*mpo_create_root_mount)(struct ucred *cred, struct mount *mp,
160 struct label *mountlabel, struct label *fslabel);
161 void (*mpo_relabel_vnode)(struct ucred *cred, struct vnode *vp,
162 struct label *vnodelabel, struct label *label);
163 int (*mpo_setlabel_vnode_extattr)(struct ucred *cred,
164 struct vnode *vp, struct label *vlabel,
165 struct label *intlabel);
154 int (*mpo_create_vnode_extattr)(struct ucred *cred,
155 struct mount *mp, struct label *fslabel,
156 struct vnode *dvp, struct label *dlabel,
157 struct vnode *vp, struct label *vlabel,
158 struct componentname *cnp);
159 void (*mpo_create_mount)(struct ucred *cred, struct mount *mp,
160 struct label *mntlabel, struct label *fslabel);
161 void (*mpo_create_root_mount)(struct ucred *cred, struct mount *mp,
162 struct label *mountlabel, struct label *fslabel);
163 void (*mpo_relabel_vnode)(struct ucred *cred, struct vnode *vp,
164 struct label *vnodelabel, struct label *label);
165 int (*mpo_setlabel_vnode_extattr)(struct ucred *cred,
166 struct vnode *vp, struct label *vlabel,
167 struct label *intlabel);
166 void (*mpo_update_devfsdirent)(struct devfs_dirent *devfs_dirent,
168 void (*mpo_update_devfsdirent)(struct mount *mp,
169 struct devfs_dirent *devfs_dirent,
167 struct label *direntlabel, struct vnode *vp,
168 struct label *vnodelabel);
169
170 /*
171 * Labeling event operations: IPC objects.
172 */
173 void (*mpo_create_mbuf_from_socket)(struct socket *so,
174 struct label *socketlabel, struct mbuf *m,

--- 280 unchanged lines hidden ---
170 struct label *direntlabel, struct vnode *vp,
171 struct label *vnodelabel);
172
173 /*
174 * Labeling event operations: IPC objects.
175 */
176 void (*mpo_create_mbuf_from_socket)(struct socket *so,
177 struct label *socketlabel, struct mbuf *m,

--- 280 unchanged lines hidden ---