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/base/net_util.h" | 5 #include "net/base/net_util.h" |
6 | 6 |
7 #include <string.h> | 7 #include <string.h> |
8 | 8 |
9 #include <ostream> | 9 #include <ostream> |
10 | 10 |
(...skipping 1128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1139 // Helper function to create a valid IP_ADAPTER_ADDRESSES with reasonable | 1139 // Helper function to create a valid IP_ADAPTER_ADDRESSES with reasonable |
1140 // default value. The output is the |adapter_address|. All the rests are input | 1140 // default value. The output is the |adapter_address|. All the rests are input |
1141 // to fill the |adapter_address|. |sock_addrs| are temporary storage used by | 1141 // to fill the |adapter_address|. |sock_addrs| are temporary storage used by |
1142 // |adapter_address| once the function is returned. | 1142 // |adapter_address| once the function is returned. |
1143 bool FillAdapterAddress(IP_ADAPTER_ADDRESSES* adapter_address, | 1143 bool FillAdapterAddress(IP_ADAPTER_ADDRESSES* adapter_address, |
1144 const char* ifname, | 1144 const char* ifname, |
1145 const IPAddressNumber& ip_address, | 1145 const IPAddressNumber& ip_address, |
1146 const IPAddressNumber& ip_netmask, | 1146 const IPAddressNumber& ip_netmask, |
1147 sockaddr_storage sock_addrs[2]) { | 1147 sockaddr_storage sock_addrs[2]) { |
1148 adapter_address->AdapterName = const_cast<char*>(ifname); | 1148 adapter_address->AdapterName = const_cast<char*>(ifname); |
1149 adapter_address->FriendlyName = L"interface"; | 1149 adapter_address->FriendlyName = const_cast<PWCHAR>(L"interface"); |
1150 adapter_address->IfType = IF_TYPE_ETHERNET_CSMACD; | 1150 adapter_address->IfType = IF_TYPE_ETHERNET_CSMACD; |
1151 adapter_address->OperStatus = IfOperStatusUp; | 1151 adapter_address->OperStatus = IfOperStatusUp; |
1152 adapter_address->FirstUnicastAddress->DadState = IpDadStatePreferred; | 1152 adapter_address->FirstUnicastAddress->DadState = IpDadStatePreferred; |
1153 adapter_address->FirstUnicastAddress->PrefixOrigin = IpPrefixOriginOther; | 1153 adapter_address->FirstUnicastAddress->PrefixOrigin = IpPrefixOriginOther; |
1154 adapter_address->FirstUnicastAddress->SuffixOrigin = IpSuffixOriginOther; | 1154 adapter_address->FirstUnicastAddress->SuffixOrigin = IpSuffixOriginOther; |
1155 adapter_address->FirstUnicastAddress->PreferredLifetime = 100; | 1155 adapter_address->FirstUnicastAddress->PreferredLifetime = 100; |
1156 adapter_address->FirstUnicastAddress->ValidLifetime = 1000; | 1156 adapter_address->FirstUnicastAddress->ValidLifetime = 1000; |
1157 | 1157 |
1158 socklen_t sock_len = sizeof(sockaddr_storage); | 1158 socklen_t sock_len = sizeof(sockaddr_storage); |
1159 | 1159 |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1285 results.clear(); | 1285 results.clear(); |
1286 | 1286 |
1287 // Addresses with preferred lifetime 0 should be returned and | 1287 // Addresses with preferred lifetime 0 should be returned and |
1288 // attributes should be translated correctly to | 1288 // attributes should be translated correctly to |
1289 // IP_ADDRESS_ATTRIBUTE_DEPRECATED. | 1289 // IP_ADDRESS_ATTRIBUTE_DEPRECATED. |
1290 ASSERT_TRUE(FillAdapterAddress( | 1290 ASSERT_TRUE(FillAdapterAddress( |
1291 &adapter_address /* adapter_address */, ifname_em1 /* ifname */, | 1291 &adapter_address /* adapter_address */, ifname_em1 /* ifname */, |
1292 ipv6_address /* ip_address */, ipv6_prefix /* ip_netmask */, | 1292 ipv6_address /* ip_address */, ipv6_prefix /* ip_netmask */, |
1293 addresses /* sock_addrs */)); | 1293 addresses /* sock_addrs */)); |
1294 adapter_address.FirstUnicastAddress->PreferredLifetime = 0; | 1294 adapter_address.FirstUnicastAddress->PreferredLifetime = 0; |
1295 adapter_address.FriendlyName = L"FriendlyInterfaceName"; | 1295 adapter_address.FriendlyName = const_cast<PWCHAR>(L"FriendlyInterfaceName"); |
1296 EXPECT_TRUE(net::internal::GetNetworkListImpl( | 1296 EXPECT_TRUE(net::internal::GetNetworkListImpl( |
1297 &results, INCLUDE_HOST_SCOPE_VIRTUAL_INTERFACES, true, &adapter_address)); | 1297 &results, INCLUDE_HOST_SCOPE_VIRTUAL_INTERFACES, true, &adapter_address)); |
1298 EXPECT_EQ(results.size(), 1ul); | 1298 EXPECT_EQ(results.size(), 1ul); |
1299 EXPECT_EQ(results[0].friendly_name, "FriendlyInterfaceName"); | 1299 EXPECT_EQ(results[0].friendly_name, "FriendlyInterfaceName"); |
1300 EXPECT_EQ(results[0].name, ifname_em1); | 1300 EXPECT_EQ(results[0].name, ifname_em1); |
1301 EXPECT_EQ(results[0].network_prefix, 1ul); | 1301 EXPECT_EQ(results[0].network_prefix, 1ul); |
1302 EXPECT_EQ(results[0].address, ipv6_address); | 1302 EXPECT_EQ(results[0].address, ipv6_address); |
1303 EXPECT_EQ(results[0].ip_address_attributes, IP_ADDRESS_ATTRIBUTE_DEPRECATED); | 1303 EXPECT_EQ(results[0].ip_address_attributes, IP_ADDRESS_ATTRIBUTE_DEPRECATED); |
1304 results.clear(); | 1304 results.clear(); |
1305 } | 1305 } |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1489 TEST_P(NetUtilNonUniqueNameTest, IsHostnameNonUnique) { | 1489 TEST_P(NetUtilNonUniqueNameTest, IsHostnameNonUnique) { |
1490 const NonUniqueNameTestData& test_data = GetParam(); | 1490 const NonUniqueNameTestData& test_data = GetParam(); |
1491 | 1491 |
1492 EXPECT_EQ(test_data.is_unique, IsUnique(test_data.hostname)); | 1492 EXPECT_EQ(test_data.is_unique, IsUnique(test_data.hostname)); |
1493 } | 1493 } |
1494 | 1494 |
1495 INSTANTIATE_TEST_CASE_P(, NetUtilNonUniqueNameTest, | 1495 INSTANTIATE_TEST_CASE_P(, NetUtilNonUniqueNameTest, |
1496 testing::ValuesIn(kNonUniqueNameTestData)); | 1496 testing::ValuesIn(kNonUniqueNameTestData)); |
1497 | 1497 |
1498 } // namespace net | 1498 } // namespace net |
OLD | NEW |