diff options
author | David Howells <dhowells@redhat.com> | 2019-06-26 22:02:32 +0200 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2019-06-26 22:02:32 +0200 |
commit | dcf49dbc8077e278ddd1bc7298abc781496e8a08 (patch) | |
tree | e187765e6336fefc35d83f5b75b7cbe1d4ec194a /security/keys/process_keys.c | |
parent | keys: Cache the hash value to avoid lots of recalculation (diff) | |
download | linux-dcf49dbc8077e278ddd1bc7298abc781496e8a08.tar.xz linux-dcf49dbc8077e278ddd1bc7298abc781496e8a08.zip |
keys: Add a 'recurse' flag for keyring searches
Add a 'recurse' flag for keyring searches so that the flag can be omitted
and recursion disabled, thereby allowing just the nominated keyring to be
searched and none of the children.
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'security/keys/process_keys.c')
-rw-r--r-- | security/keys/process_keys.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/security/keys/process_keys.c b/security/keys/process_keys.c index f8ffb06d0297..b07f768d23dc 100644 --- a/security/keys/process_keys.c +++ b/security/keys/process_keys.c @@ -531,7 +531,8 @@ key_ref_t lookup_user_key(key_serial_t id, unsigned long lflags, struct keyring_search_context ctx = { .match_data.cmp = lookup_user_key_possessed, .match_data.lookup_type = KEYRING_SEARCH_LOOKUP_DIRECT, - .flags = KEYRING_SEARCH_NO_STATE_CHECK, + .flags = (KEYRING_SEARCH_NO_STATE_CHECK | + KEYRING_SEARCH_RECURSE), }; struct request_key_auth *rka; struct key *key; |