blob: d239797785cf6a0681f39ab277c20819dbfc5deb [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * Netlink event notifications for SELinux.
3 *
4 * Author: James Morris <jmorris@redhat.com>
5 *
6 * Copyright (C) 2004 Red Hat, Inc., James Morris <jmorris@redhat.com>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2,
10 * as published by the Free Software Foundation.
11 */
12#ifndef _LINUX_SELINUX_NETLINK_H
13#define _LINUX_SELINUX_NETLINK_H
14
Arnd Bergmann9adfbfb2009-02-26 00:51:40 +010015#include <linux/types.h>
16
Linus Torvalds1da177e2005-04-16 15:20:36 -070017/* Message types. */
18#define SELNL_MSG_BASE 0x10
19enum {
20 SELNL_MSG_SETENFORCE = SELNL_MSG_BASE,
21 SELNL_MSG_POLICYLOAD,
22 SELNL_MSG_MAX
23};
24
Patrick McHardyac6d4392005-08-14 19:29:52 -070025#ifndef __KERNEL__
26/* Multicast groups - backwards compatiblility for userspace */
Linus Torvalds1da177e2005-04-16 15:20:36 -070027#define SELNL_GRP_NONE 0x00000000
28#define SELNL_GRP_AVC 0x00000001 /* AVC notifications */
29#define SELNL_GRP_ALL 0xffffffff
Patrick McHardyac6d4392005-08-14 19:29:52 -070030#endif
31
32enum selinux_nlgroups {
33 SELNLGRP_NONE,
34#define SELNLGRP_NONE SELNLGRP_NONE
35 SELNLGRP_AVC,
36#define SELNLGRP_AVC SELNLGRP_AVC
37 __SELNLGRP_MAX
38};
39#define SELNLGRP_MAX (__SELNLGRP_MAX - 1)
Linus Torvalds1da177e2005-04-16 15:20:36 -070040
41/* Message structures */
42struct selnl_msg_setenforce {
Arnd Bergmann9adfbfb2009-02-26 00:51:40 +010043 __s32 val;
Linus Torvalds1da177e2005-04-16 15:20:36 -070044};
45
46struct selnl_msg_policyload {
Arnd Bergmann9adfbfb2009-02-26 00:51:40 +010047 __u32 seqno;
Linus Torvalds1da177e2005-04-16 15:20:36 -070048};
49
50#endif /* _LINUX_SELINUX_NETLINK_H */