Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(286)

Side by Side Diff: net/quic/quic_address_mismatch_test.cc

Issue 294823002: Treat IPv4-mapped IPv6 addresses as IPv4 addresses. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Change histogram owners Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/quic/quic_address_mismatch.cc ('k') | net/quic/quic_connection_logger.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_address_mismatch.h" 5 #include "net/quic/quic_address_mismatch.h"
6 6
7 #include "net/base/ip_endpoint.h" 7 #include "net/base/ip_endpoint.h"
8 #include "net/base/net_util.h" 8 #include "net/base/net_util.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
11 namespace net { 11 namespace net {
12 namespace test { 12 namespace test {
13 13
14 // Test all cases of the GetAddressMismatch function. 14 // Test all cases of the GetAddressMismatch function.
15 TEST(QuicAddressMismatchTest, GetAddressMismatch) { 15 TEST(QuicAddressMismatchTest, GetAddressMismatch) {
16 IPAddressNumber ip4_1; 16 IPAddressNumber ip4_1;
17 IPAddressNumber ip4_2; 17 IPAddressNumber ip4_2;
18 IPAddressNumber ip6_1; 18 IPAddressNumber ip6_1;
19 IPAddressNumber ip6_2; 19 IPAddressNumber ip6_2;
20 IPAddressNumber ip4_mapped_1;
21 IPAddressNumber ip4_mapped_2;
20 ASSERT_TRUE(ParseIPLiteralToNumber("1.2.3.4", &ip4_1)); 22 ASSERT_TRUE(ParseIPLiteralToNumber("1.2.3.4", &ip4_1));
21 ASSERT_TRUE(ParseIPLiteralToNumber("5.6.7.8", &ip4_2)); 23 ASSERT_TRUE(ParseIPLiteralToNumber("5.6.7.8", &ip4_2));
22 ASSERT_TRUE(ParseIPLiteralToNumber("1234::1", &ip6_1)); 24 ASSERT_TRUE(ParseIPLiteralToNumber("1234::1", &ip6_1));
23 ASSERT_TRUE(ParseIPLiteralToNumber("1234::2", &ip6_2)); 25 ASSERT_TRUE(ParseIPLiteralToNumber("1234::2", &ip6_2));
26 ip4_mapped_1 = ConvertIPv4NumberToIPv6Number(ip4_1);
27 ip4_mapped_2 = ConvertIPv4NumberToIPv6Number(ip4_2);
24 ASSERT_NE(ip4_1, ip4_2); 28 ASSERT_NE(ip4_1, ip4_2);
25 ASSERT_NE(ip6_1, ip6_2); 29 ASSERT_NE(ip6_1, ip6_2);
30 ASSERT_NE(ip4_mapped_1, ip4_mapped_2);
26 31
27 EXPECT_EQ(-1, GetAddressMismatch(IPEndPoint(), IPEndPoint())); 32 EXPECT_EQ(-1, GetAddressMismatch(IPEndPoint(), IPEndPoint()));
28 EXPECT_EQ(-1, GetAddressMismatch(IPEndPoint(), IPEndPoint(ip4_1, 443))); 33 EXPECT_EQ(-1, GetAddressMismatch(IPEndPoint(), IPEndPoint(ip4_1, 443)));
29 EXPECT_EQ(-1, GetAddressMismatch(IPEndPoint(ip4_1, 443), IPEndPoint())); 34 EXPECT_EQ(-1, GetAddressMismatch(IPEndPoint(ip4_1, 443), IPEndPoint()));
30 35
31 EXPECT_EQ(QUIC_ADDRESS_AND_PORT_MATCH_V4_V4, 36 EXPECT_EQ(QUIC_ADDRESS_AND_PORT_MATCH_V4_V4,
32 GetAddressMismatch(IPEndPoint(ip4_1, 443), 37 GetAddressMismatch(IPEndPoint(ip4_1, 443),
33 IPEndPoint(ip4_1, 443))); 38 IPEndPoint(ip4_1, 443)));
39 EXPECT_EQ(QUIC_ADDRESS_AND_PORT_MATCH_V4_V4,
40 GetAddressMismatch(IPEndPoint(ip4_1, 443),
41 IPEndPoint(ip4_mapped_1, 443)));
42 EXPECT_EQ(QUIC_ADDRESS_AND_PORT_MATCH_V4_V4,
43 GetAddressMismatch(IPEndPoint(ip4_mapped_1, 443),
44 IPEndPoint(ip4_mapped_1, 443)));
34 EXPECT_EQ(QUIC_ADDRESS_AND_PORT_MATCH_V6_V6, 45 EXPECT_EQ(QUIC_ADDRESS_AND_PORT_MATCH_V6_V6,
35 GetAddressMismatch(IPEndPoint(ip6_1, 443), 46 GetAddressMismatch(IPEndPoint(ip6_1, 443),
36 IPEndPoint(ip6_1, 443))); 47 IPEndPoint(ip6_1, 443)));
37 48
38 EXPECT_EQ(QUIC_PORT_MISMATCH_V4_V4, 49 EXPECT_EQ(QUIC_PORT_MISMATCH_V4_V4,
39 GetAddressMismatch(IPEndPoint(ip4_1, 80), 50 GetAddressMismatch(IPEndPoint(ip4_1, 80),
40 IPEndPoint(ip4_1, 443))); 51 IPEndPoint(ip4_1, 443)));
52 EXPECT_EQ(QUIC_PORT_MISMATCH_V4_V4,
53 GetAddressMismatch(IPEndPoint(ip4_1, 80),
54 IPEndPoint(ip4_mapped_1, 443)));
55 EXPECT_EQ(QUIC_PORT_MISMATCH_V4_V4,
56 GetAddressMismatch(IPEndPoint(ip4_mapped_1, 80),
57 IPEndPoint(ip4_mapped_1, 443)));
41 EXPECT_EQ(QUIC_PORT_MISMATCH_V6_V6, 58 EXPECT_EQ(QUIC_PORT_MISMATCH_V6_V6,
42 GetAddressMismatch(IPEndPoint(ip6_1, 80), 59 GetAddressMismatch(IPEndPoint(ip6_1, 80),
43 IPEndPoint(ip6_1, 443))); 60 IPEndPoint(ip6_1, 443)));
44 61
45 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4, 62 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4,
46 GetAddressMismatch(IPEndPoint(ip4_1, 443), 63 GetAddressMismatch(IPEndPoint(ip4_1, 443),
47 IPEndPoint(ip4_2, 443))); 64 IPEndPoint(ip4_2, 443)));
48 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4, 65 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4,
66 GetAddressMismatch(IPEndPoint(ip4_1, 443),
67 IPEndPoint(ip4_mapped_2, 443)));
68 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4,
69 GetAddressMismatch(IPEndPoint(ip4_mapped_1, 443),
70 IPEndPoint(ip4_mapped_2, 443)));
71 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4,
49 GetAddressMismatch(IPEndPoint(ip4_1, 80), 72 GetAddressMismatch(IPEndPoint(ip4_1, 80),
50 IPEndPoint(ip4_2, 443))); 73 IPEndPoint(ip4_2, 443)));
74 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4,
75 GetAddressMismatch(IPEndPoint(ip4_1, 80),
76 IPEndPoint(ip4_mapped_2, 443)));
77 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V4,
78 GetAddressMismatch(IPEndPoint(ip4_mapped_1, 80),
79 IPEndPoint(ip4_mapped_2, 443)));
51 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V6, 80 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V6,
52 GetAddressMismatch(IPEndPoint(ip6_1, 443), 81 GetAddressMismatch(IPEndPoint(ip6_1, 443),
53 IPEndPoint(ip6_2, 443))); 82 IPEndPoint(ip6_2, 443)));
54 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V6, 83 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V6,
55 GetAddressMismatch(IPEndPoint(ip6_1, 80), 84 GetAddressMismatch(IPEndPoint(ip6_1, 80),
56 IPEndPoint(ip6_2, 443))); 85 IPEndPoint(ip6_2, 443)));
57 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V6, 86 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V6,
58 GetAddressMismatch(IPEndPoint(ip4_1, 443), 87 GetAddressMismatch(IPEndPoint(ip4_1, 443),
59 IPEndPoint(ip6_1, 443))); 88 IPEndPoint(ip6_1, 443)));
60 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V6, 89 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V6,
90 GetAddressMismatch(IPEndPoint(ip4_mapped_1, 443),
91 IPEndPoint(ip6_1, 443)));
92 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V6,
61 GetAddressMismatch(IPEndPoint(ip4_1, 80), 93 GetAddressMismatch(IPEndPoint(ip4_1, 80),
62 IPEndPoint(ip6_1, 443))); 94 IPEndPoint(ip6_1, 443)));
95 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V4_V6,
96 GetAddressMismatch(IPEndPoint(ip4_mapped_1, 80),
97 IPEndPoint(ip6_1, 443)));
63 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V4, 98 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V4,
64 GetAddressMismatch(IPEndPoint(ip6_1, 443), 99 GetAddressMismatch(IPEndPoint(ip6_1, 443),
65 IPEndPoint(ip4_1, 443))); 100 IPEndPoint(ip4_1, 443)));
66 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V4, 101 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V4,
102 GetAddressMismatch(IPEndPoint(ip6_1, 443),
103 IPEndPoint(ip4_mapped_1, 443)));
104 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V4,
67 GetAddressMismatch(IPEndPoint(ip6_1, 80), 105 GetAddressMismatch(IPEndPoint(ip6_1, 80),
68 IPEndPoint(ip4_1, 443))); 106 IPEndPoint(ip4_1, 443)));
107 EXPECT_EQ(QUIC_ADDRESS_MISMATCH_V6_V4,
108 GetAddressMismatch(IPEndPoint(ip6_1, 80),
109 IPEndPoint(ip4_mapped_1, 443)));
69 } 110 }
70 111
71 } // namespace test 112 } // namespace test
72 } // namespace net 113 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_address_mismatch.cc ('k') | net/quic/quic_connection_logger.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698