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

Commit 14e66e83 authored by Ashwini Oruganti's avatar Ashwini Oruganti Committed by Android (Google) Code Review
Browse files

Merge "Bluetooth: Mark unaudited PendingIntents with FLAG_MUTABLE_UNAUDITED"

parents 646a66ac 204a26a1
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -2859,8 +2859,11 @@ public class AdapterService extends Service {
                    : AlarmManager.ELAPSED_REALTIME;

            Intent intent = new Intent(ACTION_ALARM_WAKEUP);
            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
            mPendingAlarm =
                    PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_ONE_SHOT);
                    PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_ONE_SHOT
                            | PendingIntent.FLAG_MUTABLE_UNAUDITED);
            mAlarmManager.setExact(type, wakeupTime, mPendingAlarm);
            return true;
        }
+4 −1
Original line number Diff line number Diff line
@@ -539,7 +539,10 @@ public class ScanManager {

            mAlarmManager = (AlarmManager) mService.getSystemService(Context.ALARM_SERVICE);
            Intent batchIntent = new Intent(ACTION_REFRESH_BATCHED_SCAN, null);
            mBatchScanIntervalIntent = PendingIntent.getBroadcast(mService, 0, batchIntent, 0);
            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
            mBatchScanIntervalIntent = PendingIntent.getBroadcast(mService, 0, batchIntent,
                    PendingIntent.FLAG_MUTABLE_UNAUDITED);
            IntentFilter filter = new IntentFilter();
            filter.addAction(ACTION_REFRESH_BATCHED_SCAN);
            mBatchAlarmReceiver = new BroadcastReceiver() {
+12 −3
Original line number Diff line number Diff line
@@ -2856,8 +2856,11 @@ public class BluetoothMapContentObserver {
                sentIntent.putExtra(EXTRA_MESSAGE_SENT_TRANSPARENT, transparent);
                sentIntent.putExtra(EXTRA_MESSAGE_SENT_RETRY, retry);
                //sentIntent.setDataAndNormalize(btMmsUri);
                // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                PendingIntent pendingSendIntent =
                        PendingIntent.getBroadcast(mContext, 0, sentIntent, 0);
                        PendingIntent.getBroadcast(mContext, 0, sentIntent,
                                PendingIntent.FLAG_MUTABLE_UNAUDITED);
                SmsManager.getDefault()
                        .sendMultimediaMessage(mContext, btMmsUri, null/*locationUrl*/,
                                null/*configOverrides*/,
@@ -3204,9 +3207,12 @@ public class BluetoothMapContentObserver {
                        "message/" + Long.toString(msgInfo.id) + msgInfo.timestamp + i);
                intentDelivery.putExtra(EXTRA_MESSAGE_SENT_HANDLE, msgInfo.id);
                intentDelivery.putExtra(EXTRA_MESSAGE_SENT_TIMESTAMP, msgInfo.timestamp);
                // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                PendingIntent pendingIntentDelivery =
                        PendingIntent.getBroadcast(mContext, 0, intentDelivery,
                                PendingIntent.FLAG_UPDATE_CURRENT);
                                PendingIntent.FLAG_UPDATE_CURRENT
                                | PendingIntent.FLAG_MUTABLE_UNAUDITED);

                intentSent = new Intent(ACTION_MESSAGE_SENT, null);
                /* Add msgId and part number to ensure the intents are different, and we
@@ -3219,9 +3225,12 @@ public class BluetoothMapContentObserver {
                intentSent.putExtra(EXTRA_MESSAGE_SENT_RETRY, msgInfo.retry);
                intentSent.putExtra(EXTRA_MESSAGE_SENT_TRANSPARENT, msgInfo.transparent);

                // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                PendingIntent pendingIntentSent =
                        PendingIntent.getBroadcast(mContext, 0, intentSent,
                                PendingIntent.FLAG_UPDATE_CURRENT);
                                PendingIntent.FLAG_UPDATE_CURRENT
                                | PendingIntent.FLAG_MUTABLE_UNAUDITED);

                // We use the same pending intent for all parts, but do not set the one shot flag.
                deliveryIntents.add(pendingIntentDelivery);
+8 −2
Original line number Diff line number Diff line
@@ -950,7 +950,10 @@ public class BluetoothMapService extends ProfileService {
        }
        mRemoveTimeoutMsg = true;
        Intent timeoutIntent = new Intent(USER_CONFIRM_TIMEOUT_ACTION);
        PendingIntent pIntent = PendingIntent.getBroadcast(this, 0, timeoutIntent, 0);
        // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
        // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
        PendingIntent pIntent = PendingIntent.getBroadcast(this, 0, timeoutIntent,
                PendingIntent.FLAG_MUTABLE_UNAUDITED);
        mAlarmManager.set(AlarmManager.RTC_WAKEUP,
                System.currentTimeMillis() + USER_CONFIRM_TIMEOUT_VALUE, pIntent);
    }
@@ -960,7 +963,10 @@ public class BluetoothMapService extends ProfileService {
            Log.d(TAG, "cancelUserTimeOutAlarm()");
        }
        Intent timeoutIntent = new Intent(USER_CONFIRM_TIMEOUT_ACTION);
        PendingIntent pIntent = PendingIntent.getBroadcast(this, 0, timeoutIntent, 0);
        // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
        // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
        PendingIntent pIntent = PendingIntent.getBroadcast(this, 0, timeoutIntent,
                PendingIntent.FLAG_MUTABLE_UNAUDITED);
        pIntent.cancel();

        AlarmManager alarmManager = (AlarmManager) this.getSystemService(Context.ALARM_SERVICE);
+36 −11
Original line number Diff line number Diff line
@@ -390,7 +390,10 @@ class BluetoothOppNotification {
            intent.setClassName(Constants.THIS_PACKAGE_NAME, BluetoothOppReceiver.class.getName());
            intent.setDataAndNormalize(Uri.parse(BluetoothShare.CONTENT_URI + "/" + item.id));

            b.setContentIntent(PendingIntent.getBroadcast(mContext, 0, intent, 0));
            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
            b.setContentIntent(PendingIntent.getBroadcast(mContext, 0, intent,
                        PendingIntent.FLAG_MUTABLE_UNAUDITED));
            mNotificationMgr.notify(NOTIFICATION_ID_PROGRESS, b.build());
        }
    }
@@ -457,10 +460,14 @@ class BluetoothOppNotification {
                                            com.android.internal.R.color
                                                    .system_notification_accent_color,
                                            mContext.getTheme()))
                            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                            .setContentIntent(
                                    PendingIntent.getBroadcast(mContext, 0, contentIntent, 0))
                                    PendingIntent.getBroadcast(mContext, 0, contentIntent,
                                        PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setDeleteIntent(
                                    PendingIntent.getBroadcast(mContext, 0, deleteIntent, 0))
                                    PendingIntent.getBroadcast(mContext, 0, deleteIntent,
                                        PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setWhen(timeStamp)
                            .setLocalOnly(true)
                            .build();
@@ -523,10 +530,15 @@ class BluetoothOppNotification {
                                            com.android.internal.R.color
                                                    .system_notification_accent_color,
                                            mContext.getTheme()))

                            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                            .setContentIntent(
                                    PendingIntent.getBroadcast(mContext, 0, contentIntent, 0))
                                    PendingIntent.getBroadcast(mContext, 0, contentIntent,
                                        PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setDeleteIntent(
                                    PendingIntent.getBroadcast(mContext, 0, deleteIntent, 0))
                                    PendingIntent.getBroadcast(mContext, 0, deleteIntent,
                                        PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setWhen(timeStamp)
                            .setLocalOnly(true)
                            .build();
@@ -561,14 +573,19 @@ class BluetoothOppNotification {
                    new Notification.Action.Builder(Icon.createWithResource(mContext,
                            R.drawable.ic_decline),
                            mContext.getText(R.string.incoming_file_confirm_cancel),
                            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                            PendingIntent.getBroadcast(mContext, 0,
                                    new Intent(baseIntent).setAction(Constants.ACTION_DECLINE),
                                    0)).build();
                                    PendingIntent.FLAG_MUTABLE_UNAUDITED)).build();
            Notification.Action actionAccept = new Notification.Action.Builder(
                    Icon.createWithResource(mContext,R.drawable.ic_accept),
                    mContext.getText(R.string.incoming_file_confirm_ok),
                    // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                    // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                    PendingIntent.getBroadcast(mContext, 0,
                            new Intent(baseIntent).setAction(Constants.ACTION_ACCEPT), 0)).build();
                            new Intent(baseIntent).setAction(Constants.ACTION_ACCEPT),
                            PendingIntent.FLAG_MUTABLE_UNAUDITED)).build();
            Notification public_n =
                    new Notification.Builder(mContext, OPP_NOTIFICATION_CHANNEL).setOnlyAlertOnce(
                            true)
@@ -576,11 +593,15 @@ class BluetoothOppNotification {
                            .setWhen(info.mTimeStamp)
                            .addAction(actionDecline)
                            .addAction(actionAccept)
                            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                            .setContentIntent(PendingIntent.getBroadcast(mContext, 0,
                                    new Intent(baseIntent).setAction(
                                            Constants.ACTION_INCOMING_FILE_CONFIRM), 0))
                                            Constants.ACTION_INCOMING_FILE_CONFIRM),
                                    PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setDeleteIntent(PendingIntent.getBroadcast(mContext, 0,
                                    new Intent(baseIntent).setAction(Constants.ACTION_HIDE), 0))
                                    new Intent(baseIntent).setAction(Constants.ACTION_HIDE),
                                    PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setColor(mContext.getResources()
                                    .getColor(
                                            com.android.internal.R.color
@@ -601,11 +622,15 @@ class BluetoothOppNotification {
                            true)
                            .setOngoing(true)
                            .setWhen(info.mTimeStamp)
                            // TODO(b/171825892) Please replace FLAG_MUTABLE_UNAUDITED below
                            // with either FLAG_IMMUTABLE (recommended) or FLAG_MUTABLE.
                            .setContentIntent(PendingIntent.getBroadcast(mContext, 0,
                                    new Intent(baseIntent).setAction(
                                            Constants.ACTION_INCOMING_FILE_CONFIRM), 0))
                                            Constants.ACTION_INCOMING_FILE_CONFIRM),
                                    PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setDeleteIntent(PendingIntent.getBroadcast(mContext, 0,
                                    new Intent(baseIntent).setAction(Constants.ACTION_HIDE), 0))
                                    new Intent(baseIntent).setAction(Constants.ACTION_HIDE),
                                    PendingIntent.FLAG_MUTABLE_UNAUDITED))
                            .setColor(mContext.getResources()
                                    .getColor(
                                            com.android.internal.R.color
Loading