Lachlan Roberts
|
f8e2831185
|
Implement SectionAcknowledgment and StreamCancellation
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
c271b70d29
|
Rewrite QpackEncoder.encode for HttpField, implement Duplicates.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
bdf44b8e22
|
Work through examples B.1. and B.2. from spec and fix bugs.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
5b178d16b7
|
Write the basic implementation for the QpackEncoder.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
ae4f33ed9e
|
Remove the QPACK tests which only apply to HTTP/2 HPACK.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
5958bae765
|
QpackDecoder should take the Stream ID to decode.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
08b612feca
|
Add basic implementation for the QpackDecoder.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
9d9e13cf3a
|
Use setPrefix API for NBitIntegerParser
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
12a64b1637
|
Use classes for encoder and decoder instructions.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
883e4f79c2
|
Implement Encoder & Decoder Streams to encode instructions.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
2916b60091
|
Implement insertNameWithReference and insertWithLiteralName in EncoderInstructionParser.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
b3cd2a1c27
|
Implement setCapacity and duplicate on the Encoder Instruction Parser.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
7c34d3c0cd
|
Implement a decoder instruction parser & add tests.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
96b940e35d
|
Add copy of the new QPACK static table from SPEC.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
f39313b1d5
|
Decouple the DynamicTable from the QpackContext.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
5d07842af8
|
Extract the StaticTable from the QpackContext.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
f8d2d9c600
|
Refactor names of HPACK to QPACK
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Lachlan Roberts
|
ee042b173a
|
Copy http2-hpack files into http3-qpack.
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
4b6bcca529
|
get rid of promoteSession()
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
2f3587ef6d
|
refactor session creation
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
0d890dc1c1
|
minor ref change
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
9f9d022373
|
improve debug logs
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
b1c8a9a1b8
|
make close(Throwable) private
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
59fe74a598
|
improve debug logs
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
5424f67132
|
dispatch from the timer thread to iterate
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
2244be64ef
|
do not write directly to the endpoint
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
f860f1ca7c
|
improve toString
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
e10dcad826
|
do not write directly to the endpoint
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
624f0f1ce4
|
fix log
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
c68d8e95cb
|
fix log
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
619ba7a090
|
todo
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
c6093e9859
|
todos and cleanups
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
c117fbc61a
|
todos and cleanups
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
197851257e
|
cleanup tests
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
c96d64a04d
|
cleanup tests
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
0771d860df
|
get rid of QuicheConfig in QuicClientConnector
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
b8f39b5b2c
|
get rid of HttpClientTransportOverQuic and IClientConnector
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
c70f49c773
|
improve quiche error handling
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
4455291bf9
|
make ClientQuicConnector extend from ClientConnector
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
9ad1c0e7a0
|
client quic config is kinda configurable now
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
34bf18cd8c
|
fix max multiplex
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
b151957a5b
|
more end2end tests
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
a12a2f34e5
|
clean up alpn protocol configuration
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
82960f417e
|
clean up alpn protocol configuration
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
89369b9c25
|
introduce char_pointer native type
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
c2335c1e77
|
throw a specific exception on token validation error
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
a4e4872a9a
|
notify and cleanup when quic connection is refused
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
29b2f8fa8a
|
add a way to build a connection id object from a cid array
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
e1ceffe25a
|
make onClose overridable and null-safe
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |
Ludovic Orban
|
4908b0676a
|
do not close when QuicConnection gets an exception as it is shared by multiple quic connections
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
|
2021-12-20 09:33:38 +01:00 |