From 0e18824f3b2907f272a5ef687a717b1aef0e3e8d Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 22 Nov 2020 21:46:48 +0100 Subject: gpborxy: Implement variety of paging tests for PS-PAGING and CS-PAGING Change-Id: Ida44b62dfdb9c4ce2755de63d51a9907d34f247f --- library/Osmocom_Gb_Types.ttcn | 50 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) (limited to 'library') diff --git a/library/Osmocom_Gb_Types.ttcn b/library/Osmocom_Gb_Types.ttcn index 2c82437e..ee03a8a1 100644 --- a/library/Osmocom_Gb_Types.ttcn +++ b/library/Osmocom_Gb_Types.ttcn @@ -829,6 +829,13 @@ octetstring sdu) := { digits := imsi } + template (present) TMSI_BSSGP tr_BSSGP_TMSI(GsmTmsi tmsi) := { + iEI := '20'O, + ext := '1'B, + lengthIndicator := { length1 := 4 }, + tMSI_Value := int2oct(tmsi, 4) + } + template TMSI_BSSGP ts_BSSGP_TMSI(GsmTmsi tmsi) := { iEI := '20'O, ext := '1'B, @@ -1556,7 +1563,45 @@ octetstring sdu) := { } } - template (value) Routeing_Area ts_BSSGP_RA_ID(RoutingAreaIdentification input) := { + template (value) Paging_Field4 ts_BssgpP4BssArea := { + bSS_Area_Indication := { + iEI := '02'O, + ext := '1'B, + lengthIndicator := { + length1 := 1 + }, + bSS_indicator := '00'O + } + } + + template (value) Paging_Field4 ts_BssgpP4LAC(GSM_Types.LocationAreaIdentification lai) := { + location_Area := ts_BSSGP_LA_ID(lai) + } + + template (value) Paging_Field4 ts_BssgpP4RAC(GSM_Types.RoutingAreaIdentification rai) := { + routeing_Area := ts_BSSGP_RA_ID(rai) + } + + template (value) Paging_Field4 ts_BssgpP4Bvci(BssgpBvci bvci) := { + bVCI := t_BSSGP_BVCI(bvci) + } + + template (value) Location_Area ts_BSSGP_LA_ID(GSM_Types.LocationAreaIdentification input) := { + iEI := '10'O, + ext := '1'B, + lengthIndicator := { + length1 := 5 + }, + mccDigit1 := input.mcc_mnc[0], + mccDigit2 := input.mcc_mnc[1], + mccDigit3 := input.mcc_mnc[2], + mncDigit3 := input.mcc_mnc[3], + mncDigit1 := input.mcc_mnc[4], + mncDigit2 := input.mcc_mnc[5], + lac := int2oct(input.lac, 2) + } + + template (value) Routeing_Area ts_BSSGP_RA_ID(GSM_Types.RoutingAreaIdentification input) := { iEI := '1B'O, ext := '1'B, lengthIndicator := { @@ -1754,8 +1799,7 @@ octetstring sdu) := { BSSGP_RADIO_CAUSE_CELL_RESEL_FAILURE ('04'H) } with { variant "FIELDLENGTH(8)" }; - - function ts_BSSGP_RADIO_CAUSE(template (omit) BssgpRadioCause cause) return template (omit) Radio_Cause { + function ts_BSSGP_RADIO_CAUSE(template (omit) BssgpRadioCause cause) return template (omit) Radio_Cause { var template (omit) Radio_Cause ret; if (istemplatekind(cause, "omit")) { ret := omit; -- cgit v1.2.3