]> git.stg.codes - stg.git/blob - libs/smux/SMUX.asn1
Public interfaces: part 4
[stg.git] / libs / smux / SMUX.asn1
1
2 -- WinAgents MIB Extraction Wizard\r
3 -- Extracted from rfc1227.txt 16.03.2005 20:20:14\r
4 \r
5 SMUX DEFINITIONS ::= BEGIN\r
6 \r
7 IMPORTS\r
8         ObjectName\r
9                 FROM RFC1155-SMI\r
10         DisplayString\r
11                 FROM RFC1213-MIB\r
12 \r
13         PDUs\r
14                 FROM RFC1157-SNMP;\r
15 \r
16 \r
17 -- tags for SMUX-specific PDUs are application-wide to\r
18 -- avoid conflict with tags for current (and future)\r
19 -- SNMP-generic PDUs\r
20 \r
21 SMUX-PDUs ::=\r
22     CHOICE {\r
23         open            -- SMUX peer uses\r
24             OpenPDU,    -- immediately after TCP open\r
25 \r
26         close           -- either uses immediately before TCP close\r
27             ClosePDU,\r
28 \r
29         registerRequest -- SMUX peer uses\r
30             RReqPDU,\r
31 \r
32         registerResponse -- SNMP agent uses\r
33             RRspPDU,\r
34 \r
35             PDUs,       -- note that roles are reversed:\r
36                         --   SNMP agent does get/get-next/set\r
37                         --   SMUX peer does get-response/trap\r
38 \r
39         commitOrRollback -- SNMP agent uses\r
40             SOutPDU\r
41    }\r
42 \r
43 \r
44 -- open PDU\r
45 -- currently only simple authentication\r
46 \r
47 OpenPDU ::=\r
48     CHOICE {\r
49        simple\r
50 \r
51            SimpleOpen\r
52     }\r
53 \r
54 SimpleOpen ::=\r
55     [APPLICATION 0] IMPLICIT\r
56         SEQUENCE {\r
57             version     -- of SMUX protocol\r
58                 INTEGER {\r
59                     version-1(0)\r
60                 },\r
61 \r
62             identity    -- of SMUX peer, authoritative\r
63                 OBJECT IDENTIFIER,\r
64 \r
65             description -- of SMUX peer, implementation-specific\r
66                 DisplayString,\r
67 \r
68             password    -- zero length indicates no authentication\r
69                 OCTET STRING\r
70         }\r
71 \r
72 \r
73 -- close PDU\r
74 \r
75 ClosePDU ::=\r
76     [APPLICATION 1] IMPLICIT\r
77         INTEGER {\r
78             goingDown(0),\r
79             unsupportedVersion(1),\r
80             packetFormat(2),\r
81             protocolError(3),\r
82             internalError(4),\r
83             authenticationFailure(5)\r
84         }\r
85 \r
86 \r
87 -- insert PDU\r
88 \r
89 RReqPDU ::=\r
90     [APPLICATION 2] IMPLICIT\r
91         SEQUENCE {\r
92             subtree\r
93                 ObjectName,\r
94 \r
95             priority    -- the lower the better, "-1" means default\r
96                 INTEGER (-1..2147483647),\r
97 \r
98             operation\r
99 \r
100                 INTEGER {\r
101                     delete(0),    -- remove registration\r
102                     readOnly(1),  -- add registration, objects are RO\r
103                     readWrite(2)  --   .., objects are RW\r
104                 }\r
105         }\r
106 \r
107 RRspPDU ::=\r
108     [APPLICATION 3] IMPLICIT\r
109         INTEGER {\r
110             failure(-1)\r
111 \r
112            -- on success the non-negative priority is returned\r
113         }\r
114 \r
115 SOutPDU ::=\r
116     [APPLICATION 4] IMPLICIT\r
117         INTEGER {\r
118             commit(0),\r
119             rollback(1)\r
120         }\r
121 \r
122 END