From 2000c2e5b55ce4a018dd8ef99436f8a9d2e88385 Mon Sep 17 00:00:00 2001 From: Fabricio Santolin da Silva Date: Wed, 25 Jun 2025 16:56:22 +0200 Subject: [PATCH] MT#63079 Add check for avp name initialization This patch check if the name passed to $avp was correctly initialized. If not initialized it will print an error message and return 0 (no match). Change-Id: Icc84f0ff1103eb759b2282bd76951a8410225910 --- debian/patches/series | 1 + debian/patches/sipwise/add_check_avp_name.patch | 13 +++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 debian/patches/sipwise/add_check_avp_name.patch diff --git a/debian/patches/series b/debian/patches/series index d32448812..53d66dac2 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -64,3 +64,4 @@ sipwise/permissions-don-t-allow-reloads-in-the-middle-of-ong.patch ## git checkout -- debian/ ### git commit + git-review as usual ### +sipwise/add_check_avp_name.patch diff --git a/debian/patches/sipwise/add_check_avp_name.patch b/debian/patches/sipwise/add_check_avp_name.patch new file mode 100644 index 000000000..d67536a2a --- /dev/null +++ b/debian/patches/sipwise/add_check_avp_name.patch @@ -0,0 +1,13 @@ +--- a/src/core/usr_avp.c ++++ b/src/core/usr_avp.c +@@ -391,6 +391,10 @@ static inline int match_by_id(avp_t *avp + static inline int match_by_name(avp_t *avp, avp_id_t id, str *name) + { + str *avp_name; ++ if (!name || !name->s || name->len <= 0) { ++ LM_ERR("Invalid AVP name pointer\n"); ++ return 0; ++ } + if(id == avp->id && avp->flags & AVP_NAME_STR + && (avp_name = get_avp_name(avp)) != 0 && avp_name->len == name->len + && !strncasecmp(avp_name->s, name->s, name->len)) {