| 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_connection.h" | 5 #include "net/quic/quic_connection.h" |
| 6 | 6 |
| 7 #include <string.h> | 7 #include <string.h> |
| 8 #include <sys/types.h> | 8 #include <sys/types.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 717 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 728 if (!ValidateAckFrame(incoming_ack)) { | 728 if (!ValidateAckFrame(incoming_ack)) { |
| 729 SendConnectionClose(QUIC_INVALID_ACK_DATA); | 729 SendConnectionClose(QUIC_INVALID_ACK_DATA); |
| 730 return false; | 730 return false; |
| 731 } | 731 } |
| 732 | 732 |
| 733 if (FLAGS_quic_process_frames_inline) { | 733 if (FLAGS_quic_process_frames_inline) { |
| 734 ProcessAckFrame(incoming_ack); | 734 ProcessAckFrame(incoming_ack); |
| 735 if (incoming_ack.is_truncated) { | 735 if (incoming_ack.is_truncated) { |
| 736 should_last_packet_instigate_acks_ = true; | 736 should_last_packet_instigate_acks_ = true; |
| 737 } | 737 } |
| 738 QuicPacketSequenceNumber least_acked = GetLeastUnacked(); | 738 if (!incoming_ack.missing_packets.empty() && |
| 739 if (least_acked > 0 && | 739 GetLeastUnacked() > *incoming_ack.missing_packets.begin()) { |
| 740 (incoming_ack.missing_packets.empty() || | |
| 741 least_acked > *incoming_ack.missing_packets.begin())) { | |
| 742 ++stop_waiting_count_; | 740 ++stop_waiting_count_; |
| 743 } else { | 741 } else { |
| 744 stop_waiting_count_ = 0; | 742 stop_waiting_count_ = 0; |
| 745 } | 743 } |
| 746 } else { | 744 } else { |
| 747 last_ack_frames_.push_back(incoming_ack); | 745 last_ack_frames_.push_back(incoming_ack); |
| 748 } | 746 } |
| 749 return connected_; | 747 return connected_; |
| 750 } | 748 } |
| 751 | 749 |
| (...skipping 1630 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2382 sequence_number_of_last_sent_packet_ + packets_between_mtu_probes_ + 1; | 2380 sequence_number_of_last_sent_packet_ + packets_between_mtu_probes_ + 1; |
| 2383 ++mtu_probe_count_; | 2381 ++mtu_probe_count_; |
| 2384 | 2382 |
| 2385 DVLOG(2) << "Sending a path MTU discovery packet #" << mtu_probe_count_; | 2383 DVLOG(2) << "Sending a path MTU discovery packet #" << mtu_probe_count_; |
| 2386 SendMtuDiscoveryPacket(mtu_discovery_target_); | 2384 SendMtuDiscoveryPacket(mtu_discovery_target_); |
| 2387 | 2385 |
| 2388 DCHECK(!mtu_discovery_alarm_->IsSet()); | 2386 DCHECK(!mtu_discovery_alarm_->IsSet()); |
| 2389 } | 2387 } |
| 2390 | 2388 |
| 2391 } // namespace net | 2389 } // namespace net |
| OLD | NEW |