summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2020-10-21 18:08:47 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2020-10-21 18:08:47 +0000
commitd331e4a18f4dbd70b2b67a80d8f0ba3bcb97fab1 (patch)
tree9b4e8426586d837bedb497985a16a45cbee26cc1
parenta12a2ffdfd018abb99c5c8dc5e81d29ea3f7751c (diff)
parent23b3bc98eb05171efa0ce2390a584b1a9f777d11 (diff)
downloadwifi-d331e4a18f4dbd70b2b67a80d8f0ba3bcb97fab1.tar.gz
Snap for 6921388 from 23b3bc98eb05171efa0ce2390a584b1a9f777d11 to qt-aml-tzdata-release
Change-Id: I1f33d9b134660b5daab4737af8cd0bbb4eba1d75
-rw-r--r--service/java/com/android/server/wifi/WifiConfigManager.java8
-rw-r--r--service/java/com/android/server/wifi/hotspot2/PasspointManager.java43
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiConfigManagerTest.java4
-rw-r--r--tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java114
4 files changed, 11 insertions, 158 deletions
diff --git a/service/java/com/android/server/wifi/WifiConfigManager.java b/service/java/com/android/server/wifi/WifiConfigManager.java
index 9472367fb..8dcd1c19d 100644
--- a/service/java/com/android/server/wifi/WifiConfigManager.java
+++ b/service/java/com/android/server/wifi/WifiConfigManager.java
@@ -830,7 +830,13 @@ public class WifiConfigManager {
maskPasswordsInWifiConfiguration(broadcastNetwork);
intent.putExtra(WifiManager.EXTRA_WIFI_CONFIGURATION, broadcastNetwork);
intent.putExtra(WifiManager.EXTRA_CHANGE_REASON, reason);
- mContext.sendBroadcastAsUser(intent, UserHandle.ALL);
+ mContext.sendBroadcastAsUserMultiplePermissions(
+ intent,
+ UserHandle.ALL,
+ new String[]{
+ android.Manifest.permission.ACCESS_WIFI_STATE,
+ android.Manifest.permission.ACCESS_FINE_LOCATION,
+ });
}
/**
diff --git a/service/java/com/android/server/wifi/hotspot2/PasspointManager.java b/service/java/com/android/server/wifi/hotspot2/PasspointManager.java
index 172d1a13d..4fce55674 100644
--- a/service/java/com/android/server/wifi/hotspot2/PasspointManager.java
+++ b/service/java/com/android/server/wifi/hotspot2/PasspointManager.java
@@ -17,16 +17,6 @@
package com.android.server.wifi.hotspot2;
import static android.app.AppOpsManager.OPSTR_CHANGE_WIFI_STATE;
-import static android.net.wifi.WifiManager.ACTION_PASSPOINT_DEAUTH_IMMINENT;
-import static android.net.wifi.WifiManager.ACTION_PASSPOINT_ICON;
-import static android.net.wifi.WifiManager.ACTION_PASSPOINT_SUBSCRIPTION_REMEDIATION;
-import static android.net.wifi.WifiManager.EXTRA_BSSID_LONG;
-import static android.net.wifi.WifiManager.EXTRA_DELAY;
-import static android.net.wifi.WifiManager.EXTRA_ESS;
-import static android.net.wifi.WifiManager.EXTRA_FILENAME;
-import static android.net.wifi.WifiManager.EXTRA_ICON;
-import static android.net.wifi.WifiManager.EXTRA_SUBSCRIPTION_REMEDIATION_METHOD;
-import static android.net.wifi.WifiManager.EXTRA_URL;
import static com.android.server.wifi.hotspot2.Utils.isCarrierEapMethod;
@@ -34,8 +24,6 @@ import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.AppOpsManager;
import android.content.Context;
-import android.content.Intent;
-import android.graphics.drawable.Icon;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiEnterpriseConfig;
@@ -48,7 +36,6 @@ import android.net.wifi.hotspot2.pps.HomeSp;
import android.os.Handler;
import android.os.Looper;
import android.os.Process;
-import android.os.UserHandle;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
@@ -164,38 +151,12 @@ public class PasspointManager {
@Override
public void onIconResponse(long bssid, String fileName, byte[] data) {
- Intent intent = new Intent(ACTION_PASSPOINT_ICON);
- intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT);
- intent.putExtra(EXTRA_BSSID_LONG, bssid);
- intent.putExtra(EXTRA_FILENAME, fileName);
- if (data != null) {
- intent.putExtra(EXTRA_ICON, Icon.createWithData(data, 0, data.length));
- }
- mContext.sendBroadcastAsUser(intent, UserHandle.ALL,
- android.Manifest.permission.ACCESS_WIFI_STATE);
+ // Empty
}
@Override
public void onWnmFrameReceived(WnmData event) {
- // %012x HS20-SUBSCRIPTION-REMEDIATION "%u %s", osu_method, url
- // %012x HS20-DEAUTH-IMMINENT-NOTICE "%u %u %s", code, reauth_delay, url
- Intent intent;
- if (event.isDeauthEvent()) {
- intent = new Intent(ACTION_PASSPOINT_DEAUTH_IMMINENT);
- intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT);
- intent.putExtra(EXTRA_BSSID_LONG, event.getBssid());
- intent.putExtra(EXTRA_URL, event.getUrl());
- intent.putExtra(EXTRA_ESS, event.isEss());
- intent.putExtra(EXTRA_DELAY, event.getDelay());
- } else {
- intent = new Intent(ACTION_PASSPOINT_SUBSCRIPTION_REMEDIATION);
- intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT);
- intent.putExtra(EXTRA_BSSID_LONG, event.getBssid());
- intent.putExtra(EXTRA_SUBSCRIPTION_REMEDIATION_METHOD, event.getMethod());
- intent.putExtra(EXTRA_URL, event.getUrl());
- }
- mContext.sendBroadcastAsUser(intent, UserHandle.ALL,
- android.Manifest.permission.ACCESS_WIFI_STATE);
+ // Empty
}
}
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiConfigManagerTest.java b/tests/wifitests/src/com/android/server/wifi/WifiConfigManagerTest.java
index 6a7785e5e..0f48af9cc 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiConfigManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiConfigManagerTest.java
@@ -4899,8 +4899,8 @@ public class WifiConfigManagerTest {
private int verifyNetworkInBroadcastAndReturnReason(WifiConfiguration configuration) {
ArgumentCaptor<Intent> intentCaptor = ArgumentCaptor.forClass(Intent.class);
ArgumentCaptor<UserHandle> userHandleCaptor = ArgumentCaptor.forClass(UserHandle.class);
- mContextConfigStoreMockOrder.verify(mContext)
- .sendBroadcastAsUser(intentCaptor.capture(), userHandleCaptor.capture());
+ mContextConfigStoreMockOrder.verify(mContext).sendBroadcastAsUserMultiplePermissions(
+ intentCaptor.capture(), userHandleCaptor.capture(), any());
assertEquals(userHandleCaptor.getValue(), UserHandle.ALL);
Intent intent = intentCaptor.getValue();
diff --git a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java
index 131425af8..c7d6604eb 100644
--- a/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/hotspot2/PasspointManagerTest.java
@@ -18,16 +18,6 @@ package com.android.server.wifi.hotspot2;
import static android.app.AppOpsManager.MODE_IGNORED;
import static android.app.AppOpsManager.OPSTR_CHANGE_WIFI_STATE;
-import static android.net.wifi.WifiManager.ACTION_PASSPOINT_DEAUTH_IMMINENT;
-import static android.net.wifi.WifiManager.ACTION_PASSPOINT_ICON;
-import static android.net.wifi.WifiManager.ACTION_PASSPOINT_SUBSCRIPTION_REMEDIATION;
-import static android.net.wifi.WifiManager.EXTRA_BSSID_LONG;
-import static android.net.wifi.WifiManager.EXTRA_DELAY;
-import static android.net.wifi.WifiManager.EXTRA_ESS;
-import static android.net.wifi.WifiManager.EXTRA_FILENAME;
-import static android.net.wifi.WifiManager.EXTRA_ICON;
-import static android.net.wifi.WifiManager.EXTRA_SUBSCRIPTION_REMEDIATION_METHOD;
-import static android.net.wifi.WifiManager.EXTRA_URL;
import static org.hamcrest.collection.IsIterableContainingInAnyOrder.containsInAnyOrder;
import static org.junit.Assert.assertEquals;
@@ -55,7 +45,6 @@ import static org.mockito.MockitoAnnotations.initMocks;
import android.app.AppOpsManager;
import android.content.Context;
import android.content.Intent;
-import android.graphics.drawable.Icon;
import android.net.Uri;
import android.net.wifi.EAPConstants;
import android.net.wifi.ScanResult;
@@ -131,7 +120,6 @@ import java.util.Set;
public class PasspointManagerTest {
private static final long BSSID = 0x112233445566L;
private static final String TEST_PACKAGE = "com.android.test";
- private static final String ICON_FILENAME = "test";
private static final String TEST_FQDN = "test1.test.com";
private static final String TEST_FQDN2 = "test2.test.com";
private static final String TEST_FRIENDLY_NAME = "friendly name";
@@ -238,30 +226,6 @@ public class PasspointManagerTest {
}
/**
- * Verify {@link WifiManager#ACTION_PASSPOINT_ICON} broadcast intent.
- * @param bssid BSSID of the AP
- * @param fileName Name of the icon file
- * @param data icon data byte array
- */
- private void verifyIconIntent(long bssid, String fileName, byte[] data) {
- ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class);
- verify(mContext).sendBroadcastAsUser(intent.capture(), eq(UserHandle.ALL),
- eq(android.Manifest.permission.ACCESS_WIFI_STATE));
- assertEquals(ACTION_PASSPOINT_ICON, intent.getValue().getAction());
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_BSSID_LONG));
- assertEquals(bssid, intent.getValue().getExtras().getLong(EXTRA_BSSID_LONG));
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_FILENAME));
- assertEquals(fileName, intent.getValue().getExtras().getString(EXTRA_FILENAME));
- if (data != null) {
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_ICON));
- Icon icon = (Icon) intent.getValue().getExtras().getParcelable(EXTRA_ICON);
- assertTrue(Arrays.equals(data, icon.getDataBytes()));
- } else {
- assertFalse(intent.getValue().getExtras().containsKey(EXTRA_ICON));
- }
- }
-
- /**
* Verify that the given Passpoint configuration matches the one that's added to
* the PasspointManager.
*
@@ -503,84 +467,6 @@ public class PasspointManagerTest {
}
/**
- * Validate the broadcast intent when icon file retrieval succeeded.
- *
- * @throws Exception
- */
- @Test
- public void iconResponseSuccess() throws Exception {
- byte[] iconData = new byte[] {0x00, 0x11};
- mCallbacks.onIconResponse(BSSID, ICON_FILENAME, iconData);
- verifyIconIntent(BSSID, ICON_FILENAME, iconData);
- }
-
- /**
- * Validate the broadcast intent when icon file retrieval failed.
- *
- * @throws Exception
- */
- @Test
- public void iconResponseFailure() throws Exception {
- mCallbacks.onIconResponse(BSSID, ICON_FILENAME, null);
- verifyIconIntent(BSSID, ICON_FILENAME, null);
- }
-
- /**
- * Validate the broadcast intent {@link WifiManager#ACTION_PASSPOINT_DEAUTH_IMMINENT} when
- * Deauth Imminent WNM frame is received.
- *
- * @throws Exception
- */
- @Test
- public void onDeauthImminentReceived() throws Exception {
- String reasonUrl = "test.com";
- int delay = 123;
- boolean ess = true;
-
- mCallbacks.onWnmFrameReceived(new WnmData(BSSID, reasonUrl, ess, delay));
- // Verify the broadcast intent.
- ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class);
- verify(mContext).sendBroadcastAsUser(intent.capture(), eq(UserHandle.ALL),
- eq(android.Manifest.permission.ACCESS_WIFI_STATE));
- assertEquals(ACTION_PASSPOINT_DEAUTH_IMMINENT, intent.getValue().getAction());
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_BSSID_LONG));
- assertEquals(BSSID, intent.getValue().getExtras().getLong(EXTRA_BSSID_LONG));
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_ESS));
- assertEquals(ess, intent.getValue().getExtras().getBoolean(EXTRA_ESS));
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_DELAY));
- assertEquals(delay, intent.getValue().getExtras().getInt(EXTRA_DELAY));
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_URL));
- assertEquals(reasonUrl, intent.getValue().getExtras().getString(EXTRA_URL));
- }
-
- /**
- * Validate the broadcast intent {@link WifiManager#ACTION_PASSPOINT_SUBSCRIPTION_REMEDIATION}
- * when Subscription Remediation WNM frame is received.
- *
- * @throws Exception
- */
- @Test
- public void onSubscriptionRemediationReceived() throws Exception {
- int serverMethod = 1;
- String serverUrl = "testUrl";
-
- mCallbacks.onWnmFrameReceived(new WnmData(BSSID, serverUrl, serverMethod));
- // Verify the broadcast intent.
- ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class);
- verify(mContext).sendBroadcastAsUser(intent.capture(), eq(UserHandle.ALL),
- eq(android.Manifest.permission.ACCESS_WIFI_STATE));
- assertEquals(ACTION_PASSPOINT_SUBSCRIPTION_REMEDIATION, intent.getValue().getAction());
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_BSSID_LONG));
- assertEquals(BSSID, intent.getValue().getExtras().getLong(EXTRA_BSSID_LONG));
- assertTrue(intent.getValue().getExtras().containsKey(
- EXTRA_SUBSCRIPTION_REMEDIATION_METHOD));
- assertEquals(serverMethod, intent.getValue().getExtras().getInt(
- EXTRA_SUBSCRIPTION_REMEDIATION_METHOD));
- assertTrue(intent.getValue().getExtras().containsKey(EXTRA_URL));
- assertEquals(serverUrl, intent.getValue().getExtras().getString(EXTRA_URL));
- }
-
- /**
* Verify that adding a provider with a null configuration will fail.
*
* @throws Exception