summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoberto Sassu <roberto.sassu@polito.it>2011-06-27 13:45:39 +0200
committerMimi Zohar <zohar@linux.vnet.ibm.com>2011-06-27 15:08:39 +0200
commitf91c2c5cfa2950a20265b45bcc13e49ed9e49aac (patch)
treef5ed8f02cc44dfe9274440c8cdcd50b4345621e6
parentKEYS: Don't return EAGAIN to keyctl_assume_authority() (diff)
downloadlinux-f91c2c5cfa2950a20265b45bcc13e49ed9e49aac.tar.xz
linux-f91c2c5cfa2950a20265b45bcc13e49ed9e49aac.zip
encrypted_keys: avoid dumping the master key if the request fails
Do not dump the master key if an error is encountered during the request. Signed-off-by: Roberto Sassu <roberto.sassu@polito.it> Acked-by: Gianluca Ramunno <ramunno@polito.it> Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
Diffstat (limited to '')
-rw-r--r--security/keys/encrypted.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/security/keys/encrypted.c b/security/keys/encrypted.c
index b1cba5bf0a5e..37cd913f18ae 100644
--- a/security/keys/encrypted.c
+++ b/security/keys/encrypted.c
@@ -378,11 +378,13 @@ static struct key *request_master_key(struct encrypted_key_payload *epayload,
} else
goto out;
- if (IS_ERR(mkey))
+ if (IS_ERR(mkey)) {
pr_info("encrypted_key: key %s not found",
epayload->master_desc);
- if (mkey)
- dump_master_key(*master_key, *master_keylen);
+ goto out;
+ }
+
+ dump_master_key(*master_key, *master_keylen);
out:
return mkey;
}