Loading services/core/java/com/android/server/ConnectivityService.java +18 −30 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import static android.net.ConnectivityDiagnosticsManager.DataStallReport.KEY_DNS import static android.net.ConnectivityDiagnosticsManager.DataStallReport.KEY_TCP_METRICS_COLLECTION_PERIOD_MILLIS; import static android.net.ConnectivityDiagnosticsManager.DataStallReport.KEY_TCP_PACKET_FAIL_RATE; import static android.net.ConnectivityManager.CONNECTIVITY_ACTION; import static android.net.ConnectivityManager.NETID_UNSET; import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OPPORTUNISTIC; import static android.net.ConnectivityManager.TYPE_ETHERNET; import static android.net.ConnectivityManager.TYPE_NONE; Loading Loading @@ -1444,31 +1443,20 @@ public class ConnectivityService extends IConnectivityManager.Stub } private Network getActiveNetworkForUidInternal(final int uid, boolean ignoreBlocked) { final int user = UserHandle.getUserId(uid); int vpnNetId = NETID_UNSET; synchronized (mVpns) { final Vpn vpn = mVpns.get(user); // TODO : now that capabilities contain the UID, the appliesToUid test should // be removed as the satisfying test below should be enough. if (vpn != null && vpn.appliesToUid(uid)) vpnNetId = vpn.getNetId(); } NetworkAgentInfo nai; if (vpnNetId != NETID_UNSET) { nai = getNetworkAgentInfoForNetId(vpnNetId); if (nai != null) { final NetworkCapabilities requiredCaps = createDefaultNetworkCapabilitiesForUid(uid); if (requiredCaps.satisfiedByNetworkCapabilities(nai.networkCapabilities)) { return nai.network; } final NetworkAgentInfo vpnNai = getVpnForUid(uid); if (vpnNai != null) { final NetworkCapabilities requiredCaps = createDefaultNetworkCapabilitiesForUid(uid); if (requiredCaps.satisfiedByNetworkCapabilities(vpnNai.networkCapabilities)) { return vpnNai.network; } } nai = getDefaultNetwork(); if (nai != null && isNetworkWithCapabilitiesBlocked( nai.networkCapabilities, uid, ignoreBlocked)) { nai = null; NetworkAgentInfo nai = getDefaultNetwork(); if (nai == null || isNetworkWithCapabilitiesBlocked(nai.networkCapabilities, uid, ignoreBlocked)) { return null; } return nai != null ? nai.network : null; return nai.network; } // Public because it's used by mLockdownTracker. Loading Loading @@ -4830,6 +4818,7 @@ public class ConnectivityService extends IConnectivityManager.Stub if (mLockdownEnabled) { return new VpnInfo[0]; } } List<VpnInfo> infoList = new ArrayList<>(); for (NetworkAgentInfo nai : mNetworkAgentInfos) { VpnInfo info = createVpnInfo(nai); Loading @@ -4839,7 +4828,6 @@ public class ConnectivityService extends IConnectivityManager.Stub } return infoList.toArray(new VpnInfo[infoList.size()]); } } /** * @return VPN information for accounting, or null if we can't retrieve all required Loading Loading
services/core/java/com/android/server/ConnectivityService.java +18 −30 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import static android.net.ConnectivityDiagnosticsManager.DataStallReport.KEY_DNS import static android.net.ConnectivityDiagnosticsManager.DataStallReport.KEY_TCP_METRICS_COLLECTION_PERIOD_MILLIS; import static android.net.ConnectivityDiagnosticsManager.DataStallReport.KEY_TCP_PACKET_FAIL_RATE; import static android.net.ConnectivityManager.CONNECTIVITY_ACTION; import static android.net.ConnectivityManager.NETID_UNSET; import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OPPORTUNISTIC; import static android.net.ConnectivityManager.TYPE_ETHERNET; import static android.net.ConnectivityManager.TYPE_NONE; Loading Loading @@ -1444,31 +1443,20 @@ public class ConnectivityService extends IConnectivityManager.Stub } private Network getActiveNetworkForUidInternal(final int uid, boolean ignoreBlocked) { final int user = UserHandle.getUserId(uid); int vpnNetId = NETID_UNSET; synchronized (mVpns) { final Vpn vpn = mVpns.get(user); // TODO : now that capabilities contain the UID, the appliesToUid test should // be removed as the satisfying test below should be enough. if (vpn != null && vpn.appliesToUid(uid)) vpnNetId = vpn.getNetId(); } NetworkAgentInfo nai; if (vpnNetId != NETID_UNSET) { nai = getNetworkAgentInfoForNetId(vpnNetId); if (nai != null) { final NetworkCapabilities requiredCaps = createDefaultNetworkCapabilitiesForUid(uid); if (requiredCaps.satisfiedByNetworkCapabilities(nai.networkCapabilities)) { return nai.network; } final NetworkAgentInfo vpnNai = getVpnForUid(uid); if (vpnNai != null) { final NetworkCapabilities requiredCaps = createDefaultNetworkCapabilitiesForUid(uid); if (requiredCaps.satisfiedByNetworkCapabilities(vpnNai.networkCapabilities)) { return vpnNai.network; } } nai = getDefaultNetwork(); if (nai != null && isNetworkWithCapabilitiesBlocked( nai.networkCapabilities, uid, ignoreBlocked)) { nai = null; NetworkAgentInfo nai = getDefaultNetwork(); if (nai == null || isNetworkWithCapabilitiesBlocked(nai.networkCapabilities, uid, ignoreBlocked)) { return null; } return nai != null ? nai.network : null; return nai.network; } // Public because it's used by mLockdownTracker. Loading Loading @@ -4830,6 +4818,7 @@ public class ConnectivityService extends IConnectivityManager.Stub if (mLockdownEnabled) { return new VpnInfo[0]; } } List<VpnInfo> infoList = new ArrayList<>(); for (NetworkAgentInfo nai : mNetworkAgentInfos) { VpnInfo info = createVpnInfo(nai); Loading @@ -4839,7 +4828,6 @@ public class ConnectivityService extends IConnectivityManager.Stub } return infoList.toArray(new VpnInfo[infoList.size()]); } } /** * @return VPN information for accounting, or null if we can't retrieve all required Loading