# HG changeset patch # User Thomas Klausner # Date 1561019874 -7200 # Node ID 2bd83cd4d2b22eeff9e689988ed3d5de78806b52 # Parent e99e8f20b346a8758e7fdee3c86984ca13f0f68f test_ccload: cache Credit-Control-Request object diff -r e99e8f20b346 -r 2bd83cd4d2b2 extensions/test_ccload/test_ccload.c --- a/extensions/test_ccload/test_ccload.c Thu Jun 13 11:26:42 2019 +0200 +++ b/extensions/test_ccload/test_ccload.c Thu Jun 20 10:37:54 2019 +0200 @@ -59,6 +59,8 @@ struct dict_object * ph_avp_do; /* cache the Proxy-Host dictionary object */ struct dict_object * ps_avp_do; /* cache the Proxy-State dictionary object */ +struct dict_object * ccr_do; /* cache the Credit-Control-Request command dictionary object */ + struct statistics { uint64_t sent; uint64_t success; @@ -154,7 +156,6 @@ /* create message to send */ struct msg *create_message(const char *destination) { - struct dict_object *command; struct msg *msg; struct avp *avp, *avp1; union avp_value val; @@ -165,12 +166,7 @@ const char *proxy_host = "Dummy-Proxy-Host-to-Increase-Package-Size"; const char *proxy_state = "This is just data to increase the package size\nXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; - if (fd_dict_search(fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Credit-Control-Request", &command, ENOENT) != 0) { - fd_log_error("can't find template for 'Credit-Control-Request'"); - return NULL; - } - - if (fd_msg_new(command, MSGFL_ALLOC_ETEID, &msg) != 0) { + if (fd_msg_new(ccr_do, MSGFL_ALLOC_ETEID, &msg) != 0) { fd_log_error("can't create new 'Credit-Control-Request' message"); return NULL; } @@ -395,6 +391,8 @@ { LOG_E("Unable to find 'Proxy-Host' AVP in the loaded dictionaries."); }); CHECK_FCT_DO(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, "Proxy-State", &ps_avp_do, ENOENT), { LOG_E("Unable to find 'Proxy-State' AVP in the loaded dictionaries."); }); + CHECK_FCT_DO(fd_dict_search(fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Credit-Control-Request", &ccr_do, ENOENT), + { LOG_E("Unable to find 'Credit-Control-Request' command in the loaded dictionaries."); }); /* Start the generator thread */ CHECK_POSIX( pthread_create( &gen_thr, NULL, gen_thr_fct, NULL ) );