Changeset 120:d7acdc46134d in freeDiameter for extensions/test_app/ta_cli.c
- Timestamp:
- Dec 9, 2009, 5:36:38 PM (14 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
extensions/test_app/ta_cli.c
r99 r120 40 40 */ 41 41 42 #include " app_test.h"42 #include "test_app.h" 43 43 44 44 #include <stdio.h> 45 45 46 static struct session_handler * atst_cli_reg = NULL;47 48 struct atst_mess_info {46 static struct session_handler * ta_cli_reg = NULL; 47 48 struct ta_mess_info { 49 49 int32_t randval; /* a random value to store in Test-AVP */ 50 50 struct timespec ts; /* Time of sending the message */ … … 52 52 53 53 /* Cb called when an answer is received */ 54 static void atst_cb_ans(void * data, struct msg ** msg)55 { 56 struct atst_mess_info * mi = NULL;54 static void ta_cb_ans(void * data, struct msg ** msg) 55 { 56 struct ta_mess_info * mi = NULL; 57 57 struct timespec ts; 58 58 struct session * sess; … … 68 68 ASSERT( new == 0 ); 69 69 70 CHECK_FCT_DO( fd_sess_state_retrieve( atst_cli_reg, sess, &mi ), return );70 CHECK_FCT_DO( fd_sess_state_retrieve( ta_cli_reg, sess, &mi ), return ); 71 71 TRACE_DEBUG( INFO, "%p %p", mi, data); 72 72 ASSERT( (void *)mi == data ); … … 77 77 78 78 /* Value of Test-AVP */ 79 CHECK_FCT_DO( fd_msg_search_avp ( *msg, atst_avp, &avp), return );79 CHECK_FCT_DO( fd_msg_search_avp ( *msg, ta_avp, &avp), return ); 80 80 if (avp) { 81 81 CHECK_FCT_DO( fd_msg_avp_hdr( avp, &hdr ), return ); … … 86 86 87 87 /* Value of Result Code */ 88 CHECK_FCT_DO( fd_msg_search_avp ( *msg, atst_res_code, &avp), return );88 CHECK_FCT_DO( fd_msg_search_avp ( *msg, ta_res_code, &avp), return ); 89 89 if (avp) { 90 90 CHECK_FCT_DO( fd_msg_avp_hdr( avp, &hdr ), return ); … … 95 95 96 96 /* Value of Origin-Host */ 97 CHECK_FCT_DO( fd_msg_search_avp ( *msg, atst_origin_host, &avp), return );97 CHECK_FCT_DO( fd_msg_search_avp ( *msg, ta_origin_host, &avp), return ); 98 98 if (avp) { 99 99 CHECK_FCT_DO( fd_msg_avp_hdr( avp, &hdr ), return ); … … 104 104 105 105 /* Value of Origin-Realm */ 106 CHECK_FCT_DO( fd_msg_search_avp ( *msg, atst_origin_realm, &avp), return );106 CHECK_FCT_DO( fd_msg_search_avp ( *msg, ta_origin_realm, &avp), return ); 107 107 if (avp) { 108 108 CHECK_FCT_DO( fd_msg_avp_hdr( avp, &hdr ), return ); … … 136 136 137 137 /* Create a test message */ 138 static void atst_cli_test_message(void)138 static void ta_cli_test_message(void) 139 139 { 140 140 struct msg * req = NULL; 141 141 struct avp * avp; 142 142 union avp_value val; 143 struct atst_mess_info * mi = NULL, *svg;143 struct ta_mess_info * mi = NULL, *svg; 144 144 struct session *sess = NULL; 145 145 … … 147 147 148 148 /* Create the request from template */ 149 CHECK_FCT_DO( fd_msg_new( atst_cmd_r, MSGFL_ALLOC_ETEID, &req ), goto out );149 CHECK_FCT_DO( fd_msg_new( ta_cmd_r, MSGFL_ALLOC_ETEID, &req ), goto out ); 150 150 151 151 /* Create a new session */ … … 153 153 154 154 /* Create the random value to store with the session */ 155 mi = malloc(sizeof(struct atst_mess_info));155 mi = malloc(sizeof(struct ta_mess_info)); 156 156 if (mi == NULL) { 157 157 fd_log_debug("malloc failed: %s", strerror(errno)); … … 167 167 char * sid; 168 168 CHECK_FCT_DO( fd_sess_getsid ( sess, &sid ), goto out ); 169 CHECK_FCT_DO( fd_msg_avp_new ( atst_sess_id, 0, &avp ), goto out );169 CHECK_FCT_DO( fd_msg_avp_new ( ta_sess_id, 0, &avp ), goto out ); 170 170 val.os.data = sid; 171 171 val.os.len = strlen(sid); … … 177 177 /* Set the Destination-Realm AVP */ 178 178 { 179 CHECK_FCT_DO( fd_msg_avp_new ( atst_dest_realm, 0, &avp ), goto out );180 val.os.data = (unsigned char *)( atst_conf->dest_realm);181 val.os.len = strlen( atst_conf->dest_realm);179 CHECK_FCT_DO( fd_msg_avp_new ( ta_dest_realm, 0, &avp ), goto out ); 180 val.os.data = (unsigned char *)(ta_conf->dest_realm); 181 val.os.len = strlen(ta_conf->dest_realm); 182 182 CHECK_FCT_DO( fd_msg_avp_setvalue( avp, &val ), goto out ); 183 183 CHECK_FCT_DO( fd_msg_avp_add( req, MSG_BRW_LAST_CHILD, avp ), goto out ); … … 185 185 186 186 /* Set the Destination-Host AVP if needed*/ 187 if ( atst_conf->dest_host) {188 CHECK_FCT_DO( fd_msg_avp_new ( atst_dest_host, 0, &avp ), goto out );189 val.os.data = (unsigned char *)( atst_conf->dest_host);190 val.os.len = strlen( atst_conf->dest_host);187 if (ta_conf->dest_host) { 188 CHECK_FCT_DO( fd_msg_avp_new ( ta_dest_host, 0, &avp ), goto out ); 189 val.os.data = (unsigned char *)(ta_conf->dest_host); 190 val.os.len = strlen(ta_conf->dest_host); 191 191 CHECK_FCT_DO( fd_msg_avp_setvalue( avp, &val ), goto out ); 192 192 CHECK_FCT_DO( fd_msg_avp_add( req, MSG_BRW_LAST_CHILD, avp ), goto out ); … … 199 199 /* Set the Test-AVP AVP */ 200 200 { 201 CHECK_FCT_DO( fd_msg_avp_new ( atst_avp, 0, &avp ), goto out );201 CHECK_FCT_DO( fd_msg_avp_new ( ta_avp, 0, &avp ), goto out ); 202 202 val.i32 = mi->randval; 203 203 CHECK_FCT_DO( fd_msg_avp_setvalue( avp, &val ), goto out ); … … 211 211 212 212 /* Store this value in the session */ 213 CHECK_FCT_DO( fd_sess_state_store ( atst_cli_reg, sess, &mi ), goto out );213 CHECK_FCT_DO( fd_sess_state_store ( ta_cli_reg, sess, &mi ), goto out ); 214 214 215 215 /* Log sending the message */ 216 fprintf(stderr, "SEND %x to '%s' (%s)\n", svg->randval, atst_conf->dest_realm, atst_conf->dest_host?:"-" );216 fprintf(stderr, "SEND %x to '%s' (%s)\n", svg->randval, ta_conf->dest_realm, ta_conf->dest_host?:"-" ); 217 217 fflush(stderr); 218 218 219 219 /* Send the request */ 220 CHECK_FCT_DO( fd_msg_send( &req, atst_cb_ans, svg ), goto out );220 CHECK_FCT_DO( fd_msg_send( &req, ta_cb_ans, svg ), goto out ); 221 221 222 222 out: … … 225 225 } 226 226 227 int atst_cli_init(void)228 { 229 CHECK_FCT( fd_sess_handler_create(& atst_cli_reg, free) );230 231 CHECK_FCT( atst_sig_init(atst_cli_test_message) );227 int ta_cli_init(void) 228 { 229 CHECK_FCT( fd_sess_handler_create(&ta_cli_reg, free) ); 230 231 CHECK_FCT( ta_sig_init(ta_cli_test_message) ); 232 232 233 233 return 0; 234 234 } 235 235 236 void atst_cli_fini(void)237 { 238 (void) fd_sess_handler_destroy(& atst_cli_reg);239 240 atst_sig_fini();236 void ta_cli_fini(void) 237 { 238 (void) fd_sess_handler_destroy(&ta_cli_reg); 239 240 ta_sig_fini(); 241 241 242 242 return;
Note: See TracChangeset
for help on using the changeset viewer.