| 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 #ifndef NET_QUIC_QUIC_PROTOCOL_H_ | 5 #ifndef NET_QUIC_QUIC_PROTOCOL_H_ |
| 6 #define NET_QUIC_QUIC_PROTOCOL_H_ | 6 #define NET_QUIC_QUIC_PROTOCOL_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 1349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1360 // In flight packets have not been abandoned or lost. | 1360 // In flight packets have not been abandoned or lost. |
| 1361 bool in_flight; | 1361 bool in_flight; |
| 1362 // True if the packet can never be acked, so it can be removed. | 1362 // True if the packet can never be acked, so it can be removed. |
| 1363 bool is_unackable; | 1363 bool is_unackable; |
| 1364 // True if the packet is an FEC packet. | 1364 // True if the packet is an FEC packet. |
| 1365 bool is_fec_packet; | 1365 bool is_fec_packet; |
| 1366 // True if the packet contains stream data from the crypto stream. | 1366 // True if the packet contains stream data from the crypto stream. |
| 1367 bool has_crypto_handshake; | 1367 bool has_crypto_handshake; |
| 1368 // True if the packet needs padding if it's retransmitted. | 1368 // True if the packet needs padding if it's retransmitted. |
| 1369 bool needs_padding; | 1369 bool needs_padding; |
| 1370 // Stores the packet numbers of all transmissions of this packet. | |
| 1371 // Must always be nullptr or have multiple elements. | |
| 1372 // TODO(ianswett): Deprecate with quic_track_single_retransmission. | |
| 1373 PacketNumberList* all_transmissions; | |
| 1374 // Stores the packet number of the next retransmission of this packet. | 1370 // Stores the packet number of the next retransmission of this packet. |
| 1375 // Zero if the packet has not been retransmitted. | 1371 // Zero if the packet has not been retransmitted. |
| 1376 QuicPacketNumber retransmission; | 1372 QuicPacketNumber retransmission; |
| 1377 // Non-empty if there is a listener for this packet. | 1373 // Non-empty if there is a listener for this packet. |
| 1378 std::list<AckListenerWrapper> ack_listeners; | 1374 std::list<AckListenerWrapper> ack_listeners; |
| 1379 }; | 1375 }; |
| 1380 static_assert(sizeof(QuicFrame) <= 64, | 1376 static_assert(sizeof(QuicFrame) <= 64, |
| 1381 "Keep the TransmissionInfo size to a cacheline."); | 1377 "Keep the TransmissionInfo size to a cacheline."); |
| 1382 | 1378 |
| 1383 // Struct to store the pending retransmission information. | 1379 // Struct to store the pending retransmission information. |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1416 : iov(iov), iov_count(iov_count), total_length(total_length) {} | 1412 : iov(iov), iov_count(iov_count), total_length(total_length) {} |
| 1417 | 1413 |
| 1418 const struct iovec* iov; | 1414 const struct iovec* iov; |
| 1419 const int iov_count; | 1415 const int iov_count; |
| 1420 const size_t total_length; | 1416 const size_t total_length; |
| 1421 }; | 1417 }; |
| 1422 | 1418 |
| 1423 } // namespace net | 1419 } // namespace net |
| 1424 | 1420 |
| 1425 #endif // NET_QUIC_QUIC_PROTOCOL_H_ | 1421 #endif // NET_QUIC_QUIC_PROTOCOL_H_ |
| OLD | NEW |