// Copyright 2023 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef NET_BASE_ADDRESS_MAP_LINUX_H_ #define NET_BASE_ADDRESS_MAP_LINUX_H_ #include <map> #include <optional> #include <unordered_set> #include "base/containers/flat_map.h" #include "base/functional/callback_forward.h" #include "net/base/ip_address.h" #include "net/base/net_export.h" struct ifaddrmsg; namespace net { class AddressMapCacheLinux; namespace internal { class AddressTrackerLinux; } // Various components of //net need to access a real-time-updated AddressMap // (see comments below). For example, AddressSorterPosix (used in DNS // resolution) and GetNetworkList() (used in many places). // The methods defined in this interface should be safe to call from any thread. class NET_EXPORT AddressMapOwnerLinux { … }; } // namespace net #endif // NET_BASE_ADDRESS_MAP_LINUX_H_