host/audio/pacs: verify if set available contexts are supported
We shouldn't allow to set available contexts that are not set to be
supported.
diff --git a/nimble/host/audio/services/pacs/src/ble_audio_svc_pacs.c b/nimble/host/audio/services/pacs/src/ble_audio_svc_pacs.c
index eb3a924..92155f4 100644
--- a/nimble/host/audio/services/pacs/src/ble_audio_svc_pacs.c
+++ b/nimble/host/audio/services/pacs/src/ble_audio_svc_pacs.c
@@ -421,6 +421,11 @@
return BLE_HS_ENOENT;
}
+ if ((sink_contexts & ble_svc_audio_pacs_sup_sink_contexts) != sink_contexts ||
+ (source_contexts & ble_svc_audio_pacs_sup_source_contexts) != source_contexts) {
+ return BLE_HS_ENOTSUP;
+ }
+
avail_ctx->ble_svc_audio_pacs_avail_sink_contexts = sink_contexts;
avail_ctx->ble_svc_audio_pacs_avail_source_contexts = source_contexts;
avail_ctx->val_changed = true;