diff options
Diffstat (limited to 'ssh-agent.c')
-rw-r--r-- | ssh-agent.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/ssh-agent.c b/ssh-agent.c index 555396fc5..1874eb152 100644 --- a/ssh-agent.c +++ b/ssh-agent.c | |||
@@ -34,7 +34,7 @@ | |||
34 | */ | 34 | */ |
35 | 35 | ||
36 | #include "includes.h" | 36 | #include "includes.h" |
37 | RCSID("$OpenBSD: ssh-agent.c,v 1.82 2002/03/04 17:27:39 stevesk Exp $"); | 37 | RCSID("$OpenBSD: ssh-agent.c,v 1.83 2002/03/21 22:44:05 rees Exp $"); |
38 | 38 | ||
39 | #if defined(HAVE_SYS_QUEUE_H) && !defined(HAVE_BOGUS_SYS_QUEUE_H) | 39 | #if defined(HAVE_SYS_QUEUE_H) && !defined(HAVE_BOGUS_SYS_QUEUE_H) |
40 | #include <sys/queue.h> | 40 | #include <sys/queue.h> |
@@ -454,12 +454,14 @@ process_add_smartcard_key (SocketEntry *e) | |||
454 | { | 454 | { |
455 | Idtab *tab; | 455 | Idtab *tab; |
456 | Key *n = NULL, *k = NULL; | 456 | Key *n = NULL, *k = NULL; |
457 | char *sc_reader_id = NULL; | 457 | char *sc_reader_id = NULL, *pin; |
458 | int success = 0; | 458 | int success = 0; |
459 | 459 | ||
460 | sc_reader_id = buffer_get_string(&e->input, NULL); | 460 | sc_reader_id = buffer_get_string(&e->input, NULL); |
461 | k = sc_get_key(sc_reader_id); | 461 | pin = buffer_get_string(&e->input, NULL); |
462 | k = sc_get_key(sc_reader_id, pin); | ||
462 | xfree(sc_reader_id); | 463 | xfree(sc_reader_id); |
464 | xfree(pin); | ||
463 | 465 | ||
464 | if (k == NULL) { | 466 | if (k == NULL) { |
465 | error("sc_get_pubkey failed"); | 467 | error("sc_get_pubkey failed"); |
@@ -505,11 +507,13 @@ process_remove_smartcard_key(SocketEntry *e) | |||
505 | { | 507 | { |
506 | Key *k = NULL; | 508 | Key *k = NULL; |
507 | int success = 0; | 509 | int success = 0; |
508 | char *sc_reader_id = NULL; | 510 | char *sc_reader_id = NULL, *pin; |
509 | 511 | ||
510 | sc_reader_id = buffer_get_string(&e->input, NULL); | 512 | sc_reader_id = buffer_get_string(&e->input, NULL); |
511 | k = sc_get_key(sc_reader_id); | 513 | pin = buffer_get_string(&e->input, NULL); |
514 | k = sc_get_key(sc_reader_id, pin); | ||
512 | xfree(sc_reader_id); | 515 | xfree(sc_reader_id); |
516 | xfree(pin); | ||
513 | 517 | ||
514 | if (k == NULL) { | 518 | if (k == NULL) { |
515 | error("sc_get_pubkey failed"); | 519 | error("sc_get_pubkey failed"); |