Mercurial > hg > freeDiameter
changeset 1457:da5e5b9c9623
dbg_dict_dump_json: fix ERROR warnings in log
fd_dict_search(TYPE_OF_AVP) matches NULL when the AVP is not derived,
so don't call fd_dict_getval() in that case.
Fixes the ERROR logs from dbg_dict_dump_json.
author | Luke Mewburn <luke@mewburn.net> |
---|---|
date | Fri, 28 Feb 2020 11:05:24 +1100 |
parents | 8627338e36ab |
children | c25dea477d6a |
files | extensions/dbg_dict_dump_json/dbg_dict_dump_json.cc |
diffstat | 1 files changed, 6 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/extensions/dbg_dict_dump_json/dbg_dict_dump_json.cc Fri Feb 28 10:21:52 2020 +1100 +++ b/extensions/dbg_dict_dump_json/dbg_dict_dump_json.cc Fri Feb 28 11:05:24 2020 +1100 @@ -32,8 +32,6 @@ /* * Dump Diameter dictionary to JSON file. - * - * TODO: find out reason for many warnings in log */ #include <freeDiameter/extension.h> @@ -161,8 +159,12 @@ Json::Value avp; char flags[10]; - fd_dict_search(fd_g_config->cnf_dict, DICT_TYPE, TYPE_OF_AVP, self, &type, ENOENT); - if (fd_dict_getval(type, &type_data) != 0) { + if (fd_dict_search(fd_g_config->cnf_dict, DICT_TYPE, TYPE_OF_AVP, self, &type, 0) != 0) { + /* TODO: fd_dict_search error */ + return; + } + + if ((type == NULL) || (fd_dict_getval(type, &type_data) != 0)) { avp["Type"] = Json::Value(type_base_name[data->avp_basetype]); } else { if (strstr(type_data.type_name, "Enumerated") != 0) {