changeset 1375:2bd83cd4d2b2

test_ccload: cache Credit-Control-Request object
author Thomas Klausner <tk@giga.or.at>
date Thu, 20 Jun 2019 10:37:54 +0200
parents e99e8f20b346
children b8afaf63f65a
files extensions/test_ccload/test_ccload.c
diffstat 1 files changed, 5 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- 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 ) );
"Welcome to our mercurial repository"