Marten Seemann
d137e7672d
implement a GetPTOTimeAndSpace() as outlined in the draft
2020-06-01 11:18:57 +07:00
Marten Seemann
96acf36cbd
rename sentPacketHandler.getEarliestLossTimeAndSpace to getLossTimeAndSpace
2020-06-01 11:18:57 +07:00
Marten Seemann
feb3e9a713
rename lastSentAckElicitingPacketTime to lastAckElicitingPacketTime
2020-06-01 11:18:57 +07:00
Marten Seemann
c8e5bb5b50
Merge pull request #2543 from lucas-clemente/bundle-acks
...
make sure that ACK frames are bundled with data
2020-06-01 10:15:26 +07:00
Marten Seemann
b91874a0e5
add an integration test testing that ACKs are bundled
2020-06-01 09:56:07 +07:00
Marten Seemann
9177500096
bundle ACK frames when packing a packet
2020-06-01 09:56:06 +07:00
Marten Seemann
fa381fffa0
add a function to tell if the framer has data
2020-06-01 09:31:11 +07:00
Marten Seemann
df55c30c86
add a function to tell if there's app data in the retransmission queue
2020-06-01 09:31:11 +07:00
Marten Seemann
77b1021a54
make it possible to generate an ACK frame, even if no ACK is queued yet
2020-06-01 09:31:11 +07:00
Marten Seemann
bee5ef624f
determine if a received packet is new (and not a duplicate / delayed packet)
2020-06-01 09:31:11 +07:00
Marten Seemann
f54953fb1d
Merge pull request #2582 from lucas-clemente/add-v0.16-changelog
...
add a Changelog for v0.16
2020-05-31 14:02:44 +07:00
Marten Seemann
ce40a7e28b
Merge pull request #2567 from lucas-clemente/authenticate-connection-ids
...
authenticate connection IDs
2020-05-31 14:01:58 +07:00
Marten Seemann
90acaf85d9
Merge pull request #2581 from lucas-clemente/fix-early-retransmit
...
don't switch to PTO mode after using early loss detection
2020-05-31 13:47:36 +07:00
Marten Seemann
5d55a9a3ab
add a Changelog for v0.16
2020-05-31 11:02:09 +07:00
Marten Seemann
64ef72fd68
don't switch to PTO mode after early retransmit
2020-05-31 10:47:13 +07:00
Marten Seemann
ee8a0aeb1b
improve unit tests for early retransmit
2020-05-31 10:43:04 +07:00
Marten Seemann
4f19b15670
set and verify the retry_source_connection_id TP
2020-05-29 19:57:39 +07:00
Marten Seemann
cdb22513f3
save the source conn ID used on the Retry packet in the Retry token
2020-05-29 19:50:14 +07:00
Marten Seemann
f1924b3182
qlog the retry_source_connection_id TP
2020-05-29 19:50:14 +07:00
Marten Seemann
4451f3bf5c
marshal and unmarshal the retry_source_connection_id TP
2020-05-29 19:50:14 +07:00
Marten Seemann
fb2a5f413e
set and verify the initial_source_connection_id
2020-05-29 19:50:14 +07:00
Marten Seemann
a9dc1e49ab
qlog the initial_source_connection_id TP
2020-05-29 19:50:14 +07:00
Marten Seemann
72d7592fb2
marshal and unmarshal the initial_source_connection_id TP
2020-05-29 19:50:14 +07:00
Marten Seemann
193f18bbe5
always qlog the original_destination_connection_id for the server's TPs
2020-05-29 19:50:14 +07:00
Marten Seemann
b391cce35c
always send the original_destination_connection_id TP as a server
2020-05-29 19:50:14 +07:00
Marten Seemann
a7005ac936
use a separate function to restore transport parameters for 0-RTT
2020-05-29 19:50:14 +07:00
Marten Seemann
7e62a2fecc
rename original_connection_id to original_destination_connection_id TP
2020-05-29 19:50:14 +07:00
Marten Seemann
fe85b52eed
Merge pull request #2580 from lucas-clemente/duplicate-initial-handling
...
only create a single session for duplicate Initials
2020-05-29 17:27:52 +07:00
Marten Seemann
99dac1581a
fix broken unit test in ackhandler
2020-05-29 17:20:47 +07:00
Marten Seemann
fefed78973
Merge pull request #2570 from lucas-clemente/update-alpn-to-draft-28
...
update the ALPN tokens to draft-28
2020-05-29 16:44:18 +07:00
Marten Seemann
8d00ec135e
Merge pull request #2569 from lucas-clemente/drop-duplicate-packets
...
drop duplicate packets
2020-05-29 16:39:46 +07:00
Marten Seemann
05398bd3c9
Merge pull request #2571 from lucas-clemente/reduce-frame-sorter-test-verbosity
...
remove noisy log statement in frame sorter test
2020-05-29 16:38:23 +07:00
Marten Seemann
690bb5468c
Merge pull request #2572 from lucas-clemente/fix-flaky-qlog-tests
...
fix flaky qlog unit tests
2020-05-29 16:37:56 +07:00
Marten Seemann
dad30e7c33
only create a single session for duplicate Initials
2020-05-29 16:04:45 +07:00
Marten Seemann
85c19fbb5a
Merge pull request #2536 from lucas-clemente/amplification-protection
...
implement the 3x amplification limit
2020-05-27 10:06:32 +07:00
Marten Seemann
6cea2f8a65
fix flaky qlog unit tests
2020-05-27 10:03:36 +07:00
Marten Seemann
d896b5e6c8
remove noisy log statement in frame sorter test
2020-05-27 09:59:28 +07:00
Marten Seemann
dbe925d74a
update the ALPN tokens to draft-28
2020-05-27 09:54:03 +07:00
Marten Seemann
e33f7d0fb9
add integration tests using a very long certificate chain
...
This will trigger the amplification protection.
2020-05-27 09:40:51 +07:00
Marten Seemann
e4f02ff68c
generate a new CA and cert chain for every run of the integration tests
2020-05-27 09:40:51 +07:00
Marten Seemann
60a918a108
limit available window to 3x of received bytes before address validation
2020-05-27 09:40:50 +07:00
Marten Seemann
98233f6743
add a way to pack coalesced packets smaller than the usual packet size
2020-05-27 09:33:34 +07:00
Marten Seemann
440ff107a3
drop duplicate packets
...
Duplicate detection uses the same data structure that is used to track
received packets to generate ACK frames. That means that after an old
ACK range has been pruned, a severly delayed packet might be incorrectly
detected as a duplicate.
As we wouldn't have acknowledged receipt of this packet, this situation
would have resulted in a retransmission by the peer anyway, so dropping
the packet won't cause a big regression.
2020-05-27 09:20:51 +07:00
Marten Seemann
fd5ecee85d
Merge pull request #2561 from lucas-clemente/rewrite-frame-sorter
...
rewrite the frame sorter
2020-05-25 16:29:55 +07:00
Marten Seemann
bf86f0eff9
Merge pull request #2560 from lucas-clemente/update-golangci-lint
...
update golangci-lint to v1.27.0
2020-05-25 15:34:23 +07:00
Marten Seemann
4e8d244dfa
Merge pull request #2563 from lucas-clemente/fix-reordered-ncid-frame
...
retire conn IDs with sequence numbers smaller than the currently active
2020-05-25 15:20:05 +07:00
Marten Seemann
0d288d3b19
Merge pull request #2559 from lucas-clemente/remove-read-offset
...
remove unused readOffset member variable in receiveStream
2020-05-25 15:19:48 +07:00
Marten Seemann
86ddf2e84e
Merge pull request #2564 from lucas-clemente/fix-int-overflow-in-tp-parsing
...
fix int overflow when parsing the transport parameters
2020-05-25 15:18:14 +07:00
Marten Seemann
39fe927ef5
rewrite the frame sorter
2020-05-25 13:10:26 +07:00
Marten Seemann
b2c4dacd25
fix int overflow when parsing the transport parameters
2020-05-24 12:59:47 +07:00