diff options
author | Rene Ladan <rene@FreeBSD.org> | 2019-05-24 12:34:58 +0000 |
---|---|---|
committer | Rene Ladan <rene@FreeBSD.org> | 2019-05-24 12:34:58 +0000 |
commit | a8a9149eb324b20a62cfdb78132a569c6fab2046 (patch) | |
tree | 5fdd2d2e7f3be73797f9b742907237c43172a303 /www/chromium/files/patch-net_base_address__tracker__linux.cc | |
parent | devel/flyspray: Remove broken MYSQL option (diff) |
www/chromium: update to 74.0.3729.157
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 | 111 |
1 files changed, 17 insertions, 94 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 c15cb0bfe598..863a043a34f6 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 2019-03-11 22:01:00 UTC +--- net/base/address_tracker_linux.cc.orig 2019-04-30 22:22:54 UTC +++ net/base/address_tracker_linux.cc @@ -21,96 +21,10 @@ namespace net { @@ -99,103 +99,26 @@ } AddressTrackerLinux::AddressTrackerLinux() -@@ -153,93 +67,8 @@ AddressTrackerLinux::~AddressTrackerLinux() { +@@ -151,6 +65,7 @@ AddressTrackerLinux::~AddressTrackerLinux() { } void AddressTrackerLinux::Init() { -- netlink_fd_ = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE); -- if (netlink_fd_ < 0) { -- PLOG(ERROR) << "Could not create NETLINK socket"; -- AbortAndForceOnline(); -- return; -- } -- -- int rv; -- -- if (tracking_) { -- // Request notifications. -- struct sockaddr_nl addr = {}; -- addr.nl_family = AF_NETLINK; -- addr.nl_pid = getpid(); -- // TODO(szym): Track RTMGRP_LINK as well for ifi_type, -- // http://crbug.com/113993 -- addr.nl_groups = -- RTMGRP_IPV4_IFADDR | RTMGRP_IPV6_IFADDR | RTMGRP_NOTIFY | RTMGRP_LINK; -- rv = bind( -- netlink_fd_, reinterpret_cast<struct sockaddr*>(&addr), sizeof(addr)); -- if (rv < 0) { -- PLOG(ERROR) << "Could not bind NETLINK socket"; -- AbortAndForceOnline(); -- return; -- } -- } -- -- // Request dump of addresses. -- struct sockaddr_nl peer = {}; -- peer.nl_family = AF_NETLINK; -- -- struct { -- struct nlmsghdr header; -- struct rtgenmsg msg; -- } request = {}; -- -- request.header.nlmsg_len = NLMSG_LENGTH(sizeof(request.msg)); -- request.header.nlmsg_type = RTM_GETADDR; -- request.header.nlmsg_flags = NLM_F_REQUEST | NLM_F_DUMP; -- request.header.nlmsg_pid = getpid(); -- request.msg.rtgen_family = AF_UNSPEC; -- -- rv = HANDLE_EINTR(sendto(netlink_fd_, &request, request.header.nlmsg_len, -- 0, reinterpret_cast<struct sockaddr*>(&peer), -- sizeof(peer))); -- if (rv < 0) { -- PLOG(ERROR) << "Could not send NETLINK request"; -- AbortAndForceOnline(); -- return; -- } -- -- // Consume pending message to populate the AddressMap, but don't notify. -- // Sending another request without first reading responses results in EBUSY. -- bool address_changed; -- bool link_changed; -- bool tunnel_changed; -- ReadMessages(&address_changed, &link_changed, &tunnel_changed); -- -- // Request dump of link state -- request.header.nlmsg_type = RTM_GETLINK; -- -- rv = HANDLE_EINTR(sendto(netlink_fd_, &request, request.header.nlmsg_len, 0, -- reinterpret_cast<struct sockaddr*>(&peer), -- sizeof(peer))); -- if (rv < 0) { -- PLOG(ERROR) << "Could not send NETLINK request"; -- AbortAndForceOnline(); -- return; -- } -- -- // Consume pending message to populate links_online_, but don't notify. -- ReadMessages(&address_changed, &link_changed, &tunnel_changed); -- { -- AddressTrackerAutoLock lock(*this, connection_type_lock_); -- connection_type_initialized_ = true; -- connection_type_initialized_cv_.Broadcast(); -- } -- -- if (tracking_) { -- rv = base::MessageLoopCurrentForIO::Get()->WatchFileDescriptor( -- netlink_fd_, true, base::MessagePumpForIO::WATCH_READ, &watcher_, this); -- if (rv < 0) { -- PLOG(ERROR) << "Could not watch NETLINK socket"; -- AbortAndForceOnline(); -- return; -- } -- } -+NOTIMPLEMENTED(); -+AbortAndForceOnline(); ++#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"; +@@ -239,6 +154,10 @@ void AddressTrackerLinux::Init() { + return; + } + } ++#else // !OS_FREEBSD ++ NOTIMPLEMENTED(); ++ AbortAndForceOnline(); ++#endif // !OS_FREEBSD } void AddressTrackerLinux::AbortAndForceOnline() { -@@ -250,25 +79,6 @@ void AddressTrackerLinux::AbortAndForceOnline() { +@@ -250,25 +169,6 @@ void AddressTrackerLinux::AbortAndForceOnline() { connection_type_initialized_cv_.Broadcast(); } @@ -221,7 +144,7 @@ NetworkChangeNotifier::ConnectionType AddressTrackerLinux::GetCurrentConnectionType() { // http://crbug.com/125097 -@@ -326,102 +136,7 @@ void AddressTrackerLinux::HandleMessage(char* buffer, +@@ -326,102 +226,7 @@ void AddressTrackerLinux::HandleMessage(char* buffer, bool* address_changed, bool* link_changed, bool* tunnel_changed) { @@ -325,7 +248,7 @@ } void AddressTrackerLinux::OnFileCanReadWithoutBlocking(int fd) { -@@ -458,31 +173,7 @@ bool AddressTrackerLinux::IsTunnelInterfaceName(const +@@ -452,31 +257,7 @@ bool AddressTrackerLinux::IsTunnelInterfaceName(const } void AddressTrackerLinux::UpdateCurrentConnectionType() { |