Use NETWORK_STACK permission for broadcast receivers

Use the NETWORK_STACK permission instead of null when registering
broadcast receivers in ConnectivityService, PermissionMonitor and
BroadcastReceiveHelper.
This ensures that only components with the NETWORK_STACK permission
can send these protected broadcasts, improving system security.
Tests were updated to reflect the new permission requirement.

Flag: EXEMPT trivial change
Test: atest ConnectivityCoverageTests:android.net.connectivity.com.android.server.connectivity.BroadcastReceiveHelperTest \
      ConnectivityCoverageTests:android.net.connectivity.com.android.server.connectivity.PermissionMonitorTest \
      --update-device
Fix: 425828059
Change-Id: I9761f9f454751761b346e255aac0d1c7d7a7e30c
This commit is contained in:
Junyu Lai 2025-06-28 02:34:14 +08:00
commit ca5a062321

View file

@ -2174,7 +2174,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
final IntentFilter dataSaverIntentFilter =
new IntentFilter(ACTION_RESTRICT_BACKGROUND_CHANGED);
mUserAllContext.registerReceiver(mDataSaverReceiver, dataSaverIntentFilter,
null /* broadcastPermission */, mHandler);
android.Manifest.permission.NETWORK_STACK, mHandler);
}
// TrackMultiNetworkActivities feature should be enabled by trunk stable flag.