Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 846d2db3 authored by Eric Biggers's avatar Eric Biggers Committed by Linus Torvalds
Browse files

keys: ensure that ->match_free() is called in request_key_and_link()



If check_cached_key() returns a non-NULL value, we still need to call
key_type::match_free() to undo key_type::match_preparse().

Fixes: 7743c48e ("keys: Cache result of request_key*() temporarily in task_struct")
Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent e8d6766f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -595,7 +595,7 @@ struct key *request_key_and_link(struct key_type *type,

	key = check_cached_key(&ctx);
	if (key)
		return key;
		goto error_free;

	/* search all the process keyrings for a key */
	rcu_read_lock();