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

Commit f582adeb authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix L2cap LE COC security record leaks" into sc-dev am: 0c076546

Original change: https://googleplex-android-review.googlesource.com/c/platform/system/bt/+/15405796

Change-Id: Ie75b20473cfe4178f499c2d0459a86257846eed2
parents 028ea396 0c076546
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -994,7 +994,7 @@ static void gap_release_ccb(tGAP_CCB* p_ccb) {
  }

  /* Free the security record for this PSM */
  BTM_SecClrService(p_ccb->service_id);
  BTM_SecClrServiceByPsm(p_ccb->psm);
  if (p_ccb->transport == BT_TRANSPORT_BR_EDR) L2CA_Deregister(p_ccb->psm);
  if (p_ccb->transport == BT_TRANSPORT_LE) L2CA_DeregisterLECoc(p_ccb->psm);
}
+5 −1
Original line number Diff line number Diff line
@@ -382,7 +382,11 @@ uint16_t L2CA_RegisterLECoc(uint16_t psm, const tL2CAP_APPL_INFO& p_cb_info,
    return bluetooth::shim::L2CA_RegisterLECoc(psm, p_cb_info, sec_level, cfg);
  }

  if (p_cb_info.pL2CA_ConnectInd_Cb != nullptr && psm < LE_DYNAMIC_PSM_START) {
    //  If we register LE COC for outgoing connection only, don't register with
    //  BTM_Sec, because it's handled by L2CA_ConnectLECocReq.
    BTM_SetSecurityLevel(false, "", 0, sec_level, psm, 0, 0);
  }

  /* Verify that the required callback info has been filled in
  **      Note:  Connection callbacks are required but not checked