diff options
author | djm@openbsd.org <djm@openbsd.org> | 2015-07-18 08:00:21 +0000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2015-07-20 10:32:25 +1000 |
commit | b15fd989c8c62074397160147a8d5bc34b3f3c63 (patch) | |
tree | 780ba64cc9c5d2514520e7414f4d0dd9a77c15a1 | |
parent | 5b64f85bb811246c59ebab70aed331f26ba37b18 (diff) |
upstream commit
skip uninitialised PKCS#11 slots; patch from Jakub Jelen
in bz#2427 ok markus@
Upstream-ID: 744c1e7796e237ad32992d0d02148e8a18f27d29
-rw-r--r-- | ssh-pkcs11.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/ssh-pkcs11.c b/ssh-pkcs11.c index e074175bb..4156d0886 100644 --- a/ssh-pkcs11.c +++ b/ssh-pkcs11.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssh-pkcs11.c,v 1.19 2015/05/27 05:15:02 djm Exp $ */ | 1 | /* $OpenBSD: ssh-pkcs11.c,v 1.20 2015/07/18 08:00:21 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2010 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2010 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -631,6 +631,11 @@ pkcs11_add_provider(char *provider_id, char *pin, struct sshkey ***keyp) | |||
631 | error("C_GetTokenInfo failed: %lu", rv); | 631 | error("C_GetTokenInfo failed: %lu", rv); |
632 | continue; | 632 | continue; |
633 | } | 633 | } |
634 | if ((token->flags & CKF_TOKEN_INITIALIZED) == 0) { | ||
635 | debug2("%s: ignoring uninitialised token in slot %lu", | ||
636 | __func__, (unsigned long)i); | ||
637 | continue; | ||
638 | } | ||
634 | rmspace(token->label, sizeof(token->label)); | 639 | rmspace(token->label, sizeof(token->label)); |
635 | rmspace(token->manufacturerID, sizeof(token->manufacturerID)); | 640 | rmspace(token->manufacturerID, sizeof(token->manufacturerID)); |
636 | rmspace(token->model, sizeof(token->model)); | 641 | rmspace(token->model, sizeof(token->model)); |