diff options
author | Mikhail Koreshkov <drkor@hotbox.ru> | 2015-05-29 21:34:41 +0300 |
---|---|---|
committer | Pascal Quantin <pascal.quantin@gmail.com> | 2015-05-30 11:08:00 +0000 |
commit | db3c821084cf14bc3457b9c664a5c79352f2cda5 (patch) | |
tree | 088a1457484980c88002a9bcec27b75dc75034b9 /asn1 | |
parent | 78c0aa320c57e3b36eec2f3dce83e48899261334 (diff) |
Q955.3 MLPP Dissector
Added ASN.1 dissector for MLPP (Multi-Level Precedence and Preemption)
protocol Q955.3
Change-Id: Ic1c855dfbf1fb1295a43cfe3a5ad7087b5b89c12
Reviewed-on: https://code.wireshark.org/review/8689
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Diffstat (limited to 'asn1')
-rw-r--r-- | asn1/isdn-sup/CMakeLists.txt | 1 | ||||
-rw-r--r-- | asn1/isdn-sup/MLPP-Operations-And-Errors.asn | 135 | ||||
-rw-r--r-- | asn1/isdn-sup/Makefile.common | 3 | ||||
-rw-r--r-- | asn1/isdn-sup/isdn-sup.cnf | 2 |
4 files changed, 140 insertions, 1 deletions
diff --git a/asn1/isdn-sup/CMakeLists.txt b/asn1/isdn-sup/CMakeLists.txt index 6102b8954f..a5210cce27 100644 --- a/asn1/isdn-sup/CMakeLists.txt +++ b/asn1/isdn-sup/CMakeLists.txt @@ -42,6 +42,7 @@ set( ASN_FILE_LIST MCID-Operations.asn User-To-User-Signalling-Operations.asn Freephone-Operations.asn + MLPP-Operations-And-Errors.asn ) set( EXTRA_DIST diff --git a/asn1/isdn-sup/MLPP-Operations-And-Errors.asn b/asn1/isdn-sup/MLPP-Operations-And-Errors.asn new file mode 100644 index 0000000000..193232ad14 --- /dev/null +++ b/asn1/isdn-sup/MLPP-Operations-And-Errors.asn @@ -0,0 +1,135 @@ +-- MLPP-Operations-And-Errors.asn +-- +-- Taken from ITU Recommendation Q.955.3 (03/93) +-- + +-- Begin MLPP-operations definitions +MLPP-operations {ccitt recommendation q 955 mlpp (3) operations-and-errors(1)} +DEFINITIONS ::= +BEGIN +EXPORTS mLPPLFBQuery, mLPPCallRequest, mLPPCallPreemption, + unauthorizedPrecedenceLevel; + +IMPORTS OPERATIONS, ERROR + FROM Remote-Operations-Information-Objects + {joint-iso-itu-t (2) remote-operations (4) informationObjects(5) version1(0)} + + userNotSubscribed, rejectedByNetwork + FROM General-Error-List + {ccitt recommendation q 950 general-error-list (1)} + + Q931InformationElement + FROM Embedded-Q931-Types + {ccitt identified-organization etsi(0) 196 embedded-q931-types(7)}; + +-- Begin mLPPLFBquery operation +mLPPLFBQuery OPERATION ::= { + ARGUMENT MLPPLFBArg + RESULT MLPPLFBResp + ERRORS {userNotSubscribed | rejectedByNetwork} + CODE local: 24 +} + +MLPPLFBArg ::= SEQUENCE {mlppParams MLPPParams, ieArg IEArg} + +MLPPParams ::= SEQUENCE { + precLevel PrecLevel, lfbIndictn LFBIndictn, mlppSvcDomn MLPPSvcDomn +} + +PrecLevel ::= ENUMERATED { + flashOverride(0), flash(1), immediate(2), priority(3), routine(4) +} +-- Prec level identifies the precedence level of the MLPP call. + +LFBIndictn ::= ENUMERATED { + ifbAllowed(0), ifbNotAllowed(1), pathReserved(2) +} +-- LFBIndictri is coded for values. as indicated. + +MLPPSvcDomn ::= OCTET STRING(5) +-- Initial two octets provide the International ID. while the +-- following three octets provide the MLPP Domain +-- identification. + +IEArg ::= Q931InformationElement +-- Bearer capability. Calling party number. Called party +-- number. and Channel identification information elements in +-- the IE arg shall be as defined in Q.931. + +MLPPLFBResp ::= SEQUENCE {statusQuery StatusQuery, location Location} +-- The MLPP DSS1 LFB query response contains two +-- parameters. StatusQuery and Location. + +StatusQuery ::= ENUMERATED { + success(1), + -- Many cases as described in the optional MLPP LFB + failure(2), + -- Many cases as described in the MLPP procedure with LFB + -- option. + bearerCapabilityNotAuthorized(3), + -- bearer capability check failure. not authorized + bearerCapabilityNotlmplemented(4), + -- bearer capability check failure. not implemented + bearerCapabilityNotAvailable(5), + -- bearer capability check failure. not available + pathReservationDenied(6) + -- circuit cannot be reserved at the far end +} + +Location ::= Q931InformationElement +-- a bit string which conforms to Octect 3 of the Cause +-- information element as defined in 0.931. except that bit 8 is +-- marked as a spare. + +-- End of mLPPLFBquery operation. + +-- Begin mLPPCallRequest operation +mLPPCallRequest OPERATION ::= { + ARGUMENT MLPPParams + RESULT StatusRequest + ERRORS {userNotSubscribed | rejectedByNetwork | unauthorizedPrecedenceLevel} + CODE local: 25 +} + +StatusRequest ::= ENUMERATED { + successCalledUserMLPPSubscriber(1), + -- Called user is an MLPP subscriber. + successCalledUserNotMLPPSubscriber(2), + -- Called user is not an MLPP subscriber. + failureCaseA(3), + -- MLPP call from the calling user is a precedence call and + -- cannot be completed. + failureCaseB(4) + -- MLPP call from the calling user or MLPP call between two + -- MLPP subscribers experiences preemption. +} +-- End MLPPCallRequest operation. + +-- Begin mLPPCallpreemption operation +mLPPCallPreemption OPERATION ::= { + ARGUMENT PreemptParams + --RESULT + --ERRORS + CODE local: 26 +} + +PreemptParams ::= ENUMERATED { + circuitReservedForReuse(1), + -- Circuit of the to be preempted call is reserved for reuse + circuitNotReservedForReuse(2) + -- Circuit of the to be preempted call is not reserved for reuse +} +-- End mLPPCallpreemption operation + +unauthorizedPrecedenceLevel ERROR ::= { + CODE local: 44 +} +-- An indication that the calling user has exceeded the authorized. maximum +-- precedence level. + +--mLPPLFBQuery MLPPLFBQuery ::= 24 +--mLPPCallRequest MLPPCallRequest ::= 25 +--mLPPCALLPreemption MLPPCALLPreemption ::= 26 +--unauthorizedPrecedenceLevel UnauthorizedPrecedenceLevel ::= 44 +END +-- End MLPP-operations.
\ No newline at end of file diff --git a/asn1/isdn-sup/Makefile.common b/asn1/isdn-sup/Makefile.common index 495ca984eb..9634daa9f9 100644 --- a/asn1/isdn-sup/Makefile.common +++ b/asn1/isdn-sup/Makefile.common @@ -34,7 +34,8 @@ ASN_FILE_LIST = \ Diversion-Operations.asn \ MCID-Operations.asn \ User-To-User-Signalling-Operations.asn \ - Freephone-Operations.asn + Freephone-Operations.asn \ + MLPP-Operations-And-Errors.asn INCLUDED_ASN_FILE_LIST = \ CCBS-Operations-and-Errors.asn \ diff --git a/asn1/isdn-sup/isdn-sup.cnf b/asn1/isdn-sup/isdn-sup.cnf index e78d478e2a..e50a4bff65 100644 --- a/asn1/isdn-sup/isdn-sup.cnf +++ b/asn1/isdn-sup/isdn-sup.cnf @@ -16,6 +16,8 @@ Diversion-Operations isdn-sup MCID-Operations isdn-sup Closed-User-Group-Service-Operations isdn-sup Advice-of-Charge-Operations isdn-sup +MLPP-operations isdn-sup + #.PDU_NEW OPERATION.&ArgumentType |