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

Commit 40be9a9c authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 7635729 from 09c3051d to mainline-ipsec-release

Change-Id: I35c32f42d66c329aec4c941bb4d204a053cbe4f1
parents 16711c54 09c3051d
Loading
Loading
Loading
Loading
+3 −1
Original line number Original line Diff line number Diff line
@@ -214,8 +214,8 @@ java_defaults {
    libs: ["unsupportedappusage"],
    libs: ["unsupportedappusage"],
    static_libs: [
    static_libs: [
        "androidx.annotation_annotation",
        "androidx.annotation_annotation",
        "modules-utils-build_system",
        "netd_aidl_interface-lateststable-java",
        "netd_aidl_interface-lateststable-java",
        "netlink-client",
        "networkstack-client",
        "networkstack-client",
        "net-utils-framework-common",
        "net-utils-framework-common",
        // See note on statsprotos when adding/updating proto build rules
        // See note on statsprotos when adding/updating proto build rules
@@ -223,6 +223,7 @@ java_defaults {
        "statsprotos",
        "statsprotos",
        "captiveportal-lib",
        "captiveportal-lib",
        "net-utils-device-common",
        "net-utils-device-common",
        "net-utils-device-common-netlink",
    ],
    ],
    plugins: ["java_api_finder"],
    plugins: ["java_api_finder"],
}
}
@@ -278,6 +279,7 @@ filegroup {
    visibility: [
    visibility: [
        "//packages/modules/NetworkStack/tests/unit",
        "//packages/modules/NetworkStack/tests/unit",
        "//packages/modules/NetworkStack/tests/integration",
        "//packages/modules/NetworkStack/tests/integration",
        "//packages/modules/Connectivity/tests:__subpackages__",
        "//packages/modules/Connectivity/Tethering/tests/integration",
        "//packages/modules/Connectivity/Tethering/tests/integration",
    ]
    ]
}
}
+33 −5
Original line number Original line Diff line number Diff line
@@ -16,8 +16,14 @@


package com.android.networkstack.apishim.api29;
package com.android.networkstack.apishim.api29;


import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED;
import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_VPN;
import static android.net.NetworkCapabilities.NET_CAPABILITY_TRUSTED;

import android.content.Context;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.ConnectivityManager.NetworkCallback;
import android.net.ConnectivityManager.NetworkCallback;
import android.net.NetworkCapabilities;
import android.net.NetworkRequest;
import android.net.NetworkRequest;
import android.os.Handler;
import android.os.Handler;


@@ -30,7 +36,10 @@ import com.android.networkstack.apishim.common.UnsupportedApiLevelException;
 * Implementation of {@link ConnectivityManagerShim} for API 29.
 * Implementation of {@link ConnectivityManagerShim} for API 29.
 */
 */
public class ConnectivityManagerShimImpl implements ConnectivityManagerShim {
public class ConnectivityManagerShimImpl implements ConnectivityManagerShim {
    protected ConnectivityManagerShimImpl(Context context) {}
    protected final ConnectivityManager mCm;
    protected ConnectivityManagerShimImpl(Context context) {
        mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    }


    /**
    /**
     * Get a new instance of {@link ConnectivityManagerShim}.
     * Get a new instance of {@link ConnectivityManagerShim}.
@@ -52,12 +61,31 @@ public class ConnectivityManagerShimImpl implements ConnectivityManagerShim {


    /**
    /**
     * See android.net.ConnectivityManager#registerSystemDefaultNetworkCallback
     * See android.net.ConnectivityManager#registerSystemDefaultNetworkCallback
     * @throws UnsupportedApiLevelException if API is not available in this API level.
     */
     */
    @Override
    @Override
    public void registerSystemDefaultNetworkCallback(@NonNull NetworkCallback networkCallback,
    public void registerSystemDefaultNetworkCallback(@NonNull NetworkCallback networkCallback,
            @NonNull Handler handler) throws UnsupportedApiLevelException {
            @NonNull Handler handler) {
        // Not supported for API 29.
        // defaultNetworkRequest is not really a "request", just a way of tracking the system
        throw new UnsupportedApiLevelException("Not supported in API 29.");
        // default network. It's guaranteed not to actually bring up any networks because it
        // should be the same request as the ConnectivityService default request, and thus
        // shares fate with it.  In API <= R, registerSystemDefaultNetworkCallback is not
        // available, and registerDefaultNetworkCallback will not track the system default when
        // a VPN applies to the UID of this process.
        final NetworkRequest defaultNetworkRequest = makeEmptyCapabilitiesRequest()
                .addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED)
                .addCapability(NetworkCapabilities.NET_CAPABILITY_TRUSTED)
                .addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_VPN)
                .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
                .build();
        mCm.requestNetwork(defaultNetworkRequest, networkCallback, handler);
    }

    @NonNull
    protected NetworkRequest.Builder makeEmptyCapabilitiesRequest() {
        // Q does not have clearCapabilities(), so assume the default capabilities are as below
        return new NetworkRequest.Builder()
                .removeCapability(NET_CAPABILITY_NOT_RESTRICTED)
                .removeCapability(NET_CAPABILITY_TRUSTED)
                .removeCapability(NET_CAPABILITY_NOT_VPN);
    }
    }
}
}
+8 −27
Original line number Original line Diff line number Diff line
@@ -16,10 +16,10 @@


package com.android.networkstack.apishim.api30;
package com.android.networkstack.apishim.api30;


import static com.android.modules.utils.build.SdkLevel.isAtLeastR;

import android.content.Context;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.ConnectivityManager.NetworkCallback;
import android.net.ConnectivityManager.NetworkCallback;
import android.net.NetworkCapabilities;
import android.net.NetworkRequest;
import android.net.NetworkRequest;
import android.os.Build;
import android.os.Build;
import android.os.Handler;
import android.os.Handler;
@@ -28,25 +28,24 @@ import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
import androidx.annotation.RequiresApi;


import com.android.networkstack.apishim.common.ConnectivityManagerShim;
import com.android.networkstack.apishim.common.ConnectivityManagerShim;
import com.android.networkstack.apishim.common.ShimUtils;
import com.android.networkstack.apishim.common.UnsupportedApiLevelException;
import com.android.networkstack.apishim.common.UnsupportedApiLevelException;


/**
/**
 * Implementation of {@link ConnectivityManagerShim} for API 30.
 * Implementation of {@link ConnectivityManagerShim} for API 30.
 */
 */
@RequiresApi(Build.VERSION_CODES.R)
public class ConnectivityManagerShimImpl
public class ConnectivityManagerShimImpl
        extends com.android.networkstack.apishim.api29.ConnectivityManagerShimImpl {
        extends com.android.networkstack.apishim.api29.ConnectivityManagerShimImpl {
    protected final ConnectivityManager mCm;
    protected ConnectivityManagerShimImpl(Context context) {
    protected ConnectivityManagerShimImpl(Context context) {
        super(context);
        super(context);
        mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    }
    }


    /**
    /**
     * Get a new instance of {@link ConnectivityManagerShim}.
     * Get a new instance of {@link ConnectivityManagerShim}.
     */
     */
    @RequiresApi(Build.VERSION_CODES.Q)
    public static ConnectivityManagerShim newInstance(Context context) {
    public static ConnectivityManagerShim newInstance(Context context) {
        if (!ShimUtils.isReleaseOrDevelopmentApiAbove(Build.VERSION_CODES.Q)) {
        if (!isAtLeastR()) {
            return com.android.networkstack.apishim.api29.ConnectivityManagerShimImpl
            return com.android.networkstack.apishim.api29.ConnectivityManagerShimImpl
                    .newInstance(context);
                    .newInstance(context);
        }
        }
@@ -65,27 +64,9 @@ public class ConnectivityManagerShimImpl
        throw new UnsupportedApiLevelException("Not supported in API 30.");
        throw new UnsupportedApiLevelException("Not supported in API 30.");
    }
    }


    /**
    @NonNull
     * See android.net.ConnectivityManager#registerSystemDefaultNetworkCallback
     * @throws UnsupportedApiLevelException if API is not available in this API level.
     */
    @Override
    @Override
    @RequiresApi(Build.VERSION_CODES.R)
    protected NetworkRequest.Builder makeEmptyCapabilitiesRequest() {
    public void registerSystemDefaultNetworkCallback(@NonNull NetworkCallback networkCallback,
        return new NetworkRequest.Builder().clearCapabilities();
            @NonNull Handler handler) {
        // defaultNetworkRequest is not really a "request", just a way of tracking the system
        // default network. It's guaranteed not to actually bring up any networks because it
        // should be the same request as the ConnectivityService default request, and thus
        // shares fate with it.  In API <= R, registerSystemDefaultNetworkCallback is not
        // available, and registerDefaultNetworkCallback will not track the system default when
        // a VPN applies to the UID of this process.
        final NetworkRequest defaultNetworkRequest = new NetworkRequest.Builder()
                .clearCapabilities()
                .addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED)
                .addCapability(NetworkCapabilities.NET_CAPABILITY_TRUSTED)
                .addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_VPN)
                .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
                .build();
        mCm.requestNetwork(defaultNetworkRequest, networkCallback, handler);
    }
    }
}
}
+1 −2
Original line number Original line Diff line number Diff line
@@ -42,8 +42,7 @@ public interface ConnectivityManagerShim {


    /** See android.net.ConnectivityManager#registerSystemDefaultNetworkCallback */
    /** See android.net.ConnectivityManager#registerSystemDefaultNetworkCallback */
    void registerSystemDefaultNetworkCallback(
    void registerSystemDefaultNetworkCallback(
            @NonNull NetworkCallback networkCallback, @NonNull Handler handler)
            @NonNull NetworkCallback networkCallback, @NonNull Handler handler);
            throws UnsupportedApiLevelException;


    /** See android.net.ConnectivityManager#registerDefaultNetworkCallbackForUid */
    /** See android.net.ConnectivityManager#registerDefaultNetworkCallbackForUid */
    default void registerDefaultNetworkCallbackForUid(
    default void registerDefaultNetworkCallbackForUid(
+14 −4
Original line number Original line Diff line number Diff line
@@ -21,18 +21,29 @@ package {
    default_applicable_licenses: ["Android-Apache-2.0"],
    default_applicable_licenses: ["Android-Apache-2.0"],
}
}


// TODO: remove this filegroup together with services.net
filegroup {
filegroup {
    name: "net-module-utils-srcs",
    name: "net-module-utils-srcs",
    srcs: [
    srcs: [
        "src/android/net/util/SharedLog.java",
        "src/android/net/shared/NetdUtils.java",
        "src/android/net/shared/NetdUtils.java",
        "src/android/net/shared/NetworkMonitorUtils.java",
        "src/android/net/shared/RouteUtils.java",
        "src/android/net/shared/RouteUtils.java",
        "src/android/net/util/InterfaceParams.java",
        "src/android/net/util/InterfaceParams.java",
        "src/android/net/util/SharedLog.java",
    ],
    ],
    visibility: [
    visibility: [
        "//frameworks/base/services/net",
        "//frameworks/base/services/net",
        "//frameworks/base/packages/Connectivity/service",
    ]
}

filegroup {
    name: "connectivity-module-utils-srcs",
    srcs: [
        "src/android/net/util/SharedLog.java",
        "src/android/net/shared/NetdUtils.java",
        "src/android/net/shared/NetworkMonitorUtils.java",
        "src/android/net/shared/RouteUtils.java",
    ],
    visibility: [
        "//packages/modules/Connectivity/service",
        "//packages/modules/Connectivity/service",
    ]
    ]
}
}
@@ -53,7 +64,6 @@ filegroup {
        "src/android/net/ip/InterfaceController.java",
        "src/android/net/ip/InterfaceController.java",
        "src/android/net/ip/IpNeighborMonitor.java",
        "src/android/net/ip/IpNeighborMonitor.java",
        "src/android/net/ip/NetlinkMonitor.java",
        "src/android/net/ip/NetlinkMonitor.java",
        "src/android/net/netlink/*.java",
        "src/android/net/shared/NetdUtils.java",
        "src/android/net/shared/NetdUtils.java",
        "src/android/net/shared/RouteUtils.java",
        "src/android/net/shared/RouteUtils.java",
        "src/android/net/util/InterfaceParams.java",
        "src/android/net/util/InterfaceParams.java",
Loading