| 328 |
int ch; |
int ch; |
| 329 |
int leftover_digits = 1; |
int leftover_digits = 1; |
| 330 |
|
|
| 331 |
BN_CTX_init(ctx); |
// BN_CTX_init関数は OpenSSL 1.1.0 で削除された。 |
| 332 |
|
// OpenSSL 1.0.2の時点ですでに deprecated 扱いだった。 |
| 333 |
BN_set_word(num, 0); |
BN_set_word(num, 0); |
| 334 |
BN_set_word(billion, 1000000000L); |
BN_set_word(billion, 1000000000L); |
| 335 |
|
|
| 879 |
const EC_GROUP *group; |
const EC_GROUP *group; |
| 880 |
const EC_POINT *pa, *pb; |
const EC_POINT *pa, *pb; |
| 881 |
Key *a, *b; |
Key *a, *b; |
| 882 |
|
BIGNUM *e = NULL, *n = NULL; |
| 883 |
|
BIGNUM *se = NULL, *sn = NULL; |
| 884 |
|
BIGNUM *p, *q, *g, *pub_key; |
| 885 |
|
BIGNUM *sp, *sq, *sg, *spub_key; |
| 886 |
|
|
| 887 |
if (src->type != key->type) { |
if (src->type != key->type) { |
| 888 |
return -1; |
return -1; |
| 903 |
*/ |
*/ |
| 904 |
|
|
| 905 |
case KEY_RSA: // SSH2 RSA host public key |
case KEY_RSA: // SSH2 RSA host public key |
| 906 |
|
RSA_get0_key(key->rsa, &n, &e, NULL); |
| 907 |
|
RSA_get0_key(src->rsa, &sn, &se, NULL); |
| 908 |
return key->rsa != NULL && src->rsa != NULL && |
return key->rsa != NULL && src->rsa != NULL && |
| 909 |
BN_cmp(key->rsa->e, src->rsa->e) == 0 && |
BN_cmp(e, se) == 0 && |
| 910 |
BN_cmp(key->rsa->n, src->rsa->n) == 0; |
BN_cmp(n, sn) == 0; |
| 911 |
|
|
| 912 |
case KEY_DSA: // SSH2 DSA host public key |
case KEY_DSA: // SSH2 DSA host public key |
| 913 |
|
DSA_get0_pqg(key->dsa, &p, &q, &g); |
| 914 |
|
DSA_get0_pqg(src->dsa, &sp, &sq, &sg); |
| 915 |
|
DSA_get0_key(key->dsa, &pub_key, NULL); |
| 916 |
|
DSA_get0_key(src->dsa, &spub_key, NULL); |
| 917 |
return key->dsa != NULL && src->dsa && |
return key->dsa != NULL && src->dsa && |
| 918 |
BN_cmp(key->dsa->p, src->dsa->p) == 0 && |
BN_cmp(p, sp) == 0 && |
| 919 |
BN_cmp(key->dsa->q, src->dsa->q) == 0 && |
BN_cmp(q, sq) == 0 && |
| 920 |
BN_cmp(key->dsa->g, src->dsa->g) == 0 && |
BN_cmp(g, sg) == 0 && |
| 921 |
BN_cmp(key->dsa->pub_key, src->dsa->pub_key) == 0; |
BN_cmp(pub_key, spub_key) == 0; |
| 922 |
|
|
| 923 |
case KEY_ECDSA256: |
case KEY_ECDSA256: |
| 924 |
case KEY_ECDSA384: |
case KEY_ECDSA384: |