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.

82 lines
2.8 KiB

  1. /*-----------------------------------------------------------------------------
  2. * Copyright (C) Microsoft Corporation, 1995 - 1996.
  3. * All rights reserved.
  4. *
  5. * This file is part of the Microsoft Private Communication Technology
  6. * reference implementation, version 1.0
  7. *
  8. * The Private Communication Technology reference implementation, version 1.0
  9. * ("PCTRef"), is being provided by Microsoft to encourage the development and
  10. * enhancement of an open standard for secure general-purpose business and
  11. * personal communications on open networks. Microsoft is distributing PCTRef
  12. * at no charge irrespective of whether you use PCTRef for non-commercial or
  13. * commercial use.
  14. *
  15. * Microsoft expressly disclaims any warranty for PCTRef and all derivatives of
  16. * it. PCTRef and any related documentation is provided "as is" without
  17. * warranty of any kind, either express or implied, including, without
  18. * limitation, the implied warranties or merchantability, fitness for a
  19. * particular purpose, or noninfringement. Microsoft shall have no obligation
  20. * to provide maintenance, support, upgrades or new releases to you or to anyone
  21. * receiving from you PCTRef or your modifications. The entire risk arising out
  22. * of use or performance of PCTRef remains with you.
  23. *
  24. * Please see the file LICENSE.txt,
  25. * or http://pct.microsoft.com/pct/pctlicen.txt
  26. * for more information on licensing.
  27. *
  28. * Please see http://pct.microsoft.com/pct/pct.htm for The Private
  29. * Communication Technology Specification version 1.0 ("PCT Specification")
  30. *
  31. * 1/23/96
  32. *----------------------------------------------------------------------------*/
  33. #ifndef __BER_H__
  34. #define __BER_H__
  35. #define BER_UNIVERSAL 0x00
  36. #define BER_APPLICATION 0x40
  37. #define BER_CONTEXT_SPECIFIC 0x80
  38. #define BER_PRIVATE 0xC0
  39. #define BER_PRIMITIVE 0x00
  40. #define BER_CONSTRUCTED 0x20
  41. #define BER_BOOL 1
  42. #define BER_INTEGER 2
  43. #define BER_BIT_STRING 3
  44. #define BER_OCTET_STRING 4
  45. #define BER_NULL 5
  46. #define BER_OBJECT_ID 6
  47. #define BER_OBJECT_DESC 7
  48. #define BER_EXTERNAL 8
  49. #define BER_REAL 9
  50. #define BER_ENUMERATED 10
  51. #define BER_SEQUENCE (16 | BER_CONSTRUCTED)
  52. #define BER_SET (17 | BER_CONSTRUCTED)
  53. #define BER_NUMERIC_STRING 0x12
  54. #define BER_PRINTABLE_STRING 0x13
  55. #define BER_TELETEX_STRING 0x14
  56. #define BER_VIDEOTEX_STRING 0x15
  57. #define BER_IA5STRING 0x16
  58. #define BER_GRAPHIC_STRING 0x19
  59. #define BER_UTC_TIME 23
  60. typedef int (* OutputFn)(char *, ...);
  61. typedef BOOL (* StopFn)(void);
  62. int
  63. ber_decode(
  64. OutputFn Out,
  65. StopFn Stop,
  66. LPBYTE pBuffer,
  67. int Indent,
  68. int Offset,
  69. int TotalLength,
  70. int BarDepth);
  71. #endif