Minor updates
authorHugo Landau <hlandau@openssl.org>
Wed, 14 Feb 2024 10:06:45 +0000 (10:06 +0000)
committerTomas Mraz <tomas@openssl.org>
Mon, 19 Feb 2024 09:15:46 +0000 (10:15 +0100)
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23535)

doc/man3/SSL_get_value_uint.pod
ssl/quic/quic_impl.c

index 0be08e2e125d0654a550f8a11a1570cbee7956e4..2a4e01c7e2e437c4ebc105b2a34d2068a7ee5774 100644 (file)
@@ -204,17 +204,17 @@ defaults to this setting.
 
 =item B<SSL_VALUE_EVENT_HANDLING_MODE_IMPLICIT> (Implicit event handling)
 
-If set to this value (the default), the implicit event handling model is used.
-Under this model, QUIC objects will automatically perform background event
-processing (equivalent to a call to L<SSL_handle_events(3)>) when calls to I/O
-functions such as L<SSL_read_ex(3)> or L<SSL_write_ex(3)> are made on a QUIC SSL
-object. This helps to maintain the health of the QUIC connection and ensures
-that incoming datagrams and timeout events are processed.
+If set to this value, the implicit event handling model is used. Under this
+model, QUIC objects will automatically perform background event processing
+(equivalent to a call to L<SSL_handle_events(3)>) when calls to I/O functions
+such as L<SSL_read_ex(3)> or L<SSL_write_ex(3)> are made on a QUIC SSL object.
+This helps to maintain the health of the QUIC connection and ensures that
+incoming datagrams and timeout events are processed.
 
 =item B<SSL_VALUE_EVENT_HANDLING_MODE_EXPLICIT> (Explicit event handling)
 
-If set to 0, the explicit event handling model is used. Under this model,
-B<nonblocking> calls to I/O functions such as L<SSL_read_ex(3)> or
+If set to this value, the explicit event handling model is used. Under this
+model, B<nonblocking> calls to I/O functions such as L<SSL_read_ex(3)> or
 L<SSL_write_ex(3)> do not result in the automatic processing of QUIC events. Any
 new incoming network traffic is not handled; no new outgoing network traffic is
 generated, and pending timeout events are not processed. This allows an
index 4f552ca6b2a70aee5db3c28152e48c347866517e..31548c1b1d7b4f721ac77afad020fc5d64d252eb 100644 (file)
@@ -3307,14 +3307,11 @@ static int qctx_should_autotick(QCTX *ctx)
     if (ctx->is_stream) {
         event_handling_mode = ctx->xso->event_handling_mode;
         if (event_handling_mode != SSL_VALUE_EVENT_HANDLING_MODE_INHERIT)
-            return event_handling_mode == SSL_VALUE_EVENT_HANDLING_MODE_IMPLICIT;
+            return event_handling_mode != SSL_VALUE_EVENT_HANDLING_MODE_EXPLICIT;
     }
 
     event_handling_mode = ctx->qc->event_handling_mode;
-    if (event_handling_mode == SSL_VALUE_EVENT_HANDLING_MODE_INHERIT)
-        event_handling_mode = SSL_VALUE_EVENT_HANDLING_MODE_IMPLICIT;
-
-    return event_handling_mode == SSL_VALUE_EVENT_HANDLING_MODE_IMPLICIT;
+    return event_handling_mode != SSL_VALUE_EVENT_HANDLING_MODE_EXPLICIT;
 }
 
 QUIC_NEEDS_LOCK