epan/dissectors/pidl/ C99 drsuapi
[wireshark-sm.git] / epan / dissectors / asn1 / goose / goose.asn
blob2471e403369334b84c99bab77208c2e1eaad901f
1 IEC61850 DEFINITIONS ::= BEGIN
3 GOOSEpdu ::= CHOICE {
4         gseMngtPdu      [APPLICATION 0] IMPLICIT GSEMngtPdu,
5         goosePdu        [APPLICATION 1] IMPLICIT IECGoosePdu,
6         ...
9 GSEMngtPdu ::= SEQUENCE {
10         stateID         [0] IMPLICIT INTEGER,
11 --      security        [3] ANY OPTIONAL,
12                                         -- reserved for future definition
13         requestResp     RequestResponse
14 --      CHOICE {
15 --              requests        [1] IMPLICIT GSEMngtRequests,
16 --              responses       [2] IMPLICIT GSEMngtResponses
17 --      }
20 RequestResponse ::= CHOICE {
21         requests        [1] IMPLICIT GSEMngtRequests,
22         responses       [2] IMPLICIT GSEMngtResponses
25 GSEMngtRequests ::= CHOICE {
26         getGoReference                  [1] IMPLICIT GetReferenceRequestPdu,
27         getGOOSEElementNumber   [2] IMPLICIT GetElementRequestPdu,
28         getGsReference                  [3] IMPLICIT GetReferenceRequestPdu,
29         getGSSEDataOffset               [4] IMPLICIT GetElementRequestPdu,
30         ...
33 GSEMngtResponses ::= CHOICE {
34         gseMngtNotSupported             [0] IMPLICIT NULL,
35         getGoReference                  [1] IMPLICIT GSEMngtResponsePdu,
36         getGOOSEElementNumber   [2] IMPLICIT GSEMngtResponsePdu,
37         getGsReference                  [3] IMPLICIT GSEMngtResponsePdu,
38         getGSSEDataOffset               [4] IMPLICIT GSEMngtResponsePdu,
39         ...
42 GetReferenceRequestPdu ::= SEQUENCE {
43         ident   [0] IMPLICIT VisibleString, -- size shall support up to 65 octets
44         offset  [1] IMPLICIT SEQUENCE OF INTEGER,
45         ...
48 GetElementRequestPdu ::= SEQUENCE {
49         ident           [0] IMPLICIT VisibleString, -- size shall support up to 65 octets
50         references      [1] IMPLICIT SEQUENCE OF VisibleString,
51         ...
54 GSEMngtResponsePdu ::= SEQUENCE {
55         ident           [0] IMPLICIT VisibleString, -- echos the value of the request
56         confRev         [1] IMPLICIT INTEGER OPTIONAL,
57         posNeg          PositiveNegative,
58 --      CHOICE {
59 --              responsePositive        [2] IMPLICIT SEQUENCE {
60 --                      datSet                          [0] IMPLICIT VisibleString OPTIONAL,
61 --                      result                          [1] IMPLICIT SEQUENCE OF RequestResults
62 --              },
63 --              responseNegative        [3] IMPLICIT GlbErrors
64 --      },
65         ...
68 PositiveNegative ::= CHOICE {
69         responsePositive        [2] IMPLICIT SEQUENCE {
70                 datSet                          [0] IMPLICIT VisibleString OPTIONAL,
71                 result                          [1] IMPLICIT SEQUENCE OF RequestResults
72         },
73         responseNegative        [3] IMPLICIT GlbErrors
76 RequestResults::= CHOICE {
77         offset          [0] IMPLICIT INTEGER,
78         reference       [1] IMPLICIT IA5String,
79         error           [2] IMPLICIT ErrorReason
82 GlbErrors ::= INTEGER {
83         other(0),
84         unknownControlBlock(1),
85         responseTooLarge(2),
86         controlBlockConfigurationError(3) --,
87 --      ...
90 ErrorReason ::= INTEGER {
91         other (0),
92         notFound (1) --,
93 --      ...
96 IECGoosePdu ::= SEQUENCE {
97         gocbRef                         [0] IMPLICIT VisibleString,
98         timeAllowedtoLive       [1] IMPLICIT INTEGER,
99         datSet                          [2] IMPLICIT VisibleString,
100         goID                            [3] IMPLICIT VisibleString OPTIONAL,
101         t                                       [4] IMPLICIT UtcTime,
102         stNum                           [5] IMPLICIT INTEGER,
103         sqNum                           [6] IMPLICIT INTEGER,
104         simulation                      [7] IMPLICIT BOOLEAN DEFAULT FALSE,
105         confRev                         [8] IMPLICIT INTEGER,
106         ndsCom                          [9] IMPLICIT BOOLEAN DEFAULT FALSE,
107         numDatSetEntries        [10] IMPLICIT INTEGER,
108         allData                         [11] IMPLICIT SEQUENCE OF Data --,
109 --      security                        [12] ANY OPTIONAL
110                                                          -- reserved for digital signature
113 UtcTime ::= OCTET STRING -- format and size defined in 8.1.3.6.
115 TimeOfDay ::= OCTET STRING -- (SIZE (4 | 6))
116 FloatingPoint ::= OCTET STRING
119 Data ::= CHOICE
120         {
121         -- context tag 0 is reserved for AccessResult
122         array                       [1] IMPLICIT SEQUENCE OF Data,
123         structure                   [2] IMPLICIT SEQUENCE OF Data,
124         boolean                     [3] IMPLICIT BOOLEAN,       
125         bit-string                  [4] IMPLICIT BIT STRING,
126         integer                     [5] IMPLICIT INTEGER,
127         unsigned                    [6] IMPLICIT INTEGER,
128         floating-point          [7] IMPLICIT FloatingPoint,
129         real                        [8] IMPLICIT REAL,
130         octet-string            [9] IMPLICIT OCTET STRING,
131         visible-string          [10] IMPLICIT VisibleString,
132         binary-time                 [12] IMPLICIT TimeOfDay,
133         bcd                             [13] IMPLICIT INTEGER,
134         booleanArray            [14] IMPLICIT BIT STRING,
135     objId               [15] IMPLICIT OBJECT IDENTIFIER,
136   ...,
137     mMSString           [16] IMPLICIT MMSString,
138     utc-time            [17] IMPLICIT UtcTime                           -- added by IEC61850 8.1 G3     
139     }
141 MMSString ::= UTF8String