mirror of
https://github.com/strongswan/strongswan.git
synced 2025-11-12 00:02:03 -05:00
ikev2: Try all RSA signature schemes if none is configured
This commit is contained in:
parent
1d94b7950b
commit
4e6f102842
@ -159,11 +159,26 @@ static signature_scheme_t select_signature_scheme(keymat_v2_t *keymat,
|
|||||||
}
|
}
|
||||||
enumerator->destroy(enumerator);
|
enumerator->destroy(enumerator);
|
||||||
|
|
||||||
/* default to the scheme we'd use with classic authentication */
|
/* for RSA we tried at least SHA-512, also try other schemes down to
|
||||||
if (selected == SIGN_UNKNOWN && key_type == KEY_RSA &&
|
* what we'd use with classic authentication */
|
||||||
keymat->hash_algorithm_supported(keymat, HASH_SHA1))
|
if (selected == SIGN_UNKNOWN && key_type == KEY_RSA)
|
||||||
{
|
{
|
||||||
selected = SIGN_RSA_EMSA_PKCS1_SHA1;
|
signature_scheme_t schemes[] = {
|
||||||
|
SIGN_RSA_EMSA_PKCS1_SHA384,
|
||||||
|
SIGN_RSA_EMSA_PKCS1_SHA256,
|
||||||
|
SIGN_RSA_EMSA_PKCS1_SHA1,
|
||||||
|
};
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < countof(schemes); i++)
|
||||||
|
{
|
||||||
|
if (keymat->hash_algorithm_supported(keymat,
|
||||||
|
hasher_from_signature_scheme(schemes[i])))
|
||||||
|
{
|
||||||
|
selected = scheme;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return selected;
|
return selected;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user