diff options
author | Tyler Hicks <tyhicks@linux.vnet.ibm.com> | 2009-08-26 01:54:56 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-10-05 09:31:41 -0700 |
commit | de4f86bf0cfecea80ed02aeb850f15838936c83b (patch) | |
tree | 2869e111754c8174af90be15e730a8fe1b77c62e /fs | |
parent | f7d98b8fd06509ab1fca22923b4bbf11e7567955 (diff) |
eCryptfs: Validate global auth tok keys
commit 3891959846709a19f76628e33478cd85edb0e79f upstream.
When searching through the global authentication tokens for a given key
signature, verify that a matching key has not been revoked and has not
expired. This allows the `keyctl revoke` command to be properly used on
keys in use by eCryptfs.
Acked-by: Serge Hallyn <serue@us.ibm.com>
Cc: ecryptfs-devel@lists.launchpad.net
Signed-off-by: Tyler Hicks <tyhicks@linux.vnet.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ecryptfs/keystore.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c index 9fbc9a1d6a90..c77438f70bbd 100644 --- a/fs/ecryptfs/keystore.c +++ b/fs/ecryptfs/keystore.c @@ -416,7 +416,9 @@ ecryptfs_find_global_auth_tok_for_sig( &mount_crypt_stat->global_auth_tok_list, mount_crypt_stat_list) { if (memcmp(walker->sig, sig, ECRYPTFS_SIG_SIZE_HEX) == 0) { - (*global_auth_tok) = walker; + rc = key_validate(walker->global_auth_tok_key); + if (!rc) + (*global_auth_tok) = walker; goto out; } } |