summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2010-07-20 12:22:50 +0200
committerHarald Welte <laforge@gnumonks.org>2010-07-20 12:22:50 +0200
commit933af61ba590a026cf9e0f6eba6af290bca421de (patch)
treebcbd9b891d553348d25ad1b86c575cf4576bb64b
parent48ac4af172db5ebbece029e1cc2dc785c73fbb77 (diff)
make sure TC-END.req TCMessage contains destination trans_id
-rw-r--r--src/csl_dha.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/csl_dha.c b/src/csl_dha.c
index e868fb1..e335ade 100644
--- a/src/csl_dha.c
+++ b/src/csl_dha.c
@@ -410,6 +410,7 @@ int tcap_csl_tc_end_req(struct tcap_dialogue *td, OBJECT_IDENTIFIER_t *app_ctx,
struct TCMessage tcm;
ANY_t *any = NULL;
int rc = 0;
+ uint32_t trans_id;
memset(&tcm, 0, sizeof(tcm));
tcm.present = TCMessage_PR_end;
@@ -448,6 +449,12 @@ int tcap_csl_tc_end_req(struct tcap_dialogue *td, OBJECT_IDENTIFIER_t *app_ctx,
/* Process components */
/* Assemble TLS user data */
tcm.choice.end.components = tcap_cha_req_components(td);
+
+ /* Assign remote transaction ID */
+ trans_id = htonl(td->trans.tid_remote);
+ OCTET_STRING_fromBuf(&tcm.choice.end.dtid,
+ (const char *) &trans_id, sizeof(trans_id));
+
/* TR-END.req to TSL */
rc = tcap_tco_tr_end_req(&td->trans, &tcm);
asn_DEF_ANY.free_struct(&asn_DEF_ANY, any, 0);