Beispiel #1
0
static struct label *
mac_exc_action_label_alloc(void)
{
	struct label *label = mac_labelzone_alloc(MAC_WAITOK);

	MAC_PERFORM(exc_action_label_init, label);
	return label;
}
Beispiel #2
0
static struct label *
mac_sysv_msgqueue_label_alloc(void)
{
	struct label *label;

	label = mac_labelzone_alloc(M_WAITOK);
	MAC_POLICY_PERFORM(sysvmsq_init_label, label);
	return (label);
}
Beispiel #3
0
static struct label *
mac_posixshm_label_alloc(void)
{
	struct label *label;

	label = mac_labelzone_alloc(M_WAITOK);
	MAC_POLICY_PERFORM(posixshm_init_label, label);
	return (label);
}
Beispiel #4
0
struct label *
mac_vnode_label_alloc(void)
{
	struct label *label;

	label = mac_labelzone_alloc(M_WAITOK);
	MAC_POLICY_PERFORM(vnode_init_label, label);
	return (label);
}
static struct label *
mac_posix_sem_label_alloc(void)
{
	struct label *label;

	label = mac_labelzone_alloc(MAC_WAITOK);
	MAC_PERFORM(init_posix_sem_label, label);
	MAC_DEBUG_COUNTER_INC(&nmac_psem);
	return (label);
}
Beispiel #6
0
static struct label *
mac_sysv_msgqueue_label_alloc(void)
{
	struct label *label;

	label = mac_labelzone_alloc(MAC_WAITOK);
	if (label == NULL)
		return (NULL);
	MAC_PERFORM(sysvmsq_label_init, label);
	return (label);
}
Beispiel #7
0
static struct label *
mac_file_label_alloc(void)
{
	struct label *label;

	label = mac_labelzone_alloc(MAC_WAITOK);
	if (label == NULL)
		return (NULL);
	MAC_PERFORM(file_label_init, label);
	return (label);
}
Beispiel #8
0
struct label *
mac_socket_label_alloc(int flag)
{
	struct label *label;
	int error;

	label = mac_labelzone_alloc(flag);
	if (label == NULL)
		return (NULL);

	MAC_CHECK(socket_label_init, label, flag);
	if (error) {
		MAC_PERFORM(socket_label_destroy, label);
		mac_labelzone_free(label);
		return (NULL);
	}

	return (label);
}
Beispiel #9
0
static struct label *
mac_ip6q_label_alloc(int flag)
{
	struct label *label;
	int error;

	label = mac_labelzone_alloc(flag);
	if (label == NULL)
		return (NULL);

	if (flag & M_WAITOK)
		MAC_POLICY_CHECK(ip6q_init_label, label, flag);
	else
		MAC_POLICY_CHECK_NOSLEEP(ip6q_init_label, label, flag);
	if (error) {
		MAC_POLICY_PERFORM_NOSLEEP(ip6q_destroy_label, label);
		mac_labelzone_free(label);
		return (NULL);
	}
	return (label);
}