From 8537e28f664e718bf83a1a3c4ed38bb4de3418b4 Mon Sep 17 00:00:00 2001 From: Mariusz Skamra Date: Mon, 27 Jun 2022 13:09:29 +0200 Subject: [PATCH] Bluetooth: has: Fix missing preset lookup call Fixes null-pointer dereference. Signed-off-by: Mariusz Skamra --- subsys/bluetooth/audio/has.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/subsys/bluetooth/audio/has.c b/subsys/bluetooth/audio/has.c index eb3cb1e6fe7..f1baf24dc77 100644 --- a/subsys/bluetooth/audio/has.c +++ b/subsys/bluetooth/audio/has.c @@ -840,6 +840,11 @@ int bt_has_preset_available(uint8_t index) return -EINVAL; } + preset_foreach(index, index, preset_found, &preset); + if (preset == NULL) { + return -ENOENT; + } + /* toggle property bit if needed */ if (!(preset->properties & BT_HAS_PROP_AVAILABLE)) { NET_BUF_SIMPLE_DEFINE(buf, sizeof(struct bt_has_cp_hdr) + @@ -865,6 +870,11 @@ int bt_has_preset_unavailable(uint8_t index) return -EINVAL; } + preset_foreach(index, index, preset_found, &preset); + if (preset == NULL) { + return -ENOENT; + } + /* toggle property bit if needed */ if (preset->properties & BT_HAS_PROP_AVAILABLE) { NET_BUF_SIMPLE_DEFINE(buf, sizeof(struct bt_has_cp_hdr) +