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_framework.h 107698 2002-12-09 03:44:28Z rwatson $ |
35 */ 36/* 37 * Userland/kernel interface for Mandatory Access Control. 38 * 39 * The POSIX.1e implementation page may be reached at: 40 * http://www.trustedbsd.org/ 41 */ 42#ifndef _SYS_MAC_H --- 123 unchanged lines hidden (view full) --- 166/* 167 * Labeling event operations: file system objects, and things that 168 * look a lot like file system objects. 169 */ 170void mac_associate_vnode_devfs(struct mount *mp, struct devfs_dirent *de, 171 struct vnode *vp); 172int mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp); 173void mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp); |
174void mac_create_devfs_device(struct mount *mp, dev_t dev, |
175 struct devfs_dirent *de); |
176void mac_create_devfs_directory(struct mount *mp, char *dirname, 177 int dirnamelen, struct devfs_dirent *de); 178void mac_create_devfs_symlink(struct ucred *cred, struct mount *mp, 179 struct devfs_dirent *dd, struct devfs_dirent *de); |
180int mac_create_vnode_extattr(struct ucred *cred, struct mount *mp, 181 struct vnode *dvp, struct vnode *vp, struct componentname *cnp); 182void mac_create_mount(struct ucred *cred, struct mount *mp); 183void mac_create_root_mount(struct ucred *cred, struct mount *mp); 184void mac_relabel_vnode(struct ucred *cred, struct vnode *vp, 185 struct label *newlabel); |
186void mac_update_devfsdirent(struct mount *mp, struct devfs_dirent *de, 187 struct vnode *vp); |
188 189/* 190 * Labeling event operations: IPC objects. 191 */ 192void mac_create_mbuf_from_socket(struct socket *so, struct mbuf *m); 193void mac_create_socket(struct ucred *cred, struct socket *socket); 194void mac_create_socket_from_socket(struct socket *oldsocket, 195 struct socket *newsocket); --- 155 unchanged lines hidden --- |