PERFORCE change 32229 for review
Robert Watson
rwatson at FreeBSD.org
Sat May 31 14:39:34 PDT 2003
http://perforce.freebsd.org/chv.cgi?CH=32229
Change 32229 by rwatson at rwatson_tislabs on 2003/05/31 14:39:06
Teach mac_test to test label constants in label consumers,
not just in label maintainers. Right now we don't
distinguish initialized from created/associated, that will
come in a next iteration.
Note: for mac_test to be useful, it must be built with
-DINVARIANTS, or linked directly to the kernel.
Affected files ...
.. //depot/projects/trustedbsd/mac/sys/security/mac_test/mac_test.c#102 edit
Differences ...
==== //depot/projects/trustedbsd/mac/sys/security/mac_test/mac_test.c#102 (text+ko) ====
@@ -92,6 +92,30 @@
#define EXMAGIC 0x849ba1fd
#define SLOT(x) LABEL_TO_SLOT((x), test_slot).l_long
+
+#define ASSERT_BPF_LABEL(x) KASSERT(SLOT(x) == BPFMAGIC || \
+ SLOT(x) == 0, ("%s: Bad BPF label", __func__ ))
+#define ASSERT_DEVFS_LABEL(x) KASSERT(SLOT(x) == DEVFSMAGIC || \
+ SLOT(x) == 0, ("%s: Bad DEVFS label", __func__ ))
+#define ASSERT_IFNET_LABEL(x) KASSERT(SLOT(x) == IFNETMAGIC || \
+ SLOT(x) == 0, ("%s: Bad IFNET label", __func__ ))
+#define ASSERT_IPQ_LABEL(x) KASSERT(SLOT(x) == IPQMAGIC || \
+ SLOT(x) == 0, ("%s: Bad IPQ label", __func__ ))
+#define ASSERT_MBUF_LABEL(x) KASSERT(SLOT(x) == MBUFMAGIC || \
+ SLOT(x) == 0, ("%s: Bad MBUF label", __func__ ))
+#define ASSERT_MOUNT_LABEL(x) KASSERT(SLOT(x) == MOUNTMAGIC || \
+ SLOT(x) == 0, ("%s: Bad MOUNT label", __func__ ))
+#define ASSERT_SOCKET_LABEL(x) KASSERT(SLOT(x) == SOCKETMAGIC || \
+ SLOT(x) == 0, ("%s: Bad SOCKET label", __func__ ))
+#define ASSERT_PIPE_LABEL(x) KASSERT(SLOT(x) == PIPEMAGIC || \
+ SLOT(x) == 0, ("%s: Bad PIPE label", __func__ ))
+#define ASSERT_PROC_LABEL(x) KASSERT(SLOT(x) == PROCMAGIC || \
+ SLOT(x) == 0, ("%s: Bad PROC label", __func__ ))
+#define ASSERT_CRED_LABEL(x) KASSERT(SLOT(x) == CREDMAGIC || \
+ SLOT(x) == 0, ("%s: Bad CRED label", __func__ ))
+#define ASSERT_VNODE_LABEL(x) KASSERT(SLOT(x) == VNODEMAGIC || \
+ SLOT(x) == 0, ("%s: Bad VNODE label", __func__ ))
+
static int test_slot;
SYSCTL_INT(_security_mac_test, OID_AUTO, slot, CTLFLAG_RD,
&test_slot, 0, "Slot allocated by framework");
@@ -536,6 +560,9 @@
atomic_add_int(&externalize_count, 1);
+ KASSERT(SLOT(label) != EXMAGIC,
+ ("mac_test_externalize_label: destroyed label"));
+
return (0);
}
@@ -546,6 +573,9 @@
atomic_add_int(&internalize_count, 1);
+ KASSERT(SLOT(label) != EXMAGIC,
+ ("mac_test_internalize_label: destroyed label"));
+
return (0);
}
@@ -559,6 +589,9 @@
struct label *vlabel)
{
+ ASSERT_MOUNT_LABEL(fslabel);
+ ASSERT_DEVFS_LABEL(delabel);
+ ASSERT_VNODE_LABEL(vlabel);
}
static int
@@ -566,6 +599,8 @@
struct vnode *vp, struct label *vlabel)
{
+ ASSERT_MOUNT_LABEL(fslabel);
+ ASSERT_VNODE_LABEL(vlabel);
return (0);
}
@@ -574,6 +609,8 @@
struct label *fslabel, struct vnode *vp, struct label *vlabel)
{
+ ASSERT_MOUNT_LABEL(fslabel);
+ ASSERT_VNODE_LABEL(vlabel);
}
static void
@@ -582,6 +619,7 @@
const char *fullpath)
{
+ ASSERT_DEVFS_LABEL(label);
}
static void
@@ -590,6 +628,7 @@
const char *fullpath)
{
+ ASSERT_DEVFS_LABEL(label);
}
static void
@@ -598,6 +637,9 @@
struct label *delabel, const char *fullpath)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_DEVFS_LABEL(ddlabel);
+ ASSERT_DEVFS_LABEL(delabel);
}
static int
@@ -606,6 +648,10 @@
struct vnode *vp, struct label *vlabel, struct componentname *cnp)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_MOUNT_LABEL(fslabel);
+ ASSERT_VNODE_LABEL(dlabel);
+
return (0);
}
@@ -614,6 +660,9 @@
struct label *mntlabel, struct label *fslabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_MOUNT_LABEL(mntlabel);
+ ASSERT_MOUNT_LABEL(fslabel);
}
static void
@@ -621,6 +670,9 @@
struct label *mntlabel, struct label *fslabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_MOUNT_LABEL(mntlabel);
+ ASSERT_MOUNT_LABEL(fslabel);
}
static void
@@ -628,6 +680,9 @@
struct label *vnodelabel, struct label *label)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(vnodelabel);
+ ASSERT_VNODE_LABEL(label);
}
static int
@@ -635,6 +690,9 @@
struct label *vlabel, struct label *intlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(vlabel);
+ ASSERT_VNODE_LABEL(intlabel);
return (0);
}
@@ -644,6 +702,8 @@
struct vnode *vp, struct label *vnodelabel)
{
+ ASSERT_DEVFS_LABEL(direntlabel);
+ ASSERT_VNODE_LABEL(vnodelabel);
}
/*
@@ -654,6 +714,8 @@
struct mbuf *m, struct label *mbuflabel)
{
+ ASSERT_SOCKET_LABEL(socketlabel);
+ ASSERT_MBUF_LABEL(mbuflabel);
}
static void
@@ -661,6 +723,8 @@
struct label *socketlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_SOCKET_LABEL(socketlabel);
}
static void
@@ -668,6 +732,8 @@
struct label *pipelabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
}
static void
@@ -676,6 +742,8 @@
struct label *newsocketlabel)
{
+ ASSERT_SOCKET_LABEL(oldsocketlabel);
+ ASSERT_SOCKET_LABEL(newsocketlabel);
}
static void
@@ -683,6 +751,8 @@
struct label *socketlabel, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_SOCKET_LABEL(newlabel);
}
static void
@@ -690,6 +760,9 @@
struct label *pipelabel, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
+ ASSERT_PIPE_LABEL(newlabel);
}
static void
@@ -697,6 +770,8 @@
struct socket *socket, struct label *socketpeerlabel)
{
+ ASSERT_MBUF_LABEL(mbuflabel);
+ ASSERT_SOCKET_LABEL(socketpeerlabel);
}
/*
@@ -708,6 +783,8 @@
struct label *newsocketpeerlabel)
{
+ ASSERT_SOCKET_LABEL(oldsocketlabel);
+ ASSERT_SOCKET_LABEL(newsocketpeerlabel);
}
static void
@@ -715,6 +792,8 @@
struct label *bpflabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_BPF_LABEL(bpflabel);
}
static void
@@ -722,6 +801,8 @@
struct mbuf *datagram, struct label *datagramlabel)
{
+ ASSERT_IPQ_LABEL(ipqlabel);
+ ASSERT_MBUF_LABEL(datagramlabel);
}
static void
@@ -729,12 +810,15 @@
struct mbuf *fragment, struct label *fragmentlabel)
{
+ ASSERT_MBUF_LABEL(datagramlabel);
+ ASSERT_MBUF_LABEL(fragmentlabel);
}
static void
mac_test_create_ifnet(struct ifnet *ifnet, struct label *ifnetlabel)
{
+ ASSERT_IFNET_LABEL(ifnetlabel);
}
static void
@@ -742,6 +826,8 @@
struct ipq *ipq, struct label *ipqlabel)
{
+ ASSERT_MBUF_LABEL(fragmentlabel);
+ ASSERT_IPQ_LABEL(ipqlabel);
}
static void
@@ -750,6 +836,8 @@
struct label *newmbuflabel)
{
+ ASSERT_MBUF_LABEL(oldmbuflabel);
+ ASSERT_MBUF_LABEL(newmbuflabel);
}
static void
@@ -757,6 +845,8 @@
struct mbuf *mbuf, struct label *mbuflabel)
{
+ ASSERT_IFNET_LABEL(ifnetlabel);
+ ASSERT_MBUF_LABEL(mbuflabel);
}
static void
@@ -764,6 +854,8 @@
struct mbuf *mbuf, struct label *mbuflabel)
{
+ ASSERT_BPF_LABEL(bpflabel);
+ ASSERT_MBUF_LABEL(mbuflabel);
}
static void
@@ -771,6 +863,8 @@
struct mbuf *m, struct label *mbuflabel)
{
+ ASSERT_IFNET_LABEL(ifnetlabel);
+ ASSERT_MBUF_LABEL(mbuflabel);
}
static void
@@ -779,6 +873,9 @@
struct mbuf *newmbuf, struct label *newmbuflabel)
{
+ ASSERT_MBUF_LABEL(oldmbuflabel);
+ ASSERT_IFNET_LABEL(ifnetlabel);
+ ASSERT_MBUF_LABEL(newmbuflabel);
}
static void
@@ -787,6 +884,8 @@
struct label *newmbuflabel)
{
+ ASSERT_MBUF_LABEL(oldmbuflabel);
+ ASSERT_MBUF_LABEL(newmbuflabel);
}
static int
@@ -794,6 +893,9 @@
struct ipq *ipq, struct label *ipqlabel)
{
+ ASSERT_MBUF_LABEL(fragmentlabel);
+ ASSERT_IPQ_LABEL(ipqlabel);
+
return (1);
}
@@ -801,12 +903,14 @@
mac_test_reflect_mbuf_icmp(struct mbuf *m, struct label *mlabel)
{
+ ASSERT_MBUF_LABEL(mlabel);
}
static void
mac_test_reflect_mbuf_tcp(struct mbuf *m, struct label *mlabel)
{
+ ASSERT_MBUF_LABEL(mlabel);
}
static void
@@ -814,6 +918,9 @@
struct label *ifnetlabel, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_IFNET_LABEL(ifnetlabel);
+ ASSERT_IFNET_LABEL(newlabel);
}
static void
@@ -821,6 +928,8 @@
struct ipq *ipq, struct label *ipqlabel)
{
+ ASSERT_MBUF_LABEL(fragmentlabel);
+ ASSERT_IPQ_LABEL(ipqlabel);
}
/*
@@ -830,6 +939,8 @@
mac_test_create_cred(struct ucred *cred_parent, struct ucred *cred_child)
{
+ ASSERT_CRED_LABEL(&cred_parent->cr_label);
+ ASSERT_CRED_LABEL(&cred_child->cr_label);
}
static void
@@ -839,6 +950,11 @@
struct label *execlabel)
{
+ ASSERT_CRED_LABEL(&old->cr_label);
+ ASSERT_CRED_LABEL(&new->cr_label);
+ ASSERT_VNODE_LABEL(filelabel);
+ ASSERT_VNODE_LABEL(interpvnodelabel);
+ ASSERT_VNODE_LABEL(execlabel);
}
static int
@@ -847,6 +963,11 @@
struct image_params *imgp, struct label *execlabel)
{
+ ASSERT_CRED_LABEL(&old->cr_label);
+ ASSERT_VNODE_LABEL(filelabel);
+ ASSERT_VNODE_LABEL(interpvnodelabel);
+ ASSERT_VNODE_LABEL(execlabel);
+
return (0);
}
@@ -854,18 +975,22 @@
mac_test_create_proc0(struct ucred *cred)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
}
static void
mac_test_create_proc1(struct ucred *cred)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
}
static void
mac_test_relabel_cred(struct ucred *cred, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(newlabel);
}
static int
@@ -899,6 +1024,9 @@
struct ifnet *ifnet, struct label *ifnetlabel)
{
+ ASSERT_BPF_LABEL(bpflabel);
+ ASSERT_IFNET_LABEL(ifnetlabel);
+
return (0);
}
@@ -906,6 +1034,9 @@
mac_test_check_cred_relabel(struct ucred *cred, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_CRED_LABEL(newlabel);
+
return (0);
}
@@ -913,6 +1044,9 @@
mac_test_check_cred_visible(struct ucred *u1, struct ucred *u2)
{
+ ASSERT_CRED_LABEL(&u1->cr_label);
+ ASSERT_CRED_LABEL(&u2->cr_label);
+
return (0);
}
@@ -921,6 +1055,9 @@
struct label *ifnetlabel, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_IFNET_LABEL(ifnetlabel);
+ ASSERT_IFNET_LABEL(newlabel);
return (0);
}
@@ -929,6 +1066,9 @@
struct mbuf *m, struct label *mbuflabel)
{
+ ASSERT_IFNET_LABEL(ifnetlabel);
+ ASSERT_MBUF_LABEL(mbuflabel);
+
return (0);
}
@@ -936,6 +1076,8 @@
mac_test_check_kenv_dump(struct ucred *cred)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -943,6 +1085,8 @@
mac_test_check_kenv_get(struct ucred *cred, char *name)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -950,6 +1094,8 @@
mac_test_check_kenv_set(struct ucred *cred, char *name, char *value)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -957,6 +1103,8 @@
mac_test_check_kenv_unset(struct ucred *cred, char *name)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -965,6 +1113,9 @@
struct label *label)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -972,6 +1123,8 @@
mac_test_check_kld_stat(struct ucred *cred)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -979,6 +1132,8 @@
mac_test_check_kld_unload(struct ucred *cred)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -987,6 +1142,9 @@
struct label *mntlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_MOUNT_LABEL(mntlabel);
+
return (0);
}
@@ -995,6 +1153,9 @@
struct label *pipelabel, unsigned long cmd, void /* caddr_t */ *data)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
+
return (0);
}
@@ -1003,6 +1164,9 @@
struct label *pipelabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
+
return (0);
}
@@ -1011,6 +1175,9 @@
struct label *pipelabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
+
return (0);
}
@@ -1019,6 +1186,10 @@
struct label *pipelabel, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
+ ASSERT_PIPE_LABEL(newlabel);
+
return (0);
}
@@ -1027,6 +1198,9 @@
struct label *pipelabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
+
return (0);
}
@@ -1035,6 +1209,9 @@
struct label *pipelabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_PIPE_LABEL(pipelabel);
+
return (0);
}
@@ -1042,6 +1219,9 @@
mac_test_check_proc_debug(struct ucred *cred, struct proc *proc)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_CRED_LABEL(&proc->p_ucred->cr_label);
+
return (0);
}
@@ -1049,6 +1229,9 @@
mac_test_check_proc_sched(struct ucred *cred, struct proc *proc)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_CRED_LABEL(&proc->p_ucred->cr_label);
+
return (0);
}
@@ -1056,6 +1239,9 @@
mac_test_check_proc_signal(struct ucred *cred, struct proc *proc, int signum)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_CRED_LABEL(&proc->p_ucred->cr_label);
+
return (0);
}
@@ -1064,6 +1250,9 @@
struct label *socketlabel, struct sockaddr *sockaddr)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_SOCKET_LABEL(socketlabel);
+
return (0);
}
@@ -1072,6 +1261,9 @@
struct label *socketlabel, struct sockaddr *sockaddr)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_SOCKET_LABEL(socketlabel);
+
return (0);
}
@@ -1080,6 +1272,9 @@
struct mbuf *m, struct label *mbuflabel)
{
+ ASSERT_SOCKET_LABEL(socketlabel);
+ ASSERT_MBUF_LABEL(mbuflabel);
+
return (0);
}
@@ -1088,6 +1283,9 @@
struct label *socketlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_SOCKET_LABEL(socketlabel);
+
return (0);
}
@@ -1096,6 +1294,9 @@
struct label *socketlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_SOCKET_LABEL(socketlabel);
+
return (0);
}
@@ -1104,6 +1305,10 @@
struct label *socketlabel, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_SOCKET_LABEL(socketlabel);
+ ASSERT_SOCKET_LABEL(newlabel);
+
return (0);
}
@@ -1111,6 +1316,8 @@
mac_test_check_sysarch_ioperm(struct ucred *cred)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -1119,6 +1326,8 @@
struct label *label)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -1126,6 +1335,8 @@
mac_test_check_system_reboot(struct ucred *cred, int how)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -1133,6 +1344,8 @@
mac_test_check_system_settime(struct ucred *cred)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -1141,6 +1354,9 @@
struct label *label)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1149,6 +1365,9 @@
struct label *label)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1157,6 +1376,8 @@
void *old, size_t *oldlenp, int inkernel, void *new, size_t newlen)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+
return (0);
}
@@ -1165,6 +1386,9 @@
struct label *label, int acc_mode)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1173,6 +1397,9 @@
struct label *dlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+
return (0);
}
@@ -1181,6 +1408,9 @@
struct label *dlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+
return (0);
}
@@ -1189,6 +1419,9 @@
struct label *dlabel, struct componentname *cnp, struct vattr *vap)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+
return (0);
}
@@ -1198,6 +1431,10 @@
struct componentname *cnp)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1206,6 +1443,9 @@
struct label *label, acl_type_t type)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1215,6 +1455,10 @@
struct label *execlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+ ASSERT_VNODE_LABEL(execlabel);
+
return (0);
}
@@ -1223,6 +1467,9 @@
struct label *label, acl_type_t type)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1231,6 +1478,9 @@
struct label *label, int attrnamespace, const char *name, struct uio *uio)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1240,6 +1490,10 @@
struct componentname *cnp)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1248,6 +1502,9 @@
struct label *dlabel, struct componentname *cnp)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+
return (0);
}
@@ -1256,6 +1513,9 @@
struct label *label, int prot)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1264,6 +1524,9 @@
struct label *label, int prot)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1272,6 +1535,9 @@
struct label *filelabel, int acc_mode)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(filelabel);
+
return (0);
}
@@ -1280,6 +1546,10 @@
struct vnode *vp, struct label *label)
{
+ ASSERT_CRED_LABEL(&active_cred->cr_label);
+ ASSERT_CRED_LABEL(&file_cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1288,6 +1558,10 @@
struct vnode *vp, struct label *label)
{
+ ASSERT_CRED_LABEL(&active_cred->cr_label);
+ ASSERT_CRED_LABEL(&file_cred->cr_label);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
}
@@ -1296,6 +1570,9 @@
struct label *dlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+
return (0);
}
@@ -1304,6 +1581,9 @@
struct label *vnodelabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(vnodelabel);
+
return (0);
}
@@ -1312,6 +1592,10 @@
struct label *vnodelabel, struct label *newlabel)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(vnodelabel);
+ ASSERT_VNODE_LABEL(newlabel);
+
return (0);
}
@@ -1321,6 +1605,10 @@
struct componentname *cnp)
{
+ ASSERT_CRED_LABEL(&cred->cr_label);
+ ASSERT_VNODE_LABEL(dlabel);
+ ASSERT_VNODE_LABEL(label);
+
return (0);
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list