Loading ssl/statem/statem.c +1 −3 Original line number Diff line number Diff line Loading @@ -589,10 +589,8 @@ static SUB_STATE_RETURN read_state_machine(SSL *s) * Validate that we are allowed to move to the new state and move * to that state if so */ if (!transition(s, mt)) { check_fatal(s, SSL_F_READ_STATE_MACHINE); if (!transition(s, mt)) return SUB_STATE_ERROR; } if (s->s3->tmp.message_size > max_message_size(s)) { SSLfatal(s, SSL_AD_ILLEGAL_PARAMETER, SSL_F_READ_STATE_MACHINE, Loading ssl/statem/statem_clnt.c +14 −0 Original line number Diff line number Diff line Loading @@ -375,6 +375,20 @@ int ossl_statem_client_read_transition(SSL *s, int mt) err: /* No valid transition found */ if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { BIO *rbio; /* * CCS messages don't have a message sequence number so this is probably * because of an out-of-order CCS. We'll just drop it. */ s->init_num = 0; s->rwstate = SSL_READING; rbio = SSL_get_rbio(s); BIO_clear_retry_flags(rbio); BIO_set_retry_read(rbio); return 0; } SSLfatal(s, SSL3_AD_UNEXPECTED_MESSAGE, SSL_F_OSSL_STATEM_CLIENT_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); Loading ssl/statem/statem_srvr.c +14 −0 Original line number Diff line number Diff line Loading @@ -277,6 +277,20 @@ int ossl_statem_server_read_transition(SSL *s, int mt) err: /* No valid transition found */ if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { BIO *rbio; /* * CCS messages don't have a message sequence number so this is probably * because of an out-of-order CCS. We'll just drop it. */ s->init_num = 0; s->rwstate = SSL_READING; rbio = SSL_get_rbio(s); BIO_clear_retry_flags(rbio); BIO_set_retry_read(rbio); return 0; } SSLfatal(s, SSL3_AD_UNEXPECTED_MESSAGE, SSL_F_OSSL_STATEM_SERVER_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); Loading Loading
ssl/statem/statem.c +1 −3 Original line number Diff line number Diff line Loading @@ -589,10 +589,8 @@ static SUB_STATE_RETURN read_state_machine(SSL *s) * Validate that we are allowed to move to the new state and move * to that state if so */ if (!transition(s, mt)) { check_fatal(s, SSL_F_READ_STATE_MACHINE); if (!transition(s, mt)) return SUB_STATE_ERROR; } if (s->s3->tmp.message_size > max_message_size(s)) { SSLfatal(s, SSL_AD_ILLEGAL_PARAMETER, SSL_F_READ_STATE_MACHINE, Loading
ssl/statem/statem_clnt.c +14 −0 Original line number Diff line number Diff line Loading @@ -375,6 +375,20 @@ int ossl_statem_client_read_transition(SSL *s, int mt) err: /* No valid transition found */ if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { BIO *rbio; /* * CCS messages don't have a message sequence number so this is probably * because of an out-of-order CCS. We'll just drop it. */ s->init_num = 0; s->rwstate = SSL_READING; rbio = SSL_get_rbio(s); BIO_clear_retry_flags(rbio); BIO_set_retry_read(rbio); return 0; } SSLfatal(s, SSL3_AD_UNEXPECTED_MESSAGE, SSL_F_OSSL_STATEM_CLIENT_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); Loading
ssl/statem/statem_srvr.c +14 −0 Original line number Diff line number Diff line Loading @@ -277,6 +277,20 @@ int ossl_statem_server_read_transition(SSL *s, int mt) err: /* No valid transition found */ if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { BIO *rbio; /* * CCS messages don't have a message sequence number so this is probably * because of an out-of-order CCS. We'll just drop it. */ s->init_num = 0; s->rwstate = SSL_READING; rbio = SSL_get_rbio(s); BIO_clear_retry_flags(rbio); BIO_set_retry_read(rbio); return 0; } SSLfatal(s, SSL3_AD_UNEXPECTED_MESSAGE, SSL_F_OSSL_STATEM_SERVER_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); Loading