From 4eef43beeeec3dc0b20750a49ab642fbdc88a9e7 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Mon, 10 Jun 2013 12:27:28 +0200 Subject: [PATCH] DHA: Ensure TR-END always contains a valid TR-userData record otherwise the ASN1 encoder will raise an exception --- TCAP/src/ITU/tcap_dha_fsm.erl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/TCAP/src/ITU/tcap_dha_fsm.erl b/TCAP/src/ITU/tcap_dha_fsm.erl index 7e3fe6e..95e7104 100644 --- a/TCAP/src/ITU/tcap_dha_fsm.erl +++ b/TCAP/src/ITU/tcap_dha_fsm.erl @@ -486,7 +486,7 @@ initiation_sent({'TR', 'CONTINUE', indication, ContParms}, State) when is_record #'ABRT-apdu'{'abort-source' = 'dialogue-service-provider'}), UserData = #'TR-user-data'{dialoguePortion = dialogue_ext(ABRT)}, %% TR-U-ABORT request to TSL - TrParms = #'TR-U-ABORT'{qos = ContParms#'TC-U-ABORT'.qos, + TrParms = #'TR-U-ABORT'{qos = ContParms#'TR-CONTINUE'.qos, transactionID = NewState#state.otid, userData = UserData}, LastState = State#state{parms = ContParms}, gen_server:cast(LastState#state.tco, {'TR', 'U-ABORT', request, TrParms}), @@ -625,6 +625,7 @@ active({'TC', 'CONTINUE', request, ContParms}, State) when is_record(ContParms, active({'TC', 'END', request, EndParms}, State) when is_record(EndParms, 'TC-END') -> TrParms = #'TR-END'{qos = EndParms#'TC-END'.qos, transactionID = State#state.otid, + userData = #'TR-user-data'{dialoguePortion = EndParms#'TC-END'.userInfo}, termination = EndParms#'TC-END'.termination}, NewState = State#state{parms = TrParms}, %% Prearranged end?