aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2022-11-18 14:40:41 +0100
committerPau Espin Pedrol <pespin@sysmocom.de>2022-11-21 10:56:52 +0100
commitf5001d4148d44f3c9ab21acd0013030f6f2b8367 (patch)
tree35008ac637d6185050b4cba26b0639cac2694b69
parent8eeb8220e144dfa022ea266dfb4858ef10c58c00 (diff)
amr: Guard against incorrect AMR FT passed to osmo_amr_{bits,bytes}()
Fixes: Coverity CID#283433 Change-Id: Ib11d4b64c6df19a85c4374fde89e1b56f410e438
-rw-r--r--src/amr.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/amr.c b/src/amr.c
index 6ed5b6c..1b750eb 100644
--- a/src/amr.c
+++ b/src/amr.c
@@ -14,6 +14,8 @@
#include <unistd.h>
#include <string.h>
#include <stdbool.h>
+
+#include <osmocom/core/utils.h>
#include <osmocom/netif/amr.h>
/* According to TS 26.101:
@@ -56,11 +58,13 @@ static size_t amr_ft_to_bytes[AMR_FT_MAX] = {
size_t osmo_amr_bits(uint8_t amr_ft)
{
+ OSMO_ASSERT(amr_ft < AMR_FT_MAX);
return amr_ft_to_bits[amr_ft];
}
size_t osmo_amr_bytes(uint8_t amr_ft)
{
+ OSMO_ASSERT(amr_ft < AMR_FT_MAX);
return amr_ft_to_bytes[amr_ft];
}