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

Commit 6a4cd551 authored by Bill Yi's avatar Bill Yi Committed by Gerrit Code Review
Browse files

Merge "Merge TQ2A.230505.002 to aosp-master - DO NOT MERGE"

parents b03402be cdbca722
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -53,6 +53,7 @@
#include "main/shim/l2c_api.h"
#include "main/shim/metrics_api.h"
#include "main/shim/shim.h"
#include "os/parameter_provider.h"
#include "osi/include/allocator.h"
#include "osi/include/log.h"
#include "osi/include/osi.h"  // UNUSED_ATTR
@@ -676,6 +677,23 @@ void btm_acl_encrypt_change(uint16_t handle, uint8_t status,
    return;
  }

  /* Common Criteria mode only: if we are trying to drop encryption on an
   * encrypted connection, drop the connection */
  if (bluetooth::os::ParameterProvider::IsCommonCriteriaMode()) {
    if (p->is_encrypted && !encr_enable) {
      LOG(ERROR)
          << __func__
          << " attempting to decrypt encrypted connection, disconnecting. "
             "handle: "
          << loghex(handle);

      acl_disconnect_from_handle(handle, HCI_ERR_HOST_REJECT_SECURITY,
                                 "stack::btu::btu_hcif::read_drop_encryption "
                                 "Connection Already Encrypted");
      return;
    }
  }

  p->is_encrypted = encr_enable;

  /* Process Role Switch if active */