Leaked source code of windows server 2003
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.

655 lines
24 KiB

  1. /**************************************************************/
  2. /* Copyright (c) 1995 Intel Corporation. All rights reserved.*/
  3. /**************************************************************/
  4. /* Abstract syntax: mbft */
  5. /* Created: Mon Mar 18 11:56:58 1996 */
  6. /* ASN.1 compiler version: 4.1 */
  7. /* Target operating system: MS-DOS 5.0/Windows 3.1 or later */
  8. /* Target machine type: Intel x86 */
  9. /* C compiler options required: -Zp8 (Microsoft) or equivalent */
  10. /* ASN.1 compiler options specified:
  11. * -noshortennames -prefix -c++ -per
  12. */
  13. #ifndef OSS_mbft
  14. #define OSS_mbft
  15. #ifdef __cplusplus
  16. extern "C" {
  17. #endif /* __cplusplus */
  18. #include "asn1hdr.h"
  19. #define ASNEntity_Reference_PDU 1
  20. #define ASNMBFTPDU_PDU 2
  21. typedef struct ASN_ObjectID_ {
  22. struct ASN_ObjectID_ *next;
  23. unsigned short value;
  24. } *ASN_ObjectID;
  25. typedef struct ASNABSTRACT_SYNTAX {
  26. struct ASN_ObjectID_ *id;
  27. unsigned short Type;
  28. } ASNABSTRACT_SYNTAX;
  29. typedef struct ASN_choice1 {
  30. unsigned short choice;
  31. # define ASNsingle_ASN1_type_chosen 1
  32. # define ASNoctet_aligned_chosen 2
  33. # define ASNarbitrary_chosen 3
  34. union _union {
  35. OpenType ASNsingle_ASN1_type;
  36. struct ASNExternal_octet_aligned {
  37. unsigned int length;
  38. unsigned char *value;
  39. } ASNoctet_aligned;
  40. struct ASNExternal_arbitrary {
  41. unsigned int length; /* number of significant bits */
  42. unsigned char *value;
  43. } ASNarbitrary;
  44. } u;
  45. } ASN_choice1;
  46. typedef struct ASN_External {
  47. unsigned char bit_mask;
  48. # define ASNdirect_reference_present 0x80
  49. # define ASNindirect_reference_present 0x40
  50. struct ASN_ObjectID_ *ASNdirect_reference; /* optional */
  51. int ASNindirect_reference; /* optional */
  52. char *data_value_descriptor; /* NULL for not present */
  53. ASN_choice1 encoding;
  54. } ASN_External;
  55. typedef unsigned short ASNChannelID;
  56. typedef unsigned short ASNDynamicChannelID;
  57. typedef ASNDynamicChannelID ASNUserID;
  58. typedef unsigned short ASNTokenID;
  59. typedef struct ASNObjectID_ {
  60. struct ASNObjectID_ *next;
  61. unsigned long value;
  62. } *ASNObjectID;
  63. typedef struct ASNH221NonStandardIdentifier {
  64. unsigned short length;
  65. unsigned char value[255];
  66. } ASNH221NonStandardIdentifier;
  67. typedef struct ASNKey {
  68. unsigned short choice;
  69. # define ASNobject_chosen 1
  70. # define ASNh221NonStandard_chosen 2
  71. union _union {
  72. struct ASNObjectID_ *ASNobject;
  73. ASNH221NonStandardIdentifier ASNh221NonStandard;
  74. } u;
  75. } ASNKey;
  76. typedef struct ASNNonStandardParameter {
  77. ASNKey key;
  78. struct {
  79. unsigned int length;
  80. unsigned char *value;
  81. } data;
  82. } ASNNonStandardParameter;
  83. typedef struct ASNTextString {
  84. unsigned short length;
  85. unsigned short *value;
  86. } ASNTextString;
  87. typedef unsigned short ASNHandle;
  88. typedef struct ASN_ObjectID_ *ASNDocument_Type_Name;
  89. typedef struct ASNISO_8571_2_Parameters {
  90. unsigned char bit_mask;
  91. # define ASNuniversal_class_number_present 0x80
  92. # define ASNmaximum_string_length_present 0x40
  93. # define ASNstring_significance_present 0x20
  94. int ASNuniversal_class_number; /* optional */
  95. int ASNmaximum_string_length; /* optional */
  96. int ASNstring_significance; /* optional */
  97. # define ASNvariable 0
  98. # define ASNfixed 1
  99. # define ASNnot_significant 2
  100. } ASNISO_8571_2_Parameters;
  101. typedef struct ASNContents_Type_Attribute {
  102. unsigned short choice;
  103. # define ASNdocument_type_chosen 1
  104. union _union {
  105. struct ASN_seq1 {
  106. unsigned char bit_mask;
  107. # define ASNparameter_present 0x80
  108. struct ASN_ObjectID_ *document_type_name;
  109. ASNISO_8571_2_Parameters ASNparameter; /* optional */
  110. } ASNdocument_type;
  111. } u;
  112. } ASNContents_Type_Attribute;
  113. typedef int ASNEntity_Reference;
  114. #define ASNno_categorisation_possible 0
  115. #define ASNinitiating_file_service_user 1
  116. #define ASNinitiating_file_protocol_machine 2
  117. #define ASNservice_supporting_the_file_protocol_machine 3
  118. #define ASNresponding_file_protocol_machine 4
  119. #define ASNresponding_file_service_user 5
  120. typedef struct ASNFilename_Attribute_ {
  121. struct ASNFilename_Attribute_ *next;
  122. char *value;
  123. } *ASNFilename_Attribute;
  124. typedef unsigned char ASNAccess_Request;
  125. #define ASNAccess_Request_read 0x80
  126. #define ASNAccess_Request_insert 0x40
  127. #define ASNAccess_Request_replace 0x20
  128. #define ASNAccess_Request_extend 0x10
  129. #define ASNAccess_Request_erase 0x08
  130. #define ASNread_attribute 0x04
  131. #define ASNchange_attribute 0x02
  132. #define ASNdelete_file 0x01
  133. typedef unsigned char ASNConcurrency_Key;
  134. #define ASNnot_required 0x80
  135. #define ASNshared 0x40
  136. #define ASNexclusive 0x20
  137. #define ASNno_access 0x10
  138. typedef struct ASNConcurrency_Access {
  139. ASNConcurrency_Key read;
  140. ASNConcurrency_Key insert;
  141. ASNConcurrency_Key replace;
  142. ASNConcurrency_Key extend;
  143. ASNConcurrency_Key erase;
  144. ASNConcurrency_Key read_attribute;
  145. ASNConcurrency_Key change_attribute;
  146. ASNConcurrency_Key delete_file;
  147. } ASNConcurrency_Access;
  148. typedef char *ASNUser_Identity;
  149. typedef struct ASNPassword {
  150. unsigned short choice;
  151. # define ASNgraphic_string_chosen 1
  152. # define ASNoctet_string_chosen 2
  153. union _union {
  154. char *ASNgraphic_string;
  155. struct ASN_octet1 {
  156. unsigned int length;
  157. unsigned char *value;
  158. } ASNoctet_string;
  159. } u;
  160. } ASNPassword;
  161. typedef struct ASNAccess_Passwords {
  162. ASNPassword read_password;
  163. ASNPassword insert_password;
  164. ASNPassword replace_password;
  165. ASNPassword extend_password;
  166. ASNPassword erase_password;
  167. ASNPassword read_attribute_password;
  168. ASNPassword change_attribute_password;
  169. ASNPassword delete_password;
  170. } ASNAccess_Passwords;
  171. typedef struct ASNAccess_Control_Element {
  172. unsigned char bit_mask;
  173. # define ASNconcurrency_access_present 0x80
  174. # define ASNpasswords_present 0x40
  175. ASNAccess_Request action_list;
  176. ASNConcurrency_Access ASNconcurrency_access; /* optional */
  177. ASNUser_Identity identity; /* NULL for not present */
  178. ASNAccess_Passwords ASNpasswords; /* optional */
  179. } ASNAccess_Control_Element;
  180. typedef struct ASNAccess_Control_Attribute {
  181. unsigned short choice;
  182. # define ASNsimple_password_chosen 1
  183. # define ASNactual_values_chosen 2
  184. union _union {
  185. struct ASN_octet2 {
  186. unsigned int length;
  187. unsigned char *value;
  188. } ASNsimple_password;
  189. struct ASN_setof1 {
  190. struct ASN_setof1 *next;
  191. ASNAccess_Control_Element value;
  192. } *ASNactual_values;
  193. } u;
  194. } ASNAccess_Control_Attribute;
  195. typedef unsigned char ASNPermitted_Actions_Attribute;
  196. #define ASNPermitted_Actions_Attribute_read 0x80
  197. #define ASNPermitted_Actions_Attribute_insert 0x40
  198. #define ASNPermitted_Actions_Attribute_replace 0x20
  199. #define ASNPermitted_Actions_Attribute_extend 0x10
  200. #define ASNPermitted_Actions_Attribute_erase 0x08
  201. typedef struct ASNPrivate_Use_Attribute {
  202. unsigned char bit_mask;
  203. # define ASNmanufacturer_values_present 0x80
  204. ASN_External ASNmanufacturer_values; /* optional */
  205. } ASNPrivate_Use_Attribute;
  206. typedef unsigned char ASNProtocol_Version;
  207. #define ASNversion_1 0x80
  208. typedef struct ASNFileHeader {
  209. unsigned int bit_mask;
  210. # define ASNprotocol_version_present 0x80000000
  211. # define ASNfilename_present 0x40000000
  212. # define ASNpermitted_actions_present 0x20000000
  213. # define ASNcontents_type_present 0x10000000
  214. # define ASNdate_and_time_of_creation_present 0x08000000
  215. # define ASNdate_and_time_of_last_modification_present 0x04000000
  216. # define ASNdate_and_time_of_last_read_access_present 0x02000000
  217. # define ASNfilesize_present 0x01000000
  218. # define ASNfuture_filesize_present 0x00800000
  219. # define ASNaccess_control_present 0x00400000
  220. # define ASNprivate_use_present 0x00200000
  221. # define ASNstructure_present 0x00100000
  222. # define ASNapplication_reference_present 0x00080000
  223. # define ASNmachine_present 0x00040000
  224. # define ASNoperating_system_present 0x00020000
  225. # define ASNrecipient_present 0x00010000
  226. # define ASNcharacter_set_present 0x00008000
  227. # define ASNcompression_present 0x00004000
  228. # define ASNenvironment_present 0x00002000
  229. # define ASNFileHeader_pathname_present 0x00001000
  230. # define ASNuser_visible_string_present 0x00000800
  231. ASNProtocol_Version ASNprotocol_version; /* default assumed if omitted */
  232. struct ASNFilename_Attribute_ *ASNfilename; /* optional */
  233. ASNPermitted_Actions_Attribute ASNpermitted_actions; /* optional */
  234. ASNContents_Type_Attribute ASNcontents_type; /* optional */
  235. char *storage_account; /* NULL for not present */
  236. GeneralizedTime ASNdate_and_time_of_creation; /* optional */
  237. GeneralizedTime ASNdate_and_time_of_last_modification; /* optional */
  238. GeneralizedTime ASNdate_and_time_of_last_read_access; /* optional */
  239. char *identity_of_creator; /* NULL for not present */
  240. char *identity_of_last_modifier; /* NULL for not present */
  241. char *identity_of_last_reader; /* NULL for not present */
  242. long ASNfilesize; /* optional */
  243. long ASNfuture_filesize; /* optional */
  244. ASNAccess_Control_Attribute ASNaccess_control; /* optional */
  245. char *legal_qualifications; /* NULL for not present */
  246. ASNPrivate_Use_Attribute ASNprivate_use; /* optional */
  247. struct ASN_ObjectID_ *ASNstructure; /* optional */
  248. struct ASN_seqof1 {
  249. struct ASN_seqof1 *next;
  250. char *value;
  251. } *ASNapplication_reference; /* optional */
  252. struct ASN_seqof2 {
  253. struct ASN_seqof2 *next;
  254. char *value;
  255. } *ASNmachine; /* optional */
  256. struct ASN_ObjectID_ *ASNoperating_system; /* optional */
  257. struct ASN_seqof3 {
  258. struct ASN_seqof3 *next;
  259. char *value;
  260. } *ASNrecipient; /* optional */
  261. struct ASN_ObjectID_ *ASNcharacter_set; /* optional */
  262. struct ASN_seqof4 {
  263. struct ASN_seqof4 *next;
  264. char *value;
  265. } *ASNcompression; /* optional */
  266. struct ASN_seqof5 {
  267. struct ASN_seqof5 *next;
  268. char *value;
  269. } *ASNenvironment; /* optional */
  270. struct ASN_seqof6 {
  271. struct ASN_seqof6 *next;
  272. char *value;
  273. } *ASNFileHeader_pathname; /* optional */
  274. struct ASN_seqof7 {
  275. struct ASN_seqof7 *next;
  276. char *value;
  277. } *ASNuser_visible_string; /* optional */
  278. } ASNFileHeader;
  279. typedef struct ASNV42bis_Parameter_List {
  280. unsigned short p1;
  281. unsigned short p2;
  282. } ASNV42bis_Parameter_List;
  283. typedef struct ASNCompressionSpecifier {
  284. unsigned short choice;
  285. # define ASNv42bis_parameters_chosen 1
  286. # define ASNnonstandard_compression_parameters_chosen 2
  287. union _union {
  288. ASNV42bis_Parameter_List ASNv42bis_parameters;
  289. struct ASN_setof2 {
  290. struct ASN_setof2 *next;
  291. ASNNonStandardParameter value;
  292. } *ASNnonstandard_compression_parameters;
  293. } u;
  294. } ASNCompressionSpecifier;
  295. typedef enum ASNMBFTPrivilege {
  296. ASNfile_transmit_privilege = 0,
  297. ASNfile_request_privilege = 1,
  298. ASNcreate_private_privilege = 2,
  299. ASNmedium_priority_privilege = 3,
  300. ASNabort_privilege = 4,
  301. ASNnonstandard_privilege = 5
  302. } ASNMBFTPrivilege;
  303. typedef struct ASNDirectoryEntry {
  304. ossBoolean subdirectory_flag;
  305. ASNFileHeader attributes;
  306. } ASNDirectoryEntry;
  307. typedef enum ASNErrorType {
  308. ASNinformative = 0,
  309. ASNtransient_error = 1,
  310. ASNpermanent_error = 2
  311. } ASNErrorType;
  312. typedef int ASNErrorID;
  313. #define ASNno_reason 0
  314. #define ASNresponder_error 1
  315. #define ASNsystem_shutdown 2
  316. #define ASNbft_management_problem 3
  317. #define ASNbft_management_bad_account 4
  318. #define ASNbft_management_security_not_passed 5
  319. #define ASNdelay_may_be_encountered 6
  320. #define ASNinitiator_error 7
  321. #define ASNsubsequent_error 8
  322. #define ASNtemporal_insufficiency_of_resources 9
  323. #define ASNaccess_request_violates_VFS_security 10
  324. #define ASNaccess_request_violates_local_security 11
  325. #define ASNconflicting_parameter_values 1000
  326. #define ASNunsupported_parameter_values 1001
  327. #define ASNmandatory_parameter_not_set 1002
  328. #define ASNunsupported_parameter 1003
  329. #define ASNduplicated_parameter 1004
  330. #define ASNillegal_parameter_type 1005
  331. #define ASNunsupported_parameter_types 1006
  332. #define ASNbft_protocol_error 1007
  333. #define ASNbft_protocol_error_procedure_error 1008
  334. #define ASNbft_protocol_error_functional_unit_error 1009
  335. #define ASNbft_protocol_error_corruption_error 1010
  336. #define ASNlower_layer_failure 1011
  337. #define ASNtimeout 1013
  338. #define ASNinvalid_filestore_password 2020
  339. #define ASNfilename_not_found 3000
  340. #define ASNinitial_attributes_not_possible 3002
  341. #define ASNnon_existent_file 3004
  342. #define ASNfile_already_exists 3005
  343. #define ASNfile_cannot_be_created 3006
  344. #define ASNfile_busy 3012
  345. #define ASNfile_not_available 3013
  346. #define ASNfilename_truncated 3017
  347. #define ASNinitial_attributes_altered 3018
  348. #define ASNbad_account 3019
  349. #define ASNambiguous_file_specification 3024
  350. #define ASNattribute_non_existent 4000
  351. #define ASNattribute_not_supported 4003
  352. #define ASNbad_attribute_name 4004
  353. #define ASNbad_attribute_value 4005
  354. #define ASNattribute_partially_supported 4006
  355. #define ASNbad_data_element_type 5014
  356. #define ASNoperation_not_available 5015
  357. #define ASNoperation_not_supported 5016
  358. #define ASNoperation_inconsistent 5017
  359. #define ASNbad_write 5026
  360. #define ASNbad_read 5027
  361. #define ASNlocal_failure 5028
  362. #define ASNlocal_failure_filespace_exhausted 5029
  363. #define ASNlocal_failure_data_corrupted 5030
  364. #define ASNlocal_failure_device_failure 5031
  365. #define ASNfuture_filesize_exceeded 5032
  366. #define ASNfuture_filesize_increased 5034
  367. typedef struct ASNFile_OfferPDU {
  368. unsigned char bit_mask;
  369. # define ASNroster_instance_present 0x80
  370. # define ASNfile_transmit_token_present 0x40
  371. # define ASNFile_OfferPDU_file_request_token_present 0x20
  372. # define ASNfile_request_handle_present 0x10
  373. # define ASNmbft_ID_present 0x08
  374. # define ASNFile_OfferPDU_compression_specifier_present 0x04
  375. # define ASNcompressed_filesize_present 0x02
  376. ASNFileHeader file_header;
  377. ASNChannelID data_channel_id;
  378. ASNHandle file_handle;
  379. unsigned short ASNroster_instance; /* optional */
  380. ASNTokenID ASNfile_transmit_token; /* optional */
  381. ASNTokenID ASNFile_OfferPDU_file_request_token; /* optional */
  382. ASNHandle ASNfile_request_handle; /* optional */
  383. ASNUserID ASNmbft_ID; /* optional */
  384. ASNCompressionSpecifier ASNFile_OfferPDU_compression_specifier; /* optional */
  385. int ASNcompressed_filesize; /* optional */
  386. ossBoolean ack_flag;
  387. } ASNFile_OfferPDU;
  388. typedef struct ASNFile_AcceptPDU {
  389. ASNHandle file_handle;
  390. } ASNFile_AcceptPDU;
  391. typedef enum ASN_enum1 {
  392. ASNFile_RejectPDU_reason_unspecified = 0,
  393. ASNfile_exists = 1,
  394. ASNfile_not_required = 2,
  395. ASNinsufficient_resources = 3,
  396. ASNtransfer_limit = 4,
  397. ASNcompression_unsupported = 5,
  398. ASNreason_unable_to_join_channel = 6,
  399. ASNparameter_not_supported = 7
  400. } ASN_enum1;
  401. typedef struct ASNFile_RejectPDU {
  402. ASNHandle file_handle;
  403. ASN_enum1 reason;
  404. } ASNFile_RejectPDU;
  405. typedef struct ASNFile_RequestPDU {
  406. unsigned char bit_mask;
  407. # define ASNFile_RequestPDU_file_request_token_present 0x80
  408. ASNFileHeader file_header;
  409. ASNChannelID data_channel_id;
  410. ASNHandle request_handle;
  411. unsigned short roster_instance;
  412. ASNTokenID file_transmit_token;
  413. ASNTokenID ASNFile_RequestPDU_file_request_token; /* optional */
  414. int data_offset;
  415. } ASNFile_RequestPDU;
  416. typedef enum ASN_enum2 {
  417. ASNFile_DenyPDU_reason_unspecified = 0,
  418. ASNfile_not_present = 1,
  419. ASNinsufficient_privilege = 2,
  420. ASNfile_already_offered = 3,
  421. ASNambiguous = 4,
  422. ASNno_channel = 5
  423. } ASN_enum2;
  424. typedef struct ASNFile_DenyPDU {
  425. ASNHandle request_handle;
  426. ASN_enum2 reason;
  427. } ASNFile_DenyPDU;
  428. typedef enum ASN_enum3 {
  429. ASNreason_unspecified = 0,
  430. ASNbandwidth_required = 1,
  431. ASNtokens_required = 2,
  432. ASNchannels_required = 3,
  433. ASNpriority_required = 4
  434. } ASN_enum3;
  435. typedef struct ASNFile_AbortPDU {
  436. unsigned char bit_mask;
  437. # define ASNdata_channel_id_present 0x80
  438. # define ASNtransmitter_user_id_present 0x40
  439. # define ASNFile_AbortPDU_file_handle_present 0x20
  440. ASN_enum3 reason;
  441. ASNChannelID ASNdata_channel_id; /* optional */
  442. ASNUserID ASNtransmitter_user_id; /* optional */
  443. ASNHandle ASNFile_AbortPDU_file_handle; /* optional */
  444. } ASNFile_AbortPDU;
  445. typedef struct ASNFile_StartPDU {
  446. unsigned char bit_mask;
  447. # define ASNFile_StartPDU_compression_specifier_present 0x80
  448. # define ASNcomp_filesize_present 0x40
  449. # define ASNFile_StartPDU_crc_check_present 0x20
  450. ASNFileHeader file_header;
  451. ASNHandle file_handle;
  452. ossBoolean eof_flag;
  453. ossBoolean crc_flag;
  454. ASNCompressionSpecifier ASNFile_StartPDU_compression_specifier; /* optional */
  455. int ASNcomp_filesize; /* optional */
  456. int data_offset;
  457. struct {
  458. unsigned short length;
  459. unsigned char *value;
  460. } data;
  461. unsigned int ASNFile_StartPDU_crc_check; /* optional */
  462. } ASNFile_StartPDU;
  463. typedef struct ASNFile_DataPDU {
  464. unsigned char bit_mask;
  465. # define ASNFile_DataPDU_crc_check_present 0x80
  466. ASNHandle file_handle;
  467. ossBoolean eof_flag;
  468. ossBoolean abort_flag;
  469. struct {
  470. unsigned short length;
  471. unsigned char *value;
  472. } data;
  473. unsigned int ASNFile_DataPDU_crc_check; /* optional */
  474. } ASNFile_DataPDU;
  475. typedef struct ASNDirectory_RequestPDU {
  476. unsigned char bit_mask;
  477. # define ASNDirectory_RequestPDU_pathname_present 0x80
  478. struct ASN_seqof8 {
  479. struct ASN_seqof8 *next;
  480. char *value;
  481. } *ASNDirectory_RequestPDU_pathname; /* optional */
  482. } ASNDirectory_RequestPDU;
  483. typedef enum ASN_enum4 {
  484. ASNDirectory_ResponsePDU_result_unspecified = 0,
  485. ASNpermission_denied = 1,
  486. ASNfunction_not_supported = 2,
  487. ASNDirectory_ResponsePDU_result_successful = 3
  488. } ASN_enum4;
  489. typedef struct ASNDirectory_ResponsePDU {
  490. unsigned char bit_mask;
  491. # define ASNDirectory_ResponsePDU_pathname_present 0x80
  492. ASN_enum4 result;
  493. struct ASN_seqof9 {
  494. struct ASN_seqof9 *next;
  495. char *value;
  496. } *ASNDirectory_ResponsePDU_pathname; /* optional */
  497. struct ASN_seqof10 {
  498. struct ASN_seqof10 *next;
  499. ASNDirectoryEntry value;
  500. } *directory_list;
  501. } ASNDirectory_ResponsePDU;
  502. typedef struct ASNMBFT_Privilege_RequestPDU {
  503. struct ASN_setof3 {
  504. struct ASN_setof3 *next;
  505. ASNMBFTPrivilege value;
  506. } *mbft_privilege;
  507. } ASNMBFT_Privilege_RequestPDU;
  508. typedef struct ASNMBFT_Privilege_AssignPDU {
  509. struct ASN_setof5 {
  510. struct ASN_setof5 *next;
  511. struct temptag {
  512. ASNUserID mbftID;
  513. struct ASN_setof4 {
  514. struct ASN_setof4 *next;
  515. ASNMBFTPrivilege value;
  516. } *mbft_privilege;
  517. } value;
  518. } *privilege_list;
  519. } ASNMBFT_Privilege_AssignPDU;
  520. typedef struct ASNPrivate_Channel_Join_InvitePDU {
  521. ASNDynamicChannelID control_channel_id;
  522. ASNDynamicChannelID data_channel_id;
  523. ossBoolean mode;
  524. } ASNPrivate_Channel_Join_InvitePDU;
  525. typedef enum ASN_enum5 {
  526. ASNPrivate_Channel_Join_ResponsePDU_result_unspecified = 0,
  527. ASNresult_unable_to_join_channel = 1,
  528. ASNinvitation_rejected = 2,
  529. ASNPrivate_Channel_Join_ResponsePDU_result_successful = 3
  530. } ASN_enum5;
  531. typedef struct ASNPrivate_Channel_Join_ResponsePDU {
  532. ASNDynamicChannelID control_channel_id;
  533. ASN_enum5 result;
  534. } ASNPrivate_Channel_Join_ResponsePDU;
  535. typedef struct ASNFile_ErrorPDU {
  536. unsigned char bit_mask;
  537. # define ASNFile_ErrorPDU_file_handle_present 0x80
  538. # define ASNerror_text_present 0x40
  539. ASNHandle ASNFile_ErrorPDU_file_handle; /* optional */
  540. ASNErrorType error_type;
  541. ASNErrorID error_id;
  542. ASNTextString ASNerror_text; /* optional */
  543. } ASNFile_ErrorPDU;
  544. typedef struct ASNMBFT_NonStandardPDU {
  545. ASNNonStandardParameter data;
  546. } ASNMBFT_NonStandardPDU;
  547. typedef struct ASNMBFTPDU {
  548. unsigned short choice;
  549. # define ASNfile_OfferPDU_chosen 1
  550. # define ASNfile_AcceptPDU_chosen 2
  551. # define ASNfile_RejectPDU_chosen 3
  552. # define ASNfile_RequestPDU_chosen 4
  553. # define ASNfile_DenyPDU_chosen 5
  554. # define ASNfile_ErrorPDU_chosen 6
  555. # define ASNfile_AbortPDU_chosen 7
  556. # define ASNfile_StartPDU_chosen 8
  557. # define ASNfile_DataPDU_chosen 9
  558. # define ASNdirectory_RequestPDU_chosen 10
  559. # define ASNdirectory_ResponsePDU_chosen 11
  560. # define ASNmbft_Privilege_RequestPDU_chosen 12
  561. # define ASNmbft_Privilege_AssignPDU_chosen 13
  562. # define ASNmbft_NonStandardPDU_chosen 14
  563. # define ASNprivate_Channel_Join_InvitePDU_chosen 15
  564. # define ASNprivate_Channel_Join_ResponsePDU_chosen 16
  565. union _union {
  566. ASNFile_OfferPDU ASNfile_OfferPDU;
  567. ASNFile_AcceptPDU ASNfile_AcceptPDU;
  568. ASNFile_RejectPDU ASNfile_RejectPDU;
  569. ASNFile_RequestPDU ASNfile_RequestPDU;
  570. ASNFile_DenyPDU ASNfile_DenyPDU;
  571. ASNFile_ErrorPDU ASNfile_ErrorPDU;
  572. ASNFile_AbortPDU ASNfile_AbortPDU;
  573. ASNFile_StartPDU ASNfile_StartPDU;
  574. ASNFile_DataPDU ASNfile_DataPDU;
  575. ASNDirectory_RequestPDU ASNdirectory_RequestPDU;
  576. ASNDirectory_ResponsePDU ASNdirectory_ResponsePDU;
  577. ASNMBFT_Privilege_RequestPDU ASNmbft_Privilege_RequestPDU;
  578. ASNMBFT_Privilege_AssignPDU ASNmbft_Privilege_AssignPDU;
  579. ASNMBFT_NonStandardPDU ASNmbft_NonStandardPDU;
  580. ASNPrivate_Channel_Join_InvitePDU ASNprivate_Channel_Join_InvitePDU;
  581. ASNPrivate_Channel_Join_ResponsePDU ASNprivate_Channel_Join_ResponsePDU;
  582. } u;
  583. } ASNMBFTPDU;
  584. extern ASNKey ASNt127Identifier;
  585. extern void *mbft; /* encoder-decoder control table */
  586. #ifdef __cplusplus
  587. } /* extern "C" */
  588. #endif /* __cplusplus */
  589. #endif /* OSS_mbft */