Commit | Line | Data |
---|---|---|
d15c345f PM |
1 | /* |
2 | * NetLabel NETLINK Interface | |
3 | * | |
4 | * This file defines the NETLINK interface for the NetLabel system. The | |
5 | * NetLabel system manages static and dynamic label mappings for network | |
6 | * protocols such as CIPSO and RIPSO. | |
7 | * | |
82c21bfa | 8 | * Author: Paul Moore <paul@paul-moore.com> |
d15c345f PM |
9 | * |
10 | */ | |
11 | ||
12 | /* | |
13 | * (c) Copyright Hewlett-Packard Development Company, L.P., 2006 | |
14 | * | |
15 | * This program is free software; you can redistribute it and/or modify | |
16 | * it under the terms of the GNU General Public License as published by | |
17 | * the Free Software Foundation; either version 2 of the License, or | |
18 | * (at your option) any later version. | |
19 | * | |
20 | * This program is distributed in the hope that it will be useful, | |
21 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See | |
23 | * the GNU General Public License for more details. | |
24 | * | |
25 | * You should have received a copy of the GNU General Public License | |
d484ff15 | 26 | * along with this program; if not, see <http://www.gnu.org/licenses/>. |
d15c345f PM |
27 | * |
28 | */ | |
29 | ||
30 | #ifndef _NETLABEL_USER_H | |
31 | #define _NETLABEL_USER_H | |
32 | ||
7a0e1d60 | 33 | #include <linux/types.h> |
d15c345f PM |
34 | #include <linux/skbuff.h> |
35 | #include <linux/capability.h> | |
32f50cde | 36 | #include <linux/audit.h> |
7a0e1d60 | 37 | #include <net/netlink.h> |
d15c345f | 38 | #include <net/genetlink.h> |
7a0e1d60 | 39 | #include <net/netlabel.h> |
d15c345f PM |
40 | |
41 | /* NetLabel NETLINK helper functions */ | |
42 | ||
95d4e6be PM |
43 | /** |
44 | * netlbl_netlink_auditinfo - Fetch the audit information from a NETLINK msg | |
45 | * @skb: the packet | |
46 | * @audit_info: NetLabel audit information | |
47 | */ | |
48 | static inline void netlbl_netlink_auditinfo(struct sk_buff *skb, | |
49 | struct netlbl_audit *audit_info) | |
50 | { | |
c53fa1ed PM |
51 | security_task_getsecid(current, &audit_info->secid); |
52 | audit_info->loginuid = audit_get_loginuid(current); | |
53 | audit_info->sessionid = audit_get_sessionid(current); | |
95d4e6be PM |
54 | } |
55 | ||
d15c345f PM |
56 | /* NetLabel NETLINK I/O functions */ |
57 | ||
58 | int netlbl_netlink_init(void); | |
d15c345f | 59 | |
32f50cde PM |
60 | /* NetLabel Audit Functions */ |
61 | ||
95d4e6be PM |
62 | struct audit_buffer *netlbl_audit_start_common(int type, |
63 | struct netlbl_audit *audit_info); | |
32f50cde | 64 | |
d15c345f | 65 | #endif |