Merge "Use getAllInterfaceNames to get all interface names"

This commit is contained in:
Lucas Lin
2021-03-25 10:44:51 +00:00
committed by Gerrit Code Review
2 changed files with 11 additions and 20 deletions

View File

@@ -179,7 +179,6 @@ import android.net.INetworkManagementEventObserver;
import android.net.INetworkPolicyListener; import android.net.INetworkPolicyListener;
import android.net.INetworkPolicyManager; import android.net.INetworkPolicyManager;
import android.net.INetworkStatsService; import android.net.INetworkStatsService;
import android.net.LinkProperties;
import android.net.Network; import android.net.Network;
import android.net.NetworkCapabilities; import android.net.NetworkCapabilities;
import android.net.NetworkIdentity; import android.net.NetworkIdentity;
@@ -1922,16 +1921,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
* Collect all ifaces from a {@link NetworkStateSnapshot} into the given set. * Collect all ifaces from a {@link NetworkStateSnapshot} into the given set.
*/ */
private static void collectIfaces(ArraySet<String> ifaces, NetworkStateSnapshot snapshot) { private static void collectIfaces(ArraySet<String> ifaces, NetworkStateSnapshot snapshot) {
final String baseIface = snapshot.linkProperties.getInterfaceName(); ifaces.addAll(snapshot.linkProperties.getAllInterfaceNames());
if (baseIface != null) {
ifaces.add(baseIface);
}
for (LinkProperties stackedLink : snapshot.linkProperties.getStackedLinks()) {
final String stackedIface = stackedLink.getInterfaceName();
if (stackedIface != null) {
ifaces.add(stackedIface);
}
}
} }
/** /**

View File

@@ -92,7 +92,6 @@ import android.net.DataUsageRequest;
import android.net.INetworkManagementEventObserver; import android.net.INetworkManagementEventObserver;
import android.net.INetworkStatsService; import android.net.INetworkStatsService;
import android.net.INetworkStatsSession; import android.net.INetworkStatsSession;
import android.net.LinkProperties;
import android.net.Network; import android.net.Network;
import android.net.NetworkCapabilities; import android.net.NetworkCapabilities;
import android.net.NetworkIdentity; import android.net.NetworkIdentity;
@@ -131,6 +130,7 @@ import android.service.NetworkInterfaceProto;
import android.service.NetworkStatsServiceDumpProto; import android.service.NetworkStatsServiceDumpProto;
import android.telephony.PhoneStateListener; import android.telephony.PhoneStateListener;
import android.telephony.SubscriptionPlan; import android.telephony.SubscriptionPlan;
import android.text.TextUtils;
import android.text.format.DateUtils; import android.text.format.DateUtils;
import android.util.ArrayMap; import android.util.ArrayMap;
import android.util.ArraySet; import android.util.ArraySet;
@@ -1358,17 +1358,18 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
// (or non eBPF offloaded) TX they would appear on both, however egress interface // (or non eBPF offloaded) TX they would appear on both, however egress interface
// accounting is explicitly bypassed for traffic from the clat uid. // accounting is explicitly bypassed for traffic from the clat uid.
// //
final List<LinkProperties> stackedLinks = snapshot.linkProperties.getStackedLinks(); // TODO: This code might be combined to above code.
for (LinkProperties stackedLink : stackedLinks) { for (String iface : snapshot.linkProperties.getAllInterfaceNames()) {
final String stackedIface = stackedLink.getInterfaceName(); // baseIface has been handled, so ignore it.
if (stackedIface != null) { if (TextUtils.equals(baseIface, iface)) continue;
findOrCreateNetworkIdentitySet(mActiveIfaces, stackedIface).add(ident); if (iface != null) {
findOrCreateNetworkIdentitySet(mActiveUidIfaces, stackedIface).add(ident); findOrCreateNetworkIdentitySet(mActiveIfaces, iface).add(ident);
findOrCreateNetworkIdentitySet(mActiveUidIfaces, iface).add(ident);
if (isMobile) { if (isMobile) {
mobileIfaces.add(stackedIface); mobileIfaces.add(iface);
} }
mStatsFactory.noteStackedIface(stackedIface, baseIface); mStatsFactory.noteStackedIface(iface, baseIface);
} }
} }
} }