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

Commit b665970f authored by Chiachang Wang's avatar Chiachang Wang
Browse files

Add permission check for CaptivePortal#reevaluateNetwork

CaptivePortal#reevaluateNetwork is added as a system API which
requires a proper permission check.

Bug: 148379628
Test: Manually check with captive portal
Test: atest FrameworksNetTests
Test: make test-api-stubs-docs-update-current-api \
      system-api-stubs-docs-update-current-api

Change-Id: I3f974339d5bd53a6f6ecb0842c02a8264dc3a5f9
Merged-In: I559d42089aeb09801d14c251c5165fca793c3cb3
parent d643862a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -4361,7 +4361,7 @@ package android.net {
  public class CaptivePortal implements android.os.Parcelable {
    method public void logEvent(int, @NonNull String);
    method public void reevaluateNetwork();
    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void reevaluateNetwork();
    method public void useNetwork();
    field public static final int APP_REQUEST_REEVALUATION_REQUIRED = 100; // 0x64
    field public static final int APP_RETURN_DISMISSED = 0; // 0x0
+1 −1
Original line number Diff line number Diff line
@@ -1398,7 +1398,7 @@ package android.net {

  public class CaptivePortal implements android.os.Parcelable {
    method public void logEvent(int, @NonNull String);
    method public void reevaluateNetwork();
    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void reevaluateNetwork();
    method public void useNetwork();
    field public static final int APP_REQUEST_REEVALUATION_REQUIRED = 100; // 0x64
    field public static final int APP_RETURN_DISMISSED = 0; // 0x0
+2 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
package android.net;

import android.annotation.NonNull;
import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.os.IBinder;
@@ -153,6 +154,7 @@ public class CaptivePortal implements Parcelable {
     */
    @SystemApi
    @TestApi
    @RequiresPermission(android.Manifest.permission.NETWORK_STACK)
    public void reevaluateNetwork() {
        try {
            ICaptivePortal.Stub.asInterface(mBinder).appRequest(APP_REQUEST_REEVALUATION_REQUIRED);
+1 −0
Original line number Diff line number Diff line
@@ -3744,6 +3744,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
            if (nm == null) return;

            if (request == CaptivePortal.APP_REQUEST_REEVALUATION_REQUIRED) {
                checkNetworkStackPermission();
                nm.forceReevaluation(Binder.getCallingUid());
            }
        }