Landing Recent QUIC changes until 1:06 AM, Nov 6, 2017


Merge flag changes.

https://chromium-review.googlesource.com/c/760543/


Fixed ClangTidyReadability findings in 6 paths:
net/quic/core/quic_sent_packet_manager_test.cc
net/quic/core/quic_socket_address_coder_test.cc
net/quic/core/quic_spdy_client_stream_test.cc
net/quic/core/quic_spdy_stream.cc
net/quic/core/quic_stream_test.cc
net/quic/core/spdy_utils.cc
* redundant return statement at the end of a function with a void return type
* redundant string conversion
* the 'empty' method should be used to check for emptiness instead of comparing to an empty object
* using decl 'DoAll' is unused
* using decl 'ElementsAre' is unused
* using decl 'Pair' is unused
* using decl 'SpdyFramer' is unused (2 times)
* using decl 'TestWithParam' is unused
* using decl 'WithArgs' is unused

Merge internal change: 174662032

https://chromium-review.googlesource.com/c/758932/


N/A. Fixes comment.

Merge internal change: 174625175

https://chromium-review.googlesource.com/c/758878/


In QUIC, add QUIC_BUGs to make sure generator is in batch mode when the connection is trying to write. No function change expected. Not flag protected.

Also makes two minor refactors to fix places when we try to write but generator is not in batch mode today:
1) when bundler goes out of scope, first flush packet, then exit batch mode.
2) right before retransmission, generator needs to be in batch mode for flushing.

Merge internal change: 174452987

https://chromium-review.googlesource.com/c/758917/


Add copyrights to net/quic/core/tls_*


Add net/quic/core/tls_* files, I failed to add them in the previous cl.

This is the part 2 for merging internal change 174390837, part 1 is at:

https://chromium-review.googlesource.com/c/chromium/src/+/757616/2

Merge internal change: 174390837

https://chromium-review.googlesource.com/c/757616/


Start of QUIC handshaker delegates that use TLS as the handshake protocol

Add new QUIC classes. No functional change; not flag protected.

Merge internal change: 174390837

https://chromium-review.googlesource.com/c/757616/


Fixed Deadcode in quic/test_tools/quic_framer_peer.h.

Merge internal change: 174322061

https://chromium-review.googlesource.com/c/756866/


Add a configuration option to quartc that lets us set a quic handshake timeout (it needs to be substantially larger on poor networks).

Adds additional timeout parameters to quic/quartc configuration. Defaults to previous behavior unless these timeouts are set.

Merge internal change: 174275227

https://chromium-review.googlesource.com/c/757180/


Deprecate FLAGS_quic_reloadable_flag_sanitize_framer_addrange_input.

Merge internal change: 173925087

https://chromium-review.googlesource.com/c/756858/


Create three new QUIC connection options(BBR6,BBR7,BBR8) to reduce or eliminate the impact of BBR's PROBE_RTT on latency sensitive applications, such as WebRTC.  Protected by FLAGS_quic_reloadable_flag_quic_bbr_less_probe_rtt.

Merge internal change: 173911506

https://chromium-review.googlesource.com/c/755653/

[email protected]

Bug: 
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Idc600bed379b1046e75b16cd86721c6161326383
Reviewed-on: https://chromium-review.googlesource.com/760489
Reviewed-by: Ryan Hamilton <[email protected]>
Commit-Queue: Bin Wu <[email protected]>
Cr-Commit-Position: refs/heads/master@{#515329}
34 files changed