Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037)
if (peek)
return 0;
- if (!qctx_blocking(ctx))
+ if (ossl_quic_channel_is_term_any(qc->ch)) {
+ return QUIC_RAISE_NON_NORMAL_ERROR(ctx, SSL_R_PROTOCOL_IS_SHUTDOWN, NULL);
+ } else if (!qctx_blocking(ctx)) {
/* Non-blocking mode, so just bail immediately. */
return QUIC_RAISE_NORMAL_ERROR(ctx, SSL_ERROR_WANT_READ);
+ }
/* Block until we have a stream. */
wargs.qc = qc;