Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 15da7c17 authored by Chalard Jean's avatar Chalard Jean Committed by Gerrit Code Review
Browse files

Merge "Opportunistic cleanup"

parents e9316545 afdecd51
Loading
Loading
Loading
Loading
+27 −36
Original line number Diff line number Diff line
@@ -495,7 +495,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
      * arg1 = One of the NETWORK_TESTED_RESULT_* constants.
      * arg2 = NetID.
      */
    public static final int EVENT_NETWORK_TESTED = 41;
    private static final int EVENT_NETWORK_TESTED = 41;

    /**
     * Event for NetworkMonitor/NetworkAgentInfo to inform ConnectivityService that the private DNS
@@ -503,7 +503,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
     * obj = PrivateDnsConfig
     * arg2 = netid
     */
    public static final int EVENT_PRIVATE_DNS_CONFIG_RESOLVED = 42;
    private static final int EVENT_PRIVATE_DNS_CONFIG_RESOLVED = 42;

    /**
     * Request ConnectivityService display provisioning notification.
@@ -511,12 +511,12 @@ public class ConnectivityService extends IConnectivityManager.Stub
     * arg2    = NetID.
     * obj     = Intent to be launched when notification selected by user, null if !arg1.
     */
    public static final int EVENT_PROVISIONING_NOTIFICATION = 43;
    private static final int EVENT_PROVISIONING_NOTIFICATION = 43;

    /**
     * This event can handle dismissing notification by given network id.
     */
    public static final int EVENT_TIMEOUT_NOTIFICATION = 44;
    private static final int EVENT_TIMEOUT_NOTIFICATION = 44;

    /**
     * Used to specify whether a network should be used even if connectivity is partial.
@@ -531,13 +531,13 @@ public class ConnectivityService extends IConnectivityManager.Stub
     * Argument for {@link #EVENT_PROVISIONING_NOTIFICATION} to indicate that the notification
     * should be shown.
     */
    public static final int PROVISIONING_NOTIFICATION_SHOW = 1;
    private static final int PROVISIONING_NOTIFICATION_SHOW = 1;

    /**
     * Argument for {@link #EVENT_PROVISIONING_NOTIFICATION} to indicate that the notification
     * should be hidden.
     */
    public static final int PROVISIONING_NOTIFICATION_HIDE = 0;
    private static final int PROVISIONING_NOTIFICATION_HIDE = 0;

    private static String eventName(int what) {
        return sMagicDecoderRing.get(what, Integer.toString(what));
@@ -1938,7 +1938,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
            }
        }

        return mPolicyManagerInternal.isUidNetworkingBlocked(uid, uidRules,
        return NetworkPolicyManagerInternal.isUidNetworkingBlocked(uid, uidRules,
                isNetworkMetered, isBackgroundRestricted);
    }

@@ -2204,7 +2204,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
        final String iface = networkAgent.linkProperties.getInterfaceName();

        final int timeout;
        int type = ConnectivityManager.TYPE_NONE;
        final int type;

        if (networkAgent.networkCapabilities.hasTransport(
                NetworkCapabilities.TRANSPORT_CELLULAR)) {
@@ -2219,11 +2219,10 @@ public class ConnectivityService extends IConnectivityManager.Stub
                                             15);
            type = ConnectivityManager.TYPE_WIFI;
        } else {
            // do not track any other networks
            timeout = 0;
            return; // do not track any other networks
        }

        if (timeout > 0 && iface != null && type != ConnectivityManager.TYPE_NONE) {
        if (timeout > 0 && iface != null) {
            try {
                mNMS.addIdleTimer(iface, timeout, type);
            } catch (Exception e) {
@@ -2299,7 +2298,6 @@ public class ConnectivityService extends IConnectivityManager.Stub

    @VisibleForTesting
    protected static final String DEFAULT_TCP_BUFFER_SIZES = "4096,87380,110208,4096,16384,110208";
    private static final String DEFAULT_TCP_RWND_KEY = "net.tcp.default_init_rwnd";

    private void updateTcpBufferSizes(String tcpBufferSizes) {
        String[] values = null;
@@ -2375,7 +2373,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
    }

    @Override
    protected void dump(FileDescriptor fd, PrintWriter writer, String[] args) {
    protected void dump(@NonNull FileDescriptor fd, @NonNull PrintWriter writer,
            @Nullable String[] args) {
        PriorityDump.dump(mPriorityDumper, fd, writer, args);
    }

@@ -2837,7 +2836,7 @@ public class ConnectivityService extends IConnectivityManager.Stub

        private NetworkMonitorCallbacks(NetworkAgentInfo nai) {
            mNetId = nai.network.netId;
            mNai = new AutodestructReference(nai);
            mNai = new AutodestructReference<>(nai);
        }

        @Override
@@ -4292,7 +4291,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
        public void onChange(boolean selfChange, Uri uri) {
            final Integer what = mUriEventMap.get(uri);
            if (what != null) {
                mHandler.obtainMessage(what.intValue()).sendToTarget();
                mHandler.obtainMessage(what).sendToTarget();
            } else {
                loge("No matching event to send for URI=" + uri);
            }
@@ -4729,12 +4728,10 @@ public class ConnectivityService extends IConnectivityManager.Stub
    private static final String ATTR_MNC = "mnc";

    private String getProvisioningUrlBaseFromFile() {
        FileReader fileReader = null;
        XmlPullParser parser = null;
        XmlPullParser parser;
        Configuration config = mContext.getResources().getConfiguration();

        try {
            fileReader = new FileReader(mProvisioningUrlFile);
        try (FileReader fileReader = new FileReader(mProvisioningUrlFile)) {
            parser = Xml.newPullParser();
            parser.setInput(fileReader);
            XmlUtils.beginDocument(parser, TAG_PROVISIONING_URLS);
@@ -4769,12 +4766,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
            loge("Xml parser exception reading Carrier Provisioning Urls file: " + e);
        } catch (IOException e) {
            loge("I/O exception reading Carrier Provisioning Urls file: " + e);
        } finally {
            if (fileReader != null) {
                try {
                    fileReader.close();
                } catch (IOException e) {}
            }
        }
        return null;
    }
@@ -5104,8 +5095,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
        }
    }

    // This checks that the passed capabilities either do not request a specific SSID/SignalStrength
    // , or the calling app has permission to do so.
    // This checks that the passed capabilities either do not request a
    // specific SSID/SignalStrength, or the calling app has permission to do so.
    private void ensureSufficientPermissionsForRequest(NetworkCapabilities nc,
            int callerPid, int callerUid) {
        if (null != nc.getSSID() && !checkSettingsPermission(callerPid, callerUid)) {
@@ -5238,7 +5229,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
                final int uid = Binder.getCallingUid();
                Integer uidReqs = mBandwidthRequests.get(uid);
                if (uidReqs == null) {
                    uidReqs = new Integer(0);
                    uidReqs = 0;
                }
                mBandwidthRequests.put(uid, ++uidReqs);
            }
@@ -5572,7 +5563,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
    }

    private void updateLinkProperties(NetworkAgentInfo networkAgent, LinkProperties newLp,
            LinkProperties oldLp) {
            @NonNull LinkProperties oldLp) {
        int netId = networkAgent.network.netId;

        // The NetworkAgentInfo does not know whether clatd is running on its network or not, or
@@ -5687,7 +5678,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
     */
    private boolean updateRoutes(LinkProperties newLp, LinkProperties oldLp, int netId) {
        // Compare the route diff to determine which routes should be added and removed.
        CompareResult<RouteInfo> routeDiff = new CompareResult<RouteInfo>(
        CompareResult<RouteInfo> routeDiff = new CompareResult<>(
                oldLp != null ? oldLp.getAllRoutes() : null,
                newLp != null ? newLp.getAllRoutes() : null);

@@ -5706,7 +5697,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
            }
        }
        for (RouteInfo route : routeDiff.added) {
            if (route.hasGateway() == false) continue;
            if (!route.hasGateway()) continue;
            if (VDBG || DDBG) log("Adding Route [" + route + "] to network " + netId);
            try {
                mNMS.addRoute(netId, route);
@@ -5935,8 +5926,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
     *  3. the VPN is fully-routed
     *  4. the VPN interface is non-null
     *
     * @See INetd#firewallAddUidInterfaceRules
     * @See INetd#firewallRemoveUidInterfaceRules
     * @see INetd#firewallAddUidInterfaceRules
     * @see INetd#firewallRemoveUidInterfaceRules
     */
    private boolean requiresVpnIsolation(@NonNull NetworkAgentInfo nai, NetworkCapabilities nc,
            LinkProperties lp) {
@@ -7051,9 +7042,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
    }

    @Override
    public void onShellCommand(FileDescriptor in, FileDescriptor out,
            FileDescriptor err, String[] args, ShellCallback callback,
            ResultReceiver resultReceiver) {
    public void onShellCommand(@NonNull FileDescriptor in, @NonNull FileDescriptor out,
            FileDescriptor err, @NonNull String[] args, ShellCallback callback,
            @NonNull ResultReceiver resultReceiver) {
        (new ShellCmd()).exec(this, in, out, err, args, callback, resultReceiver);
    }

+4 −3
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.server.connectivity;

import android.annotation.NonNull;
import android.net.ConnectivityManager;
import android.net.IDnsResolver;
import android.net.INetd;
@@ -325,13 +326,13 @@ public class Nat464Xlat extends BaseNetworkObserver {
     * This is necessary because the LinkProperties in mNetwork come from the transport layer, which
     * has no idea that 464xlat is running on top of it.
     */
    public void fixupLinkProperties(LinkProperties oldLp, LinkProperties lp) {
    public void fixupLinkProperties(@NonNull LinkProperties oldLp, @NonNull LinkProperties lp) {
        lp.setNat64Prefix(mNat64Prefix);

        if (!isRunning()) {
            return;
        }
        if (lp == null || lp.getAllInterfaceNames().contains(mIface)) {
        if (lp.getAllInterfaceNames().contains(mIface)) {
            return;
        }

@@ -434,7 +435,7 @@ public class Nat464Xlat extends BaseNetworkObserver {

    @Override
    public void interfaceRemoved(String iface) {
        mNetwork.handler().post(() -> { handleInterfaceRemoved(iface); });
        mNetwork.handler().post(() -> handleInterfaceRemoved(iface));
    }

    @Override