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.

94 lines
2.0 KiB

  1. //+--------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996 - 1999
  5. //
  6. // File: cscom.h
  7. //
  8. // Contents: Cert Server Policy & Exit module callouts
  9. //
  10. //---------------------------------------------------------------------------
  11. #include "certdb.h"
  12. HRESULT ComInit(VOID);
  13. // Releases all Policy/Exit modules
  14. VOID ComShutDown(VOID);
  15. HRESULT
  16. PolicyInit(
  17. IN WCHAR const *pwszConfig,
  18. IN WCHAR const *pwszSanitizedName);
  19. HRESULT
  20. PolicyVerifyRequest(
  21. IN WCHAR const *pwszConfig,
  22. IN LONG RequestId,
  23. IN LONG Flags,
  24. IN BOOL fNewRequest,
  25. OPTIONAL IN CERTSRV_RESULT_CONTEXT const *pResult,
  26. IN DWORD dwComContextIndex,
  27. OUT LPWSTR *pwszDispositionMessage, // LocalAlloced.
  28. OUT DWORD *pVerifyStatus); // VR_PENDING || VR_INSTANT_OK || VR_INSTANT_BAD
  29. extern BOOL g_fEnablePolicy;
  30. HRESULT
  31. ExitInit(
  32. IN WCHAR const *pwszConfig,
  33. IN WCHAR const *pwszSanitizedName);
  34. HRESULT
  35. ExitNotify(
  36. IN LONG Event,
  37. IN LONG RequestId,
  38. OPTIONAL IN CERTSRV_RESULT_CONTEXT const *pResult,
  39. IN DWORD dwComContextIndex); //MAXDWORD means no context
  40. BSTR
  41. ExitGetDescription(
  42. IN DWORD iExitMod);
  43. extern BOOL g_fEnableExit;
  44. HRESULT
  45. ComVerifyRequestContext(
  46. IN BOOL fAllowZero,
  47. IN DWORD Flags,
  48. IN LONG Context,
  49. OUT DWORD *pRequestId);
  50. HRESULT
  51. ComGetClientInfo(
  52. IN LONG Context,
  53. IN DWORD dwComContextIndex,
  54. OUT CERTSRV_COM_CONTEXT **ppComContext);
  55. BOOL
  56. ComParseErrorPrefix(
  57. OPTIONAL IN WCHAR const *pwszIn,
  58. OUT HRESULT *phrPrefix,
  59. OUT WCHAR const **ppwszOut);
  60. HRESULT
  61. RegisterComContext(
  62. IN CERTSRV_COM_CONTEXT *pComContext,
  63. IN OUT DWORD *pdwIndex);
  64. VOID
  65. UnregisterComContext(
  66. IN CERTSRV_COM_CONTEXT *pComContext,
  67. IN DWORD dwIndex);
  68. VOID
  69. ReleaseComContext(
  70. IN CERTSRV_COM_CONTEXT *pComContext);
  71. CERTSRV_COM_CONTEXT*
  72. GetComContextFromIndex(
  73. IN DWORD dwIndex);