pycrate/pycrate_asn1dir/ANSI_TCAP/TCAPPackage.asn

292 lines
15 KiB
Groff

TCAPPackage
{iso(1) memberbody(2) usa(840) t1-114(10013) modules(0) tcapPackage(0) version4(4)} DEFINITIONS ::=
BEGIN
-- pycrate: error with unimported InvokeId, Errors
IMPORTS
InvokeId, Errors, OPERATION, ERROR
FROM TCAP-Remote-Operations-Information-Objects
{iso(1) memberbody(2) usa(840) t1-114(10013) modules(0) informationObjects(1) version4(4)};
PackageType ::= CHOICE {
unidirectional [PRIVATE 1] IMPLICIT UniTransactionPDU,
queryWithPerm [PRIVATE 2] IMPLICIT TransactionPDU,
queryWithoutPerm [PRIVATE 3] IMPLICIT TransactionPDU,
response [PRIVATE 4] IMPLICIT TransactionPDU,
conversationWithPerm [PRIVATE 5] IMPLICIT TransactionPDU,
conversationWithoutPerm [PRIVATE 6] IMPLICIT TransactionPDU,
abort [PRIVATE 22] IMPLICIT Abort
}
UniTransactionPDU ::= SEQUENCE {
identifier TransactionID,
dialoguePortion DialoguePortion OPTIONAL,
componentPortion ComponentSequence
}
TransactionPDU ::= SEQUENCE {
identifier TransactionID,
dialoguePortion DialoguePortion OPTIONAL,
componentPortion ComponentSequence OPTIONAL
}
-- TransactionPDU should include either a Dialogue Portion,
-- a Component Sequence or both
TransactionID ::= [PRIVATE 7] IMPLICIT OCTET STRING
-- 0 octets for the Unidirectional, 4 octets for Query, Response & Abort
-- 8 octets for Conversation in the order Originating then Responding TID
Abort ::= SEQUENCE {
identifier TransactionID,
dialoguePortion DialoguePortion OPTIONAL,
causeInformation CHOICE {
abortCause P-Abort-cause,
userInformation UserAbortInformation
} OPTIONAL
}
-- When the Abort package is generated by the Transaction sublayer,
-- the P-Abort-cause must be present
P-Abort-cause ::= [PRIVATE 23] IMPLICIT INTEGER {
unrecognizedPackageType(1),
incorrectTransactionPortion(2),
badlyStructuredTransactionPortion(3),
unassignedRespondingTransactionID(4),
permissionToReleaseProblem(5), -- for further study
resourceUnavailable(6),
unrecognizedDialoguePortionID(7),
badlyStructuredDialoguePortion(8),
missingDialoguePortion(9),
inconsistentDialoguePortion(10)
}
DialoguePortion ::= [PRIVATE 25] IMPLICIT SEQUENCE {
version ProtocolVersion OPTIONAL,
applicationContext CHOICE {
integerApplicationId IntegerApplicationContext,
objectApplicationId ObjectIDApplicationContext
} OPTIONAL,
userInformation UserInformation OPTIONAL,
securityContext CHOICE {
integerSecurityId [0] IMPLICIT INTEGER,
objectSecurityId [1] IMPLICIT OBJECT IDENTIFIER
} OPTIONAL,
confidentiality [2] IMPLICIT Confidentiality OPTIONAL
}
ProtocolVersion ::= [PRIVATE 26] IMPLICIT OCTET STRING(SIZE (1))
-- 0000 0000 not used
-- 0000 0001 T1.114-1996
-- 0000 0010 T1.114-2000
-- other reserved
-- These values can be combined using the bit-wise logical or operation
-- to indicate support for more than one version, e.g. the value 0000 0011
-- means that both 1996 and 2000 versions are supported
IntegerApplicationContext ::= [PRIVATE 27] IMPLICIT INTEGER
ObjectIDApplicationContext ::= [PRIVATE 28] IMPLICIT OBJECT IDENTIFIER
UserInformation ::= [PRIVATE 29] IMPLICIT SEQUENCE OF EXTERNAL
Confidentiality ::= SEQUENCE {
confidentialityId CHOICE {
integerConfidentialityId [0] IMPLICIT INTEGER,
objectConfidentialityId [1] IMPLICIT OBJECT IDENTIFIER
} OPTIONAL,
...
-- The extension marker indicates the possible presence of items
-- in the confidentiality set that are used by the confidentiality
-- algorithm.
}
UserAbortInformation ::= [PRIVATE 24] EXTERNAL
-- pycrate: error with undefined InvokeId, Invocable, Returnable
-- ComponentSequence ::= [PRIVATE 8] IMPLICIT SEQUENCE OF ComponentPDU{InvokeId, {Invocable}, {Returnable}}
ComponentSequence ::= [PRIVATE 8] IMPLICIT SEQUENCE OF ComponentPDU{TCInvokeIdSet, {...}, {...}}
-- Component Portion specification starts below
ComponentPDU{InvokeId:InvokeIdSet, OPERATION:Invocable, OPERATION:Returnable} ::= CHOICE {
invokeLast [PRIVATE 9] IMPLICIT Invoke{{InvokeIdSet}, {Invocable}}
(CONSTRAINED BY { -- invocable.&invokeLast must be TRUE --}
! RejectProblem:generalincorrectComponentPortion),
returnResultLast [PRIVATE 10] IMPLICIT ReturnResult{{Returnable}},
returnError [PRIVATE 11] IMPLICIT ReturnError{{Errors {{Returnable}}}},
reject [PRIVATE 12] IMPLICIT Reject,
invokeNotLast [PRIVATE 13] IMPLICIT Invoke{{InvokeIdSet}, {Invocable}}
(CONSTRAINED BY { -- invocable.&invokeLast must be FALSE --}
! RejectProblem:generalincorrectComponentPortion),
returnResultNotLast [PRIVATE 14] IMPLICIT ReturnResult{{Returnable}}
} (CONSTRAINED BY {-- must conform to the above definition --} ! RejectProblem:generalunrecognisedComponentType)
Invoke{InvokeId:InvokeIdSet, OPERATION:Operations} ::= SEQUENCE {
componentIDs [PRIVATE 15] IMPLICIT OCTET STRING(SIZE (0..2))
-- The invoke ID precedes the correlation id. There may be no
-- identifier,only an invoke ID, or both invoke and correlation ID.
(CONSTRAINED BY {-- must be unambiguous --}
! RejectProblem:invokeduplicateInvocation)
(CONSTRAINED BY {-- correlation ID must identify an outstanding operation --}
! RejectProblem:invokeunrecognisedCorrelationId) OPTIONAL,
-- operationCode
opcode OPERATION.&operationCode ({Operations} ! RejectProblem:invokeunrecognisedOperation),
-- OPERATION.&ParameterType
parameter OPERATION.&ResultType ({Operations}{@opcode}
! RejectProblem:invoke-mistypedArgument) OPTIONAL
} (CONSTRAINED BY {-- must conform to the above definition --} ! RejectProblem:generalincorrectComponentPortion)
(CONSTRAINED BY {-- must have consistent encoding --} ! RejectProblem:generalbadlyStructuredCompPortion)
(CONSTRAINED BY {-- must conform to T1.114.3 encoding rules --} ! RejectProblem:generalincorrectComponentCoding)
ReturnResult{OPERATION:Operations} ::= SEQUENCE {
componentID [PRIVATE 15] IMPLICIT OCTET STRING(SIZE (1))
(CONSTRAINED BY {-- must be that of an outstanding operation --}
! RejectProblem:returnResultunrecognisedCorrelationId)
(CONSTRAINED BY {-- which returns a result --}
! RejectProblem:returnResultunexpectedReturnResult),
parameter OPERATION.&ResultType
-- ({Operations}{@opcode} !RejectProblem:returnResultincorrectParameter)
OPTIONAL
} (CONSTRAINED BY {-- must conform to the above definition --} ! RejectProblem:generalincorrectComponentPortion)
(CONSTRAINED BY {-- must have consistent encoding --} ! RejectProblem:generalbadlyStructuredCompPortion)
(CONSTRAINED BY {-- must conform to T1.114.3 encoding rules --} ! RejectProblem:generalincorrectComponentCoding)
ReturnError{ERROR:Errors} ::= SEQUENCE {
componentID [PRIVATE 15] IMPLICIT OCTET STRING(SIZE (1))
(CONSTRAINED BY {-- must be that of an outstanding operation --}
! RejectProblem:returnErrorunrecognisedCorrelationId)
(CONSTRAINED BY {-- which returns an error --}
! RejectProblem:returnErrorunexpectedReturnError),
errorCode ERROR.&errorCode({Errors} ! RejectProblem:returnErrorunrecognisedError)
(CONSTRAINED BY {-- must be in the &Errors field of the associated operation --}
! RejectProblem:returnErrorunexpectedError),
parameter ERROR.&ParameterType ({Errors}{@errorCode} !RejectProblem:returnErrorincorrectParameter) OPTIONAL
} (CONSTRAINED BY {-- must conform to the above definition --} ! RejectProblem:generalincorrectComponentPortion)
(CONSTRAINED BY {-- must have consistent encoding --} ! RejectProblem:generalbadlyStructuredCompPortion)
(CONSTRAINED BY {-- must conform to T1.114.3 encoding rules --} ! RejectProblem:generalincorrectComponentCoding)
Reject ::= SEQUENCE {
componentID [PRIVATE 15] IMPLICIT OCTET STRING(SIZE (0..1)),
rejectProblem [PRIVATE 21] IMPLICIT RejectProblem,
parameter CHOICE {
paramSequence [PRIVATE 16] IMPLICIT SEQUENCE {},
paramSet [PRIVATE 18] IMPLICIT SET {}
-- The choice between paramSequence and paramSet is implementation
-- dependent, however paramSequence is preferred.
}
} (CONSTRAINED BY {-- must conform to the above definition --} ! RejectProblem:generalincorrectComponentPortion)
(CONSTRAINED BY {-- must have consistent encoding --} ! RejectProblem:generalbadlyStructuredCompPortion)
(CONSTRAINED BY {-- must conform to T1.114.3 encoding rules --} ! RejectProblem:generalincorrectComponentCoding)
-- PROBLEMS, the specification of Problems follows
--Problem ::= INTEGER { <- looks bad according to the usage of "RejectProblem"
RejectProblem ::= INTEGER {
generalunrecognisedComponentType(257),
generalincorrectComponentPortion(258),
generalbadlyStructuredCompPortion(259),
generalincorrectComponentCoding(260),
invokeduplicateInvocation(513),
invokeunrecognisedOperation(514),
invokeincorrectParameter(515),
invokeunrecognisedCorrelationID(516),
returnResultunrecognisedCorrelationID(769),
returnResultunexpectedReturnResult(770),
returnResultincorrectParameter(771),
returnErrorunrecognisedCorrelationID(1025),
returnErrorunexpectedReturnError(1026),
returnErrorunrecognisedError(1027),
returnErrorunexpectedError(1028),
returnErrorincorrectParameter(1029),
-- Applications using T1.114-1988 report Transaction portion
-- problems using a Reject component with a problem code in
-- the range 1281e6
-- It is preferred that other applications report
-- these problems using the Abort package type
transactionunrecognizedPackageType(1281),
transactionincorrectTransPortion(1282),
transactionbadlyStructuredTransPortion(1283),
transactionunassignedRespondingTransID(1284),
transactionpermissionToReleaseProblem(1285),
transactionresourceUnavailable(1286)
}
-- pycrate, TCInvokeIdSet: unsupported conversion from a CHOICE constraint
-- to a set of values
--TCInvokeIdSet ::= InvokeId(WITH COMPONENTS { present (-128..127) })
TCInvokeIdSet InvokeId ::= {
present:-128 | present:-127 | present: -126 | present: -125 |
present:-124 | present:-123 | present: -122 | present: -121 |
present:-120 | present:-119 | present: -118 | present: -117 |
present:-116 | present:-115 | present: -114 | present: -113 |
present:-112 | present:-111 | present: -110 | present: -109 |
present:-108 | present:-107 | present: -106 | present: -105 |
present:-104 | present:-103 | present: -102 | present: -101 |
present:-100 | present:-99 | present: -98 | present: -97 |
present:-96 | present:-95 | present: -94 | present: -93 |
present:-92 | present:-91 | present: -90 | present: -89 |
present:-88 | present:-87 | present: -86 | present: -85 |
present:-84 | present:-83 | present: -82 | present: -81 |
present:-80 | present:-79 | present: -78 | present: -77 |
present:-76 | present:-75 | present: -74 | present: -73 |
present:-72 | present:-71 | present: -70 | present: -69 |
present:-68 | present:-67 | present: -66 | present: -65 |
present:-64 | present:-63 | present: -62 | present: -61 |
present:-60 | present:-59 | present: -58 | present: -57 |
present:-56 | present:-55 | present: -54 | present: -53 |
present:-52 | present:-51 | present: -50 | present: -49 |
present:-48 | present:-47 | present: -46 | present: -45 |
present:-44 | present:-43 | present: -42 | present: -41 |
present:-40 | present:-39 | present: -38 | present: -37 |
present:-36 | present:-35 | present: -34 | present: -33 |
present:-32 | present:-31 | present: -30 | present: -29 |
present:-28 | present:-27 | present: -26 | present: -25 |
present:-24 | present:-23 | present: -22 | present: -21 |
present:-20 | present:-19 | present: -18 | present: -17 |
present:-16 | present:-15 | present: -14 | present: -13 |
present:-12 | present:-11 | present: -10 | present: -9 |
present:-8 | present:-7 | present: -6 | present: -5 |
present:-4 | present:-3 | present: -2 | present: -1 |
present:0 | present:1 | present: 2 | present: 3 |
present:4 | present:5 | present: 6 | present: 7 |
present:8 | present:9 | present: 10 | present: 11 |
present:12 | present:13 | present: 14 | present: 15 |
present:16 | present:17 | present: 18 | present: 19 |
present:20 | present:21 | present: 22 | present: 23 |
present:24 | present:25 | present: 26 | present: 27 |
present:28 | present:29 | present: 30 | present: 31 |
present:32 | present:33 | present: 34 | present: 35 |
present:36 | present:37 | present: 38 | present: 39 |
present:40 | present:41 | present: 42 | present: 43 |
present:44 | present:45 | present: 46 | present: 47 |
present:48 | present:49 | present: 50 | present: 51 |
present:52 | present:53 | present: 54 | present: 55 |
present:56 | present:57 | present: 58 | present: 59 |
present:60 | present:61 | present: 62 | present: 63 |
present:64 | present:65 | present: 66 | present: 67 |
present:68 | present:69 | present: 70 | present: 71 |
present:72 | present:73 | present: 74 | present: 75 |
present:76 | present:77 | present: 78 | present: 79 |
present:80 | present:81 | present: 82 | present: 83 |
present:84 | present:85 | present: 86 | present: 87 |
present:88 | present:89 | present: 90 | present: 91 |
present:92 | present:93 | present: 94 | present: 95 |
present:96 | present:97 | present: 98 | present: 99 |
present:100 | present:101 | present: 102 | present: 103 |
present:104 | present:105 | present: 106 | present: 107 |
present:108 | present:109 | present: 110 | present: 111 |
present:112 | present:113 | present: 114 | present: 115 |
present:116 | present:117 | present: 118 | present: 119 |
present:120 | present:121 | present: 122 | present: 123 |
present:124 | present:125 | present: 126 | present: 127
}
END