certsrv.h 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #if !defined(_CERTSRV_H_)
  7. #define _CERTSRV_H_
  8. #include <certadm.h>
  9. #include <certbcli.h>
  10. #include <certcli.h>
  11. #include <certenc.h>
  12. #include <certexit.h>
  13. #include <certif.h>
  14. #include <certpol.h>
  15. #include <certmod.h>
  16. #include <certview.h>
  17. #define wszSERVICE_NAME TEXT("CertSvc")
  18. #define wszREGKEYNOSYSTEMCERTSVCPATH TEXT("CurrentControlSet\\Services\\") wszSERVICE_NAME
  19. #define wszREGKEYCERTSVCPATH TEXT("SYSTEM\\") wszREGKEYNOSYSTEMCERTSVCPATH
  20. #define wszREGKEYBASE wszREGKEYCERTSVCPATH
  21. #define wszREGKEYCONFIGPATH wszREGKEYCERTSVCPATH TEXT("\\") wszREGKEYCONFIG
  22. #define wszREGKEYCONFIGPATH_BS wszREGKEYCONFIGPATH TEXT("\\")
  23. #define wszREGKEYCONFIGCANAME wszREGKEYCONFIGPATH_BS
  24. #define wszREGKEYCONFIGRESTORE wszREGKEYCONFIGPATH_BS wszREGKEYRESTOREINPROGRESS
  25. #define wszREGKEYCONFIG TEXT("Configuration")
  26. #define wszREGACTIVE TEXT("Active")
  27. #define wszREGDIRECTORY TEXT("ConfigurationDirectory")
  28. #define wszREGDBDIRECTORY TEXT("DBDirectory")
  29. #define wszREGDBLOGDIRECTORY TEXT("DBLogDirectory")
  30. #define wszREGDBSYSDIRECTORY TEXT("DBSystemDirectory")
  31. #define wszREGDBTEMPDIRECTORY TEXT("DBTempDirectory")
  32. #define wszREGDBSESSIONCOUNT TEXT("DBSessionCount")
  33. #define wszREGDBFLAGS TEXT("DBFlags")
  34. #define wszREGDBLASTFULLBACKUP TEXT("DBLastFullBackup")
  35. #define wszREGDBLASTINCREMENTALBACKUP TEXT("DBLastIncrementalBackup")
  36. #define wszREGDBLASTRECOVERY TEXT("DBLastRecovery")
  37. #define wszREGWEBCLIENTCAMACHINE TEXT("WebClientCAMachine")
  38. #define wszREGVERSION TEXT("Version")
  39. #define wszREGWEBCLIENTCANAME TEXT("WebClientCAName")
  40. #define wszREGWEBCLIENTCATYPE TEXT("WebClientCAType")
  41. #define wszREGLDAPFLAGS TEXT("LDAPFlags")
  42. #define wszREGCERTSRVDEBUG TEXT("Debug")
  43. #define DBSESSIONCOUNTDEFAULT 20
  44. #define DBFLAGS_READONLY 0x00000001
  45. #define DBFLAGS_CREATEIFNEEDED 0x00000002
  46. #define DBFLAGS_CIRCULARLOGGING 0x00000004
  47. #define DBFLAGS_LAZYFLUSH 0x00000008
  48. #define DBFLAGS_MAXCACHESIZEX100 0x00000010
  49. #define DBFLAGS_CHECKPOINTDEPTH60MB 0x00000020
  50. #define DBFLAGS_LOGBUFFERSLARGE 0x00000040
  51. #define DBFLAGS_LOGBUFFERSHUGE 0x00000080
  52. #define DBFLAGS_LOGFILESIZE16MB 0x00000100
  53. #define DBFLAGS_MULTITHREADTRANSACTIONS 0x00000200
  54. #define DBFLAGS_DISABLESNAPSHOTBACKUP 0x00000400
  55. #define DBFLAGS_DEFAULT (DBFLAGS_LAZYFLUSH | DBFLAGS_MAXCACHESIZEX100 | DBFLAGS_CHECKPOINTDEPTH60MB | DBFLAGS_LOGBUFFERSHUGE)
  56. #define LDAPF_SSLENABLE 0x00000001
  57. #define LDAPF_SIGNDISABLE 0x00000002
  58. #define MAXINCOMINGMESSAGESIZEDEFAULT (64 *1024)
  59. #define MAXINCOMINGALLOCSIZEDEFAULT (64 *1024)
  60. #define CSVER_MAJOR_WIN2K 1
  61. #define CSVER_MINOR_WIN2K 1
  62. #define CSVER_MAJOR_WHISTLER 2
  63. #define CSVER_MINOR_WHISTLER_BETA2 1
  64. #define CSVER_MINOR_WHISTLER_BETA3 2
  65. #define CSVER_MAJOR CSVER_MAJOR_WHISTLER
  66. #define CSVER_MINOR CSVER_MINOR_WHISTLER_BETA3
  67. #define CSVER_EXTRACT_MAJOR(version) ((version)>>16)
  68. #define CSVER_EXTRACT_MINOR(version) ((version)&0xffff)
  69. #define CSVER_BUILD_VERSION(major,minor) (((major)<<16)|(minor))
  70. #define wszREGKEYRESTOREINPROGRESS TEXT("RestoreInProgress")
  71. #define wszREGKEYDBPARAMETERS TEXT("DBParameters")
  72. #define wszREGCADESCRIPTION TEXT("CADescription")
  73. #define wszREGCACERTHASH TEXT("CACertHash")
  74. #define wszREGCASERIALNUMBER TEXT("CACertSerialNumber")
  75. #define wszREGCAXCHGCERTHASH TEXT("CAXchgCertHash")
  76. #define wszREGKRACERTHASH TEXT("KRACertHash")
  77. #define wszREGKRACERTCOUNT TEXT("KRACertCount")
  78. #define wszREGKRAFLAGS TEXT("KRAFlags")
  79. #define wszREGCATYPE TEXT("CAType")
  80. #define wszREGCERTENROLLCOMPATIBLE TEXT("CertEnrollCompatible")
  81. #define wszREGENFORCEX500NAMELENGTHS TEXT("EnforceX500NameLengths")
  82. #define wszREGCOMMONNAME TEXT("CommonName")
  83. #define wszREGCLOCKSKEWMINUTES TEXT("ClockSkewMinutes")
  84. #define wszREGCRLNEXTPUBLISH TEXT("CRLNextPublish")
  85. #define wszREGCRLPERIODSTRING TEXT("CRLPeriod")
  86. #define wszREGCRLPERIODCOUNT TEXT("CRLPeriodUnits")
  87. #define wszREGCRLOVERLAPPERIODSTRING TEXT("CRLOverlapPeriod")
  88. #define wszREGCRLOVERLAPPERIODCOUNT TEXT("CRLOverlapUnits")
  89. #define wszREGCRLDELTANEXTPUBLISH TEXT("CRLDeltaNextPublish")
  90. #define wszREGCRLDELTAPERIODSTRING TEXT("CRLDeltaPeriod")
  91. #define wszREGCRLDELTAPERIODCOUNT TEXT("CRLDeltaPeriodUnits")
  92. #define wszREGCRLDELTAOVERLAPPERIODSTRING TEXT("CRLDeltaOverlapPeriod")
  93. #define wszREGCRLDELTAOVERLAPPERIODCOUNT TEXT("CRLDeltaOverlapUnits")
  94. #define wszREGCRLPUBLICATIONURLS TEXT("CRLPublicationURLs")
  95. #define wszREGCACERTPUBLICATIONURLS TEXT("CACertPublicationURLs")
  96. #define wszREGCAXCHGVALIDITYPERIODSTRING TEXT("CAXchgValidityPeriod")
  97. #define wszREGCAXCHGVALIDITYPERIODCOUNT TEXT("CAXchgValidityPeriodUnits")
  98. #define wszREGCAXCHGOVERLAPPERIODSTRING TEXT("CAXchgOverlapPeriod")
  99. #define wszREGCAXCHGOVERLAPPERIODCOUNT TEXT("CAXchgOverlapPeriodUnits")
  100. #define wszREGCRLPATH_OLD TEXT("CRLPath")
  101. #define wszREGCRLEDITFLAGS TEXT("CRLEditFlags")
  102. #define wszREGCRLFLAGS TEXT("CRLFlags")
  103. #define wszREGCRLATTEMPTREPUBLISH TEXT("CRLAttemptRepublish")
  104. #define wszREGENABLED TEXT("Enabled")
  105. #define wszREGFORCETELETEX TEXT("ForceTeletex")
  106. #define wszREGLOGLEVEL TEXT("LogLevel")
  107. #define wszREGHIGHSERIAL TEXT("HighSerial")
  108. #define wszREGPOLICYFLAGS TEXT("PolicyFlags")
  109. #define wszREGNAMESEPARATOR TEXT("SubjectNameSeparator")
  110. #define wszREGSUBJECTTEMPLATE TEXT("SubjectTemplate")
  111. #define wszREGCAUSEDS TEXT("UseDS")
  112. #define wszREGVALIDITYPERIODSTRING TEXT("ValidityPeriod")
  113. #define wszREGVALIDITYPERIODCOUNT TEXT("ValidityPeriodUnits")
  114. #define wszREGPARENTCAMACHINE TEXT("ParentCAMachine")
  115. #define wszREGPARENTCANAME TEXT("ParentCAName")
  116. #define wszREGREQUESTFILENAME TEXT("RequestFileName")
  117. #define wszREGREQUESTID TEXT("RequestId")
  118. #define wszREGREQUESTKEYCONTAINER TEXT("RequestKeyContainer")
  119. #define wszREGREQUESTKEYINDEX TEXT("RequestKeyIndex")
  120. #define wszREGCASERVERNAME TEXT("CAServerName")
  121. #define wszREGCACERTFILENAME TEXT("CACertFileName")
  122. #define wszREGCASECURITY TEXT("Security")
  123. #define wszREGAUDITFILTER TEXT("AuditFilter")
  124. #define wszREGOFFICERRIGHTS TEXT("OfficerRights")
  125. #define wszREGMAXINCOMINGMESSAGESIZE TEXT("MaxIncomingMessageSize")
  126. #define wszREGMAXINCOMINGALLOCSIZE TEXT("MaxIncomingAllocSize")
  127. #define wszREGROLESEPARATIONENABLED TEXT("RoleSeparationEnabled")
  128. #define wszREGALTERNATEPUBLISHDOMAINS TEXT("AlternatePublishDomains")
  129. #define wszREGSETUPSTATUS TEXT("SetupStatus")
  130. #define wszREGINTERFACEFLAGS TEXT("InterfaceFlags")
  131. #define wszREGDSCONFIGDN TEXT("DSConfigDN")
  132. #define wszREGDSDOMAINDN TEXT("DSDomainDN")
  133. #define wszREGVIEWAGEMINUTES TEXT("ViewAgeMinutes")
  134. #define wszREGVIEWIDLEMINUTES TEXT("ViewIdleMinutes")
  135. #define wszCRTFILENAMEEXT TEXT(".crt")
  136. #define wszPFXFILENAMEEXT TEXT(".p12")
  137. #define wszDATFILENAMEEXT TEXT(".dat")
  138. #define wszLOGFILENAMEEXT TEXT(".log")
  139. #define wszDBFILENAMEEXT TEXT(".edb")
  140. #define szDBBASENAMEPARM "edb"
  141. #define wszDBBASENAMEPARM TEXT(szDBBASENAMEPARM)
  142. #define wszLOGPATH TEXT("CertLog")
  143. #define wszDBBACKUPSUBDIR TEXT("DataBase")
  144. #define wszDBBACKUPCERTBACKDAT TEXT("certbkxp.dat")
  145. #ifndef __ENUM_CATYPES__
  146. #define __ENUM_CATYPES__
  147. typedef enum {
  148. ENUM_ENTERPRISE_ROOTCA = 0,ENUM_ENTERPRISE_SUBCA = 1,ENUM_STANDALONE_ROOTCA = 3,ENUM_STANDALONE_SUBCA = 4,ENUM_UNKNOWN_CA = 5,
  149. } ENUM_CATYPES;
  150. typedef struct _CAINFO {
  151. DWORD cbSize;
  152. ENUM_CATYPES CAType;
  153. DWORD cCASignatureCerts;
  154. DWORD cCAExchangeCerts;
  155. DWORD cExitModules;
  156. LONG lPropIdMax;
  157. LONG lRoleSeparationEnabled;
  158. DWORD cKRACertUsedCount;
  159. DWORD cKRACertCount;
  160. DWORD fAdvancedServer;
  161. } CAINFO;
  162. #endif
  163. #define CCLOCKSKEWMINUTESDEFAULT 10
  164. #define CVIEWAGEMINUTESDEFAULT 16
  165. #define CVIEWIDLEMINUTESDEFAULT (CVIEWAGEMINUTESDEFAULT / 2)
  166. #define dwVALIDITYPERIODCOUNTDEFAULT_ROOT 5
  167. #define dwVALIDITYPERIODCOUNTDEFAULT_ENTERPRISE 2
  168. #define dwVALIDITYPERIODCOUNTDEFAULT_STANDALONE 1
  169. #define dwVALIDITYPERIODENUMDEFAULT ENUM_PERIOD_YEARS
  170. #define wszVALIDITYPERIODSTRINGDEFAULT wszPERIODYEARS
  171. #define dwCAXCHGVALIDITYPERIODCOUNTDEFAULT 1
  172. #define dwCAXCHGVALIDITYPERIODENUMDEFAULT ENUM_PERIOD_WEEKS
  173. #define wszCAXCHGVALIDITYPERIODSTRINGDEFAULT wszPERIODWEEKS
  174. #define dwCAXCHGOVERLAPPERIODCOUNTDEFAULT 1
  175. #define dwCAXCHGOVERLAPPERIODENUMDEFAULT ENUM_PERIOD_DAYS
  176. #define wszCAXCHGOVERLAPPERIODSTRINGDEFAULT wszPERIODDAYS
  177. #define dwCRLPERIODCOUNTDEFAULT 1
  178. #define wszCRLPERIODSTRINGDEFAULT wszPERIODWEEKS
  179. #define dwCRLOVERLAPPERIODCOUNTDEFAULT 0
  180. #define wszCRLOVERLAPPERIODSTRINGDEFAULT wszPERIODHOURS
  181. #define dwCRLDELTAPERIODCOUNTDEFAULT 1
  182. #define wszCRLDELTAPERIODSTRINGDEFAULT wszPERIODDAYS
  183. #define dwCRLDELTAOVERLAPPERIODCOUNTDEFAULT 0
  184. #define wszCRLDELTAOVERLAPPERIODSTRINGDEFAULT wszPERIODMINUTES
  185. #define CERTLOG_MINIMAL (DWORD) 0
  186. #define CERTLOG_TERSE (DWORD) 1
  187. #define CERTLOG_ERROR (DWORD) 2
  188. #define CERTLOG_WARNING (DWORD) 3
  189. #define CERTLOG_VERBOSE (DWORD) 4
  190. #define CERTLOG_EXHAUSTIVE (DWORD) 5
  191. #define SETUP_SERVER_FLAG 0x00000001
  192. #define SETUP_CLIENT_FLAG 0x00000002
  193. #define SETUP_SUSPEND_FLAG 0x00000004
  194. #define SETUP_REQUEST_FLAG 0x00000008
  195. #define SETUP_ONLINE_FLAG 0x00000010
  196. #define SETUP_DENIED_FLAG 0x00000020
  197. #define SETUP_CREATEDB_FLAG 0x00000040
  198. #define SETUP_ATTEMPT_VROOT_CREATE 0x00000080
  199. #define SETUP_FORCECRL_FLAG 0x00000100
  200. #define SETUP_UPDATE_CAOBJECT_SVRTYPE 0x00000200
  201. #define SETUP_SERVER_UPGRADED_FLAG 0x00000400
  202. #define SETUP_W2K_SECURITY_NOT_UPGRADED_FLAG 0x00000800
  203. #define SETUP_SECURITY_CHANGED 0x00001000
  204. #define SETUP_DCOM_SECURITY_UPDATED_FLAG 0x00002000
  205. #define CRLF_DELTA_USE_OLDEST_UNEXPIRED_BASE 0x00000001
  206. #define CRLF_DELETE_EXPIRED_CRLS 0x00000002
  207. #define CRLF_CRLNUMBER_CRITICAL 0x00000004
  208. #define CRLF_REVCHECK_IGNORE_OFFLINE 0x00000008
  209. #define CRLF_IGNORE_INVALID_POLICIES 0x00000010
  210. #define CRLF_REBUILD_MODIFIED_SUBJECT_ONLY 0x00000020
  211. #define CRLF_SAVE_FAILED_CERTS 0x00000040
  212. #define CRLF_IGNORE_UNKNOWN_CMC_ATTRIBUTES 0x00000080
  213. #define CRLF_IGNORE_CROSS_CERT_TRUST_ERROR 0x00000100
  214. #define CRLF_PUBLISH_EXPIRED_CERT_CRLS 0x00000200
  215. #define CRLF_ENFORCE_ENROLLMENT_AGENT 0x00000400
  216. #define CRLF_DISABLE_RDN_REORDER 0x00000800
  217. #define CRLF_DISABLE_ROOT_CROSS_CERTS 0x00001000
  218. #define CRLF_LOG_FULL_RESPONSE 0x00002000
  219. #define CRLF_USE_XCHG_CERT_TEMPLATE 0x00004000
  220. #define CRLF_USE_CROSS_CERT_TEMPLATE 0x00008000
  221. #define CRLF_ALLOW_REQUEST_ATTRIBUTE_SUBJECT 0x00010000
  222. #define CRLF_REVCHECK_IGNORE_NOREVCHECK 0x00020000
  223. #define CRLF_PRESERVE_EXPIRED_CA_CERTS 0x00040000
  224. #define CRLF_PRESERVE_REVOKED_CA_CERTS 0x00080000
  225. #define KRAF_ENABLEFOREIGN 0x00000001
  226. #define KRAF_SAVEBADREQUESTKEY 0x00000002
  227. #define KRAF_ENABLEARCHIVEALL 0x00000004
  228. #define IF_LOCKICERTREQUEST 0x00000001
  229. #define IF_NOREMOTEICERTREQUEST 0x00000002
  230. #define IF_NOLOCALICERTREQUEST 0x00000004
  231. #define IF_NORPCICERTREQUEST 0x00000008
  232. #define IF_NOREMOTEICERTADMIN 0x00000010
  233. #define IF_NOLOCALICERTADMIN 0x00000020
  234. #define IF_NOREMOTEICERTADMINBACKUP 0x00000040
  235. #define IF_NOLOCALICERTADMINBACKUP 0x00000080
  236. #define IF_NOSNAPSHOTBACKUP 0x00000100
  237. #define IF_ENFORCEENCRYPTICERTREQUEST 0x00000200
  238. #define IF_ENFORCEENCRYPTICERTADMIN 0x00000400
  239. #define IF_ENABLEEXITKEYRETRIEVAL 0x00000800
  240. #define IF_ENABLEADMINASAUDITOR 0x00001000
  241. #define IF_DEFAULT (IF_NOREMOTEICERTADMINBACKUP)
  242. #define CSURL_SERVERPUBLISH 0x00000001
  243. #define CSURL_ADDTOCERTCDP 0x00000002
  244. #define CSURL_ADDTOFRESHESTCRL 0x00000004
  245. #define CSURL_ADDTOCRLCDP 0x00000008
  246. #define CSURL_PUBLISHRETRY 0x00000010
  247. #define CSURL_ADDTOCERTOCSP 0x00000020
  248. #define CSURL_SERVERPUBLISHDELTA 0x00000040
  249. #define wszREGKEYCSP TEXT("CSP")
  250. #define wszREGKEYENCRYPTIONCSP TEXT("EncryptionCSP")
  251. #define wszREGKEYEXITMODULES TEXT("ExitModules")
  252. #define wszREGKEYPOLICYMODULES TEXT("PolicyModules")
  253. #define wszSECUREDATTRIBUTES TEXT("SignedAttributes")
  254. #define wszzDEFAULTSIGNEDATTRIBUTES TEXT("RequesterName\0")
  255. #define wszREGBACKUPLOGDIRECTORY TEXT("BackupLogDirectory")
  256. #define wszREGCHECKPOINTFILE TEXT("CheckPointFile")
  257. #define wszREGHIGHLOGNUMBER TEXT("HighLogNumber")
  258. #define wszREGLOWLOGNUMBER TEXT("LowLogNumber")
  259. #define wszREGLOGPATH TEXT("LogPath")
  260. #define wszREGRESTOREMAPCOUNT TEXT("RestoreMapCount")
  261. #define wszREGRESTOREMAP TEXT("RestoreMap")
  262. #define wszREGDATABASERECOVERED TEXT("DatabaseRecovered")
  263. #define wszREGRESTORESTATUS TEXT("RestoreStatus")
  264. #define wszREGB2ICERTMANAGEMODULE TEXT("ICertManageModule")
  265. #define wszREGSP4DEFAULTCONFIGURATION TEXT("DefaultConfiguration")
  266. #define wszREGSP4KEYSETNAME TEXT("KeySetName")
  267. #define wszREGSP4SUBJECTNAMESEPARATOR TEXT("SubjectNameSeparator")
  268. #define wszREGSP4NAMES TEXT("Names")
  269. #define wszREGSP4QUERIES TEXT("Queries")
  270. #define wszREGNETSCAPECERTTYPE TEXT("NetscapeCertType")
  271. #define wszNETSCAPEREVOCATIONTYPE TEXT("Netscape")
  272. #define wszREGPROVIDERTYPE TEXT("ProviderType")
  273. #define wszREGPROVIDER TEXT("Provider")
  274. #define wszHASHALGORITHM TEXT("HashAlgorithm")
  275. #define wszENCRYPTIONALGORITHM TEXT("EncryptionAlgorithm")
  276. #define wszMACHINEKEYSET TEXT("MachineKeyset")
  277. #define wszREGKEYSIZE TEXT("KeySize")
  278. #define szNAMESEPARATORDEFAULT "\n"
  279. #define wszNAMESEPARATORDEFAULT TEXT(szNAMESEPARATORDEFAULT)
  280. #define wszPERIODYEARS TEXT("Years")
  281. #define wszPERIODMONTHS TEXT("Months")
  282. #define wszPERIODWEEKS TEXT("Weeks")
  283. #define wszPERIODDAYS TEXT("Days")
  284. #define wszPERIODHOURS TEXT("Hours")
  285. #define wszPERIODMINUTES TEXT("Minutes")
  286. #define wszPERIODSECONDS TEXT("Seconds")
  287. #define wszREGISSUERCERTURLFLAGS TEXT("IssuerCertURLFlags")
  288. #define wszREGEDITFLAGS TEXT("EditFlags")
  289. #define wszREGUPNMAP TEXT("UPNMap")
  290. #define wszREGSUBJECTALTNAME TEXT("SubjectAltName")
  291. #define wszREGSUBJECTALTNAME2 TEXT("SubjectAltName2")
  292. #define wszREGREQUESTDISPOSITION TEXT("RequestDisposition")
  293. #define wszREGCAPATHLENGTH TEXT("CAPathLength")
  294. #define wszREGREVOCATIONTYPE TEXT("RevocationType")
  295. #define wszREGLDAPREVOCATIONCRLURL_OLD TEXT("LDAPRevocationCRLURL")
  296. #define wszREGREVOCATIONCRLURL_OLD TEXT("RevocationCRLURL")
  297. #define wszREGFTPREVOCATIONCRLURL_OLD TEXT("FTPRevocationCRLURL")
  298. #define wszREGFILEREVOCATIONCRLURL_OLD TEXT("FileRevocationCRLURL")
  299. #define wszREGREVOCATIONURL TEXT("RevocationURL")
  300. #define wszREGLDAPISSUERCERTURL_OLD TEXT("LDAPIssuerCertURL")
  301. #define wszREGISSUERCERTURL_OLD TEXT("IssuerCertURL")
  302. #define wszREGFTPISSUERCERTURL_OLD TEXT("FTPIssuerCertURL")
  303. #define wszREGFILEISSUERCERTURL_OLD TEXT("FileIssuerCertURL")
  304. #define wszREGENABLEREQUESTEXTENSIONLIST TEXT("EnableRequestExtensionList")
  305. #define wszREGENABLEENROLLEEREQUESTEXTENSIONLIST TEXT("EnableEnrolleeRequestExtensionList")
  306. #define wszREGDISABLEEXTENSIONLIST TEXT("DisableExtensionList")
  307. #define wszREGDEFAULTSMIME TEXT("DefaultSMIME")
  308. #define CAPATHLENGTH_INFINITE 0xffffffff
  309. #define REQDISP_PENDING 0x00000000
  310. #define REQDISP_ISSUE 0x00000001
  311. #define REQDISP_DENY 0x00000002
  312. #define REQDISP_USEREQUESTATTRIBUTE 0x00000003
  313. #define REQDISP_MASK 0x000000ff
  314. #define REQDISP_PENDINGFIRST 0x00000100
  315. #define REQDISP_DEFAULT_STANDALONE (REQDISP_PENDINGFIRST | REQDISP_ISSUE)
  316. #define REQDISP_DEFAULT_ENTERPRISE (REQDISP_ISSUE)
  317. #define REVEXT_CDPLDAPURL_OLD 0x00000001
  318. #define REVEXT_CDPHTTPURL_OLD 0x00000002
  319. #define REVEXT_CDPFTPURL_OLD 0x00000004
  320. #define REVEXT_CDPFILEURL_OLD 0x00000008
  321. #define REVEXT_CDPURLMASK_OLD 0x000000ff
  322. #define REVEXT_CDPENABLE 0x00000100
  323. #define REVEXT_ASPENABLE 0x00000200
  324. #define REVEXT_DEFAULT_NODS (REVEXT_CDPENABLE)
  325. #define REVEXT_DEFAULT_DS (REVEXT_CDPENABLE)
  326. #define ISSCERT_LDAPURL_OLD 0x00000001
  327. #define ISSCERT_HTTPURL_OLD 0x00000002
  328. #define ISSCERT_FTPURL_OLD 0x00000004
  329. #define ISSCERT_FILEURL_OLD 0x00000008
  330. #define ISSCERT_URLMASK_OLD 0x000000ff
  331. #define ISSCERT_ENABLE 0x00000100
  332. #define ISSCERT_DEFAULT_NODS (ISSCERT_ENABLE)
  333. #define ISSCERT_DEFAULT_DS (ISSCERT_ENABLE)
  334. #define EDITF_ENABLEREQUESTEXTENSIONS 0x00000001
  335. #define EDITF_REQUESTEXTENSIONLIST 0x00000002
  336. #define EDITF_DISABLEEXTENSIONLIST 0x00000004
  337. #define EDITF_ADDOLDKEYUSAGE 0x00000008
  338. #define EDITF_ADDOLDCERTTYPE 0x00000010
  339. #define EDITF_ATTRIBUTEENDDATE 0x00000020
  340. #define EDITF_BASICCONSTRAINTSCRITICAL 0x00000040
  341. #define EDITF_BASICCONSTRAINTSCA 0x00000080
  342. #define EDITF_ENABLEAKIKEYID 0x00000100
  343. #define EDITF_ATTRIBUTECA 0x00000200
  344. #define EDITF_IGNOREREQUESTERGROUP 0x00000400
  345. #define EDITF_ENABLEAKIISSUERNAME 0x00000800
  346. #define EDITF_ENABLEAKIISSUERSERIAL 0x00001000
  347. #define EDITF_ENABLEAKICRITICAL 0x00002000
  348. #define EDITF_SERVERUPGRADED 0x00004000
  349. #define EDITF_ATTRIBUTEEKU 0x00008000
  350. #define EDITF_ENABLEDEFAULTSMIME 0x00010000
  351. #define EDITF_EMAILOPTIONAL 0x00020000
  352. #define EDITF_ATTRIBUTESUBJECTALTNAME2 0x00040000
  353. #define EDITF_ENABLELDAPREFERRALS 0x00080000
  354. #define EDITF_ENABLECHASECLIENTDC 0x00100000
  355. #define EDITF_AUDITCERTTEMPLATELOAD 0x00200000
  356. #define EDITF_DISABLEOLDOSCNUPN 0x00400000
  357. #define EDITF_DISABLELDAPPACKAGELIST 0x00800000
  358. #define EDITF_ENABLEUPNMAP 0x01000000
  359. #define EDITF_DEFAULT_STANDALONE (EDITF_REQUESTEXTENSIONLIST | EDITF_DISABLEEXTENSIONLIST | EDITF_ADDOLDKEYUSAGE | EDITF_ATTRIBUTEENDDATE | EDITF_BASICCONSTRAINTSCRITICAL | EDITF_BASICCONSTRAINTSCA | EDITF_ENABLEAKIKEYID | EDITF_ATTRIBUTECA | EDITF_ATTRIBUTEEKU)
  360. #define EDITF_DEFAULT_ENTERPRISE (EDITF_REQUESTEXTENSIONLIST | EDITF_DISABLEEXTENSIONLIST | EDITF_ADDOLDKEYUSAGE | EDITF_BASICCONSTRAINTSCRITICAL | EDITF_ENABLEAKIKEYID | EDITF_ENABLEDEFAULTSMIME | EDITF_ENABLECHASECLIENTDC)
  361. #define wszREGLDAPREVOCATIONDN_OLD TEXT("LDAPRevocationDN")
  362. #define wszREGLDAPREVOCATIONDNTEMPLATE_OLD TEXT("LDAPRevocationDNTemplate")
  363. #define wszCRLPUBLISHRETRYCOUNT TEXT("CRLPublishRetryCount")
  364. #define wszREGCERTPUBLISHFLAGS TEXT("PublishCertFlags")
  365. #define EXITPUB_FILE 0x00000001
  366. #define EXITPUB_ACTIVEDIRECTORY 0x00000002
  367. #define EXITPUB_REMOVEOLDCERTS 0x00000010
  368. #define EXITPUB_DEFAULT_ENTERPRISE EXITPUB_ACTIVEDIRECTORY
  369. #define EXITPUB_DEFAULT_STANDALONE EXITPUB_FILE
  370. #define wszCLASS_CERTADMIN TEXT("CertificateAuthority.Admin")
  371. #define wszCLASS_CERTCONFIG TEXT("CertificateAuthority.Config")
  372. #define wszCLASS_CERTGETCONFIG TEXT("CertificateAuthority.GetConfig")
  373. #define wszCLASS_CERTENCODE TEXT("CertificateAuthority.Encode")
  374. #define wszCLASS_CERTREQUEST TEXT("CertificateAuthority.Request")
  375. #define wszCLASS_CERTSERVEREXIT TEXT("CertificateAuthority.ServerExit")
  376. #define wszCLASS_CERTSERVERPOLICY TEXT("CertificateAuthority.ServerPolicy")
  377. #define wszCLASS_CERTVIEW TEXT("CertificateAuthority.View")
  378. #define wszMICROSOFTCERTMODULE_PREFIX TEXT("CertificateAuthority_MicrosoftDefault")
  379. #define wszCERTMANAGE_SUFFIX TEXT("Manage")
  380. #define wszCERTEXITMODULE_POSTFIX TEXT(".Exit")
  381. #define wszCERTMANAGEEXIT_POSTFIX wszCERTEXITMODULE_POSTFIX wszCERTMANAGE_SUFFIX
  382. #define wszCERTPOLICYMODULE_POSTFIX TEXT(".Policy")
  383. #define wszCERTMANAGEPOLICY_POSTFIX wszCERTPOLICYMODULE_POSTFIX wszCERTMANAGE_SUFFIX
  384. #define wszCLASS_CERTMANAGEEXITMODULE wszMICROSOFTCERTMODULE_PREFIX wszCERTMANAGEEXIT_POSTFIX
  385. #define wszCLASS_CERTMANAGEPOLICYMODULE wszMICROSOFTCERTMODULE_PREFIX wszCERTMANAGEPOLICY_POSTFIX
  386. #define wszCLASS_CERTEXIT wszMICROSOFTCERTMODULE_PREFIX wszCERTEXITMODULE_POSTFIX
  387. #define wszCLASS_CERTPOLICY wszMICROSOFTCERTMODULE_PREFIX wszCERTPOLICYMODULE_POSTFIX
  388. #define wszCAPOLICYFILE L"CAPolicy.inf"
  389. #define wszINFSECTION_CDP L"CRLDistributionPoint"
  390. #define wszINFSECTION_AIA L"AuthorityInformationAccess"
  391. #define wszINFSECTION_EKU L"EnhancedKeyUsageExtension"
  392. #define wszINFSECTION_CCDP L"CrossCertificateDistributionPointsExtension"
  393. #define wszINFSECTION_CERTSERVER L"certsrv_server"
  394. #define wszINFKEY_RENEWALKEYLENGTH L"RenewalKeyLength"
  395. #define wszINFKEY_RENEWALVALIDITYPERIODSTRING L"RenewalValidityPeriod"
  396. #define wszINFKEY_RENEWALVALIDITYPERIODCOUNT L"RenewalValidityPeriodUnits"
  397. #define wszINFKEY_UTF8 L"UTF8"
  398. #define wszINFKEY_CRLPERIODSTRING wszREGCRLPERIODSTRING
  399. #define wszINFKEY_CRLPERIODCOUNT wszREGCRLPERIODCOUNT
  400. #define wszINFKEY_CRLDELTAPERIODSTRING wszREGCRLDELTAPERIODSTRING
  401. #define wszINFKEY_CRLDELTAPERIODCOUNT wszREGCRLDELTAPERIODCOUNT
  402. #define wszINFKEY_LOADDEFAULTTEMPLATES L"LoadDefaultTemplates"
  403. #define wszINFKEY_ENABLEKEYCOUNTING L"EnableKeyCounting"
  404. #define wszINFKEY_FORCEUTF8 L"FORCEUTF8"
  405. #define wszINFKEY_CRITICAL L"Critical"
  406. #define wszINFKEY_EMPTY L"Empty"
  407. #define wszINFKEY_CCDPSYNCDELTATIME L"SyncDeltaTime"
  408. #define wszINFSECTION_CAPOLICY L"CAPolicy"
  409. #define wszINFSECTION_POLICYSTATEMENT L"PolicyStatementExtension"
  410. #define wszINFSECTION_APPLICATIONPOLICYSTATEMENT L"ApplicationPolicyStatementExtension"
  411. #define wszINFKEY_POLICIES L"Policies"
  412. #define wszINFKEY_OID L"OID"
  413. #define wszINFKEY_NOTICE L"Notice"
  414. #define wszINFSECTION_REQUESTATTRIBUTES L"RequestAttributes"
  415. #define wszINFSECTION_NAMECONSTRAINTS L"NameConstraintsExtension"
  416. #define wszINFKEY_INCLUDE L"Include"
  417. #define wszINFKEY_EXCLUDE L"Exclude"
  418. #define wszINFKEY_UPN L"UPN"
  419. #define wszINFKEY_EMAIL L"EMail"
  420. #define wszINFKEY_DNS L"DNS"
  421. #define wszINFKEY_DIRECTORYNAME L"DirectoryName"
  422. #define wszINFKEY_URL L"URL"
  423. #define wszINFKEY_IPADDRESS L"IPAddress"
  424. #define wszINFKEY_REGISTEREDID L"RegisteredId"
  425. #define wszINFKEY_OTHERNAME L"OtherName"
  426. #define wszINFSECTION_POLICYMAPPINGS L"PolicyMappingsExtension"
  427. #define wszINFSECTION_APPLICATIONPOLICYMAPPINGS L"ApplicationPolicyMappingsExtension"
  428. #define wszINFSECTION_POLICYCONSTRAINTS L"PolicyConstraintsExtension"
  429. #define wszINFSECTION_APPLICATIONPOLICYCONSTRAINTS L"ApplicationPolicyConstraintsExtension"
  430. #define wszINFKEY_REQUIREEXPLICITPOLICY L"RequireExplicitPolicy"
  431. #define wszINFKEY_INHIBITPOLICYMAPPING L"InhibitPolicyMapping"
  432. #define wszINFSECTION_BASICCONSTRAINTS L"BasicConstraintsExtension"
  433. #define wszINFKEY_PATHLENGTH L"PathLength"
  434. #define wszREGEXITSMTPKEY L"SMTP"
  435. #define wszREGEXITSMTPTEMPLATES L"Templates"
  436. #define wszREGEXITSMTPEVENTFILTER L"EventFilter"
  437. #define wszREGEXITSMTPSERVER L"SMTPServer"
  438. #define wszREGEXITSMTPAUTHENTICATE L"SMTPAuthenticate"
  439. #define wszREGEXITDENIEDKEY L"Denied"
  440. #define wszREGEXITISSUEDKEY L"Issued"
  441. #define wszREGEXITPENDINGKEY L"Pending"
  442. #define wszREGEXITREVOKEDKEY L"Revoked"
  443. #define wszREGEXITCRLISSUEDKEY L"CRLIssued"
  444. #define wszREGEXITSHUTDOWNKEY L"Shutdown"
  445. #define wszREGEXITSTARTUPKEY L"Startup"
  446. #define wszREGEXITSMTPFROM L"From"
  447. #define wszREGEXITSMTPTO L"To"
  448. #define wszREGEXITSMTPCC L"Cc"
  449. #define wszREGEXITTITLEFORMAT L"TitleFormat"
  450. #define wszREGEXITTITLEARG L"TitleArg"
  451. #define wszREGEXITBODYFORMAT L"BodyFormat"
  452. #define wszREGEXITBODYARG L"BodyArg"
  453. #define wszREGEXITPROPNOTFOUND L"???"
  454. #define wszPROPDISTINGUISHEDNAME TEXT("DistinguishedName")
  455. #define wszPROPRAWNAME TEXT("RawName")
  456. #define wszPROPCOUNTRY TEXT("Country")
  457. #define wszPROPORGANIZATION TEXT("Organization")
  458. #define wszPROPORGUNIT TEXT("OrgUnit")
  459. #define wszPROPCOMMONNAME TEXT("CommonName")
  460. #define wszPROPLOCALITY TEXT("Locality")
  461. #define wszPROPSTATE TEXT("State")
  462. #define wszPROPTITLE TEXT("Title")
  463. #define wszPROPGIVENNAME TEXT("GivenName")
  464. #define wszPROPINITIALS TEXT("Initials")
  465. #define wszPROPSURNAME TEXT("SurName")
  466. #define wszPROPDOMAINCOMPONENT TEXT("DomainComponent")
  467. #define wszPROPEMAIL TEXT("EMail")
  468. #define wszPROPSTREETADDRESS TEXT("StreetAddress")
  469. #define wszPROPUNSTRUCTUREDNAME TEXT("UnstructuredName")
  470. #define wszPROPUNSTRUCTUREDADDRESS TEXT("UnstructuredAddress")
  471. #define wszPROPDEVICESERIALNUMBER TEXT("DeviceSerialNumber")
  472. #define wszPROPSUBJECTDOT TEXT("Subject.")
  473. #define wszPROPSUBJECTDISTINGUISHEDNAME wszPROPSUBJECTDOT wszPROPDISTINGUISHEDNAME
  474. #define wszPROPSUBJECTRAWNAME wszPROPSUBJECTDOT wszPROPRAWNAME
  475. #define wszPROPSUBJECTCOUNTRY wszPROPSUBJECTDOT wszPROPCOUNTRY
  476. #define wszPROPSUBJECTORGANIZATION wszPROPSUBJECTDOT wszPROPORGANIZATION
  477. #define wszPROPSUBJECTORGUNIT wszPROPSUBJECTDOT wszPROPORGUNIT
  478. #define wszPROPSUBJECTCOMMONNAME wszPROPSUBJECTDOT wszPROPCOMMONNAME
  479. #define wszPROPSUBJECTLOCALITY wszPROPSUBJECTDOT wszPROPLOCALITY
  480. #define wszPROPSUBJECTSTATE wszPROPSUBJECTDOT wszPROPSTATE
  481. #define wszPROPSUBJECTTITLE wszPROPSUBJECTDOT wszPROPTITLE
  482. #define wszPROPSUBJECTGIVENNAME wszPROPSUBJECTDOT wszPROPGIVENNAME
  483. #define wszPROPSUBJECTINITIALS wszPROPSUBJECTDOT wszPROPINITIALS
  484. #define wszPROPSUBJECTSURNAME wszPROPSUBJECTDOT wszPROPSURNAME
  485. #define wszPROPSUBJECTDOMAINCOMPONENT wszPROPSUBJECTDOT wszPROPDOMAINCOMPONENT
  486. #define wszPROPSUBJECTEMAIL wszPROPSUBJECTDOT wszPROPEMAIL
  487. #define wszPROPSUBJECTSTREETADDRESS wszPROPSUBJECTDOT wszPROPSTREETADDRESS
  488. #define wszPROPSUBJECTUNSTRUCTUREDNAME wszPROPSUBJECTDOT wszPROPUNSTRUCTUREDNAME
  489. #define wszPROPSUBJECTUNSTRUCTUREDADDRESS wszPROPSUBJECTDOT wszPROPUNSTRUCTUREDADDRESS
  490. #define wszPROPSUBJECTDEVICESERIALNUMBER wszPROPSUBJECTDOT wszPROPDEVICESERIALNUMBER
  491. #define wszPROPREQUESTDOT TEXT("Request.")
  492. #define wszPROPREQUESTREQUESTID TEXT("RequestID")
  493. #define wszPROPREQUESTRAWREQUEST TEXT("RawRequest")
  494. #define wszPROPREQUESTRAWARCHIVEDKEY TEXT("RawArchivedKey")
  495. #define wszPROPREQUESTARCHIVEDKEY TEXT("ArchivedKey")
  496. #define wszPROPREQUESTKEYRECOVERYHASHES TEXT("KeyRecoveryHashes")
  497. #define wszPROPREQUESTRAWOLDCERTIFICATE TEXT("RawOldCertificate")
  498. #define wszPROPREQUESTATTRIBUTES TEXT("RequestAttributes")
  499. #define wszPROPREQUESTTYPE TEXT("RequestType")
  500. #define wszPROPREQUESTFLAGS TEXT("RequestFlags")
  501. #define wszPROPREQUESTSTATUSCODE TEXT("StatusCode")
  502. #define wszPROPREQUESTDISPOSITION TEXT("Disposition")
  503. #define wszPROPREQUESTDISPOSITIONMESSAGE TEXT("DispositionMessage")
  504. #define wszPROPREQUESTSUBMITTEDWHEN TEXT("SubmittedWhen")
  505. #define wszPROPREQUESTRESOLVEDWHEN TEXT("ResolvedWhen")
  506. #define wszPROPREQUESTREVOKEDWHEN TEXT("RevokedWhen")
  507. #define wszPROPREQUESTREVOKEDEFFECTIVEWHEN TEXT("RevokedEffectiveWhen")
  508. #define wszPROPREQUESTREVOKEDREASON TEXT("RevokedReason")
  509. #define wszPROPREQUESTERNAME TEXT("RequesterName")
  510. #define wszPROPCALLERNAME TEXT("CallerName")
  511. #define wszPROPSIGNERPOLICIES TEXT("SignerPolicies")
  512. #define wszPROPSIGNERAPPLICATIONPOLICIES TEXT("SignerApplicationPolicies")
  513. #define wszPROPOFFICER TEXT("Officer")
  514. #define wszPROPCHALLENGE TEXT("Challenge")
  515. #define wszPROPEXPECTEDCHALLENGE TEXT("ExpectedChallenge")
  516. #define wszPROPDISPOSITION TEXT("Disposition")
  517. #define wszPROPDISPOSITIONDENY TEXT("Deny")
  518. #define wszPROPDISPOSITIONPENDING TEXT("Pending")
  519. #define wszPROPVALIDITYPERIODSTRING TEXT("ValidityPeriod")
  520. #define wszPROPVALIDITYPERIODCOUNT TEXT("ValidityPeriodUnits")
  521. #define wszPROPCERTTYPE TEXT("CertType")
  522. #define wszPROPCERTTEMPLATE TEXT("CertificateTemplate")
  523. #define wszPROPCERTUSAGE TEXT("CertificateUsage")
  524. #define wszPROPREQUESTOSVERSION TEXT("RequestOSVersion")
  525. #define wszPROPREQUESTCSPPROVIDER TEXT("RequestCSPProvider")
  526. #define wszPROPEXITCERTFILE TEXT("CertFile")
  527. #define wszPROPCLIENTBROWSERMACHINE TEXT("cbm")
  528. #define wszPROPCERTCLIENTMACHINE TEXT("ccm")
  529. #define wszPROPCLIENTDCDNS L"cdc"
  530. #define wszPROPREQUESTMACHINEDNS L"rmd"
  531. #define wszPROPSUBJECTALTNAME2 TEXT("san")
  532. #define wszPROPDNS TEXT("dns")
  533. #define wszPROPDN TEXT("dn")
  534. #define wszPROPURL TEXT("url")
  535. #define wszPROPIPADDRESS TEXT("ipaddress")
  536. #define wszPROPGUID TEXT("guid")
  537. #define wszPROPOID TEXT("oid")
  538. #define wszPROPUPN TEXT("upn")
  539. #define wszPROPUPN TEXT("upn")
  540. #define szPROPASNTAG "{asn}"
  541. #define wszPROPUTF8TAG TEXT("{utf8}")
  542. #define wszPROPOCTETTAG TEXT("{octet}")
  543. #define wszPROPASNTAG TEXT(szPROPASNTAG)
  544. #define wszPROPCATYPE TEXT("CAType")
  545. #define wszPROPSANITIZEDCANAME TEXT("SanitizedCAName")
  546. #define wszPROPSANITIZEDSHORTNAME TEXT("SanitizedShortName")
  547. #define wszPROPMACHINEDNSNAME TEXT("MachineDNSName")
  548. #define wszPROPMODULEREGLOC TEXT("ModuleRegistryLocation")
  549. #define wszPROPUSEDS TEXT("fUseDS")
  550. #define wszPROPDELTACRLSDISABLED TEXT("fDeltaCRLsDisabled")
  551. #define wszPROPSERVERUPGRADED TEXT("fServerUpgraded")
  552. #define wszPROPCONFIGDN TEXT("ConfigDN")
  553. #define wszPROPDOMAINDN TEXT("DomainDN")
  554. #define wszPROPLOGLEVEL TEXT("LogLevel")
  555. #define wszPROPSESSIONCOUNT TEXT("SessionCount")
  556. #define wszPROPTEMPLATECHANGESEQUENCENUMBER TEXT("TemplateChangeSequenceNumber")
  557. #define wszLOCALIZEDTIMEPERIODUNITS TEXT("LocalizedTimePeriodUnits")
  558. #define wszPROPREQUESTERCAACCESS TEXT("RequesterCAAccess")
  559. #define wszPROPUSERDN TEXT("UserDN")
  560. #define wszPROPKEYARCHIVED TEXT("KeyArchived")
  561. #define wszPROPCERTCOUNT TEXT("CertCount")
  562. #define wszPROPRAWCACERTIFICATE TEXT("RawCACertificate")
  563. #define wszPROPCERTSTATE TEXT("CertState")
  564. #define wszPROPCERTSUFFIX TEXT("CertSuffix")
  565. #define wszPROPRAWCRL TEXT("RawCRL")
  566. #define wszPROPRAWDELTACRL TEXT("RawDeltaCRL")
  567. #define wszPROPCRLINDEX TEXT("CRLIndex")
  568. #define wszPROPCRLSTATE TEXT("CRLState")
  569. #define wszPROPCRLSUFFIX TEXT("CRLSuffix")
  570. #define wszPROPEVENTLOGTERSE TEXT("EventLogTerse")
  571. #define wszPROPEVENTLOGERROR TEXT("EventLogError")
  572. #define wszPROPEVENTLOGWARNING TEXT("EventLogWarning")
  573. #define wszPROPEVENTLOGVERBOSE TEXT("EventLogVerbose")
  574. #define wszPROPEVENTLOGEXHAUSTIVE TEXT("EventLogExhaustive")
  575. #define wszPROPDCNAME TEXT("DCName")
  576. #define wszPROPSEAUDITID TEXT("SEAuditId")
  577. #define wszPROPSEAUDITFILTER TEXT("SEAuditFilter")
  578. #define wszPROPCERTIFICATEREQUESTID TEXT("RequestID")
  579. #define wszPROPRAWCERTIFICATE TEXT("RawCertificate")
  580. #define wszPROPCERTIFICATEHASH TEXT("CertificateHash")
  581. #define wszPROPCERTIFICATETEMPLATE TEXT("CertificateTemplate")
  582. #define wszPROPCERTIFICATEENROLLMENTFLAGS TEXT("EnrollmentFlags")
  583. #define wszPROPCERTIFICATEGENERALFLAGS TEXT("GeneralFlags")
  584. #define wszPROPCERTIFICATESERIALNUMBER TEXT("SerialNumber")
  585. #define wszPROPCERTIFICATENOTBEFOREDATE TEXT("NotBefore")
  586. #define wszPROPCERTIFICATENOTAFTERDATE TEXT("NotAfter")
  587. #define wszPROPCERTIFICATESUBJECTKEYIDENTIFIER TEXT("SubjectKeyIdentifier")
  588. #define wszPROPCERTIFICATERAWPUBLICKEY TEXT("RawPublicKey")
  589. #define wszPROPCERTIFICATEPUBLICKEYLENGTH TEXT("PublicKeyLength")
  590. #define wszPROPCERTIFICATEPUBLICKEYALGORITHM TEXT("PublicKeyAlgorithm")
  591. #define wszPROPCERTIFICATERAWPUBLICKEYALGORITHMPARAMETERS TEXT("RawPublicKeyAlgorithmParameters")
  592. #define wszPROPCERTIFICATEUPN TEXT("UPN")
  593. #define wszPROPCERTIFICATETYPE TEXT("CertificateType")
  594. #define wszPROPCERTIFICATERAWSMIMECAPABILITIES TEXT("RawSMIMECapabilities")
  595. #define wszPROPNAMETYPE TEXT("NameType")
  596. #define EXTENSION_CRITICAL_FLAG 0x00000001
  597. #define EXTENSION_DISABLE_FLAG 0x00000002
  598. #define EXTENSION_POLICY_MASK 0x0000ffff
  599. #define EXTENSION_ORIGIN_REQUEST 0x00010000
  600. #define EXTENSION_ORIGIN_POLICY 0x00020000
  601. #define EXTENSION_ORIGIN_ADMIN 0x00030000
  602. #define EXTENSION_ORIGIN_SERVER 0x00040000
  603. #define EXTENSION_ORIGIN_RENEWALCERT 0x00050000
  604. #define EXTENSION_ORIGIN_IMPORTEDCERT 0x00060000
  605. #define EXTENSION_ORIGIN_PKCS7 0x00070000
  606. #define EXTENSION_ORIGIN_CMC 0x00080000
  607. #define EXTENSION_ORIGIN_CACERT 0x00090000
  608. #define EXTENSION_ORIGIN_MASK 0x000f0000
  609. #define wszPROPEXTREQUESTID TEXT("ExtensionRequestId")
  610. #define wszPROPEXTNAME TEXT("ExtensionName")
  611. #define wszPROPEXTFLAGS TEXT("ExtensionFlags")
  612. #define wszPROPEXTRAWVALUE TEXT("ExtensionRawValue")
  613. #define wszPROPATTRIBREQUESTID TEXT("AttributeRequestId")
  614. #define wszPROPATTRIBNAME TEXT("AttributeName")
  615. #define wszPROPATTRIBVALUE TEXT("AttributeValue")
  616. #define wszPROPCRLROWID TEXT("CRLRowId")
  617. #define wszPROPCRLNUMBER TEXT("CRLNumber")
  618. #define wszPROPCRLMINBASE TEXT("CRLMinBase")
  619. #define wszPROPCRLNAMEID TEXT("CRLNameId")
  620. #define wszPROPCRLCOUNT TEXT("CRLCount")
  621. #define wszPROPCRLTHISUPDATE TEXT("CRLThisUpdate")
  622. #define wszPROPCRLNEXTUPDATE TEXT("CRLNextUpdate")
  623. #define wszPROPCRLTHISPUBLISH TEXT("CRLThisPublish")
  624. #define wszPROPCRLNEXTPUBLISH TEXT("CRLNextPublish")
  625. #define wszPROPCRLEFFECTIVE TEXT("CRLEffective")
  626. #define wszPROPCRLPROPAGATIONCOMPLETE TEXT("CRLPropagationComplete")
  627. #define wszPROPCRLLASTPUBLISHED TEXT("CRLLastPublished")
  628. #define wszPROPCRLPUBLISHATTEMPTS TEXT("CRLPublishAttempts")
  629. #define wszPROPCRLPUBLISHFLAGS TEXT("CRLPublishFlags")
  630. #define wszPROPCRLPUBLISHSTATUSCODE TEXT("CRLPublishStatusCode")
  631. #define wszPROPCRLPUBLISHERROR TEXT("CRLPublishError")
  632. #define wszPROPCRLRAWCRL TEXT("CRLRawCRL")
  633. #define CPF_BASE 0x00000001
  634. #define CPF_DELTA 0x00000002
  635. #define CPF_COMPLETE 0x00000004
  636. #define CPF_SHADOW 0x00000008
  637. #define CPF_CASTORE_ERROR 0x00000010
  638. #define CPF_BADURL_ERROR 0x00000020
  639. #define CPF_MANUAL 0x00000040
  640. #define CPF_SIGNATURE_ERROR 0x00000080
  641. #define CPF_LDAP_ERROR 0x00000100
  642. #define CPF_FILE_ERROR 0x00000200
  643. #define CPF_FTP_ERROR 0x00000400
  644. #define CPF_HTTP_ERROR 0x00000800
  645. #define PROPTYPE_LONG 0x00000001
  646. #define PROPTYPE_DATE 0x00000002
  647. #define PROPTYPE_BINARY 0x00000003
  648. #define PROPTYPE_STRING 0x00000004
  649. #define PROPTYPE_MASK 0x000000ff
  650. #define PROPCALLER_SERVER 0x00000100
  651. #define PROPCALLER_POLICY 0x00000200
  652. #define PROPCALLER_EXIT 0x00000300
  653. #define PROPCALLER_ADMIN 0x00000400
  654. #define PROPCALLER_REQUEST 0x00000500
  655. #define PROPCALLER_MASK 0x00000f00
  656. #define PROPFLAGS_INDEXED 0x00010000
  657. #define CR_FLG_FORCETELETEX 0x00000001
  658. #define CR_FLG_RENEWAL 0x00000002
  659. #define CR_FLG_FORCEUTF8 0x00000004
  660. #define CR_FLG_CAXCHGCERT 0x00000008
  661. #define CR_FLG_ENROLLONBEHALFOF 0x00000010
  662. #define CR_FLG_SUBJECTUNMODIFIED 0x00000020
  663. #define CR_FLG_VALIDENCRYPTEDKEYHASH 0x00000040
  664. #define CR_FLG_CACROSSCERT 0x00000080
  665. #define CR_FLG_ENFORCEUTF8 0x00000100
  666. #define CR_FLG_PUBLISHERROR 0x80000000
  667. #define DB_DISP_ACTIVE 8
  668. #define DB_DISP_PENDING 9
  669. #define DB_DISP_QUEUE_MAX 9
  670. #define DB_DISP_FOREIGN 12
  671. #define DB_DISP_CA_CERT 15
  672. #define DB_DISP_CA_CERT_CHAIN 16
  673. #define DB_DISP_KRA_CERT 17
  674. #define DB_DISP_LOG_MIN 20
  675. #define DB_DISP_ISSUED 20
  676. #define DB_DISP_REVOKED 21
  677. #define DB_DISP_LOG_FAILED_MIN 30
  678. #define DB_DISP_ERROR 30
  679. #define DB_DISP_DENIED 31
  680. #define VR_PENDING 0
  681. #define VR_INSTANT_OK 1
  682. #define VR_INSTANT_BAD 2
  683. #define wszCERT_TYPE L"RequestType"
  684. #define wszCERT_TYPE_CLIENT L"Client"
  685. #define wszCERT_TYPE_SERVER L"Server"
  686. #define wszCERT_TYPE_CODESIGN L"CodeSign"
  687. #define wszCERT_TYPE_CUSTOMER L"SetCustomer"
  688. #define wszCERT_TYPE_MERCHANT L"SetMerchant"
  689. #define wszCERT_TYPE_PAYMENT L"SetPayment"
  690. #define wszCERT_VERSION L"Version"
  691. #define wszCERT_VERSION_1 L"1"
  692. #define wszCERT_VERSION_2 L"2"
  693. #define wszCERT_VERSION_3 L"3"
  694. #endif