From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Hui Peng <phui@google.com>
Date: Fri, 20 Jan 2023 19:39:30 +0000
Subject: [PATCH] Fix an OOB bug in register_notification_rsp

This is a backport of I901d973a736678d7f3cc816ddf0cbbcbbd1fe93f
to rvc-dev.

Bug: 245916076
Test: manual
Ignore-AOSP-First: security
Change-Id: I37a9f45e707702b2ec52b5a2d572f177f2911765
(cherry picked from commit 901e34203c6280d414cbfa3978de04fd6515ffdf)
Merged-In: I37a9f45e707702b2ec52b5a2d572f177f2911765
---
 btif/src/btif_rc.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/btif/src/btif_rc.c b/btif/src/btif_rc.c
index 7f17a5191..af752d8dc 100644
--- a/btif/src/btif_rc.c
+++ b/btif/src/btif_rc.c
@@ -3171,6 +3171,13 @@ static bt_status_t register_notification_rsp(btrc_event_id_t event_id,
         BTIF_TRACE_ERROR("Avrcp Event id not registered: event_id = %x", event_id);
         return BT_STATUS_NOT_READY;
     }
+
+    if (event_id > MAX_RC_NOTIFICATIONS)
+    {
+        BTIF_TRACE_ERROR("Invalid event id");
+        return BT_STATUS_PARM_INVALID;
+    }
+
     memset(&(avrc_rsp.reg_notif), 0, sizeof(tAVRC_REG_NOTIF_RSP));
     avrc_rsp.reg_notif.event_id = event_id;
 
