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

Commit 681a5c95 authored by Jakub Pawlowski's avatar Jakub Pawlowski
Browse files

Fix bad UUID comparison when adding GATT service

This patch fixes bad comparison in add_service_impl. Instead of checking
wether service is one of two excluded services, it was excluding all
services.

Test: sl4a GatReadTest
Bug: 34280184
Change-Id: I3195e94b6fafe4d2e3c61fc7bfd7398c2855b78e
parent 807b9614
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -366,8 +366,8 @@ static void add_service_impl(int server_if,
  // TODO(jpawlowski): btif should be a pass through layer, and no checks should
  // be made here. This exception is added only until GATT server code is
  // refactored, and one can distinguish stack-internal aps from external apps
  if (memcmp(&service[0].uuid, &restricted_uuid1, sizeof(bt_uuid_t)) ||
      memcmp(&service[0].uuid, &restricted_uuid2, sizeof(bt_uuid_t))) {
  if (memcmp(&service[0].uuid, &restricted_uuid1, sizeof(bt_uuid_t)) == 0 ||
      memcmp(&service[0].uuid, &restricted_uuid2, sizeof(bt_uuid_t)) == 0) {
    LOG_ERROR(LOG_TAG, "%s: Attept to register restricted service", __func__);
    HAL_CBACK(bt_gatt_callbacks, server->service_added_cb, BT_STATUS_FAIL,
              server_if, std::move(service));