version 1.12, 2016/02/15 09:47:49 |
version 1.13, 2017/05/30 08:52:19 |
|
|
/* borrows code from sftp-server and ssh-agent */ |
/* borrows code from sftp-server and ssh-agent */ |
|
|
struct pkcs11_keyinfo { |
struct pkcs11_keyinfo { |
Key *key; |
struct sshkey *key; |
char *providername; |
char *providername; |
TAILQ_ENTRY(pkcs11_keyinfo) next; |
TAILQ_ENTRY(pkcs11_keyinfo) next; |
}; |
}; |
|
|
Buffer oqueue; |
Buffer oqueue; |
|
|
static void |
static void |
add_key(Key *k, char *name) |
add_key(struct sshkey *k, char *name) |
{ |
{ |
struct pkcs11_keyinfo *ki; |
struct pkcs11_keyinfo *ki; |
|
|
|
|
} |
} |
|
|
/* lookup matching 'private' key */ |
/* lookup matching 'private' key */ |
static Key * |
static struct sshkey * |
lookup_key(Key *k) |
lookup_key(struct sshkey *k) |
{ |
{ |
struct pkcs11_keyinfo *ki; |
struct pkcs11_keyinfo *ki; |
|
|
|
|
process_add(void) |
process_add(void) |
{ |
{ |
char *name, *pin; |
char *name, *pin; |
Key **keys; |
struct sshkey **keys; |
int i, nkeys; |
int i, nkeys; |
u_char *blob; |
u_char *blob; |
u_int blen; |
u_int blen; |
|
|
u_char *blob, *data, *signature = NULL; |
u_char *blob, *data, *signature = NULL; |
u_int blen, dlen, slen = 0; |
u_int blen, dlen, slen = 0; |
int ok = -1; |
int ok = -1; |
Key *key, *found; |
struct sshkey *key, *found; |
Buffer msg; |
Buffer msg; |
|
|
blob = get_string(&blen); |
blob = get_string(&blen); |