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.

107 lines
3.9 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1996 - 1999
  6. //
  7. // File: signcde.h
  8. //
  9. //--------------------------------------------------------------------------
  10. #ifndef _SIGNCDE_H
  11. #define _SIGNCDE_H
  12. // OBSOLETE :- Split up, moved to mssip32.h, mscat.h, gentrust.h and authcode.h
  13. //---------------------------------------------------------------------
  14. //---------------------------------------------------------------------
  15. // SignCode.h : main header file for the SIGNCODE application
  16. //
  17. #include "wincrypt.h"
  18. #include "wintrust.h"
  19. #include "signutil.h"
  20. #ifdef __cplusplus
  21. extern "C" {
  22. #endif
  23. /////////////////////
  24. // OID's used for SPC
  25. //
  26. //+-------------------------------------------------------------------------
  27. // Structures types for CryptEncodeObject() and CryptDecodeObject()
  28. // ( see spc.h for addtional structures and information )
  29. //+-------------------------------------------------------------------------
  30. // SPC_CERT_EXTENSIONS_OBJID
  31. //
  32. // Since the type of this attribute value is CERT_EXTENSIONS, uses the
  33. // CERT_EXTENSIONS data structure defined in wincrypt.h. It can be encoded/decoded
  34. // using the the predefined lpszStructType of X509_EXTENSIONS.
  35. //+-------------------------------------------------------------------------
  36. // SPC_MINIMAL_CRITERIA_STRUCT
  37. //
  38. // pvStructInfo points to BOOL
  39. //+-------------------------------------------------------------------------
  40. #define SPC_COMMON_NAME_OBJID szOID_COMMON_NAME
  41. #define SPC_CERT_EXTENSIONS_OBJID "1.3.6.1.4.1.311.2.1.14"
  42. #define SPC_RAW_FILE_DATA_OBJID "1.3.6.1.4.1.311.2.1.18"
  43. #define SPC_STRUCTURED_STORAGE_DATA_OBJID "1.3.6.1.4.1.311.2.1.19"
  44. #define SPC_JAVA_CLASS_DATA_OBJID "1.3.6.1.4.1.311.2.1.20"
  45. #define SPC_INDIVIDUAL_SP_KEY_PURPOSE_OBJID "1.3.6.1.4.1.311.2.1.21"
  46. #define SPC_COMMERCIAL_SP_KEY_PURPOSE_OBJID "1.3.6.1.4.1.311.2.1.22"
  47. #define SPC_CAB_DATA_OBJID "1.3.6.1.4.1.311.2.1.25"
  48. #define SPC_GLUE_RDN_OBJID "1.3.6.1.4.1.311.2.1.25" // Duplicate number??
  49. // Structure passed in and out is CryptoGraphicTimeStamp
  50. //+-------------------------------------------------------------------------
  51. // SPC X.509 v3 Certificate Extension Object Identifiers
  52. //
  53. // SPC certificates can also contain the following extensions
  54. // defined in wincrypt.h:
  55. // szOID_KEY_USAGE_RESTRICTION "2.5.29.4"
  56. // szOID_BASIC_CONSTRAINTS "2.5.29.10"
  57. // szOID_AUTHORITY_KEY_IDENTIFIER "2.5.29.1"
  58. //--------------------------------------------------------------------------
  59. //+-------------------------------------------------------------------------
  60. // SPC_COMMON_NAME_OBJID
  61. //
  62. // Since the type of the common name extension is a CERT_NAME_VALUE
  63. // uses the CERT_NAME_VALUE data structure defined in wincrypt.h.
  64. // It can be encoded/decoded using the the predefined lpszStructType of
  65. // X509_NAME_VALUE.
  66. //--------------------------------------------------------------------------
  67. //+-------------------------------------------------------------------------
  68. // SPC Indirect Data Content Data Attribute Values:
  69. //--------------------------------------------------------------------------
  70. //+-------------------------------------------------------------------------
  71. // List of SPC Indirect Data Content Data Attribute Values are:
  72. // SPC_PE_IMAGE_DATA_OBJID
  73. // SPC_RAW_FILE_DATA_OBJID
  74. // SPC_JAVA_CLASS_DATA_OBJID
  75. // SPC_STRUCTURED_STORAGE_DATA_OBJID
  76. // SPC_CAB_DATA_OBJID
  77. //
  78. // These are the values can be currently added to SPC_INDIRECT_DATA_CONTENT
  79. // Data field.
  80. //
  81. // SPC_LINK value types.
  82. //--------------------------------------------------------------------------
  83. //--------------------------------------------------------------------------
  84. #ifdef __cplusplus
  85. }
  86. #endif
  87. #endif