From: Hugo Landau Date: Wed, 9 Aug 2023 16:46:34 +0000 (+0100) Subject: QUIC DDD: ddd-02-conn-nonblocking-threads: Planned changes X-Git-Tag: openssl-3.2.0-alpha1~64 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1ed2d7929a3f3fe86242116b0bc1366d36c3782d;p=thirdparty%2Fopenssl.git QUIC DDD: ddd-02-conn-nonblocking-threads: Planned changes Reviewed-by: Tomas Mraz Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/21715) --- diff --git a/doc/designs/ddd/ddd-02-conn-nonblocking-threads.c b/doc/designs/ddd/ddd-02-conn-nonblocking-threads.c index 30e7e33f1a1..2f154138ed4 100644 --- a/doc/designs/ddd/ddd-02-conn-nonblocking-threads.c +++ b/doc/designs/ddd/ddd-02-conn-nonblocking-threads.c @@ -32,7 +32,11 @@ SSL_CTX *create_ssl_ctx(void) { SSL_CTX *ctx; +#ifdef USE_QUIC + ctx = SSL_CTX_new(QUIC_client_thread_method()); +#else ctx = SSL_CTX_new(TLS_client_method()); +#endif if (ctx == NULL) return NULL; @@ -170,7 +174,11 @@ int rx(APP_CONN *conn, void *buf, int buf_len) */ int get_conn_fd(APP_CONN *conn) { +#ifdef USE_QUIC + return BIO_get_poll_fd(conn->ssl_bio, NULL); +#else return BIO_get_fd(conn->ssl_bio, NULL); +#endif } /* @@ -188,7 +196,11 @@ int get_conn_fd(APP_CONN *conn) */ int get_conn_pending_tx(APP_CONN *conn) { +#ifdef USE_QUIC + return POLLIN | POLLOUT | POLLERR; +#else return (conn->tx_need_rx ? POLLIN : 0) | POLLOUT | POLLERR; +#endif } int get_conn_pending_rx(APP_CONN *conn)