Latest update.
This commit is contained in:
@@ -2864,6 +2864,26 @@ int tls_choose_sigalg(SSL *s, int fatalerrs)
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
#ifndef OPENSSL_NO_GOST
|
||||
/*
|
||||
* Some Windows-based implementations do not send GOST algorithms indication
|
||||
* in supported_algorithms extension, so when we have GOST-based ciphersuite,
|
||||
* we have to assume GOST support.
|
||||
*/
|
||||
if (i == s->shared_sigalgslen && s->s3.tmp.new_cipher->algorithm_auth & (SSL_aGOST01 | SSL_aGOST12)) {
|
||||
if ((lu = tls1_get_legacy_sigalg(s, -1)) == NULL) {
|
||||
if (!fatalerrs)
|
||||
return 1;
|
||||
SSLfatal(s, SSL_AD_HANDSHAKE_FAILURE,
|
||||
SSL_F_TLS_CHOOSE_SIGALG,
|
||||
SSL_R_NO_SUITABLE_SIGNATURE_ALGORITHM);
|
||||
return 0;
|
||||
} else {
|
||||
i = 0;
|
||||
sig_idx = lu->sig_idx;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
if (i == s->shared_sigalgslen) {
|
||||
if (!fatalerrs)
|
||||
return 1;
|
||||
|
||||
Reference in New Issue
Block a user