1101099Srwatson/*- 2225344Srwatson * Copyright (c) 1999-2002, 2007-2011 Robert N. M. Watson 3140632Srwatson * Copyright (c) 2001-2005 McAfee, Inc. 4172930Srwatson * Copyright (c) 2005-2006 SPARTA, Inc. 5182063Srwatson * Copyright (c) 2008 Apple Inc. 6101099Srwatson * All rights reserved. 7101099Srwatson * 8101099Srwatson * This software was developed by Robert Watson for the TrustedBSD Project. 9101099Srwatson * 10140632Srwatson * This software was developed for the FreeBSD Project in part by McAfee 11140632Srwatson * Research, the Security Research Division of McAfee, Inc. under 12140632Srwatson * DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA 13140632Srwatson * CHATS research program. 14101099Srwatson * 15147784Srwatson * This software was enhanced by SPARTA ISSO under SPAWAR contract 16147784Srwatson * N66001-04-C-6019 ("SEFOS"). 17147784Srwatson * 18189529Srwatson * This software was developed at the University of Cambridge Computer 19189529Srwatson * Laboratory with support from a grant from Google, Inc. 20189529Srwatson * 21101099Srwatson * Redistribution and use in source and binary forms, with or without 22101099Srwatson * modification, are permitted provided that the following conditions 23101099Srwatson * are met: 24101099Srwatson * 1. Redistributions of source code must retain the above copyright 25101099Srwatson * notice, this list of conditions and the following disclaimer. 26101099Srwatson * 2. Redistributions in binary form must reproduce the above copyright 27101099Srwatson * notice, this list of conditions and the following disclaimer in the 28101099Srwatson * documentation and/or other materials provided with the distribution. 29101099Srwatson * 30101099Srwatson * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 31101099Srwatson * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 32101099Srwatson * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 33101099Srwatson * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 34101099Srwatson * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 35101099Srwatson * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 36101099Srwatson * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 37101099Srwatson * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 38101099Srwatson * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 39101099Srwatson * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 40101099Srwatson * SUCH DAMAGE. 41101099Srwatson * 42101099Srwatson * $FreeBSD$ 43101099Srwatson */ 44101099Srwatson 45101099Srwatson/* 46101099Srwatson * Developed by the TrustedBSD Project. 47119211Srwatson * 48119211Srwatson * Stub module that implements a NOOP for most (if not all) MAC Framework 49119211Srwatson * policy entry points. 50101099Srwatson */ 51101099Srwatson 52101099Srwatson#include <sys/types.h> 53101099Srwatson#include <sys/param.h> 54101099Srwatson#include <sys/acl.h> 55101099Srwatson#include <sys/conf.h> 56105988Srwatson#include <sys/extattr.h> 57101099Srwatson#include <sys/kernel.h> 58164184Strhodes#include <sys/ksem.h> 59101099Srwatson#include <sys/mount.h> 60101099Srwatson#include <sys/proc.h> 61101099Srwatson#include <sys/systm.h> 62101099Srwatson#include <sys/sysproto.h> 63101099Srwatson#include <sys/sysent.h> 64101099Srwatson#include <sys/vnode.h> 65101099Srwatson#include <sys/file.h> 66101099Srwatson#include <sys/socket.h> 67101099Srwatson#include <sys/socketvar.h> 68101099Srwatson#include <sys/pipe.h> 69150340Sphk#include <sys/sx.h> 70101099Srwatson#include <sys/sysctl.h> 71140632Srwatson#include <sys/msg.h> 72140632Srwatson#include <sys/sem.h> 73140632Srwatson#include <sys/shm.h> 74101099Srwatson 75101099Srwatson#include <fs/devfs/devfs.h> 76101099Srwatson 77101099Srwatson#include <net/bpfdesc.h> 78101099Srwatson#include <net/if.h> 79101099Srwatson#include <net/if_types.h> 80101099Srwatson#include <net/if_var.h> 81101099Srwatson 82101099Srwatson#include <netinet/in.h> 83122875Srwatson#include <netinet/in_pcb.h> 84101099Srwatson#include <netinet/ip_var.h> 85101099Srwatson 86101099Srwatson#include <vm/vm.h> 87101099Srwatson 88165469Srwatson#include <security/mac/mac_policy.h> 89101099Srwatson 90101099SrwatsonSYSCTL_DECL(_security_mac); 91101099Srwatson 92227309Sedstatic SYSCTL_NODE(_security_mac, OID_AUTO, stub, CTLFLAG_RW, 0, 93119211Srwatson "TrustedBSD mac_stub policy controls"); 94101099Srwatson 95119211Srwatsonstatic int stub_enabled = 1; 96119211SrwatsonSYSCTL_INT(_security_mac_stub, OID_AUTO, enabled, CTLFLAG_RW, 97119211Srwatson &stub_enabled, 0, "Enforce mac_stub policy"); 98101099Srwatson 99101099Srwatson/* 100101099Srwatson * Policy module operations. 101101099Srwatson */ 102101099Srwatsonstatic void 103119211Srwatsonstub_destroy(struct mac_policy_conf *conf) 104101099Srwatson{ 105101099Srwatson 106101099Srwatson} 107101099Srwatson 108101099Srwatsonstatic void 109119211Srwatsonstub_init(struct mac_policy_conf *conf) 110101099Srwatson{ 111101099Srwatson 112101099Srwatson} 113101099Srwatson 114102162Srwatsonstatic int 115119211Srwatsonstub_syscall(struct thread *td, int call, void *arg) 116102162Srwatson{ 117102162Srwatson 118102162Srwatson return (0); 119102162Srwatson} 120102162Srwatson 121101099Srwatson/* 122101099Srwatson * Label operations. 123101099Srwatson */ 124101099Srwatsonstatic void 125119211Srwatsonstub_init_label(struct label *label) 126101099Srwatson{ 127101099Srwatson 128101099Srwatson} 129101099Srwatson 130101099Srwatsonstatic int 131119211Srwatsonstub_init_label_waitcheck(struct label *label, int flag) 132101099Srwatson{ 133101099Srwatson 134101099Srwatson return (0); 135101099Srwatson} 136101099Srwatson 137101099Srwatsonstatic void 138119211Srwatsonstub_destroy_label(struct label *label) 139101099Srwatson{ 140101099Srwatson 141101099Srwatson} 142101099Srwatson 143122808Srwatsonstatic void 144122808Srwatsonstub_copy_label(struct label *src, struct label *dest) 145122808Srwatson{ 146122808Srwatson 147122808Srwatson} 148122808Srwatson 149101099Srwatsonstatic int 150119211Srwatsonstub_externalize_label(struct label *label, char *element_name, 151116701Srwatson struct sbuf *sb, int *claimed) 152101099Srwatson{ 153101099Srwatson 154101099Srwatson return (0); 155101099Srwatson} 156101099Srwatson 157101099Srwatsonstatic int 158119211Srwatsonstub_internalize_label(struct label *label, char *element_name, 159105696Srwatson char *element_data, int *claimed) 160105696Srwatson{ 161105696Srwatson 162105696Srwatson return (0); 163105696Srwatson} 164105696Srwatson 165101099Srwatson/* 166173138Srwatson * Object-specific entry point imeplementations are sorted alphabetically by 167173138Srwatson * object type name and then by operation. 168101099Srwatson */ 169105988Srwatsonstatic int 170173138Srwatsonstub_bpfdesc_check_receive(struct bpf_d *d, struct label *dlabel, 171173138Srwatson struct ifnet *ifp, struct label *ifplabel) 172105988Srwatson{ 173105988Srwatson 174173138Srwatson return (0); 175105988Srwatson} 176105988Srwatson 177105988Srwatsonstatic void 178173138Srwatsonstub_bpfdesc_create(struct ucred *cred, struct bpf_d *d, 179173138Srwatson struct label *dlabel) 180105988Srwatson{ 181105988Srwatson 182105988Srwatson} 183105988Srwatson 184105988Srwatsonstatic void 185173138Srwatsonstub_bpfdesc_create_mbuf(struct bpf_d *d, struct label *dlabel, 186173138Srwatson struct mbuf *m, struct label *mlabel) 187101099Srwatson{ 188101099Srwatson 189101099Srwatson} 190101099Srwatson 191184407Srwatsonstatic void 192184407Srwatsonstub_cred_associate_nfsd(struct ucred *cred) 193184407Srwatson{ 194184407Srwatson 195184407Srwatson} 196184407Srwatson 197173138Srwatsonstatic int 198173138Srwatsonstub_cred_check_relabel(struct ucred *cred, struct label *newlabel) 199104535Srwatson{ 200104535Srwatson 201173138Srwatson return (0); 202104535Srwatson} 203104535Srwatson 204105988Srwatsonstatic int 205189529Srwatsonstub_cred_check_setaudit(struct ucred *cred, struct auditinfo *ai) 206189529Srwatson{ 207189529Srwatson 208189529Srwatson return (0); 209189529Srwatson} 210189529Srwatson 211189529Srwatsonstatic int 212189529Srwatsonstub_cred_check_setaudit_addr(struct ucred *cred, struct auditinfo_addr *aia) 213189529Srwatson{ 214189529Srwatson 215189529Srwatson return (0); 216189529Srwatson} 217189529Srwatson 218189529Srwatsonstatic int 219189529Srwatsonstub_cred_check_setauid(struct ucred *cred, uid_t auid) 220189529Srwatson{ 221189529Srwatson 222189529Srwatson return (0); 223189529Srwatson} 224189529Srwatson 225189529Srwatsonstatic int 226189529Srwatsonstub_cred_check_setegid(struct ucred *cred, gid_t egid) 227189529Srwatson{ 228189529Srwatson 229189529Srwatson return (0); 230189529Srwatson} 231189529Srwatson 232189529Srwatsonstatic int 233189529Srwatsonstub_cred_check_seteuid(struct ucred *cred, uid_t euid) 234189529Srwatson{ 235189529Srwatson 236189529Srwatson return (0); 237189529Srwatson} 238189529Srwatson 239189529Srwatsonstatic int 240189529Srwatsonstub_cred_check_setgid(struct ucred *cred, gid_t gid) 241189529Srwatson{ 242189529Srwatson 243189529Srwatson return (0); 244189529Srwatson} 245189529Srwatson 246189529Srwatsonstatic int 247189529Srwatsonstub_cred_check_setgroups(struct ucred *cred, int ngroups, 248189529Srwatson gid_t *gidset) 249189529Srwatson{ 250189529Srwatson 251189529Srwatson return (0); 252189529Srwatson} 253189529Srwatson 254189529Srwatsonstatic int 255189529Srwatsonstub_cred_check_setregid(struct ucred *cred, gid_t rgid, gid_t egid) 256189529Srwatson{ 257189529Srwatson 258189529Srwatson return (0); 259189529Srwatson} 260189529Srwatson 261189529Srwatsonstatic int 262189529Srwatsonstub_cred_check_setresgid(struct ucred *cred, gid_t rgid, gid_t egid, 263189529Srwatson gid_t sgid) 264189529Srwatson{ 265189529Srwatson 266189529Srwatson return (0); 267189529Srwatson} 268189529Srwatson 269189529Srwatsonstatic int 270189529Srwatsonstub_cred_check_setresuid(struct ucred *cred, uid_t ruid, uid_t euid, 271189529Srwatson uid_t suid) 272189529Srwatson{ 273189529Srwatson 274189529Srwatson return (0); 275189529Srwatson} 276189529Srwatson 277189529Srwatsonstatic int 278189529Srwatsonstub_cred_check_setreuid(struct ucred *cred, uid_t ruid, uid_t euid) 279189529Srwatson{ 280189529Srwatson 281189529Srwatson return (0); 282189529Srwatson} 283189529Srwatson 284189529Srwatsonstatic int 285189529Srwatsonstub_cred_check_setuid(struct ucred *cred, uid_t uid) 286189529Srwatson{ 287189529Srwatson 288189529Srwatson return (0); 289189529Srwatson} 290189529Srwatson 291189529Srwatsonstatic int 292173138Srwatsonstub_cred_check_visible(struct ucred *cr1, struct ucred *cr2) 293101099Srwatson{ 294101099Srwatson 295105988Srwatson return (0); 296101099Srwatson} 297101099Srwatson 298101099Srwatsonstatic void 299184407Srwatsonstub_cred_create_init(struct ucred *cred) 300184407Srwatson{ 301184407Srwatson 302184407Srwatson} 303184407Srwatson 304184407Srwatsonstatic void 305184407Srwatsonstub_cred_create_swapper(struct ucred *cred) 306184407Srwatson{ 307184407Srwatson 308184407Srwatson} 309184407Srwatson 310184407Srwatsonstatic void 311173138Srwatsonstub_cred_relabel(struct ucred *cred, struct label *newlabel) 312101099Srwatson{ 313101099Srwatson 314101099Srwatson} 315101099Srwatson 316101099Srwatsonstatic void 317173138Srwatsonstub_devfs_create_device(struct ucred *cred, struct mount *mp, 318173138Srwatson struct cdev *dev, struct devfs_dirent *de, struct label *delabel) 319101099Srwatson{ 320101099Srwatson 321101099Srwatson} 322101099Srwatson 323101099Srwatsonstatic void 324173138Srwatsonstub_devfs_create_directory(struct mount *mp, char *dirname, 325173138Srwatson int dirnamelen, struct devfs_dirent *de, struct label *delabel) 326101099Srwatson{ 327101099Srwatson 328101099Srwatson} 329101099Srwatson 330101099Srwatsonstatic void 331173138Srwatsonstub_devfs_create_symlink(struct ucred *cred, struct mount *mp, 332173138Srwatson struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, 333173138Srwatson struct label *delabel) 334101099Srwatson{ 335101099Srwatson 336101099Srwatson} 337101099Srwatson 338101099Srwatsonstatic void 339173138Srwatsonstub_devfs_update(struct mount *mp, struct devfs_dirent *de, 340173138Srwatson struct label *delabel, struct vnode *vp, struct label *vplabel) 341101099Srwatson{ 342101099Srwatson 343101099Srwatson} 344101099Srwatson 345101099Srwatsonstatic void 346173138Srwatsonstub_devfs_vnode_associate(struct mount *mp, struct label *mplabel, 347173138Srwatson struct devfs_dirent *de, struct label *delabel, struct vnode *vp, 348173138Srwatson struct label *vplabel) 349101099Srwatson{ 350101099Srwatson 351101099Srwatson} 352101099Srwatson 353173138Srwatsonstatic int 354173138Srwatsonstub_ifnet_check_relabel(struct ucred *cred, struct ifnet *ifp, 355173138Srwatson struct label *ifplabel, struct label *newlabel) 356145855Srwatson{ 357145855Srwatson 358173138Srwatson return (0); 359145855Srwatson} 360145855Srwatson 361173138Srwatsonstatic int 362173138Srwatsonstub_ifnet_check_transmit(struct ifnet *ifp, struct label *ifplabel, 363173138Srwatson struct mbuf *m, struct label *mlabel) 364101099Srwatson{ 365101099Srwatson 366173138Srwatson return (0); 367101099Srwatson} 368101099Srwatson 369101099Srwatsonstatic void 370173138Srwatsonstub_ifnet_create(struct ifnet *ifp, struct label *ifplabel) 371101099Srwatson{ 372101099Srwatson 373101099Srwatson} 374101099Srwatson 375101099Srwatsonstatic void 376173138Srwatsonstub_ifnet_create_mbuf(struct ifnet *ifp, struct label *ifplabel, 377173138Srwatson struct mbuf *m, struct label *mlabel) 378101099Srwatson{ 379101099Srwatson 380101099Srwatson} 381101099Srwatson 382101099Srwatsonstatic void 383173138Srwatsonstub_ifnet_relabel(struct ucred *cred, struct ifnet *ifp, 384173138Srwatson struct label *ifplabel, struct label *newlabel) 385101099Srwatson{ 386101099Srwatson 387101099Srwatson} 388101099Srwatson 389173138Srwatsonstatic int 390173138Srwatsonstub_inpcb_check_deliver(struct inpcb *inp, struct label *inplabel, 391173138Srwatson struct mbuf *m, struct label *mlabel) 392101099Srwatson{ 393101099Srwatson 394173138Srwatson return (0); 395101099Srwatson} 396101099Srwatson 397101099Srwatsonstatic void 398173138Srwatsonstub_inpcb_create(struct socket *so, struct label *solabel, 399173138Srwatson struct inpcb *inp, struct label *inplabel) 400101099Srwatson{ 401101099Srwatson 402101099Srwatson} 403101099Srwatson 404101099Srwatsonstatic void 405173138Srwatsonstub_inpcb_create_mbuf(struct inpcb *inp, struct label *inplabel, 406168976Srwatson struct mbuf *m, struct label *mlabel) 407101099Srwatson{ 408101099Srwatson 409101099Srwatson} 410101099Srwatson 411101099Srwatsonstatic void 412173138Srwatsonstub_inpcb_sosetlabel(struct socket *so, struct label *solabel, 413173138Srwatson struct inpcb *inp, struct label *inplabel) 414101099Srwatson{ 415101099Srwatson 416193391Srwatson SOCK_LOCK_ASSERT(so); 417193391Srwatson 418101099Srwatson} 419101099Srwatson 420101099Srwatsonstatic void 421184308Srwatsonstub_ip6q_create(struct mbuf *m, struct label *mlabel, struct ip6q *q6, 422184308Srwatson struct label *q6label) 423184308Srwatson{ 424184308Srwatson 425184308Srwatson} 426184308Srwatson 427184308Srwatsonstatic int 428184308Srwatsonstub_ip6q_match(struct mbuf *m, struct label *mlabel, struct ip6q *q6, 429184308Srwatson struct label *q6label) 430184308Srwatson{ 431184308Srwatson 432184308Srwatson return (1); 433184308Srwatson} 434184308Srwatson 435184308Srwatsonstatic void 436184308Srwatsonstub_ip6q_reassemble(struct ip6q *q6, struct label *q6label, struct mbuf *m, 437184308Srwatson struct label *mlabel) 438184308Srwatson{ 439184308Srwatson 440184308Srwatson} 441184308Srwatson 442184308Srwatsonstatic void 443184308Srwatsonstub_ip6q_update(struct mbuf *m, struct label *mlabel, struct ip6q *q6, 444184308Srwatson struct label *q6label) 445184308Srwatson{ 446184308Srwatson 447184308Srwatson} 448184308Srwatson 449184308Srwatsonstatic void 450179781Srwatsonstub_ipq_create(struct mbuf *m, struct label *mlabel, struct ipq *q, 451179781Srwatson struct label *qlabel) 452101099Srwatson{ 453101099Srwatson 454101099Srwatson} 455101099Srwatson 456173138Srwatsonstatic int 457179781Srwatsonstub_ipq_match(struct mbuf *m, struct label *mlabel, struct ipq *q, 458179781Srwatson struct label *qlabel) 459122875Srwatson{ 460122875Srwatson 461173138Srwatson return (1); 462122875Srwatson} 463122875Srwatson 464122875Srwatsonstatic void 465179781Srwatsonstub_ipq_reassemble(struct ipq *q, struct label *qlabel, struct mbuf *m, 466179781Srwatson struct label *mlabel) 467165715Scsjp{ 468165715Scsjp 469165715Scsjp} 470165715Scsjp 471165715Scsjpstatic void 472179781Srwatsonstub_ipq_update(struct mbuf *m, struct label *mlabel, struct ipq *q, 473179781Srwatson struct label *qlabel) 474140632Srwatson{ 475140632Srwatson 476140632Srwatson} 477140632Srwatson 478173138Srwatsonstatic int 479173138Srwatsonstub_kenv_check_dump(struct ucred *cred) 480140632Srwatson{ 481140632Srwatson 482173138Srwatson return (0); 483140632Srwatson} 484140632Srwatson 485173138Srwatsonstatic int 486173138Srwatsonstub_kenv_check_get(struct ucred *cred, char *name) 487140632Srwatson{ 488140632Srwatson 489173138Srwatson return (0); 490140632Srwatson} 491140632Srwatson 492173138Srwatsonstatic int 493173138Srwatsonstub_kenv_check_set(struct ucred *cred, char *name, char *value) 494140632Srwatson{ 495140632Srwatson 496173138Srwatson return (0); 497140632Srwatson} 498140632Srwatson 499173138Srwatsonstatic int 500173138Srwatsonstub_kenv_check_unset(struct ucred *cred, char *name) 501101099Srwatson{ 502101099Srwatson 503173138Srwatson return (0); 504101099Srwatson} 505101099Srwatson 506173138Srwatsonstatic int 507173138Srwatsonstub_kld_check_load(struct ucred *cred, struct vnode *vp, 508173138Srwatson struct label *vplabel) 509123607Srwatson{ 510123607Srwatson 511173138Srwatson return (0); 512123607Srwatson} 513123607Srwatson 514173138Srwatsonstatic int 515173138Srwatsonstub_kld_check_stat(struct ucred *cred) 516165715Scsjp{ 517165715Scsjp 518173138Srwatson return (0); 519165715Scsjp} 520165715Scsjp 521173138Srwatsonstatic int 522173138Srwatsonstub_mount_check_stat(struct ucred *cred, struct mount *mp, 523173138Srwatson struct label *mplabel) 524101099Srwatson{ 525101099Srwatson 526173138Srwatson return (0); 527101099Srwatson} 528101099Srwatson 529101099Srwatsonstatic void 530173138Srwatsonstub_mount_create(struct ucred *cred, struct mount *mp, 531173138Srwatson struct label *mplabel) 532101099Srwatson{ 533101099Srwatson 534101099Srwatson} 535101099Srwatson 536101099Srwatsonstatic void 537173102Srwatsonstub_netinet_arp_send(struct ifnet *ifp, struct label *iflpabel, 538173095Srwatson struct mbuf *m, struct label *mlabel) 539173095Srwatson{ 540173095Srwatson 541173095Srwatson} 542173095Srwatson 543173095Srwatsonstatic void 544173102Srwatsonstub_netinet_firewall_reply(struct mbuf *mrecv, struct label *mrecvlabel, 545173102Srwatson struct mbuf *msend, struct label *msendlabel) 546173095Srwatson{ 547173095Srwatson 548173095Srwatson} 549173095Srwatson 550173095Srwatsonstatic void 551173018Srwatsonstub_netinet_firewall_send(struct mbuf *m, struct label *mlabel) 552165715Scsjp{ 553165715Scsjp 554165715Scsjp} 555165715Scsjp 556173095Srwatsonstatic void 557173138Srwatsonstub_netinet_fragment(struct mbuf *m, struct label *mlabel, struct mbuf *frag, 558173138Srwatson struct label *fraglabel) 559173138Srwatson{ 560173138Srwatson 561173138Srwatson} 562173138Srwatson 563173138Srwatsonstatic void 564173102Srwatsonstub_netinet_icmp_reply(struct mbuf *mrecv, struct label *mrecvlabel, 565173102Srwatson struct mbuf *msend, struct label *msendlabel) 566173102Srwatson{ 567173102Srwatson 568173102Srwatson} 569173102Srwatson 570173102Srwatsonstatic void 571173102Srwatsonstub_netinet_icmp_replyinplace(struct mbuf *m, struct label *mlabel) 572173102Srwatson{ 573173102Srwatson 574173102Srwatson} 575173102Srwatson 576173102Srwatsonstatic void 577173095Srwatsonstub_netinet_igmp_send(struct ifnet *ifp, struct label *iflpabel, 578173095Srwatson struct mbuf *m, struct label *mlabel) 579173095Srwatson{ 580173095Srwatson 581173095Srwatson} 582173095Srwatson 583173095Srwatsonstatic void 584173138Srwatsonstub_netinet_tcp_reply(struct mbuf *m, struct label *mlabel) 585173095Srwatson{ 586173095Srwatson 587173095Srwatson} 588173095Srwatson 589173138Srwatsonstatic void 590173138Srwatsonstub_netinet6_nd6_send(struct ifnet *ifp, struct label *iflpabel, 591173138Srwatson struct mbuf *m, struct label *mlabel) 592101099Srwatson{ 593101099Srwatson 594101099Srwatson} 595101099Srwatson 596173138Srwatsonstatic int 597173138Srwatsonstub_pipe_check_ioctl(struct ucred *cred, struct pipepair *pp, 598173138Srwatson struct label *pplabel, unsigned long cmd, void /* caddr_t */ *data) 599119223Srwatson{ 600119223Srwatson 601173138Srwatson return (0); 602119223Srwatson} 603119223Srwatson 604173138Srwatsonstatic int 605173138Srwatsonstub_pipe_check_poll(struct ucred *cred, struct pipepair *pp, 606173138Srwatson struct label *pplabel) 607101099Srwatson{ 608101099Srwatson 609173138Srwatson return (0); 610101099Srwatson} 611101099Srwatson 612173138Srwatsonstatic int 613173138Srwatsonstub_pipe_check_read(struct ucred *cred, struct pipepair *pp, 614173138Srwatson struct label *pplabel) 615101099Srwatson{ 616101099Srwatson 617173138Srwatson return (0); 618101099Srwatson} 619101099Srwatson 620173138Srwatsonstatic int 621173138Srwatsonstub_pipe_check_relabel(struct ucred *cred, struct pipepair *pp, 622173138Srwatson struct label *pplabel, struct label *newlabel) 623122875Srwatson{ 624122875Srwatson 625173138Srwatson return (0); 626122875Srwatson} 627122875Srwatson 628173138Srwatsonstatic int 629173138Srwatsonstub_pipe_check_stat(struct ucred *cred, struct pipepair *pp, 630173138Srwatson struct label *pplabel) 631101099Srwatson{ 632101099Srwatson 633173138Srwatson return (0); 634101099Srwatson} 635101099Srwatson 636101099Srwatsonstatic int 637173138Srwatsonstub_pipe_check_write(struct ucred *cred, struct pipepair *pp, 638173138Srwatson struct label *pplabel) 639101099Srwatson{ 640101099Srwatson 641101099Srwatson return (0); 642101099Srwatson} 643101099Srwatson 644101099Srwatsonstatic void 645173138Srwatsonstub_pipe_create(struct ucred *cred, struct pipepair *pp, 646173138Srwatson struct label *pplabel) 647101099Srwatson{ 648101099Srwatson 649101099Srwatson} 650101099Srwatson 651101099Srwatsonstatic void 652173138Srwatsonstub_pipe_relabel(struct ucred *cred, struct pipepair *pp, 653173138Srwatson struct label *pplabel, struct label *newlabel) 654101099Srwatson{ 655101099Srwatson 656101099Srwatson} 657101099Srwatson 658173138Srwatsonstatic int 659180059Sjhbstub_posixsem_check_getvalue(struct ucred *active_cred, struct ucred *file_cred, 660180059Sjhb struct ksem *ks, struct label *kslabel) 661101099Srwatson{ 662101099Srwatson 663173138Srwatson return (0); 664101099Srwatson} 665101099Srwatson 666173138Srwatsonstatic int 667173138Srwatsonstub_posixsem_check_open(struct ucred *cred, struct ksem *ks, 668173138Srwatson struct label *kslabel) 669112577Srwatson{ 670112577Srwatson 671173138Srwatson return (0); 672112577Srwatson} 673112577Srwatson 674173138Srwatsonstatic int 675180059Sjhbstub_posixsem_check_post(struct ucred *active_cred, struct ucred *file_cred, 676180059Sjhb struct ksem *ks, struct label *kslabel) 677140632Srwatson{ 678140632Srwatson 679173138Srwatson return (0); 680140632Srwatson} 681140632Srwatson 682173138Srwatsonstatic int 683224914Skibstub_posixsem_check_setmode(struct ucred *cred, struct ksem *ks, 684224914Skib struct label *kslabel, mode_t mode) 685224914Skib{ 686224914Skib 687224914Skib return (0); 688224914Skib} 689224914Skib 690224914Skibstatic int 691224914Skibstub_posixsem_check_setowner(struct ucred *cred, struct ksem *ks, 692224914Skib struct label *kslabel, uid_t uid, gid_t gid) 693224914Skib{ 694224914Skib 695224914Skib return (0); 696224914Skib} 697224914Skib 698224914Skibstatic int 699180059Sjhbstub_posixsem_check_stat(struct ucred *active_cred, struct ucred *file_cred, 700180059Sjhb struct ksem *ks, struct label *kslabel) 701180059Sjhb{ 702180059Sjhb 703180059Sjhb return (0); 704180059Sjhb} 705180059Sjhb 706180059Sjhbstatic int 707173138Srwatsonstub_posixsem_check_unlink(struct ucred *cred, struct ksem *ks, 708173138Srwatson struct label *kslabel) 709140632Srwatson{ 710140632Srwatson 711173138Srwatson return (0); 712140632Srwatson} 713140632Srwatson 714173138Srwatsonstatic int 715180059Sjhbstub_posixsem_check_wait(struct ucred *active_cred, struct ucred *file_cred, 716180059Sjhb struct ksem *ks, struct label *kslabel) 717140632Srwatson{ 718140632Srwatson 719173138Srwatson return (0); 720140632Srwatson} 721140632Srwatson 722140632Srwatsonstatic void 723173138Srwatsonstub_posixsem_create(struct ucred *cred, struct ksem *ks, 724173138Srwatson struct label *kslabel) 725140632Srwatson{ 726140632Srwatson 727140632Srwatson} 728140632Srwatson 729101099Srwatsonstatic int 730225344Srwatsonstub_posixshm_check_create(struct ucred *cred, const char *path) 731225344Srwatson{ 732225344Srwatson 733225344Srwatson return (0); 734225344Srwatson} 735225344Srwatson 736225344Srwatsonstatic int 737175164Sjhbstub_posixshm_check_mmap(struct ucred *cred, struct shmfd *shmfd, 738175164Sjhb struct label *shmlabel, int prot, int flags) 739175164Sjhb{ 740175164Sjhb 741175164Sjhb return (0); 742175164Sjhb} 743175164Sjhb 744175164Sjhbstatic int 745175164Sjhbstub_posixshm_check_open(struct ucred *cred, struct shmfd *shmfd, 746225344Srwatson struct label *shmlabel, accmode_t accmode) 747175164Sjhb{ 748175164Sjhb 749175164Sjhb return (0); 750175164Sjhb} 751175164Sjhb 752175164Sjhbstatic int 753254603Skibstub_posixshm_check_read(struct ucred *active_cred, struct ucred *file_cred, 754254603Skib struct shmfd *shm, struct label *shmlabel) 755254603Skib{ 756254603Skib 757254603Skib return (0); 758254603Skib} 759254603Skib 760254603Skibstatic int 761224914Skibstub_posixshm_check_setmode(struct ucred *cred, struct shmfd *shmfd, 762224914Skib struct label *shmlabel, mode_t mode) 763224914Skib{ 764224914Skib 765224914Skib return (0); 766224914Skib} 767224914Skib 768224914Skibstatic int 769224914Skibstub_posixshm_check_setowner(struct ucred *cred, struct shmfd *shmfd, 770224914Skib struct label *shmlabel, uid_t uid, gid_t gid) 771224914Skib{ 772224914Skib 773224914Skib return (0); 774224914Skib} 775224914Skib 776224914Skibstatic int 777175164Sjhbstub_posixshm_check_stat(struct ucred *active_cred, struct ucred *file_cred, 778175164Sjhb struct shmfd *shmfd, struct label *shmlabel) 779175164Sjhb{ 780175164Sjhb 781175164Sjhb return (0); 782175164Sjhb} 783175164Sjhb 784175164Sjhbstatic int 785175164Sjhbstub_posixshm_check_truncate(struct ucred *active_cred, 786175164Sjhb struct ucred *file_cred, struct shmfd *shmfd, struct label *shmlabel) 787175164Sjhb{ 788175164Sjhb 789175164Sjhb return (0); 790175164Sjhb} 791175164Sjhb 792175164Sjhbstatic int 793175164Sjhbstub_posixshm_check_unlink(struct ucred *cred, struct shmfd *shmfd, 794175164Sjhb struct label *shmlabel) 795175164Sjhb{ 796175164Sjhb 797175164Sjhb return (0); 798175164Sjhb} 799175164Sjhb 800254603Skibstatic int 801254603Skibstub_posixshm_check_write(struct ucred *active_cred, struct ucred *file_cred, 802254603Skib struct shmfd *shm, struct label *shmlabel) 803254603Skib{ 804254603Skib 805254603Skib return (0); 806254603Skib} 807254603Skib 808175164Sjhbstatic void 809175164Sjhbstub_posixshm_create(struct ucred *cred, struct shmfd *shmfd, 810175164Sjhb struct label *shmlabel) 811175164Sjhb{ 812175164Sjhb 813175164Sjhb} 814175164Sjhb 815175164Sjhbstatic int 816173138Srwatsonstub_priv_check(struct ucred *cred, int priv) 817101099Srwatson{ 818101099Srwatson 819173138Srwatson return (0); 820101099Srwatson} 821101099Srwatson 822101099Srwatsonstatic int 823173138Srwatsonstub_priv_grant(struct ucred *cred, int priv) 824101099Srwatson{ 825101099Srwatson 826173138Srwatson return (EPERM); 827101099Srwatson} 828101099Srwatson 829101099Srwatsonstatic int 830173138Srwatsonstub_proc_check_debug(struct ucred *cred, struct proc *p) 831101099Srwatson{ 832101099Srwatson 833101099Srwatson return (0); 834101099Srwatson} 835101099Srwatson 836101099Srwatsonstatic int 837173138Srwatsonstub_proc_check_sched(struct ucred *cred, struct proc *p) 838101099Srwatson{ 839101099Srwatson 840101099Srwatson return (0); 841101099Srwatson} 842101099Srwatson 843101099Srwatsonstatic int 844173138Srwatsonstub_proc_check_signal(struct ucred *cred, struct proc *p, int signum) 845140632Srwatson{ 846140632Srwatson 847140632Srwatson return (0); 848140632Srwatson} 849140632Srwatson 850140632Srwatsonstatic int 851173138Srwatsonstub_proc_check_wait(struct ucred *cred, struct proc *p) 852140632Srwatson{ 853140632Srwatson 854140632Srwatson return (0); 855140632Srwatson} 856140632Srwatson 857112577Srwatsonstatic int 858173138Srwatsonstub_socket_check_accept(struct ucred *cred, struct socket *so, 859173138Srwatson struct label *solabel) 860112577Srwatson{ 861112577Srwatson 862193391Srwatson#if 0 863193391Srwatson SOCK_LOCK(so); 864193391Srwatson SOCK_UNLOCK(so); 865193391Srwatson#endif 866193391Srwatson 867112577Srwatson return (0); 868112577Srwatson} 869112577Srwatson 870112577Srwatsonstatic int 871173138Srwatsonstub_socket_check_bind(struct ucred *cred, struct socket *so, 872173138Srwatson struct label *solabel, struct sockaddr *sa) 873112577Srwatson{ 874112577Srwatson 875193391Srwatson#if 0 876193391Srwatson SOCK_LOCK(so); 877193391Srwatson SOCK_UNLOCK(so); 878193391Srwatson#endif 879193391Srwatson 880112577Srwatson return (0); 881112577Srwatson} 882112577Srwatson 883112577Srwatsonstatic int 884173138Srwatsonstub_socket_check_connect(struct ucred *cred, struct socket *so, 885173138Srwatson struct label *solabel, struct sockaddr *sa) 886112577Srwatson{ 887112577Srwatson 888193391Srwatson#if 0 889193391Srwatson SOCK_LOCK(so); 890193391Srwatson SOCK_UNLOCK(so); 891193391Srwatson#endif 892193391Srwatson 893112577Srwatson return (0); 894112577Srwatson} 895112577Srwatson 896112577Srwatsonstatic int 897173138Srwatsonstub_socket_check_create(struct ucred *cred, int domain, int type, int proto) 898112577Srwatson{ 899112577Srwatson 900112577Srwatson return (0); 901112577Srwatson} 902112577Srwatson 903112577Srwatsonstatic int 904173138Srwatsonstub_socket_check_deliver(struct socket *so, struct label *solabel, 905173138Srwatson struct mbuf *m, struct label *mlabel) 906112577Srwatson{ 907112577Srwatson 908193391Srwatson#if 0 909193391Srwatson SOCK_LOCK(so); 910193391Srwatson SOCK_UNLOCK(so); 911193391Srwatson#endif 912193391Srwatson 913112577Srwatson return (0); 914112577Srwatson} 915112577Srwatson 916112577Srwatsonstatic int 917173138Srwatsonstub_socket_check_listen(struct ucred *cred, struct socket *so, 918173138Srwatson struct label *solabel) 919101099Srwatson{ 920101099Srwatson 921193391Srwatson#if 0 922193391Srwatson SOCK_LOCK(so); 923193391Srwatson SOCK_UNLOCK(so); 924193391Srwatson#endif 925193391Srwatson 926101099Srwatson return (0); 927101099Srwatson} 928101099Srwatson 929101099Srwatsonstatic int 930173138Srwatsonstub_socket_check_poll(struct ucred *cred, struct socket *so, 931173138Srwatson struct label *solabel) 932101099Srwatson{ 933101099Srwatson 934193391Srwatson#if 0 935193391Srwatson SOCK_LOCK(so); 936193391Srwatson SOCK_UNLOCK(so); 937193391Srwatson#endif 938193391Srwatson 939101099Srwatson return (0); 940101099Srwatson} 941101099Srwatson 942101099Srwatsonstatic int 943173138Srwatsonstub_socket_check_receive(struct ucred *cred, struct socket *so, 944173138Srwatson struct label *solabel) 945101099Srwatson{ 946101099Srwatson 947193391Srwatson#if 0 948193391Srwatson SOCK_LOCK(so); 949193391Srwatson SOCK_UNLOCK(so); 950193391Srwatson#endif 951193391Srwatson 952101099Srwatson return (0); 953101099Srwatson} 954101099Srwatson 955101099Srwatsonstatic int 956173138Srwatsonstub_socket_check_relabel(struct ucred *cred, struct socket *so, 957173138Srwatson struct label *solabel, struct label *newlabel) 958102115Srwatson{ 959102115Srwatson 960193391Srwatson SOCK_LOCK_ASSERT(so); 961193391Srwatson 962102115Srwatson return (0); 963102115Srwatson} 964102115Srwatsonstatic int 965173138Srwatsonstub_socket_check_send(struct ucred *cred, struct socket *so, 966173138Srwatson struct label *solabel) 967101099Srwatson{ 968101099Srwatson 969193391Srwatson#if 0 970193391Srwatson SOCK_LOCK(so); 971193391Srwatson SOCK_UNLOCK(so); 972193391Srwatson#endif 973193391Srwatson 974101099Srwatson return (0); 975101099Srwatson} 976101099Srwatson 977101099Srwatsonstatic int 978173138Srwatsonstub_socket_check_stat(struct ucred *cred, struct socket *so, 979173138Srwatson struct label *solabel) 980102115Srwatson{ 981102115Srwatson 982193391Srwatson#if 0 983193391Srwatson SOCK_LOCK(so); 984193391Srwatson SOCK_UNLOCK(so); 985193391Srwatson#endif 986193391Srwatson 987102115Srwatson return (0); 988102115Srwatson} 989102115Srwatson 990102115Srwatsonstatic int 991183980Sbzstub_inpcb_check_visible(struct ucred *cred, struct inpcb *inp, 992183980Sbz struct label *inplabel) 993183980Sbz{ 994183980Sbz 995183980Sbz return (0); 996183980Sbz} 997183980Sbz 998183980Sbzstatic int 999173138Srwatsonstub_socket_check_visible(struct ucred *cred, struct socket *so, 1000173138Srwatson struct label *solabel) 1001102115Srwatson{ 1002102115Srwatson 1003193391Srwatson#if 0 1004193391Srwatson SOCK_LOCK(so); 1005193391Srwatson SOCK_UNLOCK(so); 1006193391Srwatson#endif 1007193391Srwatson 1008102115Srwatson return (0); 1009102115Srwatson} 1010102115Srwatson 1011173138Srwatsonstatic void 1012173138Srwatsonstub_socket_create(struct ucred *cred, struct socket *so, 1013173138Srwatson struct label *solabel) 1014145855Srwatson{ 1015145855Srwatson 1016145855Srwatson} 1017145855Srwatson 1018173138Srwatsonstatic void 1019173138Srwatsonstub_socket_create_mbuf(struct socket *so, struct label *solabel, 1020173138Srwatson struct mbuf *m, struct label *mlabel) 1021145855Srwatson{ 1022145855Srwatson 1023193391Srwatson#if 0 1024193391Srwatson SOCK_LOCK(so); 1025193391Srwatson SOCK_UNLOCK(so); 1026193391Srwatson#endif 1027145855Srwatson} 1028145855Srwatson 1029173138Srwatsonstatic void 1030173138Srwatsonstub_socket_newconn(struct socket *oldso, struct label *oldsolabel, 1031173138Srwatson struct socket *newso, struct label *newsolabel) 1032145855Srwatson{ 1033145855Srwatson 1034193391Srwatson#if 0 1035193391Srwatson SOCK_LOCK(oldso); 1036193391Srwatson SOCK_UNLOCK(oldso); 1037193391Srwatson#endif 1038193391Srwatson#if 0 1039193391Srwatson SOCK_LOCK(newso); 1040193391Srwatson SOCK_UNLOCK(newso); 1041193391Srwatson#endif 1042145855Srwatson} 1043145855Srwatson 1044173138Srwatsonstatic void 1045173138Srwatsonstub_socket_relabel(struct ucred *cred, struct socket *so, 1046173138Srwatson struct label *solabel, struct label *newlabel) 1047145855Srwatson{ 1048145855Srwatson 1049193391Srwatson SOCK_LOCK_ASSERT(so); 1050145855Srwatson} 1051145855Srwatson 1052173138Srwatsonstatic void 1053173138Srwatsonstub_socketpeer_set_from_mbuf(struct mbuf *m, struct label *mlabel, 1054173138Srwatson struct socket *so, struct label *sopeerlabel) 1055145855Srwatson{ 1056145855Srwatson 1057193391Srwatson#if 0 1058193391Srwatson SOCK_LOCK(so); 1059193391Srwatson SOCK_UNLOCK(so); 1060193391Srwatson#endif 1061145855Srwatson} 1062145855Srwatson 1063173138Srwatsonstatic void 1064173138Srwatsonstub_socketpeer_set_from_socket(struct socket *oldso, 1065173138Srwatson struct label *oldsolabel, struct socket *newso, 1066173138Srwatson struct label *newsopeerlabel) 1067145855Srwatson{ 1068145855Srwatson 1069193391Srwatson#if 0 1070193391Srwatson SOCK_LOCK(oldso); 1071193391Srwatson SOCK_UNLOCK(oldso); 1072193391Srwatson#endif 1073193391Srwatson#if 0 1074193391Srwatson SOCK_LOCK(newso); 1075193391Srwatson SOCK_UNLOCK(newso); 1076193391Srwatson#endif 1077145855Srwatson} 1078145855Srwatson 1079173138Srwatsonstatic void 1080173138Srwatsonstub_syncache_create(struct label *label, struct inpcb *inp) 1081101099Srwatson{ 1082101099Srwatson 1083101099Srwatson} 1084101099Srwatson 1085173138Srwatsonstatic void 1086173138Srwatsonstub_syncache_create_mbuf(struct label *sc_label, struct mbuf *m, 1087173138Srwatson struct label *mlabel) 1088101099Srwatson{ 1089101099Srwatson 1090101099Srwatson} 1091101099Srwatson 1092101099Srwatsonstatic int 1093173138Srwatsonstub_system_check_acct(struct ucred *cred, struct vnode *vp, 1094173138Srwatson struct label *vplabel) 1095101099Srwatson{ 1096101099Srwatson 1097101099Srwatson return (0); 1098101099Srwatson} 1099101099Srwatson 1100101099Srwatsonstatic int 1101173138Srwatsonstub_system_check_audit(struct ucred *cred, void *record, int length) 1102145234Srwatson{ 1103145234Srwatson 1104145234Srwatson return (0); 1105145234Srwatson} 1106145234Srwatson 1107145234Srwatsonstatic int 1108173138Srwatsonstub_system_check_auditctl(struct ucred *cred, struct vnode *vp, 1109173138Srwatson struct label *vplabel) 1110168933Srwatson{ 1111168933Srwatson 1112168933Srwatson return (0); 1113168933Srwatson} 1114168933Srwatson 1115168933Srwatsonstatic int 1116173138Srwatsonstub_system_check_auditon(struct ucred *cred, int cmd) 1117171047Srwatson{ 1118171047Srwatson 1119171047Srwatson return (0); 1120171047Srwatson} 1121171047Srwatson 1122171047Srwatsonstatic int 1123173138Srwatsonstub_system_check_reboot(struct ucred *cred, int how) 1124168933Srwatson{ 1125168933Srwatson 1126168933Srwatson return (0); 1127168933Srwatson} 1128168933Srwatson 1129168933Srwatsonstatic int 1130173138Srwatsonstub_system_check_swapoff(struct ucred *cred, struct vnode *vp, 1131173138Srwatson struct label *vplabel) 1132145147Srwatson{ 1133145147Srwatson 1134145147Srwatson return (0); 1135145147Srwatson} 1136145147Srwatson 1137145147Srwatsonstatic int 1138173138Srwatsonstub_system_check_swapon(struct ucred *cred, struct vnode *vp, 1139173138Srwatson struct label *vplabel) 1140145147Srwatson{ 1141145147Srwatson 1142145147Srwatson return (0); 1143145147Srwatson} 1144145147Srwatson 1145145147Srwatsonstatic int 1146173138Srwatsonstub_system_check_sysctl(struct ucred *cred, struct sysctl_oid *oidp, 1147173138Srwatson void *arg1, int arg2, struct sysctl_req *req) 1148145147Srwatson{ 1149145147Srwatson 1150145147Srwatson return (0); 1151145147Srwatson} 1152145147Srwatson 1153173138Srwatsonstatic void 1154173138Srwatsonstub_sysvmsg_cleanup(struct label *msglabel) 1155145147Srwatson{ 1156145147Srwatson 1157145147Srwatson} 1158145147Srwatson 1159173138Srwatsonstatic void 1160173138Srwatsonstub_sysvmsg_create(struct ucred *cred, struct msqid_kernel *msqkptr, 1161173138Srwatson struct label *msqlabel, struct msg *msgptr, struct label *msglabel) 1162145147Srwatson{ 1163145147Srwatson 1164145147Srwatson} 1165145147Srwatson 1166145147Srwatsonstatic int 1167173138Srwatsonstub_sysvmsq_check_msgmsq(struct ucred *cred, struct msg *msgptr, 1168173138Srwatson struct label *msglabel, struct msqid_kernel *msqkptr, 1169173138Srwatson struct label *msqklabel) 1170145167Srwatson{ 1171145167Srwatson 1172145167Srwatson return (0); 1173145167Srwatson} 1174145167Srwatson 1175145167Srwatsonstatic int 1176173138Srwatsonstub_sysvmsq_check_msgrcv(struct ucred *cred, struct msg *msgptr, 1177173138Srwatson struct label *msglabel) 1178101099Srwatson{ 1179101099Srwatson 1180101099Srwatson return (0); 1181101099Srwatson} 1182101099Srwatson 1183173138Srwatson 1184101099Srwatsonstatic int 1185173138Srwatsonstub_sysvmsq_check_msgrmid(struct ucred *cred, struct msg *msgptr, 1186173138Srwatson struct label *msglabel) 1187101099Srwatson{ 1188101099Srwatson 1189101099Srwatson return (0); 1190101099Srwatson} 1191101099Srwatson 1192173138Srwatson 1193101099Srwatsonstatic int 1194173138Srwatsonstub_sysvmsq_check_msqget(struct ucred *cred, struct msqid_kernel *msqkptr, 1195173138Srwatson struct label *msqklabel) 1196147784Srwatson{ 1197147784Srwatson 1198147784Srwatson return (0); 1199147784Srwatson} 1200147784Srwatson 1201173138Srwatson 1202147784Srwatsonstatic int 1203173138Srwatsonstub_sysvmsq_check_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr, 1204173138Srwatson struct label *msqklabel) 1205101099Srwatson{ 1206101099Srwatson 1207101099Srwatson return (0); 1208101099Srwatson} 1209101099Srwatson 1210101099Srwatsonstatic int 1211173138Srwatsonstub_sysvmsq_check_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr, 1212173138Srwatson struct label *msqklabel) 1213101099Srwatson{ 1214101099Srwatson 1215101099Srwatson return (0); 1216101099Srwatson} 1217101099Srwatson 1218173138Srwatson 1219101099Srwatsonstatic int 1220173138Srwatsonstub_sysvmsq_check_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, 1221173138Srwatson struct label *msqklabel, int cmd) 1222145167Srwatson{ 1223145167Srwatson 1224145167Srwatson return (0); 1225145167Srwatson} 1226145167Srwatson 1227173138Srwatson 1228173138Srwatsonstatic void 1229173138Srwatsonstub_sysvmsq_cleanup(struct label *msqlabel) 1230145167Srwatson{ 1231145167Srwatson 1232145167Srwatson} 1233145167Srwatson 1234173138Srwatsonstatic void 1235173138Srwatsonstub_sysvmsq_create(struct ucred *cred, struct msqid_kernel *msqkptr, 1236173138Srwatson struct label *msqlabel) 1237101099Srwatson{ 1238101099Srwatson 1239101099Srwatson} 1240173138Srwatson 1241145167Srwatsonstatic int 1242173138Srwatsonstub_sysvsem_check_semctl(struct ucred *cred, struct semid_kernel *semakptr, 1243173138Srwatson struct label *semaklabel, int cmd) 1244145167Srwatson{ 1245101099Srwatson 1246145167Srwatson return (0); 1247145167Srwatson} 1248145167Srwatson 1249101099Srwatsonstatic int 1250173138Srwatsonstub_sysvsem_check_semget(struct ucred *cred, struct semid_kernel *semakptr, 1251173138Srwatson struct label *semaklabel) 1252145167Srwatson{ 1253145167Srwatson 1254145167Srwatson return (0); 1255145167Srwatson} 1256145167Srwatson 1257173138Srwatson 1258145167Srwatsonstatic int 1259173138Srwatsonstub_sysvsem_check_semop(struct ucred *cred, struct semid_kernel *semakptr, 1260173138Srwatson struct label *semaklabel, size_t accesstype) 1261101099Srwatson{ 1262101099Srwatson 1263101099Srwatson return (0); 1264101099Srwatson} 1265101099Srwatson 1266173138Srwatsonstatic void 1267173138Srwatsonstub_sysvsem_cleanup(struct label *semalabel) 1268112577Srwatson{ 1269112577Srwatson 1270112577Srwatson} 1271112577Srwatson 1272173138Srwatsonstatic void 1273173138Srwatsonstub_sysvsem_create(struct ucred *cred, struct semid_kernel *semakptr, 1274173138Srwatson struct label *semalabel) 1275168933Srwatson{ 1276168933Srwatson 1277168933Srwatson} 1278168933Srwatson 1279168933Srwatsonstatic int 1280173138Srwatsonstub_sysvshm_check_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, 1281173138Srwatson struct label *shmseglabel, int shmflg) 1282168933Srwatson{ 1283168933Srwatson 1284168933Srwatson return (0); 1285168933Srwatson} 1286168933Srwatson 1287168933Srwatsonstatic int 1288173138Srwatsonstub_sysvshm_check_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, 1289173138Srwatson struct label *shmseglabel, int cmd) 1290168933Srwatson{ 1291168933Srwatson 1292168933Srwatson return (0); 1293168933Srwatson} 1294168933Srwatson 1295168933Srwatsonstatic int 1296173138Srwatsonstub_sysvshm_check_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr, 1297173138Srwatson struct label *shmseglabel) 1298106162Srwatson{ 1299106162Srwatson 1300106162Srwatson return (0); 1301106162Srwatson} 1302106162Srwatson 1303106162Srwatson 1304106162Srwatsonstatic int 1305173138Srwatsonstub_sysvshm_check_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, 1306173138Srwatson struct label *shmseglabel, int shmflg) 1307112577Srwatson{ 1308112577Srwatson 1309112577Srwatson return (0); 1310112577Srwatson} 1311112577Srwatson 1312173138Srwatsonstatic void 1313173138Srwatsonstub_sysvshm_cleanup(struct label *shmlabel) 1314106162Srwatson{ 1315106162Srwatson 1316106162Srwatson} 1317106162Srwatson 1318173138Srwatsonstatic void 1319173138Srwatsonstub_sysvshm_create(struct ucred *cred, struct shmid_kernel *shmsegptr, 1320173138Srwatson struct label *shmalabel) 1321101099Srwatson{ 1322101099Srwatson 1323101099Srwatson} 1324101099Srwatson 1325173138Srwatsonstatic void 1326173138Srwatsonstub_thread_userret(struct thread *td) 1327101099Srwatson{ 1328101099Srwatson 1329101099Srwatson} 1330101099Srwatson 1331101099Srwatsonstatic int 1332173138Srwatsonstub_vnode_associate_extattr(struct mount *mp, struct label *mplabel, 1333173138Srwatson struct vnode *vp, struct label *vplabel) 1334101099Srwatson{ 1335101099Srwatson 1336101099Srwatson return (0); 1337101099Srwatson} 1338101099Srwatson 1339173138Srwatsonstatic void 1340173138Srwatsonstub_vnode_associate_singlelabel(struct mount *mp, struct label *mplabel, 1341173138Srwatson struct vnode *vp, struct label *vplabel) 1342101099Srwatson{ 1343101099Srwatson 1344101099Srwatson} 1345101099Srwatson 1346101099Srwatsonstatic int 1347184400Srwatsonstub_vnode_check_access(struct ucred *cred, struct vnode *vp, 1348184426Strasz struct label *vplabel, accmode_t accmode) 1349184400Srwatson{ 1350184400Srwatson 1351184400Srwatson return (0); 1352184400Srwatson} 1353184400Srwatson 1354184400Srwatsonstatic int 1355184400Srwatsonstub_vnode_check_chdir(struct ucred *cred, struct vnode *dvp, 1356184400Srwatson struct label *dvplabel) 1357184400Srwatson{ 1358184400Srwatson 1359184400Srwatson return (0); 1360184400Srwatson} 1361184400Srwatson 1362184400Srwatsonstatic int 1363184400Srwatsonstub_vnode_check_chroot(struct ucred *cred, struct vnode *dvp, 1364184400Srwatson struct label *dvplabel) 1365184400Srwatson{ 1366184400Srwatson 1367184400Srwatson return (0); 1368184400Srwatson} 1369184400Srwatson 1370184400Srwatsonstatic int 1371184400Srwatsonstub_vnode_check_create(struct ucred *cred, struct vnode *dvp, 1372184400Srwatson struct label *dvplabel, struct componentname *cnp, struct vattr *vap) 1373184400Srwatson{ 1374184400Srwatson 1375184400Srwatson return (0); 1376184400Srwatson} 1377184400Srwatson 1378184400Srwatsonstatic int 1379172930Srwatsonstub_vnode_check_deleteacl(struct ucred *cred, struct vnode *vp, 1380168976Srwatson struct label *vplabel, acl_type_t type) 1381101099Srwatson{ 1382101099Srwatson 1383101099Srwatson return (0); 1384101099Srwatson} 1385101099Srwatson 1386101099Srwatsonstatic int 1387172930Srwatsonstub_vnode_check_deleteextattr(struct ucred *cred, struct vnode *vp, 1388168976Srwatson struct label *vplabel, int attrnamespace, const char *name) 1389119223Srwatson{ 1390119223Srwatson 1391119223Srwatson return (0); 1392119223Srwatson} 1393119223Srwatson 1394119223Srwatsonstatic int 1395172930Srwatsonstub_vnode_check_exec(struct ucred *cred, struct vnode *vp, 1396168976Srwatson struct label *vplabel, struct image_params *imgp, 1397106648Srwatson struct label *execlabel) 1398101099Srwatson{ 1399101099Srwatson 1400101099Srwatson return (0); 1401101099Srwatson} 1402101099Srwatson 1403101099Srwatsonstatic int 1404172930Srwatsonstub_vnode_check_getacl(struct ucred *cred, struct vnode *vp, 1405168976Srwatson struct label *vplabel, acl_type_t type) 1406101099Srwatson{ 1407101099Srwatson 1408101099Srwatson return (0); 1409101099Srwatson} 1410101099Srwatson 1411101099Srwatsonstatic int 1412172930Srwatsonstub_vnode_check_getextattr(struct ucred *cred, struct vnode *vp, 1413189533Srwatson struct label *vplabel, int attrnamespace, const char *name) 1414101099Srwatson{ 1415101099Srwatson 1416101099Srwatson return (0); 1417101099Srwatson} 1418101099Srwatson 1419105664Srwatsonstatic int 1420172930Srwatsonstub_vnode_check_link(struct ucred *cred, struct vnode *dvp, 1421168976Srwatson struct label *dvplabel, struct vnode *vp, struct label *vplabel, 1422104530Srwatson struct componentname *cnp) 1423104530Srwatson{ 1424104530Srwatson 1425104530Srwatson return (0); 1426104530Srwatson} 1427104530Srwatson 1428101099Srwatsonstatic int 1429172930Srwatsonstub_vnode_check_listextattr(struct ucred *cred, struct vnode *vp, 1430168976Srwatson struct label *vplabel, int attrnamespace) 1431119223Srwatson{ 1432119223Srwatson 1433119223Srwatson return (0); 1434119223Srwatson} 1435119223Srwatson 1436119223Srwatsonstatic int 1437172930Srwatsonstub_vnode_check_lookup(struct ucred *cred, struct vnode *dvp, 1438168976Srwatson struct label *dvplabel, struct componentname *cnp) 1439101099Srwatson{ 1440104546Srwatson 1441101099Srwatson return (0); 1442104546Srwatson} 1443101099Srwatson 1444101099Srwatsonstatic int 1445172930Srwatsonstub_vnode_check_mmap(struct ucred *cred, struct vnode *vp, 1446168976Srwatson struct label *vplabel, int prot, int flags) 1447104546Srwatson{ 1448104546Srwatson 1449104546Srwatson return (0); 1450104546Srwatson} 1451104546Srwatson 1452165715Scsjpstatic void 1453172930Srwatsonstub_vnode_check_mmap_downgrade(struct ucred *cred, struct vnode *vp, 1454168976Srwatson struct label *vplabel, int *prot) 1455165715Scsjp{ 1456165715Scsjp 1457165715Scsjp} 1458165715Scsjp 1459104546Srwatsonstatic int 1460172930Srwatsonstub_vnode_check_mprotect(struct ucred *cred, struct vnode *vp, 1461168976Srwatson struct label *vplabel, int prot) 1462165715Scsjp{ 1463165715Scsjp 1464165715Scsjp return (0); 1465165715Scsjp} 1466165715Scsjp 1467165715Scsjpstatic int 1468172930Srwatsonstub_vnode_check_open(struct ucred *cred, struct vnode *vp, 1469184413Strasz struct label *vplabel, accmode_t accmode) 1470101099Srwatson{ 1471101099Srwatson 1472101099Srwatson return (0); 1473101099Srwatson} 1474101099Srwatson 1475101099Srwatsonstatic int 1476172930Srwatsonstub_vnode_check_poll(struct ucred *active_cred, struct ucred *file_cred, 1477168976Srwatson struct vnode *vp, struct label *vplabel) 1478102112Srwatson{ 1479102112Srwatson 1480102112Srwatson return (0); 1481102112Srwatson} 1482102112Srwatson 1483102112Srwatsonstatic int 1484172930Srwatsonstub_vnode_check_read(struct ucred *active_cred, struct ucred *file_cred, 1485168976Srwatson struct vnode *vp, struct label *vplabel) 1486102112Srwatson{ 1487102112Srwatson 1488102112Srwatson return (0); 1489102112Srwatson} 1490102112Srwatson 1491102112Srwatsonstatic int 1492172930Srwatsonstub_vnode_check_readdir(struct ucred *cred, struct vnode *vp, 1493168976Srwatson struct label *dvplabel) 1494101099Srwatson{ 1495101099Srwatson 1496101099Srwatson return (0); 1497101099Srwatson} 1498101099Srwatson 1499101099Srwatsonstatic int 1500172930Srwatsonstub_vnode_check_readlink(struct ucred *cred, struct vnode *vp, 1501168976Srwatson struct label *vplabel) 1502101099Srwatson{ 1503101099Srwatson 1504101099Srwatson return (0); 1505101099Srwatson} 1506101099Srwatson 1507101099Srwatsonstatic int 1508172930Srwatsonstub_vnode_check_relabel(struct ucred *cred, struct vnode *vp, 1509168976Srwatson struct label *vplabel, struct label *newlabel) 1510101099Srwatson{ 1511101099Srwatson 1512101099Srwatson return (0); 1513101099Srwatson} 1514101099Srwatson 1515101099Srwatsonstatic int 1516172930Srwatsonstub_vnode_check_rename_from(struct ucred *cred, struct vnode *dvp, 1517168976Srwatson struct label *dvplabel, struct vnode *vp, struct label *vplabel, 1518101099Srwatson struct componentname *cnp) 1519101099Srwatson{ 1520101099Srwatson 1521101099Srwatson return (0); 1522101099Srwatson} 1523101099Srwatson 1524101099Srwatsonstatic int 1525172930Srwatsonstub_vnode_check_rename_to(struct ucred *cred, struct vnode *dvp, 1526168976Srwatson struct label *dvplabel, struct vnode *vp, struct label *vplabel, 1527168976Srwatson int samedir, struct componentname *cnp) 1528101099Srwatson{ 1529101099Srwatson 1530101099Srwatson return (0); 1531101099Srwatson} 1532101099Srwatson 1533101099Srwatsonstatic int 1534172930Srwatsonstub_vnode_check_revoke(struct ucred *cred, struct vnode *vp, 1535168976Srwatson struct label *vplabel) 1536101099Srwatson{ 1537101099Srwatson 1538101099Srwatson return (0); 1539101099Srwatson} 1540101099Srwatson 1541101099Srwatsonstatic int 1542172930Srwatsonstub_vnode_check_setacl(struct ucred *cred, struct vnode *vp, 1543168976Srwatson struct label *vplabel, acl_type_t type, struct acl *acl) 1544101099Srwatson{ 1545101099Srwatson 1546101099Srwatson return (0); 1547101099Srwatson} 1548101099Srwatson 1549101099Srwatsonstatic int 1550172930Srwatsonstub_vnode_check_setextattr(struct ucred *cred, struct vnode *vp, 1551189533Srwatson struct label *vplabel, int attrnamespace, const char *name) 1552101099Srwatson{ 1553101099Srwatson 1554101099Srwatson return (0); 1555101099Srwatson} 1556101099Srwatson 1557101099Srwatsonstatic int 1558172930Srwatsonstub_vnode_check_setflags(struct ucred *cred, struct vnode *vp, 1559168976Srwatson struct label *vplabel, u_long flags) 1560101099Srwatson{ 1561101099Srwatson 1562101099Srwatson return (0); 1563101099Srwatson} 1564101099Srwatson 1565101099Srwatsonstatic int 1566172930Srwatsonstub_vnode_check_setmode(struct ucred *cred, struct vnode *vp, 1567168976Srwatson struct label *vplabel, mode_t mode) 1568101099Srwatson{ 1569101099Srwatson 1570101099Srwatson return (0); 1571101099Srwatson} 1572101099Srwatson 1573101099Srwatsonstatic int 1574172930Srwatsonstub_vnode_check_setowner(struct ucred *cred, struct vnode *vp, 1575168976Srwatson struct label *vplabel, uid_t uid, gid_t gid) 1576101099Srwatson{ 1577101099Srwatson 1578101099Srwatson return (0); 1579101099Srwatson} 1580101099Srwatson 1581101099Srwatsonstatic int 1582172930Srwatsonstub_vnode_check_setutimes(struct ucred *cred, struct vnode *vp, 1583168976Srwatson struct label *vplabel, struct timespec atime, struct timespec mtime) 1584101099Srwatson{ 1585101099Srwatson 1586101099Srwatson return (0); 1587101099Srwatson} 1588101099Srwatson 1589101099Srwatsonstatic int 1590172930Srwatsonstub_vnode_check_stat(struct ucred *active_cred, struct ucred *file_cred, 1591168976Srwatson struct vnode *vp, struct label *vplabel) 1592101099Srwatson{ 1593101099Srwatson 1594101099Srwatson return (0); 1595101099Srwatson} 1596101099Srwatson 1597102112Srwatsonstatic int 1598172930Srwatsonstub_vnode_check_unlink(struct ucred *cred, struct vnode *dvp, 1599172107Srwatson struct label *dvplabel, struct vnode *vp, struct label *vplabel, 1600172107Srwatson struct componentname *cnp) 1601172107Srwatson{ 1602172107Srwatson 1603172107Srwatson return (0); 1604172107Srwatson} 1605172107Srwatson 1606172107Srwatsonstatic int 1607172930Srwatsonstub_vnode_check_write(struct ucred *active_cred, struct ucred *file_cred, 1608168976Srwatson struct vnode *vp, struct label *vplabel) 1609102112Srwatson{ 1610102112Srwatson 1611102112Srwatson return (0); 1612102112Srwatson} 1613102112Srwatson 1614164034Srwatsonstatic int 1615173138Srwatsonstub_vnode_create_extattr(struct ucred *cred, struct mount *mp, 1616173138Srwatson struct label *mntlabel, struct vnode *dvp, struct label *dvplabel, 1617173138Srwatson struct vnode *vp, struct label *vplabel, struct componentname *cnp) 1618164034Srwatson{ 1619164034Srwatson 1620164034Srwatson return (0); 1621164034Srwatson} 1622164034Srwatson 1623173138Srwatsonstatic void 1624173138Srwatsonstub_vnode_execve_transition(struct ucred *old, struct ucred *new, 1625173138Srwatson struct vnode *vp, struct label *vplabel, struct label *interpvplabel, 1626173138Srwatson struct image_params *imgp, struct label *execlabel) 1627173138Srwatson{ 1628173138Srwatson 1629173138Srwatson} 1630173138Srwatson 1631164034Srwatsonstatic int 1632173138Srwatsonstub_vnode_execve_will_transition(struct ucred *old, struct vnode *vp, 1633173138Srwatson struct label *vplabel, struct label *interpvplabel, 1634173138Srwatson struct image_params *imgp, struct label *execlabel) 1635164034Srwatson{ 1636164034Srwatson 1637173138Srwatson return (0); 1638164034Srwatson} 1639164034Srwatson 1640173138Srwatsonstatic void 1641173138Srwatsonstub_vnode_relabel(struct ucred *cred, struct vnode *vp, 1642173138Srwatson struct label *vplabel, struct label *label) 1643173138Srwatson{ 1644173138Srwatson 1645173138Srwatson} 1646173138Srwatson 1647173138Srwatsonstatic int 1648173138Srwatsonstub_vnode_setlabel_extattr(struct ucred *cred, struct vnode *vp, 1649173138Srwatson struct label *vplabel, struct label *intlabel) 1650173138Srwatson{ 1651173138Srwatson 1652173138Srwatson return (0); 1653173138Srwatson} 1654173138Srwatson 1655173138Srwatson/* 1656173138Srwatson * Register functions with MAC Framework policy entry points. 1657173138Srwatson */ 1658172955Srwatsonstatic struct mac_policy_ops stub_ops = 1659101099Srwatson{ 1660119211Srwatson .mpo_destroy = stub_destroy, 1661119211Srwatson .mpo_init = stub_init, 1662119211Srwatson .mpo_syscall = stub_syscall, 1663173138Srwatson 1664173138Srwatson .mpo_bpfdesc_check_receive = stub_bpfdesc_check_receive, 1665173138Srwatson .mpo_bpfdesc_create = stub_bpfdesc_create, 1666173138Srwatson .mpo_bpfdesc_create_mbuf = stub_bpfdesc_create_mbuf, 1667173138Srwatson .mpo_bpfdesc_destroy_label = stub_destroy_label, 1668172930Srwatson .mpo_bpfdesc_init_label = stub_init_label, 1669173138Srwatson 1670184407Srwatson .mpo_cred_associate_nfsd = stub_cred_associate_nfsd, 1671173138Srwatson .mpo_cred_check_relabel = stub_cred_check_relabel, 1672189529Srwatson .mpo_cred_check_setaudit = stub_cred_check_setaudit, 1673189529Srwatson .mpo_cred_check_setaudit_addr = stub_cred_check_setaudit_addr, 1674189529Srwatson .mpo_cred_check_setauid = stub_cred_check_setauid, 1675189529Srwatson .mpo_cred_check_setegid = stub_cred_check_setegid, 1676189529Srwatson .mpo_cred_check_seteuid = stub_cred_check_seteuid, 1677189529Srwatson .mpo_cred_check_setgid = stub_cred_check_setgid, 1678189529Srwatson .mpo_cred_check_setgroups = stub_cred_check_setgroups, 1679189529Srwatson .mpo_cred_check_setregid = stub_cred_check_setregid, 1680189529Srwatson .mpo_cred_check_setresgid = stub_cred_check_setresgid, 1681189529Srwatson .mpo_cred_check_setresuid = stub_cred_check_setresuid, 1682189529Srwatson .mpo_cred_check_setreuid = stub_cred_check_setreuid, 1683189529Srwatson .mpo_cred_check_setuid = stub_cred_check_setuid, 1684173138Srwatson .mpo_cred_check_visible = stub_cred_check_visible, 1685173138Srwatson .mpo_cred_copy_label = stub_copy_label, 1686184407Srwatson .mpo_cred_create_init = stub_cred_create_init, 1687184407Srwatson .mpo_cred_create_swapper = stub_cred_create_swapper, 1688172930Srwatson .mpo_cred_destroy_label = stub_destroy_label, 1689172930Srwatson .mpo_cred_externalize_label = stub_externalize_label, 1690173138Srwatson .mpo_cred_init_label = stub_init_label, 1691172930Srwatson .mpo_cred_internalize_label = stub_internalize_label, 1692173138Srwatson .mpo_cred_relabel= stub_cred_relabel, 1693173138Srwatson 1694172930Srwatson .mpo_devfs_create_device = stub_devfs_create_device, 1695172930Srwatson .mpo_devfs_create_directory = stub_devfs_create_directory, 1696172930Srwatson .mpo_devfs_create_symlink = stub_devfs_create_symlink, 1697173138Srwatson .mpo_devfs_destroy_label = stub_destroy_label, 1698173138Srwatson .mpo_devfs_init_label = stub_init_label, 1699172930Srwatson .mpo_devfs_update = stub_devfs_update, 1700173138Srwatson .mpo_devfs_vnode_associate = stub_devfs_vnode_associate, 1701173138Srwatson 1702173138Srwatson .mpo_ifnet_check_relabel = stub_ifnet_check_relabel, 1703173138Srwatson .mpo_ifnet_check_transmit = stub_ifnet_check_transmit, 1704173138Srwatson .mpo_ifnet_copy_label = stub_copy_label, 1705172930Srwatson .mpo_ifnet_create = stub_ifnet_create, 1706173138Srwatson .mpo_ifnet_create_mbuf = stub_ifnet_create_mbuf, 1707173138Srwatson .mpo_ifnet_destroy_label = stub_destroy_label, 1708173138Srwatson .mpo_ifnet_externalize_label = stub_externalize_label, 1709173138Srwatson .mpo_ifnet_init_label = stub_init_label, 1710173138Srwatson .mpo_ifnet_internalize_label = stub_internalize_label, 1711173138Srwatson .mpo_ifnet_relabel = stub_ifnet_relabel, 1712173138Srwatson 1713173138Srwatson .mpo_inpcb_check_deliver = stub_inpcb_check_deliver, 1714183980Sbz .mpo_inpcb_check_visible = stub_inpcb_check_visible, 1715172930Srwatson .mpo_inpcb_create = stub_inpcb_create, 1716173138Srwatson .mpo_inpcb_create_mbuf = stub_inpcb_create_mbuf, 1717173138Srwatson .mpo_inpcb_destroy_label = stub_destroy_label, 1718173138Srwatson .mpo_inpcb_init_label = stub_init_label_waitcheck, 1719173138Srwatson .mpo_inpcb_sosetlabel = stub_inpcb_sosetlabel, 1720173138Srwatson 1721184308Srwatson .mpo_ip6q_create = stub_ip6q_create, 1722184308Srwatson .mpo_ip6q_destroy_label = stub_destroy_label, 1723184308Srwatson .mpo_ip6q_init_label = stub_init_label_waitcheck, 1724184308Srwatson .mpo_ip6q_match = stub_ip6q_match, 1725184308Srwatson .mpo_ip6q_update = stub_ip6q_update, 1726184308Srwatson .mpo_ip6q_reassemble = stub_ip6q_reassemble, 1727184308Srwatson 1728172930Srwatson .mpo_ipq_create = stub_ipq_create, 1729173138Srwatson .mpo_ipq_destroy_label = stub_destroy_label, 1730173138Srwatson .mpo_ipq_init_label = stub_init_label_waitcheck, 1731173138Srwatson .mpo_ipq_match = stub_ipq_match, 1732173138Srwatson .mpo_ipq_update = stub_ipq_update, 1733172930Srwatson .mpo_ipq_reassemble = stub_ipq_reassemble, 1734173138Srwatson 1735173138Srwatson .mpo_kenv_check_dump = stub_kenv_check_dump, 1736173138Srwatson .mpo_kenv_check_get = stub_kenv_check_get, 1737173138Srwatson .mpo_kenv_check_set = stub_kenv_check_set, 1738173138Srwatson .mpo_kenv_check_unset = stub_kenv_check_unset, 1739173138Srwatson 1740173138Srwatson .mpo_kld_check_load = stub_kld_check_load, 1741173138Srwatson .mpo_kld_check_stat = stub_kld_check_stat, 1742173138Srwatson 1743173138Srwatson .mpo_mbuf_copy_label = stub_copy_label, 1744173138Srwatson .mpo_mbuf_destroy_label = stub_destroy_label, 1745173138Srwatson .mpo_mbuf_init_label = stub_init_label_waitcheck, 1746173138Srwatson 1747173138Srwatson .mpo_mount_check_stat = stub_mount_check_stat, 1748173138Srwatson .mpo_mount_create = stub_mount_create, 1749173138Srwatson .mpo_mount_destroy_label = stub_destroy_label, 1750173138Srwatson .mpo_mount_init_label = stub_init_label, 1751173138Srwatson 1752173095Srwatson .mpo_netinet_arp_send = stub_netinet_arp_send, 1753173102Srwatson .mpo_netinet_firewall_reply = stub_netinet_firewall_reply, 1754173018Srwatson .mpo_netinet_firewall_send = stub_netinet_firewall_send, 1755173138Srwatson .mpo_netinet_fragment = stub_netinet_fragment, 1756173102Srwatson .mpo_netinet_icmp_reply = stub_netinet_icmp_reply, 1757173102Srwatson .mpo_netinet_icmp_replyinplace = stub_netinet_icmp_replyinplace, 1758173138Srwatson .mpo_netinet_tcp_reply = stub_netinet_tcp_reply, 1759173095Srwatson .mpo_netinet_igmp_send = stub_netinet_igmp_send, 1760173138Srwatson 1761173095Srwatson .mpo_netinet6_nd6_send = stub_netinet6_nd6_send, 1762173138Srwatson 1763172930Srwatson .mpo_pipe_check_ioctl = stub_pipe_check_ioctl, 1764172930Srwatson .mpo_pipe_check_poll = stub_pipe_check_poll, 1765172930Srwatson .mpo_pipe_check_read = stub_pipe_check_read, 1766172930Srwatson .mpo_pipe_check_relabel = stub_pipe_check_relabel, 1767172930Srwatson .mpo_pipe_check_stat = stub_pipe_check_stat, 1768172930Srwatson .mpo_pipe_check_write = stub_pipe_check_write, 1769173138Srwatson .mpo_pipe_copy_label = stub_copy_label, 1770173138Srwatson .mpo_pipe_create = stub_pipe_create, 1771173138Srwatson .mpo_pipe_destroy_label = stub_destroy_label, 1772173138Srwatson .mpo_pipe_externalize_label = stub_externalize_label, 1773173138Srwatson .mpo_pipe_init_label = stub_init_label, 1774173138Srwatson .mpo_pipe_internalize_label = stub_internalize_label, 1775173138Srwatson .mpo_pipe_relabel = stub_pipe_relabel, 1776173138Srwatson 1777172930Srwatson .mpo_posixsem_check_getvalue = stub_posixsem_check_getvalue, 1778172930Srwatson .mpo_posixsem_check_open = stub_posixsem_check_open, 1779172930Srwatson .mpo_posixsem_check_post = stub_posixsem_check_post, 1780224914Skib .mpo_posixsem_check_setmode = stub_posixsem_check_setmode, 1781224914Skib .mpo_posixsem_check_setowner = stub_posixsem_check_setowner, 1782180059Sjhb .mpo_posixsem_check_stat = stub_posixsem_check_stat, 1783172930Srwatson .mpo_posixsem_check_unlink = stub_posixsem_check_unlink, 1784172930Srwatson .mpo_posixsem_check_wait = stub_posixsem_check_wait, 1785173138Srwatson .mpo_posixsem_create = stub_posixsem_create, 1786173138Srwatson .mpo_posixsem_destroy_label = stub_destroy_label, 1787173138Srwatson .mpo_posixsem_init_label = stub_init_label, 1788173138Srwatson 1789225344Srwatson .mpo_posixshm_check_create = stub_posixshm_check_create, 1790175164Sjhb .mpo_posixshm_check_mmap = stub_posixshm_check_mmap, 1791175164Sjhb .mpo_posixshm_check_open = stub_posixshm_check_open, 1792254603Skib .mpo_posixshm_check_read = stub_posixshm_check_read, 1793224914Skib .mpo_posixshm_check_setmode = stub_posixshm_check_setmode, 1794224914Skib .mpo_posixshm_check_setowner = stub_posixshm_check_setowner, 1795175164Sjhb .mpo_posixshm_check_stat = stub_posixshm_check_stat, 1796175164Sjhb .mpo_posixshm_check_truncate = stub_posixshm_check_truncate, 1797175164Sjhb .mpo_posixshm_check_unlink = stub_posixshm_check_unlink, 1798254603Skib .mpo_posixshm_check_write = stub_posixshm_check_write, 1799175164Sjhb .mpo_posixshm_create = stub_posixshm_create, 1800175164Sjhb .mpo_posixshm_destroy_label = stub_destroy_label, 1801175164Sjhb .mpo_posixshm_init_label = stub_init_label, 1802175164Sjhb 1803173138Srwatson .mpo_priv_check = stub_priv_check, 1804173138Srwatson .mpo_priv_grant = stub_priv_grant, 1805173138Srwatson 1806172930Srwatson .mpo_proc_check_debug = stub_proc_check_debug, 1807172930Srwatson .mpo_proc_check_sched = stub_proc_check_sched, 1808172930Srwatson .mpo_proc_check_signal = stub_proc_check_signal, 1809172930Srwatson .mpo_proc_check_wait = stub_proc_check_wait, 1810173138Srwatson 1811172930Srwatson .mpo_socket_check_accept = stub_socket_check_accept, 1812172930Srwatson .mpo_socket_check_bind = stub_socket_check_bind, 1813172930Srwatson .mpo_socket_check_connect = stub_socket_check_connect, 1814172930Srwatson .mpo_socket_check_create = stub_socket_check_create, 1815172930Srwatson .mpo_socket_check_deliver = stub_socket_check_deliver, 1816172930Srwatson .mpo_socket_check_listen = stub_socket_check_listen, 1817172930Srwatson .mpo_socket_check_poll = stub_socket_check_poll, 1818172930Srwatson .mpo_socket_check_receive = stub_socket_check_receive, 1819172930Srwatson .mpo_socket_check_relabel = stub_socket_check_relabel, 1820172930Srwatson .mpo_socket_check_send = stub_socket_check_send, 1821172930Srwatson .mpo_socket_check_stat = stub_socket_check_stat, 1822172930Srwatson .mpo_socket_check_visible = stub_socket_check_visible, 1823173138Srwatson .mpo_socket_copy_label = stub_copy_label, 1824173138Srwatson .mpo_socket_create = stub_socket_create, 1825173138Srwatson .mpo_socket_create_mbuf = stub_socket_create_mbuf, 1826173138Srwatson .mpo_socket_destroy_label = stub_destroy_label, 1827173138Srwatson .mpo_socket_externalize_label = stub_externalize_label, 1828173138Srwatson .mpo_socket_init_label = stub_init_label_waitcheck, 1829173138Srwatson .mpo_socket_internalize_label = stub_internalize_label, 1830173138Srwatson .mpo_socket_newconn = stub_socket_newconn, 1831173138Srwatson .mpo_socket_relabel = stub_socket_relabel, 1832173138Srwatson 1833173138Srwatson .mpo_socketpeer_destroy_label = stub_destroy_label, 1834173138Srwatson .mpo_socketpeer_externalize_label = stub_externalize_label, 1835173138Srwatson .mpo_socketpeer_init_label = stub_init_label_waitcheck, 1836173138Srwatson .mpo_socketpeer_set_from_mbuf = stub_socketpeer_set_from_mbuf, 1837173138Srwatson .mpo_socketpeer_set_from_socket = stub_socketpeer_set_from_socket, 1838173138Srwatson 1839173138Srwatson .mpo_syncache_init_label = stub_init_label_waitcheck, 1840173138Srwatson .mpo_syncache_destroy_label = stub_destroy_label, 1841173138Srwatson .mpo_syncache_create = stub_syncache_create, 1842173138Srwatson .mpo_syncache_create_mbuf= stub_syncache_create_mbuf, 1843173138Srwatson 1844173138Srwatson .mpo_sysvmsg_cleanup = stub_sysvmsg_cleanup, 1845173138Srwatson .mpo_sysvmsg_create = stub_sysvmsg_create, 1846173138Srwatson .mpo_sysvmsg_destroy_label = stub_destroy_label, 1847173138Srwatson .mpo_sysvmsg_init_label = stub_init_label, 1848173138Srwatson 1849173138Srwatson .mpo_sysvmsq_check_msgmsq = stub_sysvmsq_check_msgmsq, 1850173138Srwatson .mpo_sysvmsq_check_msgrcv = stub_sysvmsq_check_msgrcv, 1851173138Srwatson .mpo_sysvmsq_check_msgrmid = stub_sysvmsq_check_msgrmid, 1852173138Srwatson .mpo_sysvmsq_check_msqget = stub_sysvmsq_check_msqget, 1853173138Srwatson .mpo_sysvmsq_check_msqsnd = stub_sysvmsq_check_msqsnd, 1854173138Srwatson .mpo_sysvmsq_check_msqrcv = stub_sysvmsq_check_msqrcv, 1855173138Srwatson .mpo_sysvmsq_check_msqctl = stub_sysvmsq_check_msqctl, 1856173138Srwatson .mpo_sysvmsq_cleanup = stub_sysvmsq_cleanup, 1857173138Srwatson .mpo_sysvmsq_create = stub_sysvmsq_create, 1858173138Srwatson .mpo_sysvmsq_destroy_label = stub_destroy_label, 1859173138Srwatson .mpo_sysvmsq_init_label = stub_init_label, 1860173138Srwatson 1861173138Srwatson .mpo_sysvsem_check_semctl = stub_sysvsem_check_semctl, 1862173138Srwatson .mpo_sysvsem_check_semget = stub_sysvsem_check_semget, 1863173138Srwatson .mpo_sysvsem_check_semop = stub_sysvsem_check_semop, 1864173138Srwatson .mpo_sysvsem_cleanup = stub_sysvsem_cleanup, 1865173138Srwatson .mpo_sysvsem_create = stub_sysvsem_create, 1866173138Srwatson .mpo_sysvsem_destroy_label = stub_destroy_label, 1867173138Srwatson .mpo_sysvsem_init_label = stub_init_label, 1868173138Srwatson 1869173138Srwatson .mpo_sysvshm_check_shmat = stub_sysvshm_check_shmat, 1870173138Srwatson .mpo_sysvshm_check_shmctl = stub_sysvshm_check_shmctl, 1871173138Srwatson .mpo_sysvshm_check_shmdt = stub_sysvshm_check_shmdt, 1872173138Srwatson .mpo_sysvshm_check_shmget = stub_sysvshm_check_shmget, 1873173138Srwatson .mpo_sysvshm_cleanup = stub_sysvshm_cleanup, 1874173138Srwatson .mpo_sysvshm_create = stub_sysvshm_create, 1875173138Srwatson .mpo_sysvshm_destroy_label = stub_destroy_label, 1876173138Srwatson .mpo_sysvshm_init_label = stub_init_label, 1877173138Srwatson 1878172930Srwatson .mpo_system_check_acct = stub_system_check_acct, 1879172930Srwatson .mpo_system_check_audit = stub_system_check_audit, 1880172930Srwatson .mpo_system_check_auditctl = stub_system_check_auditctl, 1881172930Srwatson .mpo_system_check_auditon = stub_system_check_auditon, 1882172930Srwatson .mpo_system_check_reboot = stub_system_check_reboot, 1883172930Srwatson .mpo_system_check_swapoff = stub_system_check_swapoff, 1884172930Srwatson .mpo_system_check_swapon = stub_system_check_swapon, 1885172930Srwatson .mpo_system_check_sysctl = stub_system_check_sysctl, 1886173138Srwatson 1887173138Srwatson .mpo_thread_userret = stub_thread_userret, 1888173138Srwatson 1889173138Srwatson .mpo_vnode_associate_extattr = stub_vnode_associate_extattr, 1890173138Srwatson .mpo_vnode_associate_singlelabel = stub_vnode_associate_singlelabel, 1891172930Srwatson .mpo_vnode_check_access = stub_vnode_check_access, 1892172930Srwatson .mpo_vnode_check_chdir = stub_vnode_check_chdir, 1893172930Srwatson .mpo_vnode_check_chroot = stub_vnode_check_chroot, 1894172930Srwatson .mpo_vnode_check_create = stub_vnode_check_create, 1895172930Srwatson .mpo_vnode_check_deleteacl = stub_vnode_check_deleteacl, 1896172930Srwatson .mpo_vnode_check_deleteextattr = stub_vnode_check_deleteextattr, 1897172930Srwatson .mpo_vnode_check_exec = stub_vnode_check_exec, 1898172930Srwatson .mpo_vnode_check_getacl = stub_vnode_check_getacl, 1899172930Srwatson .mpo_vnode_check_getextattr = stub_vnode_check_getextattr, 1900172930Srwatson .mpo_vnode_check_link = stub_vnode_check_link, 1901172930Srwatson .mpo_vnode_check_listextattr = stub_vnode_check_listextattr, 1902172930Srwatson .mpo_vnode_check_lookup = stub_vnode_check_lookup, 1903172930Srwatson .mpo_vnode_check_mmap = stub_vnode_check_mmap, 1904172930Srwatson .mpo_vnode_check_mmap_downgrade = stub_vnode_check_mmap_downgrade, 1905172930Srwatson .mpo_vnode_check_mprotect = stub_vnode_check_mprotect, 1906172930Srwatson .mpo_vnode_check_open = stub_vnode_check_open, 1907172930Srwatson .mpo_vnode_check_poll = stub_vnode_check_poll, 1908172930Srwatson .mpo_vnode_check_read = stub_vnode_check_read, 1909172930Srwatson .mpo_vnode_check_readdir = stub_vnode_check_readdir, 1910172930Srwatson .mpo_vnode_check_readlink = stub_vnode_check_readlink, 1911172930Srwatson .mpo_vnode_check_relabel = stub_vnode_check_relabel, 1912172930Srwatson .mpo_vnode_check_rename_from = stub_vnode_check_rename_from, 1913172930Srwatson .mpo_vnode_check_rename_to = stub_vnode_check_rename_to, 1914172930Srwatson .mpo_vnode_check_revoke = stub_vnode_check_revoke, 1915172930Srwatson .mpo_vnode_check_setacl = stub_vnode_check_setacl, 1916172930Srwatson .mpo_vnode_check_setextattr = stub_vnode_check_setextattr, 1917172930Srwatson .mpo_vnode_check_setflags = stub_vnode_check_setflags, 1918172930Srwatson .mpo_vnode_check_setmode = stub_vnode_check_setmode, 1919172930Srwatson .mpo_vnode_check_setowner = stub_vnode_check_setowner, 1920172930Srwatson .mpo_vnode_check_setutimes = stub_vnode_check_setutimes, 1921172930Srwatson .mpo_vnode_check_stat = stub_vnode_check_stat, 1922172930Srwatson .mpo_vnode_check_unlink = stub_vnode_check_unlink, 1923172930Srwatson .mpo_vnode_check_write = stub_vnode_check_write, 1924173138Srwatson .mpo_vnode_copy_label = stub_copy_label, 1925173138Srwatson .mpo_vnode_create_extattr = stub_vnode_create_extattr, 1926173138Srwatson .mpo_vnode_destroy_label = stub_destroy_label, 1927173138Srwatson .mpo_vnode_execve_transition = stub_vnode_execve_transition, 1928173138Srwatson .mpo_vnode_execve_will_transition = stub_vnode_execve_will_transition, 1929173138Srwatson .mpo_vnode_externalize_label = stub_externalize_label, 1930173138Srwatson .mpo_vnode_init_label = stub_init_label, 1931173138Srwatson .mpo_vnode_internalize_label = stub_internalize_label, 1932173138Srwatson .mpo_vnode_relabel = stub_vnode_relabel, 1933173138Srwatson .mpo_vnode_setlabel_extattr = stub_vnode_setlabel_extattr, 1934101099Srwatson}; 1935101099Srwatson 1936172955SrwatsonMAC_POLICY_SET(&stub_ops, mac_stub, "TrustedBSD MAC/Stub", 1937187016Srwatson MPC_LOADTIME_FLAG_UNLOADOK, NULL); 1938