Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

323 lines
9.6 KiB

  1. --#comment "Copyright (C) Microsoft Corporation, 1999. All rights reserved."--
  2. --#comment "ASN.1 definitions for Connection Negotiation Protocol (GNP)"--
  3. --#SS.basic slinked-- -- set of and sequence of w/o size constraint
  4. --#SS.sized slinked-- -- set of and sequence of w/ size constraint
  5. --******************************************************************************
  6. --* ASN.1 Definition for CNP PDUs
  7. --******************************************************************************
  8. CNP-PROTOCOL DEFINITIONS AUTOMATIC TAGS ::=
  9. BEGIN
  10. --
  11. -- Nonstandard Parameter Types
  12. --
  13. H221NonStandard ::= SEQUENCE
  14. {
  15. t35CountryCode INTEGER(0..255), -- country, as per T.35
  16. t35Extension INTEGER(0..255), -- assigned nationally
  17. manufacturerCode INTEGER(0..65535), -- assigned nationally
  18. ...
  19. }
  20. NonStandardIdentifier ::= CHOICE
  21. {
  22. object OBJECT IDENTIFIER,
  23. h221NonStandard H221NonStandard,
  24. ...
  25. }
  26. CNP-NonStandardParameter ::= SEQUENCE
  27. {
  28. nonStandardIdentifier NonStandardIdentifier,
  29. data OCTET STRING
  30. }
  31. --
  32. -- Alias Types
  33. --
  34. CNP-TransportAddress ::= CHOICE
  35. {
  36. ipAddress SEQUENCE
  37. {
  38. ip OCTET STRING (SIZE (4)),
  39. port INTEGER (0..65535),
  40. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  41. ...
  42. },
  43. ipSourceRoute SEQUENCE
  44. {
  45. ip OCTET STRING (SIZE (4)),
  46. port INTEGER (0..65535),
  47. route SEQUENCE OF OCTET STRING (SIZE (4)),
  48. routing CHOICE
  49. {
  50. strict NULL,
  51. loose NULL,
  52. nonStandardRouting CNP-NonStandardParameter,
  53. ...
  54. },
  55. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  56. ...
  57. },
  58. ipxAddress SEQUENCE
  59. {
  60. node OCTET STRING (SIZE (6)),
  61. netnum OCTET STRING (SIZE (4)),
  62. port OCTET STRING (SIZE (2)),
  63. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  64. ...
  65. },
  66. ip6Address SEQUENCE
  67. {
  68. ip OCTET STRING (SIZE (16)),
  69. port INTEGER (0..65535),
  70. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  71. ...
  72. },
  73. netBios OCTET STRING (SIZE (16)),
  74. nsap OCTET STRING (SIZE (1..20)),
  75. nonStandardTransportAddress CNP-NonStandardParameter,
  76. ...
  77. } --#nocode--
  78. NumberDigits ::= IA5String (SIZE (1..128)) (FROM ("0123456789#*,"))
  79. PublicTypeOfNumber ::= CHOICE
  80. {
  81. unknown NULL,
  82. internationalNumber NULL,
  83. nationalNumber NULL,
  84. networkSpecificNumber NULL,
  85. subscriberNumber NULL,
  86. abbreviatedNumber NULL,
  87. nonStandardPublicTypeOfNumber CNP-NonStandardParameter,
  88. ...
  89. } --#nocode--
  90. PublicPartyNumber ::= SEQUENCE
  91. {
  92. publicTypeOfNumber PublicTypeOfNumber,
  93. publicNumberDigits NumberDigits,
  94. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  95. ...
  96. } --#nocode--
  97. PrivateTypeOfNumber ::= CHOICE
  98. {
  99. unknown NULL,
  100. level2RegionalNumber NULL,
  101. level1RegionalNumber NULL,
  102. pISNSpecificNumber NULL,
  103. localNumber NULL,
  104. abbreviatedNumber NULL,
  105. nonStandardPrivateTypeOfNumber CNP-NonStandardParameter,
  106. ...
  107. } --#nocode--
  108. PrivatePartyNumber ::= SEQUENCE
  109. {
  110. privateTypeOfNumber PrivateTypeOfNumber,
  111. privateNumberDigits NumberDigits,
  112. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  113. ...
  114. } --#nocode--
  115. PartyNumber ::= CHOICE
  116. {
  117. publicNumber PublicPartyNumber,
  118. dataPartyNumber NumberDigits,
  119. telexPartyNumber NumberDigits,
  120. privateNumber PrivatePartyNumber,
  121. nationalStandardPartyNumber NumberDigits,
  122. nonStandardPartyNumber CNP-NonStandardParameter,
  123. ...
  124. } --#nocode--
  125. AliasAddress ::= CHOICE
  126. {
  127. e164Address NumberDigits,
  128. name BMPString (SIZE (1..256)),
  129. url IA5String (SIZE (1..512)),
  130. transportAddress CNP-TransportAddress,
  131. emailAddress IA5String (SIZE (1..512)),
  132. partyNumber PartyNumber,
  133. nonStandardAliasAddress CNP-NonStandardParameter,
  134. ...
  135. } --#nocode--
  136. --
  137. -- Service Negotiation Types
  138. --
  139. TPDUSize ::= INTEGER (128..65535)
  140. ReliableTransportProtocolType ::= CHOICE
  141. {
  142. cnp NULL,
  143. x224 NULL,
  144. map NULL,
  145. nonStandardTransportProtocol CNP-NonStandardParameter,
  146. ...
  147. } --#nocode--
  148. ReliableTransportProtocol ::= SEQUENCE
  149. {
  150. type ReliableTransportProtocolType,
  151. maxTPDUSize TPDUSize,
  152. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  153. ...
  154. } --#nocode--
  155. ReliableSecurityProtocol ::= CHOICE
  156. {
  157. none NULL,
  158. tls NULL,
  159. ssl NULL,
  160. ipsecIKEKeyManagement NULL,
  161. ipsecManualKeyManagement NULL,
  162. x274WithoutSAID NULL,
  163. x274WithSAID X274WithSAIDInfo,
  164. physical NULL,
  165. gssApiX224 NULL,
  166. nonStandardSecurityProtocol CNP-NonStandardParameter,
  167. ...
  168. }
  169. UnreliableTransportProtocolType ::= CHOICE
  170. {
  171. x234 NULL,
  172. nonStandardTransportProtocol CNP-NonStandardParameter,
  173. ...
  174. } --#nocode--
  175. UnreliableTransportProtocol ::= SEQUENCE
  176. {
  177. type UnreliableTransportProtocolType,
  178. maxTPDUSize TPDUSize,
  179. sourceAddress CNP-TransportAddress,
  180. sourceTSAP OCTET STRING OPTIONAL,
  181. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  182. ...
  183. } --#nocode--
  184. UnreliableSecurityProtocol ::= CHOICE
  185. {
  186. none NULL,
  187. ipsecIKEKeyManagement NULL,
  188. ipsecManualKeyManagement NULL,
  189. physical NULL,
  190. nonStandardSecurityProtocol CNP-NonStandardParameter,
  191. ...
  192. } --#nocode--
  193. X274WithSAIDInfo ::= SEQUENCE
  194. {
  195. localSAID OCTET STRING,
  196. peerSAID OCTET STRING,
  197. ...
  198. }
  199. t123AnnexBProtocolId ProtocolIdentifier ::= { itu-t (0) recommendation (0) t (20) 123 annexb (2) 1}
  200. --
  201. -- CNP PDU Types
  202. --
  203. CNP-Priority ::= INTEGER (0..15)
  204. ProtocolIdentifier ::= OBJECT IDENTIFIER
  205. -- shall be set to
  206. -- {itu-t (0) recommendation (0) t (20) 123 annexb (2) 1}
  207. ConnectRequestPDU ::= SEQUENCE
  208. {
  209. protocolIdentifier ProtocolIdentifier,
  210. reconnectRequested BOOLEAN,
  211. priority CNP-Priority OPTIONAL,
  212. reliableTransportProtocols SEQUENCE OF ReliableTransportProtocol OPTIONAL,
  213. reliableSecurityProtocols SEQUENCE OF ReliableSecurityProtocol OPTIONAL,
  214. unreliableTransportProtocols SEQUENCE OF UnreliableTransportProtocol OPTIONAL,
  215. unreliableSecurityProtocols SEQUENCE OF UnreliableSecurityProtocol OPTIONAL,
  216. destinationAddress SEQUENCE OF AliasAddress OPTIONAL,
  217. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  218. ...
  219. }
  220. ConnectConfirmPDU ::= SEQUENCE
  221. {
  222. protocolIdentifier ProtocolIdentifier,
  223. reliableTransportProtocol ReliableTransportProtocol OPTIONAL,
  224. reliableSecurityProtocol ReliableSecurityProtocol OPTIONAL,
  225. unreliableTransportProtocol UnreliableTransportProtocol OPTIONAL,
  226. unreliableSecurityProtocol UnreliableSecurityProtocol OPTIONAL,
  227. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  228. ...
  229. }
  230. DisconnectReason ::= CHOICE
  231. {
  232. unacceptableVersion NULL,
  233. incompatibleParameters NULL,
  234. securityDenied NULL,
  235. destinationUnreachable NULL,
  236. userRejected NULL,
  237. userInitiated NULL,
  238. protocolError NULL,
  239. unspecifiedFailure NULL,
  240. routeToAlternate NULL,
  241. nonStandardDisconnectReason CNP-NonStandardParameter,
  242. ...
  243. }
  244. DisconnectRequestPDU ::= SEQUENCE
  245. {
  246. disconnectReason DisconnectReason,
  247. reliableTransportProtocol ReliableTransportProtocol OPTIONAL,
  248. reliableSecurityProtocol ReliableSecurityProtocol OPTIONAL,
  249. unreliableTransportProtocol UnreliableTransportProtocol OPTIONAL,
  250. unreliableSecurityProtocol UnreliableSecurityProtocol OPTIONAL,
  251. destinationAddress SEQUENCE OF AliasAddress OPTIONAL,
  252. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  253. ...
  254. }
  255. RejectCause ::= CHOICE
  256. {
  257. unrecognizedPDU NULL,
  258. invalidParameter NULL,
  259. causeUnspecified NULL,
  260. nonStandardRejectCause CNP-NonStandardParameter,
  261. ...
  262. } --#nocode--
  263. ErrorPDU ::= SEQUENCE
  264. {
  265. rejectCause RejectCause,
  266. rejectedPDU OCTET STRING,
  267. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  268. ...
  269. } --#nocode--
  270. CNP-NonStandardPDU ::= SEQUENCE
  271. {
  272. nonStandardParameters SEQUENCE OF CNP-NonStandardParameter OPTIONAL,
  273. ...
  274. } --#nocode--
  275. CNPPDU ::= CHOICE
  276. {
  277. connectRequest ConnectRequestPDU,
  278. connectConfirm ConnectConfirmPDU,
  279. disconnectRequest DisconnectRequestPDU,
  280. error ErrorPDU,
  281. nonStandardCNPPDU CNP-NonStandardPDU,
  282. ...
  283. }
  284. END