This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
laforge gerrit-no-reply at lists.osmocom.orglaforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/25957 ) Change subject: sccp: Add TC_process_rx_xudt, verifying reception of SCCP XUDT ...................................................................... sccp: Add TC_process_rx_xudt, verifying reception of SCCP XUDT Test if a XUDT SCCP message is processed by libosmo-sigtran. We assume any XUDT is received (and echoed back) just like normal UDT. Related: OS#5281, SYS#5674 Change-Id: Idbf6db7a684e51858129618b2fcffcbe55b1b70f --- M library/SCCP_Templates.ttcn M sccp/SCCP_Tests_RAW.ttcn 2 files changed, 73 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/57/25957/1 diff --git a/library/SCCP_Templates.ttcn b/library/SCCP_Templates.ttcn index 5167e4b..74f1a20 100644 --- a/library/SCCP_Templates.ttcn +++ b/library/SCCP_Templates.ttcn @@ -171,6 +171,53 @@ } } +template (value) PDU_SCCP ts_SCCP_XUDT(SCCP_PAR_Address calling, SCCP_PAR_Address called, + template (value) octetstring data, + template (value) BIT4 msg_hdl := '0000'B, + template (value) integer hop_ctr := 16) := { + extudata := { + messageType := xudt, + protClass := {'0000'B, msg_hdl}, + hopCounter := hop_ctr, + pointer1 := 0, /* overwritten */ + pointer2 := 0, /* overwritten */ + pointer3 := 0, /* overwritten */ + pointer4 := 0, /* overwritten */ + calledPAddress := ConvertASPAddressToEncodedAddress_itu(called), + callingPAddress := ConvertASPAddressToEncodedAddress_itu(calling), + data := { + paramLength := 0, + data := data + }, + optionalPart := omit, + eop := omit + } +} + +template PDU_SCCP tr_SCCP_XUDT(template (present) SCCP_PAR_Address calling, template (present) SCCP_PAR_Address called, + template octetstring data := ?, + template BIT4 msg_hdl := '0000'B, + template integer hop_ctr := ?) := { + extudata := { + messageType := xudt, + protClass := {'0000'B, msg_hdl}, + hopCounter := hop_ctr, + pointer1 := ?, + pointer2 := ?, + pointer3 := ?, + pointer4 := ?, + calledPAddress := tr_Addr(called), + callingPAddress := tr_Addr(calling), + data := { + paramLength := ?, + data := data + }, + optionalPart := { segmentation:= omit, importance := * } ifpresent, + eop := { paramName:= con_SCCP_eop } ifpresent + } +} + + template PDU_SCCP tr_SCCP_IT(template (present) OCT3 source_lref := ?, template (present) OCT3 dest_lref := ?) := { inacttest := { diff --git a/sccp/SCCP_Tests_RAW.ttcn b/sccp/SCCP_Tests_RAW.ttcn index 1ac82a2..5013ddf 100644 --- a/sccp/SCCP_Tests_RAW.ttcn +++ b/sccp/SCCP_Tests_RAW.ttcn @@ -310,6 +310,31 @@ } } +private function f_tx_xudt_exp(SCCP_PAR_Address calling, SCCP_PAR_Address called, octetstring data) runs on SCCP_Test_RAW_CT { + var template PDU_SCCP exp_rx; + f_send_sccp(ts_SCCP_XUDT(calling, called, data)); + exp_rx := (tr_SCCP_UDT(called, calling, data), tr_SCCP_XUDT(called, calling, data)); + f_exp_sccp(exp_rx); +} + +/* Test if the IUT SCCP code processes an XUDT [treat it like UDT] and answers back. */ +testcase TC_process_rx_xudt() runs on SCCP_Test_RAW_CT { + var SCCP_PAR_Address calling, called; + var octetstring data := f_rnd_octstring(f_rnd_int(100)); + + f_init_raw(mp_sccp_cfg[0]); + f_sleep(1.0); + + called := valueof(ts_SccpAddr_PC_SSN(mp_sccp_cfg[0].peer_pc, mp_sccp_cfg[0].peer_ssn, + mp_sccp_cfg[0].sio, mp_sccp_cfg[0].sccp_service_type)); + calling := valueof(ts_SccpAddr_PC_SSN(mp_sccp_cfg[0].own_pc, mp_sccp_cfg[0].own_ssn, + mp_sccp_cfg[0].sio, mp_sccp_cfg[0].sccp_service_type)); + + /* Make sure an XUDT is echoed back just like an UDT */ + f_tx_xudt_exp(calling, called, data); + setverdict(pass); +} + function f_scmg_xceive(SCCP_PAR_Address calling, SCCP_PAR_Address called, template (value) PDU_SCMG_message tx, template (omit) PDU_SCMG_message rx_exp, @@ -429,6 +454,7 @@ execute( TC_udt_without_cr_cc() ); execute( TC_tiar_timeout() ); execute( TC_it_avoids_tiar() ); + execute( TC_process_rx_xudt() ); execute( TC_scmg_sst_ssn1() ); execute( TC_scmg_sst_ssn_valid() ); -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/25957 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Idbf6db7a684e51858129618b2fcffcbe55b1b70f Gerrit-Change-Number: 25957 Gerrit-PatchSet: 1 Gerrit-Owner: laforge <laforge at osmocom.org> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20211026/fb3f6494/attachment.htm>