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

Commit 0fb1800a authored by William Escande's avatar William Escande Committed by Automerger Merge Worker
Browse files

Merge "SDP: Add feature flag for serialization" am: a6d175f2 am: 9bee3653...

Merge "SDP: Add feature flag for serialization" am: a6d175f2 am: 9bee3653 am: 2eefa340 am: 470b2cd2 am: 9bb4602c

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2240014



Change-Id: I088cd1bdbab7ca15164a8f32323948ff5866657b
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 90365c4d 9bb4602c
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -5264,6 +5264,7 @@ public class AdapterService extends Service {
    }

    // Boolean flags
    private static final String SDP_SERIALIZATION_FLAG = "INIT_sdp_serialization";
    private static final String GD_CORE_FLAG = "INIT_gd_core";
    private static final String GD_ADVERTISING_FLAG = "INIT_gd_advertising";
    private static final String GD_SCANNING_FLAG = "INIT_gd_scanning";
@@ -5304,6 +5305,10 @@ public class AdapterService extends Service {
        if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_BLUETOOTH, GD_CORE_FLAG, false)) {
            initFlags.add(String.format("%s=%s", GD_CORE_FLAG, "true"));
        }
        if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_BLUETOOTH,
                    SDP_SERIALIZATION_FLAG, true)) {
            initFlags.add(String.format("%s=%s", SDP_SERIALIZATION_FLAG, "true"));
        }
        if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_BLUETOOTH, GD_ADVERTISING_FLAG, false)) {
            initFlags.add(String.format("%s=%s", GD_ADVERTISING_FLAG, "true"));
        }
+1 −0
Original line number Diff line number Diff line
@@ -74,6 +74,7 @@ macro_rules! init_flags {

init_flags!(
    flags: {
        sdp_serialization,
        gd_core,
        gd_security,
        gd_l2cap,
+1 −0
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ mod ffi {
        fn load(flags: Vec<String>);
        fn set_all_for_testing();

        fn sdp_serialization_is_enabled() -> bool;
        fn gd_core_is_enabled() -> bool;
        fn gd_security_is_enabled() -> bool;
        fn gd_l2cap_is_enabled() -> bool;
+4 −3
Original line number Diff line number Diff line
@@ -22,8 +22,10 @@
 *
 ******************************************************************************/

#include <base/logging.h>
#include <string.h>  // memset

#include "gd/common/init_flags.h"
#include "osi/include/allocator.h"
#include "osi/include/osi.h"  // UNUSED_ATTR
#include "stack/include/bt_hdr.h"
@@ -34,8 +36,6 @@
#include "stack/sdp/sdpint.h"
#include "types/raw_address.h"

#include <base/logging.h>

/******************************************************************************/
/*                     G L O B A L      S D P       D A T A                   */
/******************************************************************************/
@@ -351,7 +351,8 @@ tCONN_CB* sdp_conn_originate(const RawAddress& p_bd_addr) {
  // Look for any active sdp connection on the remote device
  cid = sdpu_get_active_ccb_cid(p_bd_addr);

  if (cid == 0) {
  if (!bluetooth::common::init_flags::sdp_serialization_is_enabled() ||
      cid == 0) {
    p_ccb->con_state = SDP_STATE_CONN_SETUP;
    cid = L2CA_ConnectReq2(BT_PSM_SDP, p_bd_addr, BTM_SEC_NONE);
  } else {
+2 −0
Original line number Diff line number Diff line
@@ -110,6 +110,8 @@ tCONN_CB* find_ccb(uint16_t cid, uint8_t state) {
}

TEST_F(StackSdpMainTest, sdp_service_search_request_queuing) {
  bluetooth::common::InitFlags::SetAllForTesting();

  ASSERT_TRUE(SDP_ServiceSearchRequest(addr, sdp_db, nullptr));
  const int cid = L2CA_ConnectReq2_cid;
  tCONN_CB* p_ccb1 = find_ccb(cid, SDP_STATE_CONN_SETUP);