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.

106 lines
3.0 KiB

  1. //--------------------------------------------------------------
  2. // Copyright (C) Microsoft Corporation, 1996 - 1999
  3. //
  4. // File: buildctl.h
  5. //
  6. // Contents: The private include file buildCTL wizard
  7. //
  8. // History: 10-11-1997 xiaohs created
  9. //
  10. //--------------------------------------------------------------
  11. #ifndef BUILDCTL_H
  12. #define BUILDCTL_H
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. #include "sipguids.h"
  17. #define BUILDCTL_DURATION_SIZE 33
  18. //-----------------------------------------------------------------------
  19. // CERT_BUILDCTL_INFO
  20. //
  21. //
  22. // This struct contains everything you will ever need to the make CTL
  23. // wizard
  24. //------------------------------------------------------------------------
  25. typedef struct _CERT_BUILDCTL_INFO
  26. {
  27. HWND hwndParent;
  28. DWORD dwFlag;
  29. HFONT hBigBold;
  30. HFONT hBold;
  31. PCCTL_CONTEXT pSrcCTL;
  32. BOOL fKnownDes;
  33. LPWSTR pwszFileName;
  34. BOOL fFreeFileName;
  35. BOOL fSelectedFileName;
  36. HCERTSTORE hDesStore;
  37. BOOL fFreeDesStore;
  38. BOOL fSelectedDesStore;
  39. BOOL fCompleteInit;
  40. DWORD dwPurposeCount;
  41. ENROLL_PURPOSE_INFO **prgPurpose;
  42. DWORD dwCertCount;
  43. PCCERT_CONTEXT *prgCertContext;
  44. LPWSTR pwszFriendlyName;
  45. LPWSTR pwszDescription;
  46. LPWSTR pwszListID;
  47. FILETIME *pNextUpdate;
  48. DWORD dwValidMonths;
  49. DWORD dwValidDays;
  50. BOOL fClearCerts;
  51. DWORD dwHashPropID;
  52. LPSTR pszSubjectAlgorithm;
  53. CRYPTUI_WIZ_GET_SIGN_PAGE_INFO *pGetSignInfo;
  54. DWORD rgdwSortParam[4]; //keep the sorting param for the columns
  55. }CERT_BUILDCTL_INFO;
  56. typedef struct _CERT_STORE_LIST
  57. {
  58. DWORD dwStoreCount;
  59. HCERTSTORE *prgStore;
  60. }CERT_STORE_LIST;
  61. typedef struct _CERT_SEL_LIST
  62. {
  63. HWND hwndDlg;
  64. CERT_BUILDCTL_INFO *pCertBuildCTLInfo;
  65. }CERT_SEL_LIST;
  66. BOOL I_BuildCTL(CERT_BUILDCTL_INFO *pCertBuildCTLInfo,
  67. UINT *pIDS,
  68. BYTE **ppbEncodedCTL,
  69. DWORD *pcbEncodedCTL);
  70. LPWSTR WizardAllocAndCopyWStr(LPWSTR pwsz);
  71. BOOL ValidString(CRYPT_DATA_BLOB *pDataBlob);
  72. void AddDurationToFileTime(DWORD dwValidMonths,
  73. DWORD dwValidDays,
  74. FILETIME *pCurrentFileTime,
  75. FILETIME *pNextFileTime);
  76. void SubstractDurationFromFileTime(
  77. FILETIME *pNextUpdateTime,
  78. FILETIME *pCurrentTime,
  79. DWORD *pdwValidMonths,
  80. DWORD *pdwValidDays);
  81. BOOL ValidZero(LPWSTR pwszInput);
  82. #ifdef __cplusplus
  83. } // Balance extern "C" above
  84. #endif
  85. #endif //BUILDCTL_H