• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "net/quic/test_tools/quic_framer_peer.h"
6 
7 #include "net/quic/quic_framer.h"
8 #include "net/quic/quic_protocol.h"
9 
10 namespace net {
11 namespace test {
12 
13 // static
CalculatePacketSequenceNumberFromWire(QuicFramer * framer,QuicSequenceNumberLength sequence_number_length,QuicPacketSequenceNumber packet_sequence_number)14 QuicPacketSequenceNumber QuicFramerPeer::CalculatePacketSequenceNumberFromWire(
15     QuicFramer* framer,
16     QuicSequenceNumberLength sequence_number_length,
17     QuicPacketSequenceNumber packet_sequence_number) {
18   return framer->CalculatePacketSequenceNumberFromWire(sequence_number_length,
19                                                        packet_sequence_number);
20 }
21 
22 // static
SetLastSerializedConnectionId(QuicFramer * framer,QuicConnectionId connection_id)23 void QuicFramerPeer::SetLastSerializedConnectionId(
24     QuicFramer* framer, QuicConnectionId connection_id) {
25   framer->last_serialized_connection_id_ = connection_id;
26 }
27 
SetLastSequenceNumber(QuicFramer * framer,QuicPacketSequenceNumber packet_sequence_number)28 void QuicFramerPeer::SetLastSequenceNumber(
29     QuicFramer* framer,
30     QuicPacketSequenceNumber packet_sequence_number) {
31   framer->last_sequence_number_ = packet_sequence_number;
32 }
33 
SetIsServer(QuicFramer * framer,bool is_server)34 void QuicFramerPeer::SetIsServer(QuicFramer* framer, bool is_server) {
35   framer->is_server_ = is_server;
36 }
37 
SwapCrypters(QuicFramer * framer1,QuicFramer * framer2)38 void QuicFramerPeer::SwapCrypters(QuicFramer* framer1, QuicFramer* framer2) {
39   for (int i = ENCRYPTION_NONE; i < NUM_ENCRYPTION_LEVELS; i++) {
40     framer1->encrypter_[i].swap(framer2->encrypter_[i]);
41   }
42   framer1->decrypter_.swap(framer2->decrypter_);
43   framer1->alternative_decrypter_.swap(framer2->alternative_decrypter_);
44 
45   EncryptionLevel framer2_level = framer2->decrypter_level_;
46   framer2->decrypter_level_ = framer1->decrypter_level_;
47   framer1->decrypter_level_ = framer2_level;
48   framer2_level = framer2->alternative_decrypter_level_;
49   framer2->alternative_decrypter_level_ =
50       framer1->alternative_decrypter_level_;
51   framer1->alternative_decrypter_level_ = framer2_level;
52 
53   const bool framer2_latch = framer2->alternative_decrypter_latch_;
54   framer2->alternative_decrypter_latch_ =
55       framer1->alternative_decrypter_latch_;
56   framer1->alternative_decrypter_latch_ = framer2_latch;
57 }
58 
59 }  // namespace test
60 }  // namespace net
61