From f0f7d72bdc3b78eb27272a15e1e8c19e4d8e1558 Mon Sep 17 00:00:00 2001 From: Michael Groover Date: Mon, 31 Oct 2022 13:40:27 -0500 Subject: [PATCH] Add unaudited exported flag to exposed runtime receivers Android T allows apps to declare a runtime receiver as not exported by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag; receivers registered with this flag will only receive broadcasts from the platform and the app itself. However to ensure developers can properly protect their receivers, all apps targeting U or later registering a receiver for non-system broadcasts must specify either the exported or not exported flag when invoking #registerReceiver; if one of these flags is not provided, the platform will throw a SecurityException. This commit updates all the exposed receivers with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing behavior of exporting the receiver while also flagging the receiver for audit before the U release. Bug: 234659204 Test: Build Change-Id: Id194a03a1d42302058b1f4af814a5caa22771600 --- .../connectivitymanagertest/ConnectivityManagerTestBase.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/ConnectivityManagerTestBase.java b/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/ConnectivityManagerTestBase.java index 100eb999f5928..b3af89555df88 100644 --- a/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/ConnectivityManagerTestBase.java +++ b/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/ConnectivityManagerTestBase.java @@ -145,7 +145,8 @@ public class ConnectivityManagerTestBase extends InstrumentationTestCase { mIntentFilter.addAction(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION); mIntentFilter.addAction(WifiManager.WIFI_AP_STATE_CHANGED_ACTION); mIntentFilter.addAction(TetheringManager.ACTION_TETHER_STATE_CHANGED); - mContext.registerReceiver(mWifiReceiver, mIntentFilter); + mContext.registerReceiver(mWifiReceiver, mIntentFilter, + Context.RECEIVER_EXPORTED_UNAUDITED); logv("Clear Wifi before we start the test."); removeConfiguredNetworksAndDisableWifi();