This is an automated email from the ASF dual-hosted git repository.

janc pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-nimble.git

commit 7f7ab2d5129989f1aa29093b2c2e247bcf8b8f3c
Author: Szymon Czapracki <[email protected]>
AuthorDate: Fri May 9 14:37:11 2025 +0200

    apps/bttester: Enable adv filter policy when accept list is set
    
    Add support for setting filter policy.
    When set, policy will allow to process scan and
    request only from devices in the Filter Accept List.
    
    Also, introduce the flag to control this setting
    during advertising setup.
---
 apps/bttester/src/btp_gap.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/apps/bttester/src/btp_gap.c b/apps/bttester/src/btp_gap.c
index 5d7e34f34..b7f7090e8 100644
--- a/apps/bttester/src/btp_gap.c
+++ b/apps/bttester/src/btp_gap.c
@@ -64,6 +64,8 @@ static ble_addr_t peer_id_addr;
 static ble_addr_t peer_ota_addr;
 static bool encrypted = false;
 
+static bool use_filter_policy = false;
+
 static struct os_callout                    update_params_co;
 static struct btp_gap_conn_param_update_cmd update_params;
 
@@ -515,6 +517,10 @@ start_advertising(const void *cmd, uint16_t cmd_len,
 
 #if MYNEWT_VAL(BLE_EXT_ADV)
     adv_params.own_addr_type = own_addr_type;
+    if (use_filter_policy) {
+        adv_params.filter_policy = BLE_HCI_ADV_FILT_BOTH;
+    }
+
     err = ble_gap_ext_adv_configure(0, &adv_params, NULL, gap_event_cb, NULL);
     if (err) {
         SYS_LOG_ERR("Failed to configure extended advertiser; rc=%d", err);
@@ -1988,6 +1994,8 @@ set_filter_accept_list(const void *cmd, uint16_t cmd_len,
 
     SYS_LOG_DBG("");
 
+    use_filter_policy = cp->list_len != 0;
+
     /*
      * Check if the nb of bytes received matches the len of addrs list.
      * Then set the filter accept list.

Reply via email to