QUIC: Implement SSL_rstate_string(_long)

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/20061)
This commit is contained in:
Hugo Landau 2023-01-16 15:22:41 +00:00 committed by Pauli
parent 7163617f33
commit 9ea0e72992
3 changed files with 32 additions and 0 deletions

View File

@ -48,6 +48,8 @@ The read state is unknown. This should never happen.
=back
When used with QUIC SSL objects, these functions always return "unknown".
=head1 SEE ALSO
L<ssl(7)>

View File

@ -170,8 +170,16 @@ void SSL_set_default_read_buffer_len(SSL *s, size_t len)
const char *SSL_rstate_string_long(const SSL *s)
{
const SSL_CONNECTION *sc = SSL_CONNECTION_FROM_CONST_SSL(s);
#ifndef OPENSSL_NO_QUIC
const QUIC_CONNECTION *qc = QUIC_CONNECTION_FROM_CONST_SSL(s);
#endif
const char *lng;
#ifndef OPENSSL_NO_QUIC
if (qc != NULL)
return "unknown";
#endif
if (sc == NULL)
return NULL;
@ -186,8 +194,16 @@ const char *SSL_rstate_string_long(const SSL *s)
const char *SSL_rstate_string(const SSL *s)
{
const SSL_CONNECTION *sc = SSL_CONNECTION_FROM_CONST_SSL(s);
#ifndef OPENSSL_NO_QUIC
const QUIC_CONNECTION *qc = QUIC_CONNECTION_FROM_CONST_SSL(s);
#endif
const char *shrt;
#ifndef OPENSSL_NO_QUIC
if (qc != NULL)
return "unknown";
#endif
if (sc == NULL)
return NULL;

View File

@ -6974,6 +6974,12 @@ void SSL_CTX_set_post_handshake_auth(SSL_CTX *ctx, int val)
void SSL_set_post_handshake_auth(SSL *ssl, int val)
{
SSL_CONNECTION *sc = SSL_CONNECTION_FROM_SSL(ssl);
#ifndef OPENSSL_NO_QUIC
QUIC_CONNECTION *qc = QUIC_CONNECTION_FROM_SSL(ssl);
if (qc != NULL)
return;
#endif
if (sc == NULL)
return;
@ -6984,6 +6990,14 @@ void SSL_set_post_handshake_auth(SSL *ssl, int val)
int SSL_verify_client_post_handshake(SSL *ssl)
{
SSL_CONNECTION *sc = SSL_CONNECTION_FROM_SSL(ssl);
#ifndef OPENSSL_NO_QUIC
QUIC_CONNECTION *qc = QUIC_CONNECTION_FROM_SSL(ssl);
if (qc != NULL) {
ERR_raise(ERR_LIB_SSL, SSL_R_WRONG_SSL_VERSION);
return 0;
}
#endif
if (sc == NULL)
return 0;