From 7d1b12d1bce41a632e85d2e135aa4cdddff01327 Mon Sep 17 00:00:00 2001 From: Carsten Date: Tue, 8 Apr 2025 22:00:16 +0200 Subject: [PATCH 1/2] Ignore unknown AVPs in replies --- modules/aaa_diameter/dm_impl.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/modules/aaa_diameter/dm_impl.c b/modules/aaa_diameter/dm_impl.c index 3cc9d9e9037..423dd539a04 100644 --- a/modules/aaa_diameter/dm_impl.c +++ b/modules/aaa_diameter/dm_impl.c @@ -412,11 +412,11 @@ static int dm_avps2json(void *root, cJSON *avps) memset(&ar, 0, sizeof ar); ar.avp_code = h->avp_code; ar.avp_vendor = h->avp_vendor; - FD_CHECK_GT(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_CODE_AND_VENDOR, - &ar, &obj, ENOENT)); + __FD_CHECK_GT(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_CODE_AND_VENDOR, + &ar, &obj, ENOENT), 0, skip); } else { - FD_CHECK_GT(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_CODE, - &h->avp_code, &obj, ENOENT)); + __FD_CHECK_GT(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_CODE, + &h->avp_code, &obj, ENOENT), 0, skip); } FD_CHECK_GT(fd_dict_getval(obj, &dm_avp)); @@ -514,6 +514,7 @@ static int dm_avps2json(void *root, cJSON *avps) cJSON_AddItemToObject(item, dm_avp.avp_name, val); cJSON_AddItemToArray(avps, item); +skip: FD_CHECK_GT(fd_msg_browse(it, MSG_BRW_NEXT, &it, NULL)); i++; } From e7def897341a883cf2597f19d86dbd10d7513d3c Mon Sep 17 00:00:00 2001 From: Carsten Date: Tue, 8 Apr 2025 22:36:37 +0200 Subject: [PATCH 2/2] Clarify Log --- modules/aaa_diameter/dm_impl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/aaa_diameter/dm_impl.c b/modules/aaa_diameter/dm_impl.c index 423dd539a04..b44999076b2 100644 --- a/modules/aaa_diameter/dm_impl.c +++ b/modules/aaa_diameter/dm_impl.c @@ -525,7 +525,7 @@ static int dm_avps2json(void *root, cJSON *avps) out: cJSON_Delete(item); - LM_DBG("------------ END AVP iteration ----------------\n"); + LM_DBG("------------ END AVP iteration (failure) ----------------\n"); return -1; }