#include "net/base/network_change_notifier_passive.h"
#include <string>
#include <unordered_set>
#include <utility>
#include "base/functional/bind.h"
#include "base/task/task_traits.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "net/dns/dns_config_service_posix.h"
#include "net/dns/system_dns_config_change_notifier.h"
#if BUILDFLAG(IS_ANDROID)
#include "net/android/network_change_notifier_android.h"
#endif
#if BUILDFLAG(IS_LINUX)
#include <linux/rtnetlink.h>
#include "net/base/network_change_notifier_linux.h"
#endif
namespace net {
NetworkChangeNotifierPassive::NetworkChangeNotifierPassive(
NetworkChangeNotifier::ConnectionType initial_connection_type,
NetworkChangeNotifier::ConnectionSubtype initial_connection_subtype)
: … { … }
NetworkChangeNotifierPassive::NetworkChangeNotifierPassive(
NetworkChangeNotifier::ConnectionType initial_connection_type,
NetworkChangeNotifier::ConnectionSubtype initial_connection_subtype,
SystemDnsConfigChangeNotifier* system_dns_config_notifier)
: … { … }
NetworkChangeNotifierPassive::~NetworkChangeNotifierPassive() { … }
void NetworkChangeNotifierPassive::OnDNSChanged() { … }
void NetworkChangeNotifierPassive::OnIPAddressChanged() { … }
void NetworkChangeNotifierPassive::OnConnectionChanged(
NetworkChangeNotifier::ConnectionType connection_type) { … }
void NetworkChangeNotifierPassive::OnConnectionSubtypeChanged(
NetworkChangeNotifier::ConnectionType connection_type,
NetworkChangeNotifier::ConnectionSubtype connection_subtype) { … }
NetworkChangeNotifier::ConnectionType
NetworkChangeNotifierPassive::GetCurrentConnectionType() const { … }
void NetworkChangeNotifierPassive::GetCurrentMaxBandwidthAndConnectionType(
double* max_bandwidth_mbps,
ConnectionType* connection_type) const { … }
#if BUILDFLAG(IS_LINUX)
AddressMapOwnerLinux*
NetworkChangeNotifierPassive::GetAddressMapOwnerInternal() { … }
#endif
NetworkChangeNotifier::NetworkChangeCalculatorParams
NetworkChangeNotifierPassive::NetworkChangeCalculatorParamsPassive() { … }
}