Landing recent QUIC changes until Sun Mar 5 09:18:09 2017 +0000

move StopReading() from QuicSpdyStream to QuicSpdyServerStreamBase because this is server side feature. No behavior change.
Merge internal change: 149180639
https://codereview.chromium.org/2746443003/

Remove PathCloseFrame, QuicPathId, DefaultPathId and InvalidPathId.
Merge internal change: 149147915
https://codereview.chromium.org/2743883002/

Drop Packets with the multipath bit set before decryption. Protected by FLAGS_quic_reloadable_flag_quic_remove_multipath_bit.
Merge internal change: 149034371
https://codereview.chromium.org/2739323002/

Introduce a new error code QUIC_HEADERS_STREAM_DATA_DECOMPRESS_FAILURE for invalid headers stream data due to decompression error. Not protected.
Merge internal change: 148932025
https://codereview.chromium.org/2737273004/

No longer send or process the socket recieve buffer value in QUIC.  Protected by FLAGS_quic_reloadable_flag_quic_no_socket_receive_buffer.
Merge internal change: 148785639
https://codereview.chromium.org/2744663004/

Remove multipath_enabled from quic_config and quic_connection. No functional change expected.
Also including clean up has_multipath_flag from test methods.
Merge internal change: 148763093
https://codereview.chromium.org/2739313002/

Delete unused code from quic_framer_test.cc
Merge internal change: 148657314
https://codereview.chromium.org/2737353005/

Remove static_assert for QuicTransmissionInfo size
(portability fix for iOS 64-bit build)
Merge internal change: 148495524
https://codereview.chromium.org/2739053004/

[email protected]
BUG=

Review-Url: https://codereview.chromium.org/2747443002
Cr-Commit-Position: refs/heads/master@{#456182}
diff --git a/net/quic/test_tools/quic_test_utils.cc b/net/quic/test_tools/quic_test_utils.cc
index a6c1a91..adf9df17a 100644
--- a/net/quic/test_tools/quic_test_utils.cc
+++ b/net/quic/test_tools/quic_test_utils.cc
@@ -221,10 +221,6 @@
   return true;
 }
 
-bool NoOpFramerVisitor::OnPathCloseFrame(const QuicPathCloseFrame& frame) {
-  return true;
-}
-
 MockQuicConnectionVisitor::MockQuicConnectionVisitor() {}
 
 MockQuicConnectionVisitor::~MockQuicConnectionVisitor() {}
@@ -554,48 +550,44 @@
 
 QuicEncryptedPacket* ConstructEncryptedPacket(QuicConnectionId connection_id,
                                               bool version_flag,
-                                              bool multipath_flag,
                                               bool reset_flag,
                                               QuicPacketNumber packet_number,
                                               const string& data) {
   return ConstructEncryptedPacket(
-      connection_id, version_flag, multipath_flag, reset_flag, packet_number,
-      data, PACKET_8BYTE_CONNECTION_ID, PACKET_6BYTE_PACKET_NUMBER);
+      connection_id, version_flag, reset_flag, packet_number, data,
+      PACKET_8BYTE_CONNECTION_ID, PACKET_6BYTE_PACKET_NUMBER);
 }
 
 QuicEncryptedPacket* ConstructEncryptedPacket(
     QuicConnectionId connection_id,
     bool version_flag,
-    bool multipath_flag,
     bool reset_flag,
     QuicPacketNumber packet_number,
     const string& data,
     QuicConnectionIdLength connection_id_length,
     QuicPacketNumberLength packet_number_length) {
-  return ConstructEncryptedPacket(
-      connection_id, version_flag, multipath_flag, reset_flag, packet_number,
-      data, connection_id_length, packet_number_length, nullptr);
+  return ConstructEncryptedPacket(connection_id, version_flag, reset_flag,
+                                  packet_number, data, connection_id_length,
+                                  packet_number_length, nullptr);
 }
 
 QuicEncryptedPacket* ConstructEncryptedPacket(
     QuicConnectionId connection_id,
     bool version_flag,
-    bool multipath_flag,
     bool reset_flag,
     QuicPacketNumber packet_number,
     const string& data,
     QuicConnectionIdLength connection_id_length,
     QuicPacketNumberLength packet_number_length,
     QuicVersionVector* versions) {
-  return ConstructEncryptedPacket(connection_id, version_flag, multipath_flag,
-                                  reset_flag, packet_number, data,
-                                  connection_id_length, packet_number_length,
-                                  versions, Perspective::IS_CLIENT);
+  return ConstructEncryptedPacket(connection_id, version_flag, reset_flag,
+                                  packet_number, data, connection_id_length,
+                                  packet_number_length, versions,
+                                  Perspective::IS_CLIENT);
 }
 QuicEncryptedPacket* ConstructEncryptedPacket(
     QuicConnectionId connection_id,
     bool version_flag,
-    bool multipath_flag,
     bool reset_flag,
     QuicPacketNumber packet_number,
     const string& data,
@@ -607,7 +599,7 @@
   header.public_header.connection_id = connection_id;
   header.public_header.connection_id_length = connection_id_length;
   header.public_header.version_flag = version_flag;
-  header.public_header.multipath_flag = multipath_flag;
+  header.public_header.multipath_flag = false;
   header.public_header.reset_flag = reset_flag;
   header.public_header.packet_number_length = packet_number_length;
   header.packet_number = packet_number;