Commit | Line | Data |
---|---|---|
b56e5a17 DH |
1 | /* System keyring containing trusted public keys. |
2 | * | |
3 | * Copyright (C) 2013 Red Hat, Inc. All Rights Reserved. | |
4 | * Written by David Howells (dhowells@redhat.com) | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or | |
7 | * modify it under the terms of the GNU General Public Licence | |
8 | * as published by the Free Software Foundation; either version | |
9 | * 2 of the Licence, or (at your option) any later version. | |
10 | */ | |
11 | ||
12 | #ifndef _KEYS_SYSTEM_KEYRING_H | |
13 | #define _KEYS_SYSTEM_KEYRING_H | |
14 | ||
a511e1af DH |
15 | #include <linux/key.h> |
16 | ||
b56e5a17 DH |
17 | #ifdef CONFIG_SYSTEM_TRUSTED_KEYRING |
18 | ||
a511e1af DH |
19 | extern int restrict_link_by_builtin_trusted(struct key *keyring, |
20 | const struct key_type *type, | |
a511e1af | 21 | const union key_payload *payload); |
b56e5a17 | 22 | |
3be4beaf | 23 | #else |
a511e1af | 24 | #define restrict_link_by_builtin_trusted restrict_link_reject |
b56e5a17 DH |
25 | #endif |
26 | ||
d3bfe841 DH |
27 | #ifdef CONFIG_SECONDARY_TRUSTED_KEYRING |
28 | extern int restrict_link_by_builtin_and_secondary_trusted( | |
29 | struct key *keyring, | |
30 | const struct key_type *type, | |
31 | const union key_payload *payload); | |
32 | #else | |
33 | #define restrict_link_by_builtin_and_secondary_trusted restrict_link_by_builtin_trusted | |
34 | #endif | |
35 | ||
8dada209 DH |
36 | #ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING |
37 | extern int mark_hash_blacklisted(const char *hash); | |
38 | extern int is_hash_blacklisted(const u8 *hash, size_t hash_len, | |
39 | const char *type); | |
40 | #else | |
41 | static inline int is_hash_blacklisted(const u8 *hash, size_t hash_len, | |
42 | const char *type) | |
43 | { | |
44 | return 0; | |
45 | } | |
46 | #endif | |
47 | ||
56104cf2 | 48 | #ifdef CONFIG_IMA_BLACKLIST_KEYRING |
41c89b64 PM |
49 | extern struct key *ima_blacklist_keyring; |
50 | ||
41c89b64 PM |
51 | static inline struct key *get_ima_blacklist_keyring(void) |
52 | { | |
53 | return ima_blacklist_keyring; | |
54 | } | |
55 | #else | |
41c89b64 PM |
56 | static inline struct key *get_ima_blacklist_keyring(void) |
57 | { | |
58 | return NULL; | |
59 | } | |
56104cf2 | 60 | #endif /* CONFIG_IMA_BLACKLIST_KEYRING */ |
41c89b64 PM |
61 | |
62 | ||
b56e5a17 | 63 | #endif /* _KEYS_SYSTEM_KEYRING_H */ |