forked from osmocom/wireshark
From Vineeth:
Support for Nokias GSM MAP Private Extensions svn path=/trunk/; revision=53600
This commit is contained in:
parent
730bd9ca9d
commit
861e0334f4
|
@ -56,7 +56,8 @@ SS_ASN_FILES = \
|
|||
SS-Operations.asn
|
||||
|
||||
PROPRIETARY_ASN_FILES = \
|
||||
Ericsson.asn
|
||||
Ericsson.asn \
|
||||
Nokia.asn
|
||||
|
||||
ASN_FILE_LIST = \
|
||||
MobileDomainDefinitions.asn \
|
||||
|
|
|
@ -0,0 +1,690 @@
|
|||
-- Nokia proprietary extensions
|
||||
-- $Id$
|
||||
--
|
||||
NokiaMAP-Extensions
|
||||
|
||||
DEFINITIONS IMPLICIT TAGS ::=
|
||||
|
||||
BEGIN
|
||||
|
||||
IMPORTS
|
||||
Category,
|
||||
ODB-Data,
|
||||
CUG-Interlock
|
||||
FROM MAP-MS-DataTypes {
|
||||
itu-t identified-organization (4) etsi (0) mobileDomain (0)
|
||||
gsm-Network (1) modules (3) map-MS-DataTypes (11) version13 (13)}
|
||||
|
||||
ISDN-AddressString,
|
||||
AddressString,
|
||||
TBCD-STRING,
|
||||
SignalInfo,
|
||||
BasicServiceCode,
|
||||
IMSI,
|
||||
IMEI,
|
||||
SubscriberIdentity,
|
||||
CellGlobalIdOrServiceAreaIdFixedLength,
|
||||
LAIFixedLength,
|
||||
Ext-SS-Status
|
||||
FROM MAP-CommonDataTypes {
|
||||
itu-t identified-organization (4) etsi (0) mobileDomain (0)
|
||||
gsm-Network (1) modules (3) map-CommonDataTypes (18) version13 (13)}
|
||||
|
||||
PrivateExtension,
|
||||
ExtensionContainer
|
||||
FROM MAP-ExtensionDataTypes {
|
||||
itu-t identified-organization (4) etsi (0) mobileDomain (0)
|
||||
gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version13 (13)}
|
||||
|
||||
TraceReference,
|
||||
TraceType
|
||||
FROM MAP-OM-DataTypes {
|
||||
itu-t identified-organization (4) etsi (0) mobileDomain (0)
|
||||
gsm-Network (1) modules (3) map-OM-DataTypes (12) version13 (13)}
|
||||
|
||||
SS-Code
|
||||
FROM MAP-SS-Code {
|
||||
itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
|
||||
map-SS-Code (15) version10 (10)}
|
||||
|
||||
SS-Status, USSD-DataCodingScheme, USSD-String, CCBS-Feature
|
||||
-- USSD-DataCodingScheme, USSD-String were introduced because of CNAP.
|
||||
FROM MAP-SS-DataTypes {
|
||||
itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
|
||||
map-SS-DataTypes (14) version10 (10)}
|
||||
|
||||
|
||||
;
|
||||
|
||||
|
||||
ExtensionSet MAP-EXTENSION ::= {
|
||||
{ &ExtensionType; IsdArgExt, &extensionId; {0 34 0} } |
|
||||
{ &ExtensionType; DsdArgExt, &extensionId; {0 34 1} } |
|
||||
{ &ExtensionType; UlResExt, &extensionId; {0 34 2} } |
|
||||
{ &ExtensionType; SS-DataExtension, &extensionId; {0 34 4} } |
|
||||
{ &ExtensionType; SriExtension, &extensionId; {0 34 5} } |
|
||||
{ &ExtensionType; ExtraSignalInfo, &extensionId; {0 34 6} } |
|
||||
{ &ExtensionType; SriResExtension, &extensionId; {0 34 7} } |
|
||||
{ &ExtensionType; CanLocArgExt, &extensionId; {0 34 10} } |
|
||||
{ &ExtensionType; ATMargExt, &extensionId; {0 34 11} } |
|
||||
{ &ExtensionType; DTMargExt, &extensionId; {0 34 12} } |
|
||||
{ &ExtensionType; NumberPorted, &extensionId; {0 34 13} } |
|
||||
{ &ExtensionType; HO-Ext, &extensionId; {0 34 15} } |
|
||||
{ &ExtensionType; ATMresExt, &extensionId; {0 34 16} } |
|
||||
{ &ExtensionType; AbsentSubscriberExt, &extensionId; {0 34 17} } |
|
||||
{ &ExtensionType; SriForSMArgExt, &extensionId; {0 34 18} } |
|
||||
{ &ExtensionType; ReportSMDelStatArgExt, &extensionId; {0 34 19} } |
|
||||
{ &ExtensionType; UdlArgExt, &extensionId; {0 34 20} } |
|
||||
{ &ExtensionType; RoamNotAllowedExt, &extensionId; {0 34 21} } |
|
||||
{ &ExtensionType; MO-ForwardSM-ArgExt, &extensionId; {0 34 22} } |
|
||||
{ &ExtensionType; ErrOlcmInfoTableExt, &extensionId; {0 34 23} } |
|
||||
{ &ExtensionType; RoutingCategoryExt, &extensionId; {0 34 25} } |
|
||||
{ &ExtensionType; AnyTimeModArgExt, &extensionId; {0 34 26} } |
|
||||
{ &ExtensionType; ExtensionType, &extensionId; {1 2 826 0 1249 58 1 0} } |
|
||||
{ &ExtensionType; AccessTypeExt, &extensionId; {1 3 12 2 1107 3 66 1 1} } |
|
||||
{ &ExtensionType; AccessSubscriptionListExt, &extensionId; {1 3 12 2 1107 3 66 1 3} } |
|
||||
{ &ExtensionType; AllowedServiceData, &extensionId; {1 3 12 2 1107 3 66 1 6} },
|
||||
...}
|
||||
-- ExtensionSet is the set of all defined private extensions
|
||||
-- Unsupported private extensions shall be discarded if received.
|
||||
|
||||
|
||||
RoutingCategory ::= OCTET STRING (SIZE (1))
|
||||
-- value 0 means that RoutingCategory is released
|
||||
|
||||
maxNumOfActiveSS INTEGER ::= 30
|
||||
|
||||
ActiveSS-List ::= OCTET STRING (SIZE (1..maxNumOfActiveSS))
|
||||
|
||||
ExtRoutingCategory ::= INTEGER (0..2147483647)
|
||||
|
||||
IsdArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
alsLineIndicator [0] NULL OPTIONAL,
|
||||
routingCategory [1] RoutingCategory OPTIONAL,
|
||||
serviceList [2] MAPserviceList OPTIONAL,
|
||||
serv-info-list [3] ServiceListWithInfo OPTIONAL,
|
||||
extRoutingCategory [5] ExtRoutingCategory OPTIONAL,
|
||||
ownMSISDN [6] ISDN-AddressString OPTIONAL,
|
||||
...}
|
||||
-- Note : additional routing category is removed from VLR by
|
||||
-- sending ISD with add-RC value zero (0).
|
||||
|
||||
DsdArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
alsLineIndicator [0] NULL OPTIONAL,
|
||||
serviceList [1] MAPserviceList OPTIONAL,
|
||||
...}
|
||||
|
||||
UlResExt ::= [PRIVATE 0] SEQUENCE {
|
||||
mwd-Set [0] NULL OPTIONAL,
|
||||
...}
|
||||
|
||||
EmoInCategoryKey ::= TBCD-STRING (SIZE (1..3))
|
||||
|
||||
SS-DataEmoInExt ::= [PRIVATE 1] SEQUENCE {
|
||||
emoInCategoryKey [PRIVATE 2] EmoInCategoryKey OPTIONAL,
|
||||
...}
|
||||
|
||||
InTriggerKey ::= INTEGER (1..65535)
|
||||
|
||||
PnpIndex ::= OCTET STRING (SIZE (3))
|
||||
-- digits 0 through 9, two digits per octet,
|
||||
-- each digit encoded 0000 to 0001,
|
||||
-- 5 digits, 1111 used as filler for last digit.
|
||||
|
||||
CallRedirectionIndex ::= INTEGER (0..255)
|
||||
|
||||
ChargingArea ::= INTEGER (1..9999)
|
||||
|
||||
maxNumOfCA INTEGER ::= 3
|
||||
|
||||
ChargingAreaList ::= SEQUENCE SIZE (1..maxNumOfCA) OF
|
||||
ChargingArea
|
||||
|
||||
RegionalChargingData ::= SEQUENCE {
|
||||
chargingAreaList [0] ChargingAreaList OPTIONAL,
|
||||
...}
|
||||
|
||||
SS-DataExtension ::= [PRIVATE 0] SEQUENCE {
|
||||
inTriggerKey [0] InTriggerKey OPTIONAL,
|
||||
pnpIndex [1] PnpIndex OPTIONAL,
|
||||
callRedirectionIndex [2] CallRedirectionIndex OPTIONAL,
|
||||
regionalChargingData [3] RegionalChargingData OPTIONAL,
|
||||
...}
|
||||
|
||||
SriExtension ::= [PRIVATE 0] SEQUENCE {
|
||||
callForwardingOverride [0] NULL OPTIONAL,
|
||||
in-Capability [1] NULL OPTIONAL,
|
||||
callingCategory [2] CallingCategory OPTIONAL,
|
||||
internalServiceIndicator [3] InternalServiceIndicator OPTIONAL,
|
||||
srbtSupportIndicator [4] NULL OPTIONAL,
|
||||
gmscSupportIndicator [5] NULL OPTIONAL,
|
||||
...}
|
||||
|
||||
CallingCategory ::= OCTET STRING (SIZE (1))
|
||||
-- 'E9'hex used in SRI-arg
|
||||
-- 'E8'hex used in SRI-res
|
||||
|
||||
InternalServiceIndicator ::= OCTET STRING (SIZE (1))
|
||||
-- bits 8765: 0000 (unused)
|
||||
-- bit 4: intelligent alerting
|
||||
-- bit 3: parallel alerting
|
||||
-- bit 2: member interrogation
|
||||
-- bit 1: sequential alerting
|
||||
-- 1 set
|
||||
-- 0 not set
|
||||
|
||||
ExtraProtocolId ::= INTEGER { q763 (1)} (1..20)
|
||||
|
||||
ExtraSignalInfo ::= [PRIVATE 1] SEQUENCE {
|
||||
protocolId ExtraProtocolId,
|
||||
signalInfo SignalInfo }
|
||||
|
||||
CUG-CallInfo ::= OCTET STRING (SIZE (1..4))
|
||||
-- xxxx xx00 - not used
|
||||
-- xxxx xx01 - CUG call
|
||||
-- xxxx xx10 - non CUG call
|
||||
-- xxxx xx11 - maybe a CUG call
|
||||
|
||||
Nokia-CUG-Data ::= SEQUENCE {
|
||||
cug-Interlock [0] CUG-Interlock OPTIONAL,
|
||||
cug-OutgoingAccess [1] BOOLEAN OPTIONAL,
|
||||
cug-CallInfo [2] CUG-CallInfo OPTIONAL,
|
||||
...}
|
||||
-- cug-OutgoingAccess must be BOOLEAN (not NULL), because
|
||||
-- it must be possible to transfer cug-CallInfo without
|
||||
-- the other parameters
|
||||
|
||||
SriResExtension ::= [PRIVATE 0] SEQUENCE {
|
||||
inTriggerKey [0] InTriggerKey OPTIONAL,
|
||||
vlrNumber [1] ISDN-AddressString OPTIONAL,
|
||||
activeSs [2] ActiveSS-List OPTIONAL,
|
||||
traceReference [3] TraceReference OPTIONAL,
|
||||
traceType [4] TraceType OPTIONAL,
|
||||
omc-Id [5] AddressString OPTIONAL,
|
||||
hotBilling [6] BOOLEAN OPTIONAL,
|
||||
cfoIsDone [7] BOOLEAN OPTIONAL,
|
||||
cfInCug [8] BOOLEAN OPTIONAL,
|
||||
basicService [9] BasicServiceCode OPTIONAL,
|
||||
category [10] Category OPTIONAL,
|
||||
routingCategory [11] RoutingCategory OPTIONAL,
|
||||
pnpIndex [12] PnpIndex OPTIONAL,
|
||||
nokia-CUG [13] Nokia-CUG-Data OPTIONAL,
|
||||
noBarrings [14] NULL OPTIONAL,
|
||||
odb-Data [15] ODB-Data OPTIONAL,
|
||||
fraudData [16] FraudData OPTIONAL,
|
||||
extRoutingCategory [17] ExtRoutingCategory OPTIONAL,
|
||||
leaId [18] LeaId OPTIONAL,
|
||||
olcmInfoTable [19] OlcmInfoTable OPTIONAL,
|
||||
callingCategory [20] CallingCategory OPTIONAL,
|
||||
commonMSISDN [21] ISDN-AddressString OPTIONAL,
|
||||
rgData [22] RgData OPTIONAL,
|
||||
olcmTraceReference [23] OlcmTraceReference OPTIONAL,
|
||||
...}
|
||||
|
||||
RgData ::= SEQUENCE {
|
||||
noAnswerTimer [0] NoAnswerTimer OPTIONAL,
|
||||
memberList [1] MemberList OPTIONAL,
|
||||
alertingMethod [2] AlertingMethod OPTIONAL,
|
||||
userType [3] UserType OPTIONAL,
|
||||
divertedToNbr [4] ISDN-AddressString OPTIONAL,
|
||||
memberOfSuppression [5] NULL OPTIONAL,
|
||||
ringbacktone [6] NULL OPTIONAL,
|
||||
...}
|
||||
|
||||
NoAnswerTimer ::= OCTET STRING (SIZE (1))
|
||||
|
||||
MemberList ::= SEQUENCE SIZE (1..5) OF
|
||||
ISDN-AddressString
|
||||
|
||||
AlertingMethod ::= OCTET STRING (SIZE (1))
|
||||
-- '00' = sequential
|
||||
-- '01' = parallel
|
||||
-- '02' = sequential / parallel
|
||||
-- '03' = intelligent
|
||||
|
||||
UserType ::= OCTET STRING (SIZE (1))
|
||||
-- '00' = single
|
||||
-- '01' = multiple
|
||||
|
||||
MAPserviceCode ::= OCTET STRING (SIZE (1))
|
||||
|
||||
picLock MAPserviceCode ::= '00000001'B
|
||||
prefCarrierId MAPserviceCode ::= '00000010'B
|
||||
mKey MAPserviceCode ::= '00000011'B
|
||||
smsKey MAPserviceCode ::= '00000100'B
|
||||
fraud-Data MAPserviceCode ::= '00000101'B
|
||||
cell-update MAPserviceCode ::= '00000110'B
|
||||
|
||||
maxnumOfMAPservices INTEGER ::= 256
|
||||
|
||||
MAPserviceList ::= OCTET STRING (SIZE (0..maxnumOfMAPservices))
|
||||
|
||||
CarrierIdCode ::= OCTET STRING (SIZE (3))
|
||||
-- the internal structure is defined in T1.113
|
||||
|
||||
PrefCarrierIdList ::= SEQUENCE {
|
||||
prefCarrierIdCode1 [0] CarrierIdCode,
|
||||
...}
|
||||
|
||||
ANSIIsdArgExt ::= [PRIVATE 30] SEQUENCE {
|
||||
prefCarrierIdList [0] PrefCarrierIdList OPTIONAL,
|
||||
...}
|
||||
|
||||
ANSISriResExt ::= [PRIVATE 30] SEQUENCE {
|
||||
prefCarrierIdList [0] PrefCarrierIdList OPTIONAL,
|
||||
...}
|
||||
|
||||
CanLocArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
termination [0] OCTET STRING (SIZE (1)) OPTIONAL,
|
||||
...}
|
||||
|
||||
ATMargExt ::= [PRIVATE 0] SEQUENCE {
|
||||
traceReference [0] TraceReference OPTIONAL,
|
||||
traceType [1] TraceType OPTIONAL,
|
||||
leaId [2] LeaId OPTIONAL,
|
||||
olcmInfoTable [3] OlcmInfoTable OPTIONAL,
|
||||
olcmTraceReference [4] OlcmTraceReference OPTIONAL,
|
||||
... }
|
||||
|
||||
LeaId ::= INTEGER (0..65535)
|
||||
|
||||
OlcmInfoTable ::= SEQUENCE SIZE (1..maxNumOfLEAs) OF
|
||||
OlcmInfo
|
||||
|
||||
maxNumOfLEAs INTEGER ::= 7
|
||||
|
||||
OlcmInfo ::= SEQUENCE {
|
||||
traceReference [0] TraceReference,
|
||||
traceType [1] TraceType,
|
||||
leaId [2] LeaId OPTIONAL,
|
||||
olcmTraceReference [3] OlcmTraceReference OPTIONAL,
|
||||
... }
|
||||
|
||||
OlcmTraceReference ::= OCTET STRING (SIZE (1..4))
|
||||
|
||||
ATMresExt ::= [PRIVATE 0] SEQUENCE {
|
||||
olcmActive [0] NULL OPTIONAL,
|
||||
... }
|
||||
|
||||
DTMargExt ::= [PRIVATE 0] SEQUENCE {
|
||||
traceType [0] TraceType OPTIONAL,
|
||||
leaId [1] LeaId OPTIONAL,
|
||||
olcmTraceReference [2] OlcmTraceReference OPTIONAL,
|
||||
... }
|
||||
|
||||
VersionInfo ::= OCTET STRING (SIZE (1))
|
||||
-- 0000 0001 : version 1
|
||||
|
||||
maxNumOfServicesWithInfo INTEGER ::= 20
|
||||
|
||||
FraudInfo ::= SEQUENCE {
|
||||
moc [0] FraudData OPTIONAL,
|
||||
cf [1] FraudData OPTIONAL,
|
||||
ct [2] FraudData OPTIONAL,
|
||||
...}
|
||||
|
||||
FraudData ::= SEQUENCE {
|
||||
time [0] TimeLimit OPTIONAL,
|
||||
timeAction [1] ActionType OPTIONAL,
|
||||
maxCount [2] FraudMaxCount OPTIONAL,
|
||||
maxCountAction [3] ActionType OPTIONAL,
|
||||
...}
|
||||
|
||||
TimeLimit ::= INTEGER (0..64800)
|
||||
|
||||
ActionType ::= OCTET STRING (SIZE (1..10))
|
||||
-- only 1st octet is used to transfer action type in M10
|
||||
-- other octets are reserved for future use
|
||||
|
||||
FraudMaxCount ::= INTEGER (0..255)
|
||||
|
||||
ServiceWithInfo ::= SEQUENCE {
|
||||
serviceCode [0] MAPserviceCode OPTIONAL,
|
||||
versionInfo [1] VersionInfo DEFAULT '1'B,
|
||||
in-key INKey OPTIONAL,
|
||||
fraudInfo FraudInfo OPTIONAL,
|
||||
...}
|
||||
|
||||
ServiceListWithInfo ::= SEQUENCE SIZE (1..maxNumOfServicesWithInfo) OF
|
||||
ServiceWithInfo
|
||||
|
||||
INKey ::= CHOICE {
|
||||
mobile-IN-key [2] MKey,
|
||||
sms-IN-key [3] SMSKey }
|
||||
|
||||
MmTdpName ::= OCTET STRING (SIZE (1..8))
|
||||
-- bits 876543: 000000 (unused)
|
||||
--
|
||||
-- bit 2: Intra-VLR-Locup-DP
|
||||
-- 1 DP is set
|
||||
-- 0 DP is not set
|
||||
--
|
||||
-- bit 1: Inter-VLR-Locup-DP
|
||||
-- 1 DP is set
|
||||
-- 0 DP is not set
|
||||
|
||||
ServiceKey ::= INTEGER (0..2147483647)
|
||||
-- 4 bytes
|
||||
|
||||
MKeyVer ::= OCTET STRING (SIZE (1))
|
||||
-- 0000 0001 : version 1
|
||||
|
||||
LocupType ::= OCTET STRING (SIZE (1..8))
|
||||
-- bits 87654: 00000 (unused)
|
||||
--
|
||||
-- bit 3: Normal-Locup
|
||||
-- 1 LocupType is set (default)
|
||||
-- 0 LocupType is not set
|
||||
--
|
||||
-- bit 2: Periodic-Locup
|
||||
-- 1 LocupType is set
|
||||
-- 0 LocupType is not set (default)
|
||||
--
|
||||
-- bit 1: IMSI-attach-Locup
|
||||
-- 1 LocupType is set
|
||||
-- 0 LocupType is not set (default)
|
||||
|
||||
MKey::= SEQUENCE{
|
||||
mKeyVer [0] MKeyVer DEFAULT '1'B,
|
||||
mmScfAddress [1] ISDN-AddressString OPTIONAL,
|
||||
mmTdpName [2] MmTdpName OPTIONAL,
|
||||
serviceKey [3] ServiceKey OPTIONAL,
|
||||
locupType [4] LocupType OPTIONAL,
|
||||
...}
|
||||
-- if mKeyVer parameter is missing, it is interpreted as
|
||||
-- "version 1".
|
||||
-- mmScfAddress, mmTtdpId and serviceKey parameters must be
|
||||
-- present on version 1.
|
||||
--
|
||||
-- Feature 742 : “IN Mobility Management”
|
||||
|
||||
SmsTdpName ::= OCTET STRING (SIZE (1..8))
|
||||
-- bits 87654: 00000 (unused)
|
||||
--
|
||||
-- bit 3: SR-SMS-DP
|
||||
-- 1 DP is set
|
||||
-- 0 DP is not set
|
||||
--
|
||||
-- bit 2: MO-SMS-DP
|
||||
-- 1 DP is set
|
||||
-- 0 DP is not set
|
||||
--
|
||||
-- bit 1: MT-SMS-DP
|
||||
-- 1 DP is set
|
||||
-- 0 DP is not set
|
||||
|
||||
SMSKey ::= SEQUENCE{
|
||||
mmSCPAddress [0] ISDN-AddressString OPTIONAL,
|
||||
smsTdpName [1] SmsTdpName OPTIONAL,
|
||||
serviceKey [2] ServiceKey OPTIONAL,
|
||||
mmsFlag [3] NULL OPTIONAL,
|
||||
...}
|
||||
|
||||
NumberPorted ::= [PRIVATE 20] ENUMERATED {
|
||||
notPorted (0),
|
||||
ported (1),
|
||||
...}
|
||||
|
||||
USSD-Extension ::= [PRIVATE 10] SEQUENCE {
|
||||
routingCategory [0] RoutingCategory OPTIONAL,
|
||||
cellId [1] CellGlobalIdOrServiceAreaIdFixedLength OPTIONAL,
|
||||
sai-Present [2] NULL OPTIONAL,
|
||||
...}
|
||||
|
||||
HO-Ext ::= [PRIVATE 0] SEQUENCE {
|
||||
map-Opt [0] MapOptFields OPTIONAL,
|
||||
codec-List [1] CodecListExt OPTIONAL,
|
||||
selected-Codec [2] SelectedCodec OPTIONAL,
|
||||
uma-access [3] NULL OPTIONAL,
|
||||
uma-ip-address [4] OCTET STRING (SIZE (5..17)) OPTIONAL,
|
||||
uma-ip-port-nb [5] IPPortNb OPTIONAL,
|
||||
... }
|
||||
|
||||
MapOptFields ::= OCTET STRING (SIZE (1))
|
||||
-- bits 87: 00 (unused)
|
||||
-- bit 6: codec
|
||||
-- 1 set
|
||||
-- 0 not set
|
||||
-- bit 5: tfo_set
|
||||
-- 1 set
|
||||
-- 0 not set
|
||||
-- bit 4: tfo_not_set
|
||||
-- 1 set
|
||||
-- 0 not set
|
||||
-- bit 3: emerg
|
||||
-- 1 set
|
||||
-- 0 not set
|
||||
-- bit 2: usim
|
||||
-- 1 set
|
||||
-- 0 not set
|
||||
-- bit 1: sim
|
||||
-- 1 set
|
||||
-- 0 not set
|
||||
|
||||
CodecListExt ::= SEQUENCE (SIZE(0..maxNumOfCodec)) OF
|
||||
CodecExt
|
||||
|
||||
maxNumOfCodec INTEGER ::= 8
|
||||
|
||||
CodecExt ::= OCTET STRING (SIZE(1))
|
||||
|
||||
SelectedCodec ::= SEQUENCE {
|
||||
codec [0] CodecExt,
|
||||
modes [1] Modes,
|
||||
...}
|
||||
|
||||
Modes ::= OCTET STRING (SIZE(9))
|
||||
|
||||
IPPortNb ::= INTEGER (0..65535)
|
||||
|
||||
AbsentSubscriberExt ::= [PRIVATE 0] SEQUENCE {
|
||||
olcmInfoTable [0] OlcmInfoTable OPTIONAL,
|
||||
imsi [1] IMSI OPTIONAL,
|
||||
...}
|
||||
|
||||
ErrOlcmInfoTableExt ::= [PRIVATE 0] SEQUENCE {
|
||||
olcmInfoTable [0] OlcmInfoTable OPTIONAL,
|
||||
imsi [1] IMSI OPTIONAL,
|
||||
...}
|
||||
|
||||
RoutingCategoryExt ::= [PRIVATE 0] SEQUENCE {
|
||||
routingCategory [0] RoutingCategory OPTIONAL,
|
||||
extRoutingCategory [1] ExtRoutingCategory OPTIONAL,
|
||||
... }
|
||||
|
||||
ExtensionType ::= CHOICE {
|
||||
isdArgType [1] IsdArgType,
|
||||
isdResType [2] IsdResType,
|
||||
dsdArgType [3] DsdArgType,
|
||||
sriArgType [4] SriArgType,
|
||||
sriResType [5] SriResType,
|
||||
prnArgType [6] PrnArgType,
|
||||
ulArgType [7] UlArgType }
|
||||
|
||||
IsdArgType ::= SEQUENCE (SIZE(1..50)) OF
|
||||
IsdArgData
|
||||
|
||||
IsdArgData ::= SEQUENCE {
|
||||
privateFeatureCode [1] PrivateFeatureCode OPTIONAL,
|
||||
privateFeatureData PrivateFeatureData OPTIONAL,
|
||||
...}
|
||||
|
||||
PrivateFeatureCode ::= OCTET STRING (SIZE (1))
|
||||
|
||||
PrivateFeatureData ::= CHOICE {
|
||||
oickInfo [7] OickInfo,
|
||||
subscriptionTypeInfo [3] SubscriptionTypeInfo }
|
||||
|
||||
OickInfo ::= SEQUENCE {
|
||||
ss-Status Ext-SS-Status,
|
||||
inCategoryKey INCategoryKey }
|
||||
|
||||
INCategoryKey ::= TBCD-STRING (SIZE(1..3))
|
||||
|
||||
SubscriptionTypeInfo ::= SEQUENCE {
|
||||
subscriptionType SubscriptionType }
|
||||
|
||||
SubscriptionType ::= OCTET STRING (SIZE(1))
|
||||
|
||||
IsdResType ::= SEQUENCE (SIZE(1..50)) OF
|
||||
IsdResData
|
||||
|
||||
IsdResData ::= SEQUENCE {
|
||||
supportedPrivateFeature [1] PrivateFeatureCode OPTIONAL,
|
||||
... }
|
||||
|
||||
DsdArgType ::= SEQUENCE (SIZE (1..50)) OF
|
||||
DsdArgData
|
||||
|
||||
DsdArgData ::= SEQUENCE {
|
||||
privateFeatureWithdraw PrivateFeatureCode }
|
||||
|
||||
SriArgType ::= SEQUENCE (SIZE(1..50)) OF
|
||||
SriArgData
|
||||
|
||||
SriArgData ::= SEQUENCE {
|
||||
privateFeatureCode [1] PrivateFeatureCode OPTIONAL,
|
||||
extraNetworkInfo [2] ExtraSignalInfo OPTIONAL,
|
||||
... }
|
||||
|
||||
SriResType ::= SEQUENCE (SIZE(1..50)) OF
|
||||
SriResData
|
||||
|
||||
SriResData ::= SEQUENCE {
|
||||
privateFeatureCode [1] PrivateFeatureCode OPTIONAL,
|
||||
inCategoryKey [2] INCategoryKey OPTIONAL,
|
||||
subscriptionType [5] SubscriptionType OPTIONAL,
|
||||
... }
|
||||
|
||||
PrnArgType ::= SEQUENCE (SIZE(1..50)) OF
|
||||
PrnArgData
|
||||
|
||||
PrnArgData ::= SEQUENCE {
|
||||
privateFeatureCode [1] PrivateFeatureCode OPTIONAL,
|
||||
...,
|
||||
extraNetworkInfo [2] ExtraSignalInfo OPTIONAL }
|
||||
|
||||
|
||||
UlArgType ::= SEQUENCE (SIZE(1..50)) OF
|
||||
UlArgData
|
||||
|
||||
UlArgData ::= SEQUENCE {
|
||||
privateFeatureCode [1] PrivateFeatureCode OPTIONAL,
|
||||
privateFeatureUlArgData PrivateFeatureUlArgData OPTIONAL,
|
||||
... }
|
||||
|
||||
PrivateFeatureUlArgData ::= CHOICE {
|
||||
adc [3] IMEI }
|
||||
|
||||
SriForSMArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
cfuSMSCounter [0] CfuSMSCounter OPTIONAL,
|
||||
cfusmcfo [2] NULL OPTIONAL,
|
||||
memberInterrogate [3] NULL OPTIONAL,
|
||||
... }
|
||||
|
||||
ReportSMDelStatArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
cfuSMSCounter [0] CfuSMSCounter OPTIONAL,
|
||||
cfusmcfo [2] NULL OPTIONAL,
|
||||
... }
|
||||
|
||||
CfuSMSCounter ::= OCTET STRING (SIZE (1))
|
||||
|
||||
MO-ForwardSM-ArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
locationAreaCode [0] LocationAreaCode OPTIONAL,
|
||||
cellId [1] CellGlobalIdOrServiceAreaIdFixedLength OPTIONAL,
|
||||
... }
|
||||
|
||||
LocationAreaCode ::= OCTET STRING(SIZE (2))
|
||||
-- octets 1 and 2 of LocationAreaCode according to 3GPP TS 24.008
|
||||
|
||||
UdlArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
lai [0] LAIFixedLength OPTIONAL,
|
||||
sendImmResp [1] NULL OPTIONAL,
|
||||
... }
|
||||
|
||||
RoamNotAllowedExt ::= [PRIVATE 0] SEQUENCE {
|
||||
rejectCause [0] OCTET STRING (SIZE (1)) OPTIONAL,
|
||||
... }
|
||||
|
||||
AnyTimeModArgExt ::= [PRIVATE 0] SEQUENCE {
|
||||
senderMSISDN [0] ISDN-AddressString OPTIONAL,
|
||||
... }
|
||||
|
||||
CosInfo::= SEQUENCE {
|
||||
ss-Code SS-Code OPTIONAL,
|
||||
cos-FeatureList COS-FeatureList }
|
||||
|
||||
COS-FeatureList ::= SEQUENCE SIZE (1..maxNumberOfCOSFeatures) OF
|
||||
COS-Feature
|
||||
|
||||
maxNumberOfCOSFeatures INTEGER ::= 13
|
||||
-- This reflects the number of basic service groups, and is
|
||||
-- consistent with other features (i.e., Forwarding Features,
|
||||
-- CallBarring Features, etc.).
|
||||
|
||||
COS-Feature ::= SEQUENCE {
|
||||
basicServiceCode BasicServiceCode OPTIONAL,
|
||||
ss-Status [4] SS-Status,
|
||||
customerGroupID [5] CustomerGroupID OPTIONAL,
|
||||
subGroupID [6] SubGroupID OPTIONAL,
|
||||
classOfServiceID [7] ClassOfServiceID OPTIONAL }
|
||||
|
||||
CustomerGroupID ::= BIT STRING {
|
||||
formatIndicator (0),
|
||||
idHighBit (8),
|
||||
netidHighBit (16),
|
||||
idLowBit (31) } (SIZE(32))
|
||||
-- formatIndicator is encoded as follows:
|
||||
-- 0 : International Format
|
||||
-- 1 : Network Format
|
||||
-- Bits 1-7 Unused (encoded as 0000000)
|
||||
-- The remaining bits (3 octets) are the bit representation of the
|
||||
-- Customer Group Identifier. All bits are significant.
|
||||
|
||||
SubGroupID ::= BIT STRING (SIZE (16))
|
||||
|
||||
ClassOfServiceID ::= BIT STRING {
|
||||
formatIndicator (0),
|
||||
idHighBit (8),
|
||||
idLowBit (15) } (SIZE(16))
|
||||
-- formatIndicator is encoded as follows:
|
||||
-- 0 : International Format
|
||||
-- 1 : Network Format
|
||||
-- Bits 1-7 Unused (encoded as 0000000)
|
||||
-- The remaining bits (one octet) is the bit representation of the
|
||||
-- Class Of Service Identifier. All bits are significant.
|
||||
|
||||
AccessTypeExt ::= SEQUENCE {
|
||||
access Access,
|
||||
version Version,
|
||||
...}
|
||||
|
||||
Access ::= ENUMERATED {
|
||||
gsm (1),
|
||||
geran (2),
|
||||
utran (3),
|
||||
...}
|
||||
|
||||
Version ::= INTEGER (1..20)
|
||||
|
||||
AccessSubscriptionListExt ::= SEQUENCE SIZE (1..10) OF
|
||||
Access
|
||||
|
||||
AllowedServiceData ::= BIT STRING {
|
||||
amr-wb-allowed (0)} (SIZE(1..16))
|
||||
|
||||
AnyTimePO-BarringArg ::= SEQUENCE {
|
||||
subscriberIdentity [0] SubscriberIdentity,
|
||||
gsmSCF-Address [3] ISDN-AddressString,
|
||||
gprs-Barring GprsBarring,
|
||||
...}
|
||||
|
||||
AnyTimePO-BarringRes ::= SEQUENCE {
|
||||
...}
|
||||
|
||||
GprsBarring ::= ENUMERATED {
|
||||
gprsServiceBarring (0),
|
||||
grantGPRS-Service (1),
|
||||
...}
|
||||
|
||||
END
|
|
@ -49,6 +49,26 @@ CommonComponentId
|
|||
SubscriberId
|
||||
GuidanceInfo
|
||||
SS-InfoList
|
||||
# Not yet used Nokia extensions
|
||||
DsdArgExt
|
||||
CanLocArgExt
|
||||
ATMargExt
|
||||
DTMargExt
|
||||
NumberPorted
|
||||
ATMresExt
|
||||
AbsentSubscriberExt
|
||||
SriForSMArgExt
|
||||
ReportSMDelStatArgExt
|
||||
UdlArgExt
|
||||
RoamNotAllowedExt
|
||||
MO-ForwardSM-ArgExt
|
||||
ErrOlcmInfoTableExt
|
||||
RoutingCategoryExt
|
||||
AnyTimeModArgExt
|
||||
ExtensionType
|
||||
AccessTypeExt
|
||||
AccessSubscriptionListExt
|
||||
AllowedServiceData
|
||||
#.END
|
||||
#.PDU_NEW
|
||||
LCS-ClientID
|
||||
|
|
|
@ -1842,6 +1842,86 @@ static void dissect_gsm_mapext_PlmnContainer(tvbuff_t *tvb, packet_info *pinfo,
|
|||
dissect_gsm_old_PlmnContainer(FALSE, tvb, 0, &asn1_ctx, tree, -1);
|
||||
}
|
||||
|
||||
static void dissect_NokiaMAP_ext_SriResExtension(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) {
|
||||
proto_item *item=NULL;
|
||||
proto_tree *tree=NULL;
|
||||
asn1_ctx_t asn1_ctx;
|
||||
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
||||
/* create display subtree for the protocol */
|
||||
if(parent_tree){
|
||||
item = proto_tree_add_text(parent_tree, tvb, 0, -1, "Nokia Extension");
|
||||
tree = proto_item_add_subtree(item, ett_NokiaMAP_Extensions_SriResExtension_U);
|
||||
}
|
||||
dissect_NokiaMAP_Extensions_SriResExtension(FALSE, tvb, 0, &asn1_ctx, tree, -1);
|
||||
}
|
||||
|
||||
|
||||
static void dissect_NokiaMAP_ext_SriExtension(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) {
|
||||
proto_item *item=NULL;
|
||||
proto_tree *tree=NULL;
|
||||
asn1_ctx_t asn1_ctx;
|
||||
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
||||
/* create display subtree for the protocol */
|
||||
if(parent_tree){
|
||||
item = proto_tree_add_text(parent_tree, tvb, 0, -1, "Nokia Extension");
|
||||
tree = proto_item_add_subtree(item, ett_NokiaMAP_Extensions_SriExtension_U);
|
||||
}
|
||||
dissect_NokiaMAP_Extensions_SriExtension(FALSE, tvb, 0, &asn1_ctx, tree, -1);
|
||||
}
|
||||
|
||||
static void dissect_NokiaMAP_ext_SS_DataExtension(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) {
|
||||
proto_item *item=NULL;
|
||||
proto_tree *tree=NULL;
|
||||
asn1_ctx_t asn1_ctx;
|
||||
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
||||
/* create display subtree for the protocol */
|
||||
if(parent_tree){
|
||||
item = proto_tree_add_text(parent_tree, tvb, 0, -1, "Nokia Extension");
|
||||
tree = proto_item_add_subtree(item, ett_NokiaMAP_Extensions_SS_DataExtension_U);
|
||||
}
|
||||
dissect_NokiaMAP_Extensions_SS_DataExtension(FALSE, tvb, 0, &asn1_ctx, tree, -1);
|
||||
}
|
||||
|
||||
static void dissect_NokiaMAP_ext_HOExtension(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) {
|
||||
proto_item *item=NULL;
|
||||
proto_tree *tree=NULL;
|
||||
asn1_ctx_t asn1_ctx;
|
||||
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
||||
/* create display subtree for the protocol */
|
||||
if(parent_tree){
|
||||
item = proto_tree_add_text(parent_tree, tvb, 0, -1, "Nokia Extension");
|
||||
tree = proto_item_add_subtree(item, ett_NokiaMAP_Extensions_HO_Ext_U);
|
||||
}
|
||||
dissect_NokiaMAP_Extensions_HO_Ext(FALSE, tvb, 0, &asn1_ctx, tree, -1);
|
||||
}
|
||||
|
||||
static void dissect_NokiaMAP_ext_UlResExtension(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) {
|
||||
proto_item *item=NULL;
|
||||
proto_tree *tree=NULL;
|
||||
asn1_ctx_t asn1_ctx;
|
||||
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
||||
/* create display subtree for the protocol */
|
||||
if(parent_tree){
|
||||
item = proto_tree_add_text(parent_tree, tvb, 0, -1, "Nokia Extension");
|
||||
tree = proto_item_add_subtree(item, ett_NokiaMAP_Extensions_UlResExt_U);
|
||||
}
|
||||
dissect_NokiaMAP_Extensions_UlResExt(FALSE, tvb, 0, &asn1_ctx, tree, -1);
|
||||
}
|
||||
|
||||
|
||||
static void dissect_NokiaMAP_ext_IsdArgExtension(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) {
|
||||
proto_item *item=NULL;
|
||||
proto_tree *tree=NULL;
|
||||
asn1_ctx_t asn1_ctx;
|
||||
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
||||
/* create display subtree for the protocol */
|
||||
if(parent_tree){
|
||||
item = proto_tree_add_text(parent_tree, tvb, 0, -1, "Nokia Extension");
|
||||
tree = proto_item_add_subtree(item, ett_NokiaMAP_Extensions_IsdArgExt_U);
|
||||
}
|
||||
dissect_NokiaMAP_Extensions_IsdArgExt(FALSE, tvb, 0, &asn1_ctx, tree, -1);
|
||||
}
|
||||
|
||||
|
||||
static guint8 gsmmap_pdu_type = 0;
|
||||
static guint8 gsm_map_pdu_size = 0;
|
||||
|
@ -2292,12 +2372,18 @@ void proto_reg_handoff_gsm_map(void) {
|
|||
register_ber_oid_dissector_handle("0.4.0.0.1.0.45.3", map_handle, proto_gsm_map,"groupCallInfoRetrievalContext-v3" );
|
||||
/* Private extension container */
|
||||
register_ber_oid_dissector("1.3.12.2.1006.53.2.1.3", dissect_gsm_mapext_PlmnContainer, proto_gsm_map,"alcatel-E10-MAP-extension-PlmnContainer" );
|
||||
register_ber_oid_dissector("0.34.0",dissect_NokiaMAP_ext_IsdArgExtension,proto_gsm_map,"Nokia ISD Extension");
|
||||
register_ber_oid_dissector("0.34.2",dissect_NokiaMAP_ext_UlResExtension,proto_gsm_map,"Nokia Location Update Extension");
|
||||
register_ber_oid_dissector("0.34.4",dissect_NokiaMAP_ext_SS_DataExtension,proto_gsm_map,"Nokia SS Data Extension");
|
||||
register_ber_oid_dissector("0.34.5",dissect_NokiaMAP_ext_SriExtension,proto_gsm_map,"Nokia SRI Request Extension");
|
||||
register_ber_oid_dissector("0.34.7",dissect_NokiaMAP_ext_SriResExtension,proto_gsm_map,"Nokia SRI Response Extension");
|
||||
register_ber_oid_dissector("0.34.15",dissect_NokiaMAP_ext_HOExtension,proto_gsm_map,"Nokia HandOver Extension");
|
||||
}
|
||||
else {
|
||||
range_foreach(ssn_range, range_delete_callback);
|
||||
g_free(ssn_range);
|
||||
}
|
||||
|
||||
|
||||
ssn_range = range_copy(global_ssn_range);
|
||||
range_foreach(ssn_range, range_add_callback);
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,7 +1,7 @@
|
|||
/* Do not modify this file. Changes will be overwritten. */
|
||||
/* Generated automatically by the ASN.1 to Wireshark dissector compiler */
|
||||
/* packet-gsm_map.h */
|
||||
/* ../../tools/asn2wrs.py -b -c ./gsm_map.cnf -s ./packet-gsm_map-template -D . -O ../../epan/dissectors ../ros/Remote-Operations-Information-Objects.asn MobileDomainDefinitions.asn MAP-ApplicationContexts.asn MAP-SS-Code.asn MAP-BS-Code.asn MAP-TS-Code.asn MAP-ExtensionDataTypes.asn MAP-CommonDataTypes.asn MAP-SS-DataTypes.asn MAP-ER-DataTypes.asn MAP-SM-DataTypes.asn MAP-OM-DataTypes.asn MAP-MS-DataTypes.asn MAP-CH-DataTypes.asn MAP-LCS-DataTypes.asn MAP-GR-DataTypes.asn MAP-DialogueInformation.asn MAP-LocationServiceOperations.asn MAP-Group-Call-Operations.asn MAP-ShortMessageServiceOperations.asn MAP-SupplementaryServiceOperations.asn MAP-CallHandlingOperations.asn MAP-OperationAndMaintenanceOperations.asn MAP-MobileServiceOperations.asn MAP-Errors.asn MAP-Protocol.asn GSMMAP.asn SS-DataTypes.asn SS-Operations.asn Ericsson.asn */
|
||||
/* ../../tools/asn2wrs.py -b -c ./gsm_map.cnf -s ./packet-gsm_map-template -D . -O ../../epan/dissectors ../ros/Remote-Operations-Information-Objects.asn MobileDomainDefinitions.asn MAP-ApplicationContexts.asn MAP-SS-Code.asn MAP-BS-Code.asn MAP-TS-Code.asn MAP-ExtensionDataTypes.asn MAP-CommonDataTypes.asn MAP-SS-DataTypes.asn MAP-ER-DataTypes.asn MAP-SM-DataTypes.asn MAP-OM-DataTypes.asn MAP-MS-DataTypes.asn MAP-CH-DataTypes.asn MAP-LCS-DataTypes.asn MAP-GR-DataTypes.asn MAP-DialogueInformation.asn MAP-LocationServiceOperations.asn MAP-Group-Call-Operations.asn MAP-ShortMessageServiceOperations.asn MAP-SupplementaryServiceOperations.asn MAP-CallHandlingOperations.asn MAP-OperationAndMaintenanceOperations.asn MAP-MobileServiceOperations.asn MAP-Errors.asn MAP-Protocol.asn GSMMAP.asn SS-DataTypes.asn SS-Operations.asn Ericsson.asn Nokia.asn */
|
||||
|
||||
/* Input file: packet-gsm_map-template.h */
|
||||
|
||||
|
@ -273,6 +273,10 @@ int dissect_gsm_ss_LocationMethod(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
|
|||
/* --- Module EricssonMAP --- --- --- */
|
||||
|
||||
|
||||
/* --- Module NokiaMAP-Extensions --- --- --- */
|
||||
|
||||
int dissect_NokiaMAP_Extensions_ServiceKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
|
||||
/*--- End of included file: packet-gsm_map-exp.h ---*/
|
||||
#line 60 "../../asn1/gsm_map/packet-gsm_map-template.h"
|
||||
|
||||
|
|
Loading…
Reference in New Issue