OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/quic/quic_session.h" | 5 #include "net/quic/quic_session.h" |
6 | 6 |
7 #include "base/stl_util.h" | 7 #include "base/stl_util.h" |
8 #include "net/quic/crypto/proof_verifier.h" | 8 #include "net/quic/crypto/proof_verifier.h" |
9 #include "net/quic/quic_connection.h" | 9 #include "net/quic/quic_connection.h" |
10 #include "net/quic/quic_flow_controller.h" | 10 #include "net/quic/quic_flow_controller.h" |
(...skipping 730 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
741 connection_->HasQueuedData(); | 741 connection_->HasQueuedData(); |
742 } | 742 } |
743 | 743 |
744 bool QuicSession::GetSSLInfo(SSLInfo* ssl_info) const { | 744 bool QuicSession::GetSSLInfo(SSLInfo* ssl_info) const { |
745 NOTIMPLEMENTED(); | 745 NOTIMPLEMENTED(); |
746 return false; | 746 return false; |
747 } | 747 } |
748 | 748 |
749 void QuicSession::PostProcessAfterData() { | 749 void QuicSession::PostProcessAfterData() { |
750 STLDeleteElements(&closed_streams_); | 750 STLDeleteElements(&closed_streams_); |
751 closed_streams_.clear(); | |
752 | 751 |
753 if (connection()->connected() && | 752 if (connection()->connected() && |
754 locally_closed_streams_highest_offset_.size() > max_open_streams_) { | 753 locally_closed_streams_highest_offset_.size() > max_open_streams_) { |
755 // A buggy client may fail to send FIN/RSTs. Don't tolerate this. | 754 // A buggy client may fail to send FIN/RSTs. Don't tolerate this. |
756 connection_->SendConnectionClose(QUIC_TOO_MANY_UNFINISHED_STREAMS); | 755 connection_->SendConnectionClose(QUIC_TOO_MANY_UNFINISHED_STREAMS); |
757 } | 756 } |
758 } | 757 } |
759 | 758 |
760 void QuicSession::OnSuccessfulVersionNegotiation(const QuicVersion& version) { | 759 void QuicSession::OnSuccessfulVersionNegotiation(const QuicVersion& version) { |
761 // Disable stream level flow control based on negotiated version. Streams may | 760 // Disable stream level flow control based on negotiated version. Streams may |
(...skipping 16 matching lines...) Expand all Loading... |
778 for (DataStreamMap::iterator it = stream_map_.begin(); | 777 for (DataStreamMap::iterator it = stream_map_.begin(); |
779 it != stream_map_.end(); ++it) { | 778 it != stream_map_.end(); ++it) { |
780 if (it->second->flow_controller()->IsBlocked()) { | 779 if (it->second->flow_controller()->IsBlocked()) { |
781 return true; | 780 return true; |
782 } | 781 } |
783 } | 782 } |
784 return false; | 783 return false; |
785 } | 784 } |
786 | 785 |
787 } // namespace net | 786 } // namespace net |
OLD | NEW |