Andrew Dinh
dad45ea769
Adds a new demo blocking QUIC server for use with the existing demo QUIC clients
...
Remove util/quicserver.c
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/25465 )
2025-02-17 11:27:33 -05:00
Matt Caswell
3a75cf8d9c
Remove an obsolete comment
...
The comment is no longer accurance so it can be removed
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/25457 )
2025-02-17 11:27:33 -05:00
Matt Caswell
ac69d0649a
Simplify the QUIC time override handling
...
Centralise the storage of the override in the QUIC_ENGINE rather than in
the QUIC_CONNECTION. We can now set the override on any type of QUIC SSL
object as needed.
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/25457 )
2025-02-17 11:27:32 -05:00
Viktor Dukhovni
f23da50318
Handle a couple of NULL QUIC ctx.qc values
...
Now that we also QUIC server (listener) handles, we may have a NULL quic
connection (ctx.qc), and so need to either return early or handle the
NULL `qc` gracefully.
Reviewed-by: Sasa Nedvedicky <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/25432 )
2025-02-17 11:27:32 -05:00
Alexandr Nedvedicky
73d7de128b
QUIC Concurrency API: Various minor fixes
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
54fd5e113b
Minor fix for Windows
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
ccbf3f6ecb
QUIC RADIX: Test domain functions as well
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
62f91f2f25
QUIC: Add basic domain flags test
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
b93fb2d177
Assorted bugfixes
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
89fa427504
Doc fixes
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
269409c75b
Allow use of socketpair, WSASocketA
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
2c9953bbd3
Minor fixes
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
9c1bd44f1d
RIO NOTIFIER: Fix symbol usage
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
2c70693e92
QUIC OBJ: Require blocking support in the domain flags to use blocking mode
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
5eecb6b619
make update
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
c4d516db6a
QUIC: Update listener documentation
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
3896bff051
QUIC: Add documentation on concurrency model
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
2dae861fe0
QUIC: Document SSL_new_domain, etc.
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
db590923c1
QUIC APL: Refine domain flag handling
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
960b8449cb
QUIC CHANNEL: Notify other threads when needed
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
fa4a8e8871
QUIC REACTOR: Allow ticks to schedule notifications of other threads
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
5dade08ed1
QUIC ENGINE: Notify when ticking
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
1c89357d75
QUIC REACTOR: Inter-thread notification
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
ae26f1eed6
QUIC APL: Default domain flags
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
6bc47aa65f
QUIC REACTOR: Integrate RIO NOTIFIER
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
14516cd5a4
RIO: Add OS notifier
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
5a6898db3a
QUIC APL: Use domain flag to determine thread assisted mode
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
50c7796267
QUIC APL: Add support for configuring domain flags
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
f75b3d1db6
QUIC APL: Add QUIC Domain SSL Object: Implementation
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Hugo Landau
907759818e
QUIC APL: Add QUIC Domain SSL Object: Basic Definitions
...
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24971 )
2025-02-17 11:27:32 -05:00
Jean-Frederic Clere
a31dfb0ee6
ossl-nghttp3-demo-server.c: Fix compatibility with various clients
...
Fixes openssl/project#752
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24946 )
2025-02-17 11:27:32 -05:00
Jean-Frederic Clere
73977a0424
Add a demo HTTP3 server using the quic server support and nghttp3
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24749 )
2025-02-17 11:27:32 -05:00
Hugo Landau
362cc00d6a
QUIC Polling Design: Fix nits
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23455 )
2025-02-17 11:27:32 -05:00
Hugo Landau
51771dad69
QUIC Polling Design Document: Rename OSSL_ -> SSL_ for consistency
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23455 )
2025-02-17 11:27:32 -05:00
Hugo Landau
1be93781e8
QUIC Polling Design: Move around sections a bit
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23455 )
2025-02-17 11:27:32 -05:00
Hugo Landau
e0a66263c2
QUIC Polling Design: Add discussion/rethink of event types
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23455 )
2025-02-17 11:27:32 -05:00
Hugo Landau
0288567452
QUIC Polling Design: minor fixups
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23455 )
2025-02-17 11:27:32 -05:00
Hugo Landau
e6f062601b
Minor updates
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
8b4b5048ee
Minor fixes and hardening
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
20eb1b656b
QUIC Server Demo: Use IPv4 only
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
6330a78638
Copyright header
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
e88f03f193
QUIC APL: Make QCTX comments clearer
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
b35712db6c
Minor doc fix
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
0723a3ac0c
Minor update
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
a55d8b8b71
QUIC APL: Connection acceptance is an I/O operation
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
87d474660c
QUIC APL: Support SSL_inject_net_dgram for listeners
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
640a32afcf
QUIC: Clarify SSL_new_listener API in docs
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
2176e0467e
QUIC APL: When creating a default XSO, no further streams can arrive after connection terminastion
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
8df5b725ef
Fix markdown
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00
Hugo Landau
05e0eae202
QUIC APL: Ensure incoming stream data can be drained after connection closure
...
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24037 )
2025-02-17 11:27:32 -05:00