aboutsummaryrefslogtreecommitdiffstats
path: root/lib/asn1/test/asn1_SUITE_data/rfcs/Remote-Operations-Useful-Definitions.asn1
blob: e526ff460090cc7ef039551925cbbb1f9bb53e95 (plain) (blame)
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
-- Module Remote-Operations-Useful-Definitions (X.880:07/1994)

Remote-Operations-Useful-Definitions {joint-iso-itu-t remote-operations(4)
  useful-definitions(7) version1(0)} DEFINITIONS IMPLICIT TAGS ::=
BEGIN

-- exports everything
IMPORTS
  OPERATION, ERROR, OPERATION-PACKAGE, Code
    FROM Remote-Operations-Information-Objects {joint-iso-itu-t
      remote-operations(4) informationObjects(5) version1(0)}
  InvokeId, ROS{}
    FROM Remote-Operations-Generic-ROS-PDUs {joint-iso-itu-t
      remote-operations(4) generic-ROS-PDUs(6) version1(0)};

emptyBind OPERATION ::= {ERRORS       {refuse}
                         SYNCHRONOUS  TRUE
}

emptyUnbind OPERATION ::= {SYNCHRONOUS  TRUE
}

refuse ERROR ::= {CODE  local:-1
}

no-op OPERATION ::= {ALWAYS RESPONDS  FALSE
                     CODE             local:-1
}

Forward{OPERATION:OperationSet} OPERATION ::=
  {OperationSet | OperationSet.&Linked.&Linked |
   OperationSet.&Linked.&Linked.&Linked.&Linked}

Reverse{OPERATION:OperationSet} OPERATION ::= {Forward{{OperationSet.&Linked}}}

ConsumerPerforms{OPERATION-PACKAGE:package} OPERATION ::=
  {Forward{{package.&Consumer}} | Forward{{package.&Both}} |
   Reverse{{package.&Supplier}} | Reverse{{package.&Both}}}

SupplierPerforms{OPERATION-PACKAGE:package} OPERATION ::=
  {Forward{{package.&Supplier}} | Forward{{package.&Both}} |
   Reverse{{package.&Consumer}} | Reverse{{package.&Both}}}

AllOperations{OPERATION-PACKAGE:package} OPERATION ::=
  {ConsumerPerforms{package} | SupplierPerforms{package}}

-- continued on the next page
recode{OPERATION:operation, Code:code} OPERATION ::= {
  ARGUMENT         operation.&ArgumentType
  OPTIONAL         operation.&argumentTypeOptional
  RESULT           operation.&ResultType
  OPTIONAL         operation.&resultTypeOptional
  RETURN RESULT    operation.&returnResult
  ERRORS           {operation.&Errors}
  LINKED           {operation.&Linked}
  SYNCHRONOUS      operation.&synchronous
  ALWAYS RESPONDS  operation.&alwaysReturns
  INVOKE PRIORITY  {operation.&InvokePriority}
  RESULT-PRIORITY  {operation.&ResultPriority}
  CODE             code
}

switch{OPERATION-PACKAGE:package, OBJECT IDENTIFIER:id} OPERATION-PACKAGE ::= 
{
  OPERATIONS        {package.&Both}
  CONSUMER INVOKES  {package.&Consumer}
  SUPPLIER INVOKES  {package.&Supplier}
  ID                id
}

combine{OPERATION-PACKAGE:ConsumerConsumes, OPERATION-PACKAGE:ConsumerSupplies,
        OPERATION-PACKAGE:base} OPERATION-PACKAGE ::= {
  OPERATIONS        {ConsumerConsumes.&Both | ConsumerSupplies.&Both}
  CONSUMER INVOKES  {ConsumerConsumes.&Consumer | ConsumerSupplies.&Supplier}
  SUPPLIER INVOKES  {ConsumerConsumes.&Supplier | ConsumerSupplies.&Consumer}
  ID                base.&id
}

ROS-SingleAS{InvokeId:InvokeIdSet, OPERATION-PACKAGE:package} ::=
  ROS{{InvokeIdSet}, {AllOperations  {package}}, {AllOperations  {package}}}

ROS-ConsumerAS{InvokeId:InvokeIdSet, OPERATION-PACKAGE:package} ::=
  ROS
    {{InvokeIdSet}, {ConsumerPerforms  {package}},
    {SupplierPerforms  {package}}}

ROS-SupplierAS{InvokeId:InvokeIdSet, OPERATION-PACKAGE:package} ::=
  ROS
    {{InvokeIdSet}, {SupplierPerforms  {package}},
    {ConsumerPerforms  {package}}}

END -- end of useful definitions.

-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D