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

Commit cb2274c6 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "Accept MAINLINE_NETWORK_STACK permission on register/unregister network...

Merge "Accept MAINLINE_NETWORK_STACK permission on register/unregister network provider" am: 63e5bd6b am: 21f01098 am: 305ecb9a

Change-Id: I4a136c90efcbea371a0e4b720c1a54584c52eefe
parents 2858bacf 305ecb9a
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -6089,7 +6089,7 @@ package android.net {
    method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl();
    method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_SETTINGS) public String getCaptivePortalServerUrl();
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void getLatestTetheringEntitlementResult(int, boolean, @NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEntitlementResultListener);
    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported();
    method @Deprecated @RequiresPermission(anyOf={android.Manifest.permission.TETHER_PRIVILEGED, android.Manifest.permission.WRITE_SETTINGS}) public boolean isTetheringSupported();
    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public int registerNetworkProvider(@NonNull android.net.NetworkProvider);
    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_FACTORY}) public int registerNetworkProvider(@NonNull android.net.NetworkProvider);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void registerTetheringEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
    method @Deprecated public void requestNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, int, int, @NonNull android.os.Handler);
    method @Deprecated public void requestNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, int, int, @NonNull android.os.Handler);
    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_AIRPLANE_MODE, android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void setAirplaneMode(boolean);
    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_AIRPLANE_MODE, android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK}) public void setAirplaneMode(boolean);
@@ -6098,7 +6098,7 @@ package android.net {
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback, android.os.Handler);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int, boolean, android.net.ConnectivityManager.OnStartTetheringCallback, android.os.Handler);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void stopTethering(int);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void stopTethering(int);
    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void unregisterNetworkProvider(@NonNull android.net.NetworkProvider);
    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_FACTORY}) public void unregisterNetworkProvider(@NonNull android.net.NetworkProvider);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void unregisterTetheringEventCallback(@NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
    method @Deprecated @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void unregisterTetheringEventCallback(@NonNull android.net.ConnectivityManager.OnTetheringEventCallback);
    field public static final String EXTRA_CAPTIVE_PORTAL_PROBE_SPEC = "android.net.extra.CAPTIVE_PORTAL_PROBE_SPEC";
    field public static final String EXTRA_CAPTIVE_PORTAL_PROBE_SPEC = "android.net.extra.CAPTIVE_PORTAL_PROBE_SPEC";
    field public static final String EXTRA_CAPTIVE_PORTAL_USER_AGENT = "android.net.extra.CAPTIVE_PORTAL_USER_AGENT";
    field public static final String EXTRA_CAPTIVE_PORTAL_USER_AGENT = "android.net.extra.CAPTIVE_PORTAL_USER_AGENT";
+21 −7
Original line number Original line Diff line number Diff line
@@ -3244,7 +3244,9 @@ public class ConnectivityManager {


    /** {@hide} - returns the factory serial number */
    /** {@hide} - returns the factory serial number */
    @UnsupportedAppUsage
    @UnsupportedAppUsage
    @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_FACTORY})
    public int registerNetworkFactory(Messenger messenger, String name) {
    public int registerNetworkFactory(Messenger messenger, String name) {
        try {
        try {
            return mService.registerNetworkFactory(messenger, name);
            return mService.registerNetworkFactory(messenger, name);
@@ -3255,7 +3257,9 @@ public class ConnectivityManager {


    /** {@hide} */
    /** {@hide} */
    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023)
    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023)
    @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_FACTORY})
    public void unregisterNetworkFactory(Messenger messenger) {
    public void unregisterNetworkFactory(Messenger messenger) {
        try {
        try {
            mService.unregisterNetworkFactory(messenger);
            mService.unregisterNetworkFactory(messenger);
@@ -3275,7 +3279,9 @@ public class ConnectivityManager {
     * @hide
     * @hide
     */
     */
    @SystemApi
    @SystemApi
    @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_FACTORY})
    public int registerNetworkProvider(@NonNull NetworkProvider provider) {
    public int registerNetworkProvider(@NonNull NetworkProvider provider) {
        if (provider.getProviderId() != NetworkProvider.ID_NONE) {
        if (provider.getProviderId() != NetworkProvider.ID_NONE) {
            throw new IllegalStateException("NetworkProviders can only be registered once");
            throw new IllegalStateException("NetworkProviders can only be registered once");
@@ -3298,7 +3304,9 @@ public class ConnectivityManager {
     * @hide
     * @hide
     */
     */
    @SystemApi
    @SystemApi
    @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_FACTORY})
    public void unregisterNetworkProvider(@NonNull NetworkProvider provider) {
    public void unregisterNetworkProvider(@NonNull NetworkProvider provider) {
        try {
        try {
            mService.unregisterNetworkProvider(provider.getMessenger());
            mService.unregisterNetworkProvider(provider.getMessenger());
@@ -3310,7 +3318,9 @@ public class ConnectivityManager {




    /** @hide exposed via the NetworkProvider class. */
    /** @hide exposed via the NetworkProvider class. */
    @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_FACTORY})
    public void declareNetworkRequestUnfulfillable(@NonNull NetworkRequest request) {
    public void declareNetworkRequestUnfulfillable(@NonNull NetworkRequest request) {
        try {
        try {
            mService.declareNetworkRequestUnfulfillable(request);
            mService.declareNetworkRequestUnfulfillable(request);
@@ -3328,7 +3338,9 @@ public class ConnectivityManager {
     * Register a NetworkAgent with ConnectivityService.
     * Register a NetworkAgent with ConnectivityService.
     * @return Network corresponding to NetworkAgent.
     * @return Network corresponding to NetworkAgent.
     */
     */
    @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_FACTORY})
    public Network registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp,
    public Network registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp,
            NetworkCapabilities nc, int score, NetworkAgentConfig config) {
            NetworkCapabilities nc, int score, NetworkAgentConfig config) {
        return registerNetworkAgent(messenger, ni, lp, nc, score, config, NetworkProvider.ID_NONE);
        return registerNetworkAgent(messenger, ni, lp, nc, score, config, NetworkProvider.ID_NONE);
@@ -3339,7 +3351,9 @@ public class ConnectivityManager {
     * Register a NetworkAgent with ConnectivityService.
     * Register a NetworkAgent with ConnectivityService.
     * @return Network corresponding to NetworkAgent.
     * @return Network corresponding to NetworkAgent.
     */
     */
    @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_FACTORY})
    public Network registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp,
    public Network registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp,
            NetworkCapabilities nc, int score, NetworkAgentConfig config, int providerId) {
            NetworkCapabilities nc, int score, NetworkAgentConfig config, int providerId) {
        try {
        try {
+2 −2
Original line number Original line Diff line number Diff line
@@ -2092,9 +2092,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
    }
    }


    private void enforceNetworkFactoryPermission() {
    private void enforceNetworkFactoryPermission() {
        mContext.enforceCallingOrSelfPermission(
        enforceAnyPermissionOf(
                android.Manifest.permission.NETWORK_FACTORY,
                android.Manifest.permission.NETWORK_FACTORY,
                "ConnectivityService");
                NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
    }
    }


    private boolean checkSettingsPermission() {
    private boolean checkSettingsPermission() {