Merge branch '2407-bluetooth-permission' into 'master'

Always check Bluetooth permission when trying to get own address

Closes #2407

See merge request briar/briar!1753
This commit is contained in:
akwizgran
2022-12-28 11:07:31 +00:00
2 changed files with 9 additions and 8 deletions

View File

@@ -65,6 +65,9 @@ public class AndroidUtils {
public static Pair<String, String> getBluetoothAddressAndMethod(Context ctx, public static Pair<String, String> getBluetoothAddressAndMethod(Context ctx,
BluetoothAdapter adapter) { BluetoothAdapter adapter) {
// If we don't have permission to access the adapter's address, let
// the caller know we can't find it
if (!hasBtConnectPermission(ctx)) return new Pair<>("", "");
// Return the adapter's address if it's valid and not fake // Return the adapter's address if it's valid and not fake
@SuppressLint("HardwareIds") @SuppressLint("HardwareIds")
String address = adapter.getAddress(); String address = adapter.getAddress();

View File

@@ -310,14 +310,12 @@ class BriarReportCollector {
btLeAdvertise); btLeAdvertise);
} }
if (hasBtConnectPermission(ctx)) { Pair<String, String> p = getBluetoothAddressAndMethod(ctx, bt);
Pair<String, String> p = getBluetoothAddressAndMethod(ctx, bt); String address = p.getFirst();
String address = p.getFirst(); String method = p.getSecond();
String method = p.getSecond(); connectivityInfo.add("BluetoothAddress",
connectivityInfo.add("BluetoothAddress", scrubMacAddress(address));
scrubMacAddress(address)); connectivityInfo.add("BluetoothAddressMethod", method);
connectivityInfo.add("BluetoothAddressMethod", method);
}
} }
return new ReportItem("Connectivity", R.string.dev_report_connectivity, return new ReportItem("Connectivity", R.string.dev_report_connectivity,
connectivityInfo); connectivityInfo);