-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rewrite of the QUIC layer. #12742
base: jetty-12.1.x
Are you sure you want to change the base?
Rewrite of the QUIC layer. #12742
Conversation
…library. Signed-off-by: Simone Bordet <[email protected]>
The main work was to remove the hardcoded dependencies on Quiche. For this reason, module The Quiche implementation is now an implementation of The HTTP/3 layer now only depends on |
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
* @return the {@link CompletableFuture} that gets notified when the | ||
* frame has been sent | ||
*/ | ||
CompletableFuture<Stream> data(boolean last, ByteBuffer... data); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use Callback
rather than CF
}; | ||
} | ||
|
||
public void write(Callback callback, List<ByteBuffer> buffers, boolean last) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
think about cancelling writes
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
…sion AES. Made Quiche.drainClearBytesForStream() return the FIN flag indication. Improved Qpack[Decoder|Encoder] locking. Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Made relevant H3 unidirectional connections non-blocking. Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Ludovic Orban <[email protected]>
Removed necessity of passing the QuicheClientQuicConfiguration to QuicheTransport, so it can now be a singleton. Updated server module to depend on virtual http3-impl, with a default provider for http3-quiche. Enabled ee11 client transport tests in CI. Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
…it is necessary when QuicheTransport is used by non-HTTP/3 protocols. Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Now relying on the returned boolean from Quiche.drainClearBytesForStream(). Updated HTTP3StreamConnection to avoid copying the HTTP/3 bytes, and use the returned boolean to generate HTTP/3 frames. Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
Provide a write cancel mechanism so that removing pooled buffers can be avoided. * Do not remove pooled buffers on write failure * FCGI stream cancel implementation * review H1 cancellation + make EndPoint.cancelWrite go to the failed state * defer H3 to after #12742 * Fix H2 --------- Signed-off-by: Ludovic Orban <[email protected]> Signed-off-by: Simone Bordet <[email protected]> Co-authored-by: Ludovic Orban <[email protected]> Co-authored-by: Simone Bordet <[email protected]>
…ailsStream(). Signed-off-by: Simone Bordet <[email protected]>
Signed-off-by: Simone Bordet <[email protected]>
…*(). Signed-off-by: Simone Bordet <[email protected]>
Rewrite of the QUIC layer to accommodate, in the future, implementations alternative to Quiche.