xref: /linux/security/selinux/include/ibpkey.h (revision cdd5b5a9761fd66d17586e4f4ba6588c70e640ea)
15b497af4SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
2409dcf31SDaniel Jurgens /*
3409dcf31SDaniel Jurgens  * pkey table
4409dcf31SDaniel Jurgens  *
5409dcf31SDaniel Jurgens  * SELinux must keep a mapping of pkeys to labels/SIDs.  This
6409dcf31SDaniel Jurgens  * mapping is maintained as part of the normal policy but a fast cache is
7409dcf31SDaniel Jurgens  * needed to reduce the lookup overhead.
8409dcf31SDaniel Jurgens  */
9409dcf31SDaniel Jurgens 
10409dcf31SDaniel Jurgens /*
11409dcf31SDaniel Jurgens  * (c) Mellanox Technologies, 2016
12409dcf31SDaniel Jurgens  */
13409dcf31SDaniel Jurgens 
14409dcf31SDaniel Jurgens #ifndef _SELINUX_IB_PKEY_H
15409dcf31SDaniel Jurgens #define _SELINUX_IB_PKEY_H
16409dcf31SDaniel Jurgens 
174ad37de4SChristian Göttsche #include <linux/types.h>
18*eb14232fSChristian Göttsche #include "flask.h"
194ad37de4SChristian Göttsche 
20fe49c7e4SRavi Kumar Siddojigari #ifdef CONFIG_SECURITY_INFINIBAND
21409dcf31SDaniel Jurgens void sel_ib_pkey_flush(void);
22409dcf31SDaniel Jurgens int sel_ib_pkey_sid(u64 subnet_prefix, u16 pkey, u32 *sid);
23fe49c7e4SRavi Kumar Siddojigari #else
sel_ib_pkey_flush(void)24fe49c7e4SRavi Kumar Siddojigari static inline void sel_ib_pkey_flush(void)
25fe49c7e4SRavi Kumar Siddojigari {
26fe49c7e4SRavi Kumar Siddojigari 	return;
27fe49c7e4SRavi Kumar Siddojigari }
sel_ib_pkey_sid(u64 subnet_prefix,u16 pkey,u32 * sid)28fe49c7e4SRavi Kumar Siddojigari static inline int sel_ib_pkey_sid(u64 subnet_prefix, u16 pkey, u32 *sid)
29fe49c7e4SRavi Kumar Siddojigari {
30fe49c7e4SRavi Kumar Siddojigari 	*sid = SECINITSID_UNLABELED;
31fe49c7e4SRavi Kumar Siddojigari 	return 0;
32fe49c7e4SRavi Kumar Siddojigari }
33fe49c7e4SRavi Kumar Siddojigari #endif
34409dcf31SDaniel Jurgens 
35409dcf31SDaniel Jurgens #endif
36