version 1.81, 2009/08/27 17:44:52 |
version 1.82, 2010/02/26 20:29:54 |
|
|
buffer_put_bignum2(b, key->rsa->p); |
buffer_put_bignum2(b, key->rsa->p); |
buffer_put_bignum2(b, key->rsa->q); |
buffer_put_bignum2(b, key->rsa->q); |
break; |
break; |
|
case KEY_RSA_CERT: |
|
if (key->cert == NULL || buffer_len(&key->cert->certblob) == 0) |
|
fatal("%s: no cert/certblob", __func__); |
|
buffer_put_string(b, buffer_ptr(&key->cert->certblob), |
|
buffer_len(&key->cert->certblob)); |
|
buffer_put_bignum2(b, key->rsa->d); |
|
buffer_put_bignum2(b, key->rsa->iqmp); |
|
buffer_put_bignum2(b, key->rsa->p); |
|
buffer_put_bignum2(b, key->rsa->q); |
|
break; |
case KEY_DSA: |
case KEY_DSA: |
buffer_put_bignum2(b, key->dsa->p); |
buffer_put_bignum2(b, key->dsa->p); |
buffer_put_bignum2(b, key->dsa->q); |
buffer_put_bignum2(b, key->dsa->q); |
|
|
buffer_put_bignum2(b, key->dsa->pub_key); |
buffer_put_bignum2(b, key->dsa->pub_key); |
buffer_put_bignum2(b, key->dsa->priv_key); |
buffer_put_bignum2(b, key->dsa->priv_key); |
break; |
break; |
|
case KEY_DSA_CERT: |
|
if (key->cert == NULL || buffer_len(&key->cert->certblob) == 0) |
|
fatal("%s: no cert/certblob", __func__); |
|
buffer_put_string(b, buffer_ptr(&key->cert->certblob), |
|
buffer_len(&key->cert->certblob)); |
|
buffer_put_bignum2(b, key->dsa->priv_key); |
|
break; |
} |
} |
buffer_put_cstring(b, comment); |
buffer_put_cstring(b, comment); |
} |
} |
|
|
ssh_encode_identity_rsa1(&msg, key->rsa, comment); |
ssh_encode_identity_rsa1(&msg, key->rsa, comment); |
break; |
break; |
case KEY_RSA: |
case KEY_RSA: |
|
case KEY_RSA_CERT: |
case KEY_DSA: |
case KEY_DSA: |
|
case KEY_DSA_CERT: |
type = constrained ? |
type = constrained ? |
SSH2_AGENTC_ADD_ID_CONSTRAINED : |
SSH2_AGENTC_ADD_ID_CONSTRAINED : |
SSH2_AGENTC_ADD_IDENTITY; |
SSH2_AGENTC_ADD_IDENTITY; |
|
|
buffer_put_int(&msg, BN_num_bits(key->rsa->n)); |
buffer_put_int(&msg, BN_num_bits(key->rsa->n)); |
buffer_put_bignum(&msg, key->rsa->e); |
buffer_put_bignum(&msg, key->rsa->e); |
buffer_put_bignum(&msg, key->rsa->n); |
buffer_put_bignum(&msg, key->rsa->n); |
} else if (key->type == KEY_DSA || key->type == KEY_RSA) { |
} else if (key_type_plain(key->type) == KEY_DSA || |
|
key_type_plain(key->type) == KEY_RSA) { |
key_to_blob(key, &blob, &blen); |
key_to_blob(key, &blob, &blen); |
buffer_put_char(&msg, SSH2_AGENTC_REMOVE_IDENTITY); |
buffer_put_char(&msg, SSH2_AGENTC_REMOVE_IDENTITY); |
buffer_put_string(&msg, blob, blen); |
buffer_put_string(&msg, blob, blen); |