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.

82 lines
3.8 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1996 - 1997
  6. //
  7. // File: wintrust.h
  8. //
  9. // Contents: Microsoft Internet Security Trust Provider Model
  10. //
  11. // History: 31-May-1997 pberkman created
  12. //
  13. //--------------------------------------------------------------------------
  14. #define WVT_OFFSETOF(t,f) ((DWORD)(&((t*)0)->f))
  15. #define WVT_IS_CBSTRUCT_GT_MEMBEROFFSET(structtypedef, structpassedsize, member) \
  16. (WVT_OFFSETOF(structtypedef, member) < structpassedsize) ? TRUE : FALSE
  17. //
  18. // CTL Trusted CA Lists
  19. //
  20. #define szOID_TRUSTED_CODESIGNING_CA_LIST "1.3.6.1.4.1.311.2.2.1"
  21. #define szOID_TRUSTED_CLIENT_AUTH_CA_LIST "1.3.6.1.4.1.311.2.2.2"
  22. #define szOID_TRUSTED_SERVER_AUTH_CA_LIST "1.3.6.1.4.1.311.2.2.3"
  23. //
  24. // not used for encode/decode
  25. //
  26. #define SPC_COMMON_NAME_OBJID szOID_COMMON_NAME
  27. #define SPC_CERT_EXTENSIONS_OBJID "1.3.6.1.4.1.311.2.1.14"
  28. #define SPC_RAW_FILE_DATA_OBJID "1.3.6.1.4.1.311.2.1.18"
  29. #define SPC_STRUCTURED_STORAGE_DATA_OBJID "1.3.6.1.4.1.311.2.1.19"
  30. #define SPC_JAVA_CLASS_DATA_OBJID "1.3.6.1.4.1.311.2.1.20"
  31. #define SPC_INDIVIDUAL_SP_KEY_PURPOSE_OBJID "1.3.6.1.4.1.311.2.1.21"
  32. #define SPC_COMMERCIAL_SP_KEY_PURPOSE_OBJID "1.3.6.1.4.1.311.2.1.22"
  33. #define SPC_CAB_DATA_OBJID "1.3.6.1.4.1.311.2.1.25"
  34. //
  35. // encode/decode defines
  36. //
  37. #define SPC_SP_AGENCY_INFO_STRUCT ((LPCSTR) 2000)
  38. #define SPC_MINIMAL_CRITERIA_STRUCT ((LPCSTR) 2001)
  39. #define SPC_FINANCIAL_CRITERIA_STRUCT ((LPCSTR) 2002)
  40. #define SPC_INDIRECT_DATA_CONTENT_STRUCT ((LPCSTR) 2003)
  41. #define SPC_STATEMENT_TYPE_STRUCT ((LPCSTR) 2006)
  42. #define SPC_SP_OPUS_INFO_STRUCT ((LPCSTR) 2007)
  43. #define SPC_INDIRECT_DATA_OBJID "1.3.6.1.4.1.311.2.1.4"
  44. #define SPC_STATEMENT_TYPE_OBJID "1.3.6.1.4.1.311.2.1.11"
  45. #define SPC_SP_OPUS_INFO_OBJID "1.3.6.1.4.1.311.2.1.12"
  46. #define SPC_SP_AGENCY_INFO_OBJID "1.3.6.1.4.1.311.2.1.10"
  47. #define SPC_MINIMAL_CRITERIA_OBJID "1.3.6.1.4.1.311.2.1.26"
  48. #define SPC_FINANCIAL_CRITERIA_OBJID "1.3.6.1.4.1.311.2.1.27"
  49. #define SPC_TIME_STAMP_REQUEST_OBJID "1.3.6.1.4.1.311.3.2.1"
  50. //////////////////////////////////////////////////////////////////////////////
  51. //
  52. // Wintrust Policy Flags
  53. //----------------------------------------------------------------------------
  54. // These are set during install and can be modified by the user
  55. // through various means. The SETREG.EXE utility (found in the Authenticode
  56. // Tools Pack) will select/deselect each of them.
  57. //
  58. #define WTPF_TRUSTTEST 0x00000020 // trust any "TEST" generated certificate
  59. #define WTPF_TESTCANBEVALID 0x00000080
  60. #define WTPF_IGNOREEXPIRATION 0x00000100 // Use expiration date
  61. #define WTPF_IGNOREREVOKATION 0x00000200 // Do revocation check
  62. #define WTPF_OFFLINEOK_IND 0x00000400 // off-line is ok for individual certs
  63. #define WTPF_OFFLINEOK_COM 0x00000800 // off-line is ok for commercial certs
  64. #define WTPF_OFFLINEOKNBU_IND 0x00001000 // off-line is ok for individual certs, no bad ui
  65. #define WTPF_OFFLINEOKNBU_COM 0x00002000 // off-line is ok for commercial certs, no bad ui
  66. #define WTPF_TIMESTAMP_IND 0x00004000 // Use timestamp for individual certs
  67. #define WTPF_TIMESTAMP_COM 0x00008000 // Use timestamp for commerical certs
  68. #define WTPF_VERIFY_V1_OFF 0x00010000 // turn verify of v1 certs off
  69. #define WTPF_IGNOREREVOCATIONONTS 0x00020000 // ignore TimeStamp revocation checks
  70. #define WTPF_ALLOWONLYPERTRUST 0x00040000 // allow only items in personal trust db.