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

Commit f6995b81 authored by Jakub Pawłowski's avatar Jakub Pawłowski Committed by Gerrit Code Review
Browse files

Merge "Use bd_name_copy everywhere" into main

parents 921bacb2 d2bd98f8
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -31,7 +31,6 @@
#include "bta/dm/bta_dm_disc.h"
#include "bta/dm/bta_dm_int.h"
#include "bta/dm/bta_dm_sec_int.h"
#include "osi/include/compat.h"
#include "stack/include/bt_uuid16.h"
#include "stack/include/btm_api.h"
#include "stack/include/btm_client_interface.h"
@@ -69,7 +68,7 @@ void BTA_EnableTestMode(void) {
/** This function sets the Bluetooth name of local device */
void BTA_DmSetDeviceName(const char* p_name) {
  std::vector<uint8_t> name(BD_NAME_LEN + 1);
  strlcpy((char*)name.data(), p_name, BD_NAME_LEN + 1);
  bd_name_copy(name.data(), p_name);

  do_in_main_thread(FROM_HERE, base::BindOnce(bta_dm_set_dev_name, name));
}
+14 −18
Original line number Diff line number Diff line
@@ -660,8 +660,7 @@ static void bta_dm_sdp_result(tBTA_DM_MSG* p_data) {
          // send all result back to app
          tBTA_DM_SEARCH result;
          result.disc_ble_res.bd_addr = bta_dm_search_cb.peer_bdaddr;
          strlcpy((char*)result.disc_ble_res.bd_name, bta_dm_get_remname(),
                  BD_NAME_LEN + 1);
          bd_name_copy(result.disc_ble_res.bd_name, bta_dm_get_remname());

          result.disc_ble_res.services = &gatt_uuids;
          bta_dm_search_cb.p_search_cback(BTA_DM_GATT_OVER_SDP_RES_EVT,
@@ -797,8 +796,8 @@ static void bta_dm_sdp_result(tBTA_DM_MSG* p_data) {
                     bta_dm_search_cb.peer_scn);
      }
      p_msg->disc_result.result.disc_res.bd_addr = bta_dm_search_cb.peer_bdaddr;
      strlcpy((char*)p_msg->disc_result.result.disc_res.bd_name,
              bta_dm_get_remname(), BD_NAME_LEN + 1);
      bd_name_copy(p_msg->disc_result.result.disc_res.bd_name,
                   bta_dm_get_remname());

      bta_sys_sendmsg(p_msg);
    }
@@ -823,8 +822,8 @@ static void bta_dm_sdp_result(tBTA_DM_MSG* p_data) {
    p_msg->disc_result.result.disc_res.services =
        bta_dm_search_cb.services_found;
    p_msg->disc_result.result.disc_res.bd_addr = bta_dm_search_cb.peer_bdaddr;
    strlcpy((char*)p_msg->disc_result.result.disc_res.bd_name,
            bta_dm_get_remname(), BD_NAME_LEN + 1);
    bd_name_copy(p_msg->disc_result.result.disc_res.bd_name,
                 bta_dm_get_remname());

    bta_sys_sendmsg(p_msg);
  }
@@ -868,8 +867,7 @@ static void bta_dm_search_cmpl() {
  std::vector<Uuid> gatt_services;
  result.disc_ble_res.services = &gatt_services;
  result.disc_ble_res.bd_addr = bta_dm_search_cb.peer_bdaddr;
  strlcpy((char*)result.disc_ble_res.bd_name, bta_dm_get_remname(),
          BD_NAME_LEN + 1);
  bd_name_copy(result.disc_ble_res.bd_name, bta_dm_get_remname());

  bool send_gatt_results =
      bluetooth::common::init_flags::
@@ -1238,8 +1236,8 @@ static void bta_dm_find_services(const RawAddress& bd_addr) {
    p_msg->disc_result.result.disc_res.services =
        bta_dm_search_cb.services_found;
    p_msg->disc_result.result.disc_res.bd_addr = bta_dm_search_cb.peer_bdaddr;
    strlcpy((char*)p_msg->disc_result.result.disc_res.bd_name,
            bta_dm_get_remname(), BD_NAME_LEN + 1);
    bd_name_copy(p_msg->disc_result.result.disc_res.bd_name,
                 bta_dm_get_remname());

    bta_sys_sendmsg(p_msg);
  }
@@ -1444,8 +1442,8 @@ static void bta_dm_discover_device(const RawAddress& remote_bd_addr) {
  p_msg->disc_result.result.disc_res.result = BTA_SUCCESS;
  p_msg->disc_result.result.disc_res.services = bta_dm_search_cb.services_found;
  p_msg->disc_result.result.disc_res.bd_addr = bta_dm_search_cb.peer_bdaddr;
  strlcpy((char*)p_msg->disc_result.result.disc_res.bd_name,
          bta_dm_get_remname(), BD_NAME_LEN + 1);
  bd_name_copy(p_msg->disc_result.result.disc_res.bd_name,
               bta_dm_get_remname());

  bta_sys_sendmsg(p_msg);
}
@@ -1563,8 +1561,7 @@ static void bta_dm_service_search_remname_cback(const RawAddress& bd_addr,
  /* if this is what we are looking for */
  if (bta_dm_search_cb.peer_bdaddr == bd_addr) {
    rem_name.bd_addr = bd_addr;
    rem_name.length = strlcpy((char*)rem_name.remote_bd_name, (char*)bd_name,
                              BD_NAME_LEN + 1);
    rem_name.length = bd_name_copy(rem_name.remote_bd_name, bd_name);
    if (rem_name.length > BD_NAME_LEN) {
      rem_name.length = BD_NAME_LEN;
    }
@@ -1640,8 +1637,7 @@ static void bta_dm_remname_cback(const tBTM_REMOTE_DEV_NAME* p_remote_name) {

  /* remote name discovery is done but it could be failed */
  bta_dm_search_cb.name_discover_done = true;
  strlcpy((char*)bta_dm_search_cb.peer_name,
          (char*)p_remote_name->remote_bd_name, BD_NAME_LEN + 1);
  bd_name_copy(bta_dm_search_cb.peer_name, p_remote_name->remote_bd_name);

  if (bta_dm_search_cb.transport == BT_TRANSPORT_LE) {
    GAP_BleReadPeerPrefConnParams(bta_dm_search_cb.peer_bdaddr);
@@ -1944,8 +1940,8 @@ static void bta_dm_gatt_disc_complete(uint16_t conn_id, tGATT_STATUS status) {
  p_msg->disc_result.result.disc_res.num_uuids = 0;
  p_msg->disc_result.result.disc_res.p_uuid_list = NULL;
  p_msg->disc_result.result.disc_res.bd_addr = bta_dm_search_cb.peer_bdaddr;
  strlcpy((char*)p_msg->disc_result.result.disc_res.bd_name,
          bta_dm_get_remname(), BD_NAME_LEN + 1);
  bd_name_copy(p_msg->disc_result.result.disc_res.bd_name,
               bta_dm_get_remname());

  p_msg->disc_result.result.disc_res.device_type |= BT_DEVICE_TYPE_BLE;

+7 −10
Original line number Diff line number Diff line
@@ -28,7 +28,6 @@
#include "btif/include/btif_dm.h"
#include "btif/include/btif_storage.h"
#include "internal_include/bt_target.h"
#include "osi/include/compat.h"  // strlcpy
#include "osi/include/osi.h"     // UNUSED_ATTR
#include "stack/include/bt_dev_class.h"
#include "stack/include/btm_ble_sec_api_types.h"
@@ -329,7 +328,7 @@ static uint8_t bta_dm_pin_cback(const RawAddress& bd_addr, DEV_CLASS dev_class,
                               .bd_name = "",
                               .min_16_digit = min_16_digit,
                           }};
  strlcpy((char*)sec_event.pin_req.bd_name, (char*)bd_name, BD_NAME_LEN + 1);
  bd_name_copy(sec_event.pin_req.bd_name, bd_name);

  bta_dm_sec_cb.p_sec_cback(BTA_DM_PIN_REQ_EVT, &sec_event);
  return BTM_CMD_STARTED;
@@ -546,8 +545,7 @@ static tBTM_STATUS bta_dm_sp_cback(tBTM_SP_EVT event,
        } else {
          sec_event.key_notif.bd_addr = p_data->key_notif.bd_addr;
          sec_event.key_notif.dev_class = p_data->key_notif.dev_class;
          strlcpy((char*)sec_event.key_notif.bd_name,
                  (char*)p_data->key_notif.bd_name, BD_NAME_LEN + 1);
          bd_name_copy(sec_event.key_notif.bd_name, p_data->key_notif.bd_name);
          sec_event.key_notif.bd_name[BD_NAME_LEN] = 0;
        }
      }
@@ -740,7 +738,7 @@ static uint8_t bta_dm_ble_smp_cback(tBTM_LE_EVT event, const RawAddress& bda,
      sec_event.ble_req.bd_addr = bda;
      p_name = get_btm_client_interface().security.BTM_SecReadDevName(bda);
      if (p_name != NULL)
        strlcpy((char*)sec_event.ble_req.bd_name, p_name, BD_NAME_LEN);
        bd_name_copy(sec_event.ble_req.bd_name, p_name);
      else
        sec_event.ble_req.bd_name[0] = 0;
      bta_dm_sec_cb.p_sec_cback(BTA_DM_BLE_CONSENT_REQ_EVT, &sec_event);
@@ -750,7 +748,7 @@ static uint8_t bta_dm_ble_smp_cback(tBTM_LE_EVT event, const RawAddress& bda,
      sec_event.ble_req.bd_addr = bda;
      p_name = get_btm_client_interface().security.BTM_SecReadDevName(bda);
      if (p_name != NULL)
        strlcpy((char*)sec_event.ble_req.bd_name, p_name, BD_NAME_LEN + 1);
        bd_name_copy(sec_event.ble_req.bd_name, p_name);
      else
        sec_event.ble_req.bd_name[0] = 0;
      bta_dm_sec_cb.p_sec_cback(BTA_DM_BLE_SEC_REQ_EVT, &sec_event);
@@ -760,7 +758,7 @@ static uint8_t bta_dm_ble_smp_cback(tBTM_LE_EVT event, const RawAddress& bda,
      sec_event.key_notif.bd_addr = bda;
      p_name = get_btm_client_interface().security.BTM_SecReadDevName(bda);
      if (p_name != NULL)
        strlcpy((char*)sec_event.key_notif.bd_name, p_name, BD_NAME_LEN + 1);
        bd_name_copy(sec_event.key_notif.bd_name, p_name);
      else
        sec_event.key_notif.bd_name[0] = 0;
      sec_event.key_notif.passkey = p_data->key_notif;
@@ -780,8 +778,7 @@ static uint8_t bta_dm_ble_smp_cback(tBTM_LE_EVT event, const RawAddress& bda,
    case BTM_LE_NC_REQ_EVT:
      sec_event.key_notif.bd_addr = bda;
      // TODO: get rid of this
      strlcpy((char*)sec_event.key_notif.bd_name, bta_dm_get_remname(),
              (BD_NAME_LEN + 1));
      bd_name_copy(sec_event.key_notif.bd_name, bta_dm_get_remname());
      sec_event.key_notif.passkey = p_data->key_notif;
      bta_dm_sec_cb.p_sec_cback(BTA_DM_BLE_NC_REQ_EVT, &sec_event);
      break;
@@ -812,7 +809,7 @@ static uint8_t bta_dm_ble_smp_cback(tBTM_LE_EVT event, const RawAddress& bda,
          bda, &sec_event.auth_cmpl.dev_type, &sec_event.auth_cmpl.addr_type);
      p_name = get_btm_client_interface().security.BTM_SecReadDevName(bda);
      if (p_name != NULL)
        strlcpy((char*)sec_event.auth_cmpl.bd_name, p_name, (BD_NAME_LEN + 1));
        bd_name_copy(sec_event.auth_cmpl.bd_name, p_name);
      else
        sec_event.auth_cmpl.bd_name[0] = 0;

+2 −3
Original line number Diff line number Diff line
@@ -1111,7 +1111,7 @@ static void btif_dm_ssp_cfm_req_evt(tBTA_DM_SP_CFM_REQ* p_ssp_cfm_req) {
                                (tBT_DEVICE_TYPE)dev_type);

  RawAddress bd_addr = p_ssp_cfm_req->bd_addr;
  memcpy(bd_name.name, p_ssp_cfm_req->bd_name, BD_NAME_LEN);
  bd_name_copy(bd_name.name, p_ssp_cfm_req->bd_name);

  if (pairing_cb.state == BT_BOND_STATE_BONDING &&
      bd_addr != pairing_cb.bd_addr) {
@@ -1190,8 +1190,7 @@ static void btif_dm_ssp_key_notif_evt(tBTA_DM_SP_KEY_NOTIF* p_ssp_key_notif) {
      p_ssp_key_notif->dev_class, (tBT_DEVICE_TYPE)dev_type);

  RawAddress bd_addr = p_ssp_key_notif->bd_addr;
  memcpy(bd_name.name, p_ssp_key_notif->bd_name, BD_NAME_LEN);
  bd_name.name[BD_NAME_LEN] = '\0';
  bd_name_copy(bd_name.name, p_ssp_key_notif->bd_name);

  bond_state_changed(BT_STATUS_SUCCESS, bd_addr, BT_BOND_STATE_BONDING);
  pairing_cb.is_ssp = true;
+1 −1
Original line number Diff line number Diff line
@@ -142,7 +142,7 @@ bool BTM_GetRemoteDeviceName(const RawAddress& bd_addr, BD_NAME bd_name) {
  if (btif_storage_get_remote_device_property(&bd_addr, &prop_name) ==
      BT_STATUS_SUCCESS) {
    log::verbose("NV name={}", reinterpret_cast<const char*>(bdname.name));
    strncpy((char*)bd_name, (char*)bdname.name, BD_NAME_LEN + 1);
    bd_name_copy(bd_name, bdname.name);
    ret = TRUE;
  }
  return ret;
Loading