-- Module DirectoryInformationShadowProtocol (X.519 TC2:08/1997)
DirectoryInformationShadowProtocol {joint-iso-itu-t ds(5) module(1) disp(16) 3}
DEFINITIONS ::=
BEGIN
-- EXPORTS All
-- The types and values defined in this module are exported for use in the other ASN.1 modules contained
-- within the Directory Specifications, and for the use of other applications which will use them to access
-- Directory services. Other applications may use them for their own purposes, but this will not constrain
-- extensions and modifications needed to maintain or improve the Directory service.
IMPORTS
directoryShadowAbstractService, protocolObjectIdentifiers
FROM UsefulDefinitions {joint-iso-itu-t ds(5) module(1)
usefulDefinitions(0) 3}
ROS-OBJECT-CLASS, CONTRACT, OPERATION-PACKAGE, CONNECTION-PACKAGE,
Code, OPERATION
FROM Remote-Operations-Information-Objects {joint-iso-itu-t
remote-operations(4) informationObjects(5) version1(0)}
ROS{}, Bind{}, Unbind{}, InvokeId
FROM Remote-Operations-Generic-ROS-PDUs {joint-iso-itu-t
remote-operations(4) generic-ROS-PDUs(6) version1(0)}
APPLICATION-CONTEXT
FROM Remote-Operations-Information-Objects-extensions {joint-iso-itu-t
remote-operations(4) informationObjects-extensions(8) version1(0)}
acse, pData, association-by-RTSE, transfer-by-RTSE
FROM Remote-Operations-Realizations {joint-iso-itu-t remote-operations(4)
realizations(9) version1(0)}
acse-abstract-syntax
FROM Remote-Operations-Abstract-Syntaxes {joint-iso-itu-t
remote-operations(4) remote-operations-abstract-syntaxes(12) version1(0)}
id-ac-shadowSupplierInitiatedAC, id-ac-shadowSupplierInitiatedAsynchronousAC,
id-ac-shadowConsumerInitiatedAC,
id-ac-shadowConsumerInitiatedAsynchronousAC,
id-ac-reliableShadowSupplierInitiatedAC,
id-ac-reliableShadowConsumerInitiatedAC,
id-rosObject-initiatingConsumerDSA, id-rosObject-respondingSupplierDSA,
id-rosObject-initiatingSupplierDSA, id-rosObject-respondingConsumerDSA,
id-contract-shadowConsumer, id-contract-shadowSupplier,
id-package-dispConnection, id-package-shadowConsumer,
id-package-shadowSupplier, id-as-directoryShadowAS,
id-as-directoryReliableShadowAS, id-as-reliableShadowBindingAS
FROM ProtocolObjectIdentifiers protocolObjectIdentifiers
dSAShadowBind, dSAShadowUnbind, requestShadowUpdate, updateShadow,
coordinateShadowUpdate
FROM DirectoryShadowAbstractService directoryShadowAbstractService
RTORQapdu, RTOACapdu, RTORJapdu
FROM Reliable-Transfer-APDU {joint-iso-itu-t reliable-transfer(3) apdus(0)};
RTSE-apdus ::= CHOICE {
rtorq-apdu [16] IMPLICIT RTORQapdu,
rtoac-apdu [17] IMPLICIT RTOACapdu,
rtorj-apdu [18] IMPLICIT RTORJapdu,
rttp-apdu RTTPapdu,
rttr-apdu RTTRapdu,
rtab-apdu [22] IMPLICIT RTABapdu
}
RTTPapdu ::= -- priority-- INTEGER
RTTRapdu ::= OCTET STRING
RTABapdu ::= SET {
abortReason [0] IMPLICIT AbortReason OPTIONAL,
reflectedParameter [1] IMPLICIT BIT STRING OPTIONAL,
-- 8 bits maximum, only if abortReason is invalidParameter
userdataAB
[2] TYPE-IDENTIFIER.&Type
OPTIONAL -- only in normal mode and if abortReason--
-- is userError
}
AbortReason ::= INTEGER {
localSystemProblem(0),
invalidParameter(1), -- reflectedParameter supplied
unrecognizedActivity(2),
temporaryProblem(3),
-- the RTSE cannot accept a session for a period of time
protocolError(4), -- RTSE level protocol error
permanentProblem(5), --provider-abort solely in normal mode
userError(6), -- user-abort solely in normal mode
transferCompleted(7) -- activity can't be discarded--}
-- application contexts
shadowSupplierInitiatedAC APPLICATION-CONTEXT ::= {
CONTRACT shadowSupplierContract
ESTABLISHED BY acse
INFORMATION TRANSFER BY pData
ABSTRACT SYNTAXES
{acse-abstract-syntax | directoryShadowAbstractSyntax}
APPLICATION CONTEXT NAME id-ac-shadowSupplierInitiatedAC
}
shadowSupplierInitiatedAsynchronousAC APPLICATION-CONTEXT ::= {
CONTRACT shadowSupplierContract
ESTABLISHED BY acse
INFORMATION TRANSFER BY pData
ABSTRACT SYNTAXES
{acse-abstract-syntax | directoryShadowAbstractSyntax}
APPLICATION CONTEXT NAME id-ac-shadowSupplierInitiatedAsynchronousAC
}
shadowConsumerInitiatedAC APPLICATION-CONTEXT ::= {
CONTRACT shadowConsumerContract
ESTABLISHED BY acse
INFORMATION TRANSFER BY pData
ABSTRACT SYNTAXES
{acse-abstract-syntax | directoryShadowAbstractSyntax}
APPLICATION CONTEXT NAME id-ac-shadowConsumerInitiatedAC
}
shadowConsumerInitiatedAsynchronousAC APPLICATION-CONTEXT ::= {
CONTRACT shadowConsumerContract
ESTABLISHED BY acse
INFORMATION TRANSFER BY pData
ABSTRACT SYNTAXES
{acse-abstract-syntax | directoryShadowAbstractSyntax}
APPLICATION CONTEXT NAME id-ac-shadowConsumerInitiatedAsynchronousAC
}
reliableShadowSupplierInitiatedAC APPLICATION-CONTEXT ::= {
CONTRACT shadowSupplierContract
ESTABLISHED BY association-by-RTSE
INFORMATION TRANSFER BY transfer-by-RTSE
ABSTRACT SYNTAXES
{acse-abstract-syntax | reliableShadowBindingAbstractSyntax |
directoryReliableShadowAbstractSyntax}
APPLICATION CONTEXT NAME id-ac-reliableShadowSupplierInitiatedAC
}
reliableShadowConsumerInitiatedAC APPLICATION-CONTEXT ::= {
CONTRACT shadowConsumerContract
ESTABLISHED BY association-by-RTSE
INFORMATION TRANSFER BY transfer-by-RTSE
ABSTRACT SYNTAXES
{acse-abstract-syntax | reliableShadowBindingAbstractSyntax |
directoryReliableShadowAbstractSyntax}
APPLICATION CONTEXT NAME id-ac-reliableShadowConsumerInitiatedAC
}
-- ROS objects
initiating-consumer-dsa ROS-OBJECT-CLASS ::= {
INITIATES {shadowConsumerContract}
ID id-rosObject-initiatingConsumerDSA
}
responding-supplier-dsa ROS-OBJECT-CLASS ::= {
RESPONDS {shadowConsumerContract}
ID id-rosObject-respondingSupplierDSA
}
initiating-supplier-dsa ROS-OBJECT-CLASS ::= {
INITIATES {shadowSupplierContract}
ID id-rosObject-initiatingSupplierDSA
}
responding-consumer-dsa ROS-OBJECT-CLASS ::= {
RESPONDS {shadowSupplierContract}
ID id-rosObject-respondingConsumerDSA
}
-- contracts
shadowConsumerContract CONTRACT ::= {
CONNECTION dispConnectionPackage
INITIATOR CONSUMER OF {shadowConsumerPackage}
ID id-contract-shadowConsumer
}
shadowSupplierContract CONTRACT ::= {
CONNECTION dispConnectionPackage
RESPONDER CONSUMER OF {shadowSupplierPackage}
ID id-contract-shadowSupplier
}
-- connection package
dispConnectionPackage CONNECTION-PACKAGE ::= {
BIND dSAShadowBind
UNBIND dSAShadowUnbind
ID id-package-dispConnection
}
-- packages
shadowConsumerPackage OPERATION-PACKAGE ::= {
CONSUMER INVOKES {requestShadowUpdate}
SUPPLIER INVOKES {updateShadow}
ID id-package-shadowConsumer
}
shadowSupplierPackage OPERATION-PACKAGE ::= {
SUPPLIER INVOKES {coordinateShadowUpdate | updateShadow}
ID id-package-shadowSupplier
}
-- abstract syntaxes
directoryShadowAbstractSyntax ABSTRACT-SYNTAX ::= {
DISP-PDUs
IDENTIFIED BY id-as-directoryShadowAS
}
directoryReliableShadowAbstractSyntax ABSTRACT-SYNTAX ::= {
Reliable-DISP-PDUs
IDENTIFIED BY id-as-directoryReliableShadowAS
}
reliableShadowBindingAbstractSyntax ABSTRACT-SYNTAX ::= {
ReliableShadowBinding-PDUs
IDENTIFIED BY id-as-reliableShadowBindingAS
}
DISP-PDUs ::= CHOICE {
basicROS ROS{{DISP-InvokeIDSet}, {DISP-Invokable}, {DISP-Returnable}},
bind Bind{dSAShadowBind},
unbind Unbind{dSAShadowUnbind}
}
Reliable-DISP-PDUs ::=
ROS{{DISP-InvokeIDSet}, {DISP-Invokable}, {DISP-Returnable}}
ReliableShadowBinding-PDUs ::= CHOICE {
rTS [0] RTSE-apdus,
bind Bind{dSAShadowBind},
unbind Unbind{dSAShadowUnbind}
}
DISP-InvokeIDSet ::= InvokeId(ALL EXCEPT absent:NULL)
DISP-Invokable OPERATION ::=
{requestShadowUpdate | updateShadow | coordinateShadowUpdate}
DISP-Returnable OPERATION ::=
{requestShadowUpdate | updateShadow | coordinateShadowUpdate}
-- remote operation codes
id-opcode-requestShadowUpdate Code ::= local:1
id-opcode-updateShadow Code ::= local:2
id-opcode-coordinateShadowUpdate Code ::= local:3
-- remote error codes
id-errcode-shadowError Code ::= local:1
END -- DirectoryInformationShadowProtocol
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D