From 63ab810ce2e81c1e5ca0e8fa91d02958f0bda147 Mon Sep 17 00:00:00 2001 From: Honghai Zhang Date: Thu, 26 May 2016 20:30:15 -0700 Subject: [PATCH] Set IOS Wifi interface type based on the interface name. BUG=webrtc:3149 R=pthatcher@webrtc.org Review URL: https://codereview.webrtc.org/2006893003 . Cr-Commit-Position: refs/heads/master@{#12939} --- webrtc/base/network.cc | 7 +++++++ webrtc/base/network_unittest.cc | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/webrtc/base/network.cc b/webrtc/base/network.cc index 5031e967a5..152bcdf671 100644 --- a/webrtc/base/network.cc +++ b/webrtc/base/network.cc @@ -805,6 +805,13 @@ AdapterType BasicNetworkManager::GetAdapterTypeFromName( if (strncmp(network_name, "pdp_ip", 6) == 0) { return ADAPTER_TYPE_CELLULAR; } + if (strncmp(network_name, "en", 2) == 0) { + // This may not be most accurate because sometimes Ethernet interface + // name also starts with "en" but it is better than showing it as + // "unknown" type. + // TODO(honghaiz): Write a proper IOS network manager. + return ADAPTER_TYPE_WIFI; + } #elif defined(WEBRTC_ANDROID) if (strncmp(network_name, "rmnet", 5) == 0 || strncmp(network_name, "v4-rmnet", 8) == 0) { diff --git a/webrtc/base/network_unittest.cc b/webrtc/base/network_unittest.cc index 9572c69746..2ddc1b03c5 100644 --- a/webrtc/base/network_unittest.cc +++ b/webrtc/base/network_unittest.cc @@ -867,6 +867,12 @@ TEST_F(NetworkTest, TestGetAdapterTypeFromNameMatching) { ClearNetworks(manager); ReleaseIfAddrs(addr_list); + strcpy(if_name, "en0"); + addr_list = InstallIpv6Network(if_name, ipv6_address1, ipv6_mask, manager); + EXPECT_EQ(ADAPTER_TYPE_WIFI, GetAdapterType(manager)); + ClearNetworks(manager); + ReleaseIfAddrs(addr_list); + #elif defined(WEBRTC_ANDROID) char if_name[20] = "rmnet0"; ifaddrs* addr_list =