commit | e6211dc01cfd1bde6d4d410d77ff197de4da0674 | [log] [tgz] |
---|---|---|
author | danzh <danzh@google.com> | Thu Nov 19 09:19:00 2020 -0800 |
committer | Copybara-Service <copybara-worker@google.com> | Thu Nov 19 09:19:31 2020 -0800 |
tree | 34a92a48a2eb219ea2474a051db978f9c16d08ab | |
parent | 07168294571a4e2f08ad9aca96ed2aaa5485164c [diff] |
Add unused QuicSession interfaces to initiating IETF connection migration: MigratePath(), ValidatePath(). These new interfaces are used by toy client in e2e tests. Add QuicPathValidator into QuicConnection to do IETF path validation. Behavior changes: Cancel path validation if there is any during connection close; Don't handle socket write error if sending PATH_CHALLENGE on the alternative socket or if the package sent to the alternative peer address exceeds path MTU; Propagate PATH_RESPONSE to path validator to complete path validation. Added and modified end-to-end tests to demonstrate connection migration with path validation works on client side. Protected by quic_reloadable_flag_quic_pass_path_response_to_validator. PiperOrigin-RevId: 343304329 Change-Id: I53dc52e82fbb9c69f5d2e90e5c90e1be45bb7bb6
QUICHE (QUIC, Http/2, Etc) is Google‘s implementation of QUIC and related protocols. It powers Chromium as well as Google’s QUIC servers and some other projects. QUICHE is only supported on little-endian platforms.
Code can be viewed in CodeSearch in Quiche and is imported into Chromium.