diff options
Diffstat (limited to 'www/chromium/files/patch-net_base_address__tracker__linux.cc')
-rw-r--r-- | www/chromium/files/patch-net_base_address__tracker__linux.cc | 63 |
1 files changed, 28 insertions, 35 deletions
diff --git a/www/chromium/files/patch-net_base_address__tracker__linux.cc b/www/chromium/files/patch-net_base_address__tracker__linux.cc index 01047dcf1d20..ee5ca1520ebc 100644 --- a/www/chromium/files/patch-net_base_address__tracker__linux.cc +++ b/www/chromium/files/patch-net_base_address__tracker__linux.cc @@ -1,4 +1,4 @@ ---- net/base/address_tracker_linux.cc.orig 2020-03-03 18:53:55 UTC +--- net/base/address_tracker_linux.cc.orig 2020-09-08 19:14:08 UTC +++ net/base/address_tracker_linux.cc @@ -5,7 +5,9 @@ #include "net/base/address_tracker_linux.h" @@ -10,15 +10,23 @@ #include <stdint.h> #include <sys/ioctl.h> #include <utility> -@@ -177,6 +179,7 @@ AddressTrackerLinux::AddressTrackerLinux( - AddressTrackerLinux::~AddressTrackerLinux() = default; - - void AddressTrackerLinux::Init() { +@@ -190,6 +192,7 @@ void AddressTrackerLinux::Init() { + DCHECK_LT(base::android::BuildInfo::GetInstance()->sdk_int(), + base::android::SDK_VERSION_P); + #endif +#if !defined(OS_FREEBSD) netlink_fd_.reset(socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE)); if (!netlink_fd_.is_valid()) { PLOG(ERROR) << "Could not create NETLINK socket"; -@@ -272,6 +275,7 @@ void AddressTrackerLinux::AbortAndForceOnline() { +@@ -274,6 +277,7 @@ void AddressTrackerLinux::Init() { + base::BindRepeating(&AddressTrackerLinux::OnFileCanReadWithoutBlocking, + base::Unretained(this))); + } ++#endif // !OS_FREEBSD + } + + void AddressTrackerLinux::AbortAndForceOnline() { +@@ -285,6 +289,7 @@ void AddressTrackerLinux::AbortAndForceOnline() { connection_type_initialized_cv_.Broadcast(); } @@ -26,7 +34,7 @@ AddressTrackerLinux::AddressMap AddressTrackerLinux::GetAddressMap() const { AddressTrackerAutoLock lock(*this, address_map_lock_); return address_map_; -@@ -290,6 +294,7 @@ bool AddressTrackerLinux::IsInterfaceIgnored(int inter +@@ -303,6 +308,7 @@ bool AddressTrackerLinux::IsInterfaceIgnored(int inter const char* interface_name = get_interface_name_(interface_index, buf); return ignored_interfaces_.find(interface_name) != ignored_interfaces_.end(); } @@ -34,7 +42,7 @@ NetworkChangeNotifier::ConnectionType AddressTrackerLinux::GetCurrentConnectionType() { -@@ -348,6 +353,7 @@ void AddressTrackerLinux::HandleMessage(const char* bu +@@ -361,6 +367,7 @@ void AddressTrackerLinux::HandleMessage(const char* bu bool* address_changed, bool* link_changed, bool* tunnel_changed) { @@ -42,7 +50,7 @@ DCHECK(buffer); // Note that NLMSG_NEXT decrements |length| to reflect the number of bytes // remaining in |buffer|. -@@ -460,6 +466,10 @@ void AddressTrackerLinux::HandleMessage(const char* bu +@@ -473,6 +480,10 @@ void AddressTrackerLinux::HandleMessage(const char* bu break; } } @@ -53,36 +61,21 @@ } void AddressTrackerLinux::OnFileCanReadWithoutBlocking() { -@@ -487,31 +497,7 @@ bool AddressTrackerLinux::IsTunnelInterfaceName(const +@@ -500,6 +511,7 @@ bool AddressTrackerLinux::IsTunnelInterfaceName(const } void AddressTrackerLinux::UpdateCurrentConnectionType() { -- AddressTrackerLinux::AddressMap address_map = GetAddressMap(); -- std::unordered_set<int> online_links = GetOnlineLinks(); -- -- // Strip out tunnel interfaces from online_links -- for (auto it = online_links.cbegin(); it != online_links.cend();) { -- if (IsTunnelInterface(*it)) { -- it = online_links.erase(it); -- } else { -- ++it; -- } -- } -- -- NetworkInterfaceList networks; -- NetworkChangeNotifier::ConnectionType type = -- NetworkChangeNotifier::CONNECTION_NONE; -- if (GetNetworkListImpl(&networks, 0, online_links, address_map, -- get_interface_name_)) { -- type = NetworkChangeNotifier::ConnectionTypeFromInterfaceList(networks); -- } else { -- type = online_links.empty() ? NetworkChangeNotifier::CONNECTION_NONE -- : NetworkChangeNotifier::CONNECTION_UNKNOWN; -- } -- -- AddressTrackerAutoLock lock(*this, connection_type_lock_); -- current_connection_type_ = type; ++#if !defined(OS_FREEBSD) + AddressTrackerLinux::AddressMap address_map = GetAddressMap(); + std::unordered_set<int> online_links = GetOnlineLinks(); + +@@ -525,6 +537,9 @@ void AddressTrackerLinux::UpdateCurrentConnectionType( + + AddressTrackerAutoLock lock(*this, connection_type_lock_); + current_connection_type_ = type; ++#else + NOTIMPLEMENTED(); ++#endif } int AddressTrackerLinux::GetThreadsWaitingForConnectionTypeInitForTesting() { |