summaryrefslogtreecommitdiffstats
path: root/net/tools/quic/quic_server_session.cc
diff options
context:
space:
mode:
authorrtenneti <rtenneti@chromium.org>2015-08-07 07:00:07 -0700
committerCommit bot <commit-bot@chromium.org>2015-08-07 14:00:54 +0000
commit44f4a2e23d2346bdb6e91602255a561d5484f2b5 (patch)
treecd8fd662f8c19703c01241a4bfb2839629dcc04e /net/tools/quic/quic_server_session.cc
parent611ed06f47a6f2373b9e220154bb96938ecb4918 (diff)
downloadchromium_src-44f4a2e23d2346bdb6e91602255a561d5484f2b5.zip
chromium_src-44f4a2e23d2346bdb6e91602255a561d5484f2b5.tar.gz
chromium_src-44f4a2e23d2346bdb6e91602255a561d5484f2b5.tar.bz2
Landing Recent QUIC changes until 8/4/2015 20:30 UTC.
Disable FLAGS_quic_require_handshake_confirmation for ZeroRTT test. relnote: Adding FLAGS_require_handshake_confirmation to emergency-disable QUIC 0-rtt Adding a reloadable flag to allow quickly disabling QUIC's 0-rtt handshake as an interim measure (0-rtt DoS protection) to allow StrikeServer turndown before full DoSServer integration. See b/20122788 Merge internal change: 99600488 https://codereview.chromium.org/1272153006/ relnote: Deprecate FLAGS_quic_send_fec_packet_only_on_fec_alarm. Merge internal change: 99599597 https://codereview.chromium.org/1279433004/ relnote: Limit the number of burst tokens in QUIC's pacing sender to the min of 10 and the current CWND in packets. Protected by FLAGS_quic_limit_pacing_burst. Should decrease retransmit rate for low CWND flows. Merge internal change: 99597412 https://codereview.chromium.org/1276983003/ Preparation for changing SpdyHeaderBlock to be ordered. This just reduces the number of files in upcoming CL by 2. No behavior change as these are currently entries into a map, and the key:value pairs haven't changed. However after changing to ordered SpdyHeaderBlock, the pseudo-header order of authority,path,scheme,method is what ends up getting written, and thus I'm changing the order here in advance. relnote: n/a (test only) Merge internal change: 99394725 https://codereview.chromium.org/1281463002/ relnote: Close QUIC connections due to too many open streams earlier in processing. No significant behavior change. Flag-protected by enabled FLAGS_exact_stream_id_delta. Replace the "maximum delta in stream ID" test on a newly-created stream with an exact test for the max number of open streams. Change the error in this case from QUIC_INVALID_STREAM_ID to QUIC_TOO_MANY_OPEN_STREAMS. FIXED=22477228 Merge internal change: 99369742 https://codereview.chromium.org/1277753002/ relnote: Minor format changes to keep the code similar to internal source. Merge internal change: 99250353 https://codereview.chromium.org/1274003002/ relnote: Change the QuicStreamSequencer to call OnDataAvailable instead of OnFinRead when the fin is consumed. Make ReliableQuicStream::OnFinRead() non-virtual and remove overrides in subclasses. Merge internal change: 99214926 https://codereview.chromium.org/1261273003/ R=rch@chromium.org Review URL: https://codereview.chromium.org/1277723003 Cr-Commit-Position: refs/heads/master@{#342349}
Diffstat (limited to 'net/tools/quic/quic_server_session.cc')
-rw-r--r--net/tools/quic/quic_server_session.cc14
1 files changed, 8 insertions, 6 deletions
diff --git a/net/tools/quic/quic_server_session.cc b/net/tools/quic/quic_server_session.cc
index 92aacfd..7fa5804 100644
--- a/net/tools/quic/quic_server_session.cc
+++ b/net/tools/quic/quic_server_session.cc
@@ -195,12 +195,14 @@ bool QuicServerSession::ShouldCreateIncomingDynamicStream(QuicStreamId id) {
connection()->SendConnectionClose(QUIC_INVALID_STREAM_ID);
return false;
}
- if (GetNumOpenStreams() >= get_max_open_streams()) {
- DVLOG(1) << "Failed to create a new incoming stream with id:" << id
- << " Already " << GetNumOpenStreams() << " streams open (max "
- << get_max_open_streams() << ").";
- connection()->SendConnectionClose(QUIC_TOO_MANY_OPEN_STREAMS);
- return false;
+ if (!FLAGS_exact_stream_id_delta) {
+ if (GetNumOpenStreams() >= get_max_open_streams()) {
+ DVLOG(1) << "Failed to create a new incoming stream with id:" << id
+ << " Already " << GetNumOpenStreams() << " streams open (max "
+ << get_max_open_streams() << ").";
+ connection()->SendConnectionClose(QUIC_TOO_MANY_OPEN_STREAMS);
+ return false;
+ }
}
return true;
}