923 lines
30 KiB
Plaintext
923 lines
30 KiB
Plaintext
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
// //
|
||
|
// Copyright Test Competence Center (TCC) ETH 2008 //
|
||
|
// //
|
||
|
// The copyright to the computer program(s) herein is the property of TCC. //
|
||
|
// The program(s) may be used and/or copied only with the written permission //
|
||
|
// of TCC or in accordance with the terms and conditions stipulated in the //
|
||
|
// agreement/contract under which the program(s) has been supplied. //
|
||
|
// //
|
||
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// File: BSSAPp_Types.ttcn
|
||
|
// Rev: R1A01
|
||
|
// Prodnr: CNL 113 580
|
||
|
// Updated: 2008-01-24
|
||
|
// Contact: http://ttcn.ericsson.se
|
||
|
// Reference: BSSAP+, 3GPP TS 29.018 v7.3.0 (2006-12)
|
||
|
|
||
|
module BSSAPp_Types { // beginning of module
|
||
|
|
||
|
// This module contains the BSSAP+ type definitions based on
|
||
|
// 29.018 v7.3.0 (2006-12)
|
||
|
// with attributes for RAW encoding/decoding.
|
||
|
|
||
|
import from General_Types all;
|
||
|
|
||
|
external function enc_PDU_BSSAPp(in PDU_BSSAPp pdu) return octetstring
|
||
|
with { extension "prototype(convert)"
|
||
|
extension "encode(RAW)"
|
||
|
}
|
||
|
|
||
|
external function dec_PDU_BSSAPp(in octetstring stream) return PDU_BSSAPp
|
||
|
with { extension "prototype(convert)"
|
||
|
extension "decode(RAW)"
|
||
|
}
|
||
|
|
||
|
//====================================================================
|
||
|
// Message type
|
||
|
// Reference: 29.018 18.2
|
||
|
//====================================================================
|
||
|
|
||
|
type BIT8 ST_BSSAPp_Msg_type with { variant "" };
|
||
|
|
||
|
//====================================================================
|
||
|
// IMSI
|
||
|
// Reference: 29.018 18.4.10
|
||
|
//====================================================================
|
||
|
|
||
|
type hexstring IMSIDigits length(1..15) with { variant "HEXORDER(low)" };
|
||
|
|
||
|
type record STR_BSSAPp_IMSI {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT3 first_3_BIT, //this is always '001'B
|
||
|
BIT1 parity, // 0 - Even, 1 - Odd
|
||
|
IMSIDigits iMSIdigits,
|
||
|
BIT4 fillerDigit optional // B'1111, fillerDigit is present
|
||
|
// if oddevenIndicator=0
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator)
|
||
|
"LENGTHTO (first_3_BIT, parity, iMSIdigits, fillerDigit)";
|
||
|
variant (fillerDigit) "PRESENCE (parity = '0'B) ";
|
||
|
};
|
||
|
|
||
|
|
||
|
//====================================================================
|
||
|
// Gs Cause
|
||
|
// Reference: 29.018 18.4.7
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Gs_Cause {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT1 gsCauseValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (gsCauseValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// VLR Number
|
||
|
// Reference: 29.018 18.4.26
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_VLR_Number {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT8 first_8_BIT, //this is always '10010001'B
|
||
|
IMSIDigits vLRdigits
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (first_8_BIT, vLRdigits)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Downlink Tunnel Payload Control and Info
|
||
|
// Reference: 29.018 18.4.3
|
||
|
//====================================================================
|
||
|
|
||
|
|
||
|
type record STR_BSSAPp_Downlink_Tunnel_Payload_Control_And_Info {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT2 tunnelPriority,
|
||
|
BIT1 e,
|
||
|
BIT4 protocolDiscriminator,
|
||
|
BIT1 spare,
|
||
|
octetstring tunnelPayload
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator)
|
||
|
"LENGTHTO (tunnelPriority, e, protocolDiscriminator, spare, tunnelPayload)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// SGSN Number
|
||
|
// Reference: 29.018 18.4.22
|
||
|
//====================================================================
|
||
|
|
||
|
type STR_BSSAPp_VLR_Number STR_BSSAPp_SGSN_Number with { variant "" };
|
||
|
|
||
|
//====================================================================
|
||
|
// IMSI Detach from GPRS Service Type
|
||
|
// Reference: 29.018 18.4.11
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_IMSI_Detach_from_GPRS_service_type {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT8 iMSIDetachFromGPRSServiceTypeValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (iMSIDetachFromGPRSServiceTypeValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Cell Global Identity
|
||
|
// Reference: 29.018 18.4.1
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Cell_Global_Identity {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
octetstring cellGlobalIdentityValue length(8)
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (cellGlobalIdentityValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Service Area Identification
|
||
|
// Reference: 29.018 18.4.21b
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Service_Area_Identification {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
octetstring serviceAreaIdentificationValue length(7)
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (serviceAreaIdentificationValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// IMSI Detach from Non-GPRS Service Type
|
||
|
// Reference: 29.018 18.4.12
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_IMSI_detach_from_non_GPRS_service_type {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT8 iMSIDetachFromNonGPRSServiceTypeValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (iMSIDetachFromNonGPRSServiceTypeValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Location Information Age
|
||
|
// Reference: 29.018 18.4.15
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Location_Information_Age {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT2 locationInformationAge
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (locationInformationAge)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Location Area Identifier
|
||
|
// Reference: 29.018 18.4.14
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Location_Area_Identifier {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT5 locationAreaIdentifierValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (locationAreaIdentifierValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Mobile Identity
|
||
|
// Reference: 29.018 18.4.17
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Mobile_Identity {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
octetstring mobileIdentityValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (mobileIdentityValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Reject Cause
|
||
|
// Reference: 29.018 18.4.21
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Reject_Cause {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT1 rejectCauseValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (rejectCauseValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// GPRS Location Update Type
|
||
|
// Reference: 29.018 18.4.6
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_GPRS_Location_Update_Type {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT8 gPRSLocationUpdateTypeValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (gPRSLocationUpdateTypeValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Mobile Station Classmark 1
|
||
|
// Reference: 29.018 18.4.18
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Mobile_Station_Classmark1 {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT1 mobileStationClassmarkValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (mobileStationClassmarkValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// TMSI Status
|
||
|
// Reference: 29.018 18.4.24
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_TMSI_Status {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT1 tIMSIFlag,
|
||
|
BIT7 spare
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (tIMSIFlag, spare)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// IMEISV
|
||
|
// Reference: 29.018 18.4.9
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_IMEISV {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
hexstring digits length (16)
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (digits)";
|
||
|
};
|
||
|
|
||
|
|
||
|
//====================================================================
|
||
|
// MM Information
|
||
|
// Reference: 29.018 18.4.16
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_MM_Information {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
octetstring mMInformationValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (mMInformationValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Erroneous Message
|
||
|
// Reference: 29.018 18.4.5
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Erroneous_Message {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
octetstring erroneousMessageValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (erroneousMessageValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Information Requested
|
||
|
// Reference: 29.018 18.4.13
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Information_Requested {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT8 informationRequestedValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (informationRequestedValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// TMSI
|
||
|
// Reference: 29.018 18.4.23
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_TMSI {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT4 tMSIoctets
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (tMSIoctets)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// PTMSI
|
||
|
// Reference: 29.018 18.4.20
|
||
|
//====================================================================
|
||
|
|
||
|
type STR_BSSAPp_TMSI STR_BSSAPp_PTMSI with { variant "" };
|
||
|
|
||
|
//====================================================================
|
||
|
// IMEI
|
||
|
// Reference: 29.018 18.4.8
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_IMEI {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
hexstring digits length (14),
|
||
|
OCT1 lastOctet //should be 'F0'O
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (digits, lastOctet)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Mobile Station State
|
||
|
// Reference: 29.018 18.4.19
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Mobile_Station_State {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
BIT8 mobileStationStateValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (mobileStationStateValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Channel Needed
|
||
|
// Reference: 29.018 18.4.2
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Channel_Needed {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT1 channelNeededValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (channelNeededValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// eMLPP Priority
|
||
|
// Reference: 29.018 18.4.4
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_eMLPP_Priority {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
OCT1 eMLPPPriorityValue
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (eMLPPPriorityValue)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Global CN-Id
|
||
|
// Reference: 29.018 18.4.27
|
||
|
//====================================================================
|
||
|
|
||
|
type record STR_BSSAPp_Global_CN_Id {
|
||
|
BIT8 iEI,
|
||
|
LIN1 lengthIndicator,
|
||
|
HEX6n pLMN_Id,
|
||
|
OCT2 CN_Id
|
||
|
}
|
||
|
with {
|
||
|
variant (lengthIndicator) "LENGTHTO (pLMN_Id, CN_Id)";
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// Downlink Tunnel Payload Control and Info
|
||
|
// Reference: 29.018 18.4.25
|
||
|
//====================================================================
|
||
|
|
||
|
type STR_BSSAPp_Downlink_Tunnel_Payload_Control_And_Info
|
||
|
STR_BSSAPp_Uplink_Tunnel_Payload_Control_And_Info with { variant "" };
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAPp REJECT (Used for several IEs)
|
||
|
// Reference: 29.018
|
||
|
//====================================================================
|
||
|
|
||
|
type record BSSAPp_REJECT {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_Gs_Cause gsCause
|
||
|
}
|
||
|
with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
gsCause, iEI = '00001000'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
|
||
|
//-------------- PDUs ----------------//
|
||
|
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-ALERT-ACK
|
||
|
// Reference: 29.018 17.1.1
|
||
|
//====================================================================
|
||
|
|
||
|
|
||
|
type record PDU_BSSAPp_ALERT_ACK {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI
|
||
|
}
|
||
|
with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-ALERT-REJECT
|
||
|
// Reference: 29.018 17.1.2
|
||
|
//====================================================================
|
||
|
|
||
|
type BSSAPp_REJECT PDU_BSSAPp_ALERT_REJECT;
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-ALERT-REQUEST
|
||
|
// Reference: 29.018 17.1.3
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_ALERT_REQUEST {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI
|
||
|
}
|
||
|
with {
|
||
|
variant "TAG(
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-DOWNLINK-TUNNEL-REQUEST
|
||
|
// Reference: 29.018 17.1.4
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_VLR_Number vLRnumber,
|
||
|
STR_BSSAPp_Downlink_Tunnel_Payload_Control_And_Info
|
||
|
downlinkTunnelPayloadControlAndInfo
|
||
|
}
|
||
|
with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
vLRnumber, iEI = '00000010'B;
|
||
|
downlinkTunnelPayloadControlAndInfo, iEI = '00011100'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-GPRS-DETACH-ACK
|
||
|
// Reference: 29.018 17.1.5
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_GPRS_DETACH_ACK {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI
|
||
|
} with { variant "TAG(
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-GPRS-DETACH-INDICATION
|
||
|
// Reference: 29.018 17.1.6
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_GPRS_DETACH_INDICATION {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_SGSN_Number sGSNnumber,
|
||
|
STR_BSSAPp_IMSI_Detach_from_GPRS_service_type iMSIdetachFromGPRSserviceType,
|
||
|
STR_BSSAPp_Cell_Global_Identity cellGlobalIdentity optional,
|
||
|
STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
|
||
|
}
|
||
|
with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
sGSNnumber, iEI = '00001001'B;
|
||
|
iMSIdetachFromGPRSserviceType, iEI = '00010000'B;
|
||
|
cellGlobalIdentity, iEI = '00011000'B;
|
||
|
serviceAreaIdentification, iEI = '00011110'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-GPRS-DETACH-ACK
|
||
|
// Reference: 29.018 17.1.7
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_IMSI_DETACH_ACK {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI
|
||
|
}
|
||
|
with {
|
||
|
variant "TAG(
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-IMSI-DETACH-INDICATION
|
||
|
// Reference: 29.018 17.1.8
|
||
|
//====================================================================
|
||
|
type record PDU_BSSAPp_IMSI_DETACH_INDICATION {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_SGSN_Number sGSNnumber,
|
||
|
STR_BSSAPp_IMSI_detach_from_non_GPRS_service_type detachType,
|
||
|
STR_BSSAPp_Cell_Global_Identity cellGlobalIdentity optional,
|
||
|
STR_BSSAPp_Location_Information_Age locationInformationAge optional,
|
||
|
STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
sGSNnumber, iEI = '00001001'B;
|
||
|
detachType, iEI = '00010001'B;
|
||
|
cellGlobalIdentity, iEI = '00011000'B;
|
||
|
locationInformationAge, iEI = '00011001'B;
|
||
|
serviceAreaIdentification, iEI = '00011110'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-LOCATION-UPDATE-ACCEPT
|
||
|
// Reference: 29.018 17.1.9
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_LOCATION_UPDATE_ACCEPT {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_Location_Area_Identifier locationAreaIdentifier,
|
||
|
STR_BSSAPp_Mobile_Identity newTMSIorIMSI optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
locationAreaIdentifier, iEI = '00000100'B;
|
||
|
newTMSIorIMSI, iEI = '00001110'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-LOCATION-UPDATE-REJECT
|
||
|
// Reference: 29.018 17.1.10
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_LOCATION_UPDATE_REJECT {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_Reject_Cause rejectCause
|
||
|
} with {
|
||
|
variant "TAG(
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
rejectCause, iEI = '00001111'B
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-LOCATION-UPDATE-REQUEST
|
||
|
// Reference: 29.018 17.1.11
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_LOCATION_UPDATE_REQUEST {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_SGSN_Number sGSNnumber,
|
||
|
STR_BSSAPp_GPRS_Location_Update_Type updateType,
|
||
|
STR_BSSAPp_Cell_Global_Identity cellGlobalIdentity,
|
||
|
STR_BSSAPp_Mobile_Station_Classmark1 mobileStationClassmark,
|
||
|
STR_BSSAPp_Location_Area_Identifier oldLocationAreaIdentifier optional,
|
||
|
STR_BSSAPp_TMSI_Status tMSIstatus optional,
|
||
|
STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional,
|
||
|
STR_BSSAPp_IMEISV iMEISV optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
sGSNnumber, iEI = '00001001'B;
|
||
|
updateType, iEI = '00001010'B;
|
||
|
cellGlobalIdentity, iEI = '00011000'B;
|
||
|
mobileStationClassmark, iEI = '00001101'B;
|
||
|
oldLocationAreaIdentifier, iEI = '00000100'B;
|
||
|
tMSIstatus, iEI = '00000111'B;
|
||
|
serviceAreaIdentification, iEI = '00011110'B;
|
||
|
iMEISV, iEI = '00010101'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-MM-INFORMATION-REQUEST
|
||
|
// Reference: 29.018 17.1.12
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_MM_INFORMATION_REQUEST {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_MM_Information mMinformation optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
mMinformation, iEI = '00010111'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-MOBILE-STATUS
|
||
|
// Reference: 29.018 17.1.13
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_MOBILE_STATUS {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI optional,
|
||
|
STR_BSSAPp_Gs_Cause gsCause,
|
||
|
STR_BSSAPp_Erroneous_Message erroneousMessage
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
gsCause, iEI = '00001000'B;
|
||
|
erroneousMessage, iEI = '00011011'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-MS-ACTIVITY-INDICATION
|
||
|
// Reference: 29.018 17.1.14
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_MS_ACTIVITY_INDICATION {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_Cell_Global_Identity cellGlobalIdentity optional,
|
||
|
STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
cellGlobalIdentity, iEI = '00011000'B;
|
||
|
serviceAreaIdentification, iEI = '00011110'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-MS-INFORMATION-REQUEST
|
||
|
// Reference: 29.018 17.1.15
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_MS_INFORMATION_REQUEST {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_Information_Requested informationRequested
|
||
|
} with {
|
||
|
variant "TAG(
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
informationRequested, iEI = '00010010'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-MS-INFORMATION-RESPONSE
|
||
|
// Reference: 29.018 17.1.16
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_MS_INFORMATION_RESPONSE {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_TMSI tMSI optional,
|
||
|
STR_BSSAPp_PTMSI pTMSI optional,
|
||
|
STR_BSSAPp_IMEI iMEI optional,
|
||
|
STR_BSSAPp_IMEISV iMEISV optional,
|
||
|
STR_BSSAPp_Cell_Global_Identity cellGlobalIdentity optional,
|
||
|
STR_BSSAPp_Location_Information_Age locationInformationAge optional,
|
||
|
STR_BSSAPp_Mobile_Station_State mobileStationState optional,
|
||
|
STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
tMSI, iEI = '00000011'B;
|
||
|
pTMSI, iEI = '00010011'B;
|
||
|
iMEI, iEI = '00010100'B;
|
||
|
iMEISV, iEI = '00010101'B;
|
||
|
cellGlobalIdentity, iEI = '00011000'B;
|
||
|
locationInformationAge, iEI = '00011001'B;
|
||
|
mobileStationState, iEI = '00011010'B;
|
||
|
serviceAreaIdentification, iEI = '00011110'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-MS-UNREACHABLE
|
||
|
// Reference: 29.018 17.1.17
|
||
|
//====================================================================
|
||
|
|
||
|
|
||
|
type BSSAPp_REJECT PDU_BSSAPp_MS_UNREACHABLE;
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-PAGING-REJECT
|
||
|
// Reference: 29.018 17.1.18
|
||
|
//====================================================================
|
||
|
|
||
|
type BSSAPp_REJECT PDU_BSSAPp_PAGING_REJECT;
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-PAGING-REQUEST
|
||
|
// Reference: 29.018 17.1.19
|
||
|
//====================================================================
|
||
|
|
||
|
|
||
|
type record PDU_BSSAPp_PAGING_REQUEST {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_VLR_Number vLRnumber,
|
||
|
STR_BSSAPp_TMSI tMSI optional,
|
||
|
STR_BSSAPp_Location_Area_Identifier locationAreaIdentifier optional,
|
||
|
STR_BSSAPp_Channel_Needed channelNeeded optional,
|
||
|
STR_BSSAPp_eMLPP_Priority eMLPPpriority optional,
|
||
|
STR_BSSAPp_Global_CN_Id global_CN_Id optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
vLRnumber, iEI = '00000010'B;
|
||
|
tMSI, iEI = '00000011'B;
|
||
|
locationAreaIdentifier, iEI = '00000100'B;
|
||
|
channelNeeded, iEI = '00000101'B;
|
||
|
eMLPPpriority, iEI = '00000110'B;
|
||
|
global_CN_Id, iEI = '00001011'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-RESET-ACK
|
||
|
// Reference: 29.018 17.1.20
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_RESET_ACK {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_SGSN_Number sGSNnumber optional,
|
||
|
STR_BSSAPp_VLR_Number vLRnumber optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
sGSNnumber, iEI = '00001001'B;
|
||
|
vLRnumber, iEI = '00000010'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-RESET-INDICATION
|
||
|
// Reference: 29.018 17.1.21
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_RESET_INDICATION {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_SGSN_Number sGSNnumber optional,
|
||
|
STR_BSSAPp_VLR_Number vLRnumber optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
sGSNnumber, iEI = '00001001'B;
|
||
|
vLRnumber, iEI = '00000010'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-TMSI-REALLOCATION-COMPLETE
|
||
|
// Reference: 29.018 17.1.22
|
||
|
//====================================================================
|
||
|
|
||
|
type record PDU_BSSAPp_TMSI_REALLOCATION_COMPLETE {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_Cell_Global_Identity cellGlobalIdentity optional,
|
||
|
STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
cellGlobalIdentity, iEI = '00011000'B;
|
||
|
serviceAreaIdentification, iEI = '00011110'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
//====================================================================
|
||
|
// BSSAP+-UPLINK-TUNNEL-REQUEST
|
||
|
// Reference: 29.018 17.1.23
|
||
|
//====================================================================
|
||
|
|
||
|
|
||
|
type record PDU_BSSAPp_UPLINK_TUNNEL_REQUEST {
|
||
|
ST_BSSAPp_Msg_type messageType,
|
||
|
STR_BSSAPp_IMSI iMSI,
|
||
|
STR_BSSAPp_SGSN_Number sGSNnumber,
|
||
|
STR_BSSAPp_Uplink_Tunnel_Payload_Control_And_Info
|
||
|
uplinkTunnelPayloadControlAndInfo
|
||
|
} with {
|
||
|
variant "TAG(
|
||
|
iMSI, iEI = '00000001'B;
|
||
|
sGSNnumber, iEI = '00001001'B;
|
||
|
uplinkTunnelPayloadControlAndInfo, iEI = '00011101'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
// ------------------ // ----PDU_BSSAPp---- // ------------------
|
||
|
|
||
|
|
||
|
type union PDU_BSSAPp {
|
||
|
PDU_BSSAPp_PAGING_REJECT pDU_BSSAPp_PAGING_REJECT,
|
||
|
PDU_BSSAPp_PAGING_REQUEST pDU_BSSAPp_PAGING_REQUEST,
|
||
|
PDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST pDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST,
|
||
|
PDU_BSSAPp_UPLINK_TUNNEL_REQUEST pDU_BSSAPp_UPLINK_TUNNEL_REQUEST,
|
||
|
PDU_BSSAPp_LOCATION_UPDATE_REQUEST pDU_BSSAPp_LOCATION_UPDATE_REQUEST,
|
||
|
PDU_BSSAPp_LOCATION_UPDATE_ACCEPT pDU_BSSAPp_LOCATION_UPDATE_ACCEPT,
|
||
|
PDU_BSSAPp_LOCATION_UPDATE_REJECT pDU_BSSAPp_LOCATION_UPDATE_REJECT,
|
||
|
PDU_BSSAPp_TMSI_REALLOCATION_COMPLETE pDU_BSSAPp_TMSI_REALLOCATION_COMPLETE,
|
||
|
PDU_BSSAPp_ALERT_REQUEST pDU_BSSAPp_ALERT_REQUEST,
|
||
|
PDU_BSSAPp_ALERT_ACK pDU_BSSAPp_ALERT_ACK,
|
||
|
PDU_BSSAPp_ALERT_REJECT pDU_BSSAPp_ALERT_REJECT,
|
||
|
PDU_BSSAPp_MS_ACTIVITY_INDICATION pDU_BSSAPp_MS_ACTIVITY_INDICATION,
|
||
|
PDU_BSSAPp_GPRS_DETACH_INDICATION pDU_BSSAPp_GPRS_DETACH_INDICATION,
|
||
|
PDU_BSSAPp_GPRS_DETACH_ACK pDU_BSSAPp_GPRS_DETACH_ACK,
|
||
|
PDU_BSSAPp_IMSI_DETACH_INDICATION pDU_BSSAPp_IMSI_DETACH_INDICATION,
|
||
|
PDU_BSSAPp_IMSI_DETACH_ACK pDU_BSSAPp_IMSI_DETACH_ACK,
|
||
|
PDU_BSSAPp_RESET_INDICATION pDU_BSSAPp_RESET_INDICATION,
|
||
|
PDU_BSSAPp_RESET_ACK pDU_BSSAPp_RESET_ACK,
|
||
|
PDU_BSSAPp_MS_INFORMATION_REQUEST pDU_BSSAPp_MS_INFORMATION_REQUEST,
|
||
|
PDU_BSSAPp_MS_INFORMATION_RESPONSE pDU_BSSAPp_MS_INFORMATION_RESPONSE,
|
||
|
PDU_BSSAPp_MM_INFORMATION_REQUEST pDU_BSSAPp_MM_INFORMATION_REQUEST,
|
||
|
PDU_BSSAPp_MOBILE_STATUS pDU_BSSAPp_MOBILE_STATUS,
|
||
|
PDU_BSSAPp_MS_UNREACHABLE pDU_BSSAPp_MS_UNREACHABLE
|
||
|
|
||
|
} with {
|
||
|
variant "TAG (
|
||
|
pDU_BSSAPp_PAGING_REQUEST, messageType ='00000001'B;
|
||
|
pDU_BSSAPp_PAGING_REJECT, messageType ='00000010'B;
|
||
|
pDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST, messageType ='00000111'B;
|
||
|
pDU_BSSAPp_UPLINK_TUNNEL_REQUEST, messageType ='00001000'B;
|
||
|
pDU_BSSAPp_LOCATION_UPDATE_REQUEST, messageType ='00001001'B;
|
||
|
pDU_BSSAPp_LOCATION_UPDATE_ACCEPT, messageType ='00001010'B;
|
||
|
pDU_BSSAPp_LOCATION_UPDATE_REJECT, messageType ='00001011'B;
|
||
|
pDU_BSSAPp_TMSI_REALLOCATION_COMPLETE, messageType ='00001100'B;
|
||
|
pDU_BSSAPp_ALERT_REQUEST, messageType ='00001101'B;
|
||
|
pDU_BSSAPp_ALERT_ACK, messageType ='00001110'B;
|
||
|
pDU_BSSAPp_ALERT_REJECT, messageType ='00001111'B;
|
||
|
pDU_BSSAPp_MS_ACTIVITY_INDICATION, messageType ='00010000'B;
|
||
|
pDU_BSSAPp_GPRS_DETACH_INDICATION, messageType ='00010001'B;
|
||
|
pDU_BSSAPp_GPRS_DETACH_ACK, messageType ='00010010'B;
|
||
|
pDU_BSSAPp_IMSI_DETACH_INDICATION, messageType ='00010011'B;
|
||
|
pDU_BSSAPp_IMSI_DETACH_ACK, messageType ='00010100'B;
|
||
|
pDU_BSSAPp_RESET_INDICATION, messageType ='00010101'B;
|
||
|
pDU_BSSAPp_RESET_ACK, messageType ='00010110'B;
|
||
|
pDU_BSSAPp_MS_INFORMATION_REQUEST, messageType ='00010111'B;
|
||
|
pDU_BSSAPp_MS_INFORMATION_RESPONSE, messageType ='00011000'B;
|
||
|
pDU_BSSAPp_MM_INFORMATION_REQUEST, messageType ='00011010'B;
|
||
|
pDU_BSSAPp_MOBILE_STATUS, messageType ='00011101'B;
|
||
|
pDU_BSSAPp_MS_UNREACHABLE, messageType ='00011111'B;
|
||
|
)"
|
||
|
};
|
||
|
|
||
|
} with{ encode "RAW"}//end of module BSSAPp_Types
|