diff options
Diffstat (limited to 'security/keys')
| -rw-r--r-- | security/keys/compat.c | 4 | ||||
| -rw-r--r-- | security/keys/process_keys.c | 2 | 
2 files changed, 3 insertions, 3 deletions
diff --git a/security/keys/compat.c b/security/keys/compat.c index 1c261763f47..d65fa7fa29b 100644 --- a/security/keys/compat.c +++ b/security/keys/compat.c @@ -40,12 +40,12 @@ static long compat_keyctl_instantiate_key_iov(  					   ARRAY_SIZE(iovstack),  					   iovstack, &iov);  	if (ret < 0) -		return ret; +		goto err;  	if (ret == 0)  		goto no_payload_free;  	ret = keyctl_instantiate_key_common(id, iov, ioc, ret, ringid); - +err:  	if (iov != iovstack)  		kfree(iov);  	return ret; diff --git a/security/keys/process_keys.c b/security/keys/process_keys.c index a571fad9101..42defae1e16 100644 --- a/security/keys/process_keys.c +++ b/security/keys/process_keys.c @@ -57,7 +57,7 @@ int install_user_keyrings(void)  	kenter("%p{%u}", user, uid); -	if (user->uid_keyring) { +	if (user->uid_keyring && user->session_keyring) {  		kleave(" = 0 [exist]");  		return 0;  	}  |