From ad6fbef99b3845bda67d90ac3a27744e55509989 Mon Sep 17 00:00:00 2001 From: OrbisAI Security Date: Tue, 12 May 2026 09:48:46 +0530 Subject: [PATCH] MT#55283 recording-daemon: add static_assert for payload_type bounds invariant The bitmask `& 0x7f` on m_pt guarantees values 0-127, and the decoders array has 128 entries, so out-of-bounds access is structurally impossible. Add a compile-time static_assert documenting this invariant. Closes #2107 Change-Id: I9debd6ddf4ac928ded71d2189775e10dee98e0de Co-Authored-By: Claude Opus 4.6 --- recording-daemon/packet.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recording-daemon/packet.c b/recording-daemon/packet.c index 2f42235dd..7bfb0ec2e 100644 --- a/recording-daemon/packet.c +++ b/recording-daemon/packet.c @@ -92,6 +92,9 @@ out: } +static_assert(0x7f < G_N_ELEMENTS(((ssrc_t *)0)->decoders), + "payload_type mask 0x7f must be within decoders array bounds"); + // ssrc is locked static void packet_decode(ssrc_t *ssrc, packet_t *packet) { // determine payload type and run decoder