Skip to content

Commit

Permalink
Samples: Bluetooth: sec error prints to use bt_security_err_to_str()
Browse files Browse the repository at this point in the history
When developing Bluetooth applications,
you typically run into some errors.
If you are an experienced Bluetooth developer,
you would typically know how to translate the error codes into
string representations. Others might not.

This commit starts using `bt_security_err_to_str()` for all
samples under `samples/bluetooth`. Similar changes can be
done in other applications and samples.

To enable string printing, enable CONFIG_BT_SECURITY_ERR_TO_STR.

The format used is equal to the one added in
zephyrproject-rtos/zephyr#75442.

Signed-off-by: Rubin Gerritsen <[email protected]>
  • Loading branch information
rugeGerritsen authored and rlubos committed Aug 5, 2024
1 parent 7359e3d commit 61c5f84
Show file tree
Hide file tree
Showing 26 changed files with 94 additions and 81 deletions.
11 changes: 5 additions & 6 deletions samples/bluetooth/central_and_peripheral_hr/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -197,12 +197,11 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));
}

static const struct bt_conn_auth_cb auth_callbacks = {
.cancel = auth_cancel
};
static const struct bt_conn_auth_cb auth_callbacks = {.cancel = auth_cancel};

static struct bt_conn_auth_info_cb conn_auth_info_callbacks = {
.pairing_complete = pairing_complete,
Expand Down Expand Up @@ -294,8 +293,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}

if (conn == central_conn) {
Expand Down
8 changes: 4 additions & 4 deletions samples/bluetooth/central_bas/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -230,8 +230,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}

gatt_discover(conn);
Expand Down Expand Up @@ -348,10 +348,10 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));
}


static struct bt_conn_auth_cb conn_auth_callbacks = {
.cancel = auth_cancel,
};
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/central_hids/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -252,8 +252,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}

gatt_discover(conn);
Expand Down Expand Up @@ -621,7 +621,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));
}

static struct bt_conn_auth_cb conn_auth_callbacks = {
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/central_nfc_pairing/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -202,8 +202,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down Expand Up @@ -325,7 +325,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));

k_poll_signal_raise(&pair_signal, 0);
bt_le_oob_set_sc_flag(false);
Expand Down
4 changes: 2 additions & 2 deletions samples/bluetooth/central_smp_client/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -213,8 +213,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/central_uart/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -427,8 +427,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
LOG_INF("Security changed: %s level %u", addr, level);
} else {
LOG_WRN("Security failed: %s level %u err %d", addr,
level, err);
LOG_WRN("Security failed: %s level %u err %d %s", addr, level, err,
bt_security_err_to_str(err));
}

gatt_discover(conn);
Expand Down Expand Up @@ -539,7 +539,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

LOG_WRN("Pairing failed conn: %s, reason %d", addr, reason);
LOG_WRN("Pairing failed conn: %s, reason %d %s", addr, reason,
bt_security_err_to_str(reason));
}

static struct bt_conn_auth_cb conn_auth_callbacks = {
Expand Down
3 changes: 2 additions & 1 deletion samples/bluetooth/fast_pair/input_device/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level, enum bt_
if (!err) {
LOG_INF("Security changed: %s level %u", addr, level);
} else {
LOG_WRN("Security failed: %s level %u err %d", addr, level, err);
LOG_WRN("Security failed: %s level %u err %d %s", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down
3 changes: 2 additions & 1 deletion samples/bluetooth/fast_pair/locator_tag/src/fp_adv.c
Original file line number Diff line number Diff line change
Expand Up @@ -392,7 +392,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level, enum bt_
if (!err) {
LOG_INF("Security changed: %s level %u", addr, level);
} else {
LOG_WRN("Security failed: %s level %u err %d", addr, level, err);
LOG_WRN("Security failed: %s level %u err %d %s", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down
5 changes: 2 additions & 3 deletions samples/bluetooth/llpm/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -392,10 +392,9 @@ static void test_run(void)
}
}

void security_changed(struct bt_conn *conn, bt_security_t level,
enum bt_security_err err)
void security_changed(struct bt_conn *conn, bt_security_t level, enum bt_security_err err)
{
printk("Security changed: level %i, err: %i\n", level, err);
printk("Security changed: level %i, err: %i %s\n", level, err, bt_security_err_to_str(err));

if (err != 0) {
printk("Failed to encrypt link\n");
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_ams_client/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -306,8 +306,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
}
}
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down Expand Up @@ -343,7 +343,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));

bt_conn_disconnect(conn, BT_HCI_ERR_REMOTE_USER_TERM_CONN);
}
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_ancs_client/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -364,8 +364,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
discover_gattp(conn);
}
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down Expand Up @@ -401,7 +401,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));

bt_conn_disconnect(conn, BT_HCI_ERR_REMOTE_USER_TERM_CONN);
}
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_bms/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down Expand Up @@ -122,7 +122,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));
}

static struct bt_conn_auth_cb conn_auth_callbacks = {
Expand Down
4 changes: 2 additions & 2 deletions samples/bluetooth/peripheral_cgms/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,8 +64,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level, enum bt_
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_cts_client/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -206,8 +206,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,

enable_notifications();
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down Expand Up @@ -243,7 +243,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));

bt_conn_disconnect(conn, BT_HCI_ERR_REMOTE_USER_TERM_CONN);
}
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_gatt_dm/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level, enum bt_
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down Expand Up @@ -157,7 +157,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));

if (pairing_confirmation_conn) {
bt_conn_unref(pairing_confirmation_conn);
Expand Down
9 changes: 4 additions & 5 deletions samples/bluetooth/peripheral_hids_keyboard/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -333,12 +333,11 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}


BT_CONN_CB_DEFINE(conn_callbacks) = {
.connected = connected,
.disconnected = disconnected,
Expand Down Expand Up @@ -611,10 +610,10 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));
}


static struct bt_conn_auth_cb conn_auth_callbacks = {
.passkey_display = auth_passkey_display,
.passkey_confirm = auth_passkey_confirm,
Expand Down
9 changes: 4 additions & 5 deletions samples/bluetooth/peripheral_hids_mouse/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -346,13 +346,12 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}
#endif


BT_CONN_CB_DEFINE(conn_callbacks) = {
.connected = connected,
.disconnected = disconnected,
Expand Down Expand Up @@ -644,10 +643,10 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));
}


static struct bt_conn_auth_cb conn_auth_callbacks = {
.passkey_display = auth_passkey_display,
.passkey_confirm = auth_passkey_confirm,
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_lbs/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}
#endif
Expand Down Expand Up @@ -127,7 +127,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));
}

static struct bt_conn_auth_cb conn_auth_callbacks = {
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_mds/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level,
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}

if (level >= BT_SECURITY_L2) {
Expand Down Expand Up @@ -112,7 +112,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));

if (pairing_confirmation_conn) {
pairing_confirmation_conn = NULL;
Expand Down
7 changes: 4 additions & 3 deletions samples/bluetooth/peripheral_nfc_pairing/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,8 @@ static void pairing_failed(struct bt_conn *conn, enum bt_security_err reason)

bt_addr_le_to_str(bt_conn_get_dst(conn), addr, sizeof(addr));

printk("Pairing failed conn: %s, reason %d\n", addr, reason);
printk("Pairing failed conn: %s, reason %d %s\n", addr, reason,
bt_security_err_to_str(reason));

k_poll_signal_raise(&pair_signal, 0);
bt_le_oob_set_sc_flag(false);
Expand Down Expand Up @@ -414,8 +415,8 @@ static void security_changed(struct bt_conn *conn, bt_security_t level, enum bt_
if (!err) {
printk("Security changed: %s level %u\n", addr, level);
} else {
printk("Security failed: %s level %u err %d\n", addr, level,
err);
printk("Security failed: %s level %u err %d %s\n", addr, level, err,
bt_security_err_to_str(err));
}
}

Expand Down
Loading

1 comment on commit 61c5f84

@mayli10
Copy link

@mayli10 mayli10 commented on 61c5f84 Aug 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hello! in the future, after adding this change could you also make sure to add CONFIG_BT_SECURITY_ERR_TO_STR to the prj.conf or at least make this config option clear in the READMEs of the repos you update? this broke my code and I wasn't sure why until I found this commit log! thank you :)

Please sign in to comment.