summaryrefslogtreecommitdiff
path: root/www/chromium/files/patch-net_base_address__tracker__linux.cc
diff options
context:
space:
mode:
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.cc63
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() {