Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mesh 2.9 cherry picks #2323

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

HaavardRei
Copy link
Contributor

Fixes various Mesh bugs.

@Balaklaka Balaklaka self-requested a review December 3, 2024 08:21
LingaoM and others added 8 commits December 3, 2024 15:14
…h messages

When start to sending proxy advertising, will also process in
send_pending_adv, but the bt_mesh_adv_get_by_tag will directly return
buffer from bt_mesh_adv_queue or bt_mesh_relay_queue, which case
mesh messages sent on different sets, can cause peer replay attack.

Signed-off-by: Lingao Meng <[email protected]>
(cherry picked from commit b54f49c)
Signed-off-by: Håvard Reierstad <[email protected]>
Makes sure that the Network Transmit state is used when using a Subnet
Bridge.

Signed-off-by: Håvard Reierstad <[email protected]>
(cherry picked from commit b38773f)
Signed-off-by: Håvard Reierstad <[email protected]>
By default if CONFIG_BT_MESH_PROXY_USE_DEVICE_NAME
or CONFIG_BT_MESH_PB_GATT_USE_DEVICE_NAME is enabled, the mesh stack
will add BT_DATA_NAME_COMPLETE AD Type along with the Mesh Proxy Service
or Mesh Provisioning Service advertisements accordingly.

When BT_LE_ADV_OPT_USE_NAME was present and
CONFIG_BT_DEVICE_NAME_DYNAMIC is enabled, the advertised name was
automatically updated by the host. This turned out to be a side-effect
rather than expected behavior and after #71700 this behavior waa
changed.

But customers use dynamic name feature.

This commit makes the mesh stack use bt_get_name to get the device name,
which returns runtime name if CONFIG_BT_DEVICE_NAME_DYNAMIC is enabled.

Signed-off-by: Pavel Vasilyev <[email protected]>
(cherry picked from commit ab346a1)
Signed-off-by: Håvard Reierstad <[email protected]>
…es to gatt.h

This moves GATT releated defines that are used by both Mesh Proxy
Service and Mesh Provisioning Service implementations to a common
header file.

Signed-off-by: Pavel Vasilyev <[email protected]>
(cherry picked from commit 684c94e)
Signed-off-by: Håvard Reierstad <[email protected]>
…_work

Fix extracting role from k_work.
Hot fix for #78914

Signed-off-by: Pavel Vasilyev <[email protected]>
(cherry picked from commit f5409bd)
Signed-off-by: Håvard Reierstad <[email protected]>
…ut data

This commit checks that config client doesn't pull out data outside of
the buffer.

Fixes #80012

Signed-off-by: Pavel Vasilyev <[email protected]>
(cherry picked from commit e2a0faf)
Signed-off-by: Håvard Reierstad <[email protected]>
… CDP0 and 1

This commits puts in order log messages when unpacking CDP0 and CDP1 so
that it a bit more clear where the error happens.

Signed-off-by: Pavel Vasilyev <[email protected]>
(cherry picked from commit 1eeee01)
Signed-off-by: Håvard Reierstad <[email protected]>
…et_idx != 0

Initializes the `net_idx` field of the ack context properly for KRP
functions in the Config Client.

This fixes a problem where `bt_mesh_cfg_cli_krp_get` and
`bt_mesh_cfg_cli_krp_set` would always fail the ack ctx comparison if
`key_net_idx` was != 0.

Signed-off-by: Ludvig Jordet <[email protected]>
(cherry picked from commit 88f62a1a5eb5cdf51a9d5a2d847712c9b33f3193)
Signed-off-by: Håvard Reierstad <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants