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

Commit a818c640 authored by William Escande's avatar William Escande
Browse files

BleScan: Enforce SCAN instead of CONNECT

When enquiring about scan, we want to check SCAN permission and not
CONNECT

Bug: 349682934
Test: m com.android.btservices
Flag: Exempt refactor to address errorprone error
Change-Id: Ifc33a3f5c92a67dbc6d64dfc3a24535bb5963383
parent afbba346
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -174,7 +174,7 @@ interface IBluetoothGatt {
                            in boolean confirm, in byte[] value, in AttributionSource attributionSource);
    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)")
    void disconnectAll(in AttributionSource attributionSource);
    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)")
    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)")
    int numHwTrackFiltersAvailable(in AttributionSource attributionSource);
    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)")
    void leSubrateRequest(in int clientIf, in String address, in int subrateMin, in int subrateMax, in int maxLatency,
+1 −1
Original line number Diff line number Diff line
@@ -58,6 +58,6 @@ interface IBluetoothScan {
    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)")
    void transferSetInfo(in BluetoothDevice bda, in int serviceData, in int advertisingHandle, in IPeriodicAdvertisingCallback callback,  in AttributionSource attributionSource);

    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)")
    @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)")
    int numHwTrackFiltersAvailable(in AttributionSource attributionSource);
}
+2 −3
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.bluetooth.le_scan;

import static android.Manifest.permission.BLUETOOTH_CONNECT;
import static android.Manifest.permission.BLUETOOTH_PRIVILEGED;
import static android.Manifest.permission.BLUETOOTH_SCAN;
import static android.Manifest.permission.UPDATE_DEVICE_STATS;
@@ -1434,9 +1433,9 @@ public class TransitionalScanHelper {
        mPeriodicScanManager.transferSetInfo(bda, serviceData, advHandle, callback);
    }

    @RequiresPermission(BLUETOOTH_CONNECT)
    @RequiresPermission(BLUETOOTH_SCAN)
    public int numHwTrackFiltersAvailable(AttributionSource attributionSource) {
        if (!Utils.checkConnectPermissionForDataDelivery(
        if (!Utils.checkScanPermissionForDataDelivery(
                mContext, attributionSource, "ScanHelper numHwTrackFiltersAvailable")) {
            return 0;
        }
+1 −1
Original line number Diff line number Diff line
@@ -2771,7 +2771,7 @@ public final class BluetoothAdapter {
     * @hide
     */
    @RequiresBluetoothConnectPermission
    @RequiresPermission(BLUETOOTH_CONNECT)
    @RequiresPermission(BLUETOOTH_SCAN)
    public boolean isHardwareTrackingFiltersAvailable() {
        if (!getLeAccess()) {
            return false;
+1 −2
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package android.bluetooth.le;

import static android.Manifest.permission.BLUETOOTH_CONNECT;
import static android.Manifest.permission.BLUETOOTH_SCAN;
import static android.Manifest.permission.UPDATE_DEVICE_STATS;

@@ -713,7 +712,7 @@ public final class BluetoothLeScanner {
        return true;
    }

    @RequiresPermission(BLUETOOTH_CONNECT)
    @RequiresPermission(BLUETOOTH_SCAN)
    private boolean isHardwareResourcesAvailableForScan(ScanSettings settings) {
        final int callbackType = settings.getCallbackType();
        if ((callbackType & ScanSettings.CALLBACK_TYPE_FIRST_MATCH) != 0
Loading