074b7f4ecd
The Bluetooth address constants (BT_ADDR[_LE]_ANY, BT_ADDR[_LE]_NONE) are currently defined as the address of the local anonymous structs that are initialised to the corresponding address values, and assigning them to a variable whose scope is greater than that of a function may end up creating dangling pointers (for instance, as done in the `bt_conn_get_info` function). This commit defines the Bluetooth address constants as global constant variables that are placed in the read-only data section, and modifies the Bluetooth address constant macros to use the address of these variables instead. Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
13 lines
436 B
C
13 lines
436 B
C
/*
|
|
* Copyright (c) 2022 Stephanos Ioannidis <root@stephanos.io>
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include <zephyr/bluetooth/addr.h>
|
|
|
|
const bt_addr_t bt_addr_any = { { 0, 0, 0, 0, 0, 0 } };
|
|
const bt_addr_t bt_addr_none = { { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } };
|
|
const bt_addr_le_t bt_addr_le_any = { 0, { { 0, 0, 0, 0, 0, 0 } } };
|
|
const bt_addr_le_t bt_addr_le_none = { 0, { { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff } } };
|