summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorTedd Ho-Jeong An <tedd.an@intel.com>2021-10-25 13:31:20 -0700
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2021-10-25 13:38:36 -0700
commit380f6ba6a74b50ea03aeaa72e41aa157c48798aa (patch)
treebd969556b5201fa6c3d0ac05a9031837c33b3892 /tools
parent435a55db08aa6019b718124810f770c4d565d901 (diff)
downloadbluez-380f6ba6a74b50ea03aeaa72e41aa157c48798aa.tar.gz
tools/mgmt-tester: Add support for experimental feature in setup
This patch adds support for experimental feature in setup_settings options.
Diffstat (limited to 'tools')
-rw-r--r--tools/mgmt-tester.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/mgmt-tester.c b/tools/mgmt-tester.c
index f490dc261..1ccce0ad6 100644
--- a/tools/mgmt-tester.c
+++ b/tools/mgmt-tester.c
@@ -260,6 +260,7 @@ struct generic_data {
const uint16_t *setup_settings;
bool setup_nobredr;
bool setup_limited_discov;
+ const void *setup_exp_feat_param;
uint16_t setup_expect_hci_command;
const void *setup_expect_hci_param;
uint8_t setup_expect_hci_len;
@@ -7222,6 +7223,7 @@ proceed:
unsigned char privacy_param[] = { 0x01,
0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 };
+ unsigned char set_exp_feat_param[17] = { 0x00 };
unsigned char *param = simple_param;
size_t param_size = sizeof(simple_param);
mgmt_request_func_t func = NULL;
@@ -7250,14 +7252,30 @@ proceed:
memcpy(param, test->setup_discovery_param, 1);
}
+ if (*cmd == MGMT_OP_SET_EXP_FEATURE) {
+ if (test->setup_exp_feat_param) {
+ memcpy(set_exp_feat_param,
+ test->setup_exp_feat_param, 17);
+ param_size = sizeof(set_exp_feat_param);
+ param = set_exp_feat_param;
+ }
+ }
+
if (*cmd == MGMT_OP_SET_LE && test->setup_nobredr) {
unsigned char off[] = { 0x00 };
+ tester_print("Setup sending %s (0x%04x)",
+ mgmt_opstr(*cmd), *cmd);
mgmt_send(data->mgmt, *cmd, data->mgmt_index,
param_size, param, NULL, NULL, NULL);
+ tester_print("Setup sending %s (0x%04x)",
+ mgmt_opstr(MGMT_OP_SET_BREDR),
+ MGMT_OP_SET_BREDR);
mgmt_send(data->mgmt, MGMT_OP_SET_BREDR,
data->mgmt_index, sizeof(off), off,
func, data, NULL);
} else {
+ tester_print("Setup sending %s (0x%04x)",
+ mgmt_opstr(*cmd), *cmd);
mgmt_send(data->mgmt, *cmd, data->mgmt_index,
param_size, param, func, data, NULL);
}