aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/MAP_Dialogue/MAP_DialoguePDU.asn
blob: 40547437eb69b48641f1162d462a513b235d9fa1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
MAP-DialogueInformation {
	itu-t identified-organization (4) etsi (0) mobileDomain (0)
	gsm-Network (1) modules (3) map-DialogueInformation (3) version9 (9)}

DEFINITIONS

IMPLICIT TAGS
	::=

BEGIN

EXPORTS
	map-DialogueAS,
	MAP-DialoguePDU,
	map-ProtectedDialogueAS,
	MAP-ProtectedDialoguePDU
	;

IMPORTS
	gsm-NetworkId,
	as-Id
FROM MobileDomainDefinitions {
	itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
	mobileDomainDefinitions (0) version1 (1)}

	AddressString
FROM MAP-CommonDataTypes {
	itu-t identified-organization (4) etsi (0) mobileDomain (0)
	gsm-Network(1) modules (3) map-CommonDataTypes (18) version9 (9)}

	ExtensionContainer
FROM MAP-ExtensionDataTypes {
	itu-t identified-organization (4) etsi (0) mobileDomain (0)
	gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version9 (9)}

	SecurityHeader,
	ProtectedPayload
FROM MAP-ST-DataTypes {
	itu-t identified-organization (4) etsi (0) mobileDomain (0)
	gsm-Network (1) modules (3) map-ST-DataTypes (27) version9 (9)}
;
-- abstract syntax name for MAP-DialoguePDU

map-DialogueAS OBJECT IDENTIFIER ::=
	{gsm-NetworkId as-Id map-DialoguePDU (1) version1 (1)}
;

MAP-DialoguePDU ::= CHOICE {
	map-open 		[0] IMPLICIT MAP-OpenInfo,
	map-accept 		[1] IMPLICIT MAP-AcceptInfo,
	map-close 		[2] IMPLICIT MAP-CloseInfo,
	map-refuse 		[3] IMPLICIT MAP-RefuseInfo,
	map-userAbort 		[4] IMPLICIT MAP-UserAbortInfo,
	map-providerAbort 	[5] IMPLICIT MAP-ProviderAbortInfo}

MAP-OpenInfo ::= SEQUENCE {
	destinationReference [0] IMPLICIT AddressString OPTIONAL,
	originationReference [1] IMPLICIT AddressString OPTIONAL,
	...,
	extensionContainer ExtensionContainer OPTIONAL
-- extensionContainer must not be used in version 2
}

MAP-AcceptInfo ::= SEQUENCE {
	...,
	extensionContainer ExtensionContainer OPTIONAL
-- extensionContainer must not be used in version 2
}

MAP-CloseInfo ::= SEQUENCE {
	...,
	extensionContainer ExtensionContainer OPTIONAL
-- extensionContainer must not be used in version 2
}

MAP-RefuseInfo ::= SEQUENCE {
	reason Reason,
	...,
	extensionContainer ExtensionContainer OPTIONAL,
-- extensionContainer must not be used in version 2
	alternativeApplicationContext OBJECT IDENTIFIER OPTIONAL
-- alternativeApplicationContext must not be used in version 2
}

Reason ::= ENUMERATED {
	noReasonGiven (0),
	invalidDestinationReference (1),
	invalidOriginatingReference (2),
	encapsulatedAC-NotSupported (3) ,
	transportProtectionNotAdequate (4)}
-- encapsulatedAC-NotSupported and transportProtectionNotAdequate must not be used in
-- dialogues with an AC different from secureTransportHandling

MAP-UserAbortInfo ::= SEQUENCE {
	map-UserAbortChoice MAP-UserAbortChoice,
	...,
	extensionContainer ExtensionContainer OPTIONAL
-- extensionContainer must not be used in version 2
}

MAP-UserAbortChoice ::= CHOICE {
	userSpecificReason 			[0] IMPLICIT NULL,
	userResourceLimitation 			[1] IMPLICIT NULL,
	resourceUnavailable 			[2] IMPLICIT ResourceUnavailableReason,
	applicationProcedureCancellation 	[3] IMPLICIT ProcedureCancellationReason}

ResourceUnavailableReason ::= ENUMERATED {
	shortTermResourceLimitation (0),
	longTermResourceLimitation (1)}

ProcedureCancellationReason ::= ENUMERATED {
	handoverCancellation (0),
	radioChannelRelease (1),
	networkPathRelease (2),
	callRelease (3),
	associatedProcedureFailure (4),
	tandemDialogueRelease (5),
	remoteOperationsFailure (6)}

MAP-ProviderAbortInfo ::= SEQUENCE {
	map-ProviderAbortReason MAP-ProviderAbortReason,
	...,
	extensionContainer ExtensionContainer OPTIONAL
-- extensionContainer must not be used in version 2
}

MAP-ProviderAbortReason ::= ENUMERATED {
	abnormalDialogue (0),
	invalidPDU (1)}
-- abstract syntax name for MAP-ProtectedDialoguePDU
map-ProtectedDialogueAS OBJECT IDENTIFIER ::=
	{gsm-NetworkId as-Id map-ProtectedDialoguePDU (3) version1 (1)}

MAP-ProtectedDialoguePDU ::= SEQUENCE {
	encapsulatedAC OBJECT IDENTIFIER,
	securityHeader SecurityHeader OPTIONAL,
	protectedPayload ProtectedPayload OPTIONAL,
	...}
-- The protectedPayload carries the result of applying the security function
-- defined in 3GPP TS 33.200 to the encoding of the securely transported
-- MAP-DialoguePDU

END