aboutsummaryrefslogblamecommitdiffstats
path: root/lib/asn1/test/asn1_SUITE_data/rfcs/DirectoryInformationShadowProtocol.asn1
blob: 91c0a865f716ad3efc0e66e711d9bbc5853dba79 (plain) (tree)





















































































































































































































































                                                                                                            
-- 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