Source code of Windows XP (NT5)
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
1.7 KiB

  1. /*++
  2. Copyright (c) 1997-1999 Microsoft Corporation
  3. Module Name:
  4. efssrv.hxx
  5. Abstract:
  6. EFS (Encrypting File System) function prototypes.
  7. Author:
  8. Robert Reichel (RobertRe)
  9. Robert Gu (RobertG)
  10. Environment:
  11. Revision History:
  12. --*/
  13. #ifndef _USERKEY_
  14. #define _USERKEY_
  15. #ifdef __cplusplus
  16. extern "C" {
  17. #endif
  18. //
  19. // Exported functions
  20. //
  21. LONG
  22. GetCurrentKey(
  23. IN PEFS_USER_INFO pEfsUserInfo,
  24. OUT HCRYPTKEY * hKey OPTIONAL,
  25. OUT HCRYPTPROV * hProv OPTIONAL,
  26. OUT LPWSTR * ContainerName,
  27. OUT LPWSTR * ProviderName,
  28. OUT PDWORD ProviderType,
  29. OUT LPWSTR * DisplayInfo,
  30. OUT PBYTE * pbHash,
  31. OUT PDWORD cbHash
  32. );
  33. BOOL
  34. CreateCertFromKey(
  35. IN LPWSTR ContainerName,
  36. IN LPWSTR ProviderName,
  37. IN BOOLEAN RecoveryKey,
  38. OUT PBYTE * pbHash OPTIONAL,
  39. OUT PDWORD cbHash OPTIONAL,
  40. OUT PBYTE * pbReturnCert OPTIONAL,
  41. OUT PDWORD cbReturnCert OPTIONAL,
  42. OUT LPWSTR * DisplayInfo OPTIONAL
  43. );
  44. DWORD
  45. GetKeyInfoFromCertHash(
  46. IN OUT PEFS_USER_INFO pEfsUserInfo,
  47. IN PBYTE pbHash,
  48. IN DWORD cbHash,
  49. OUT HCRYPTKEY * hKey,
  50. OUT HCRYPTPROV * hProv,
  51. OUT LPWSTR * ContainerName,
  52. OUT LPWSTR * ProviderName,
  53. OUT LPWSTR * DisplayInfo,
  54. OUT PBOOLEAN pbIsValid OPTIONAL
  55. );
  56. BOOLEAN
  57. CurrentHashOK(
  58. IN PEFS_USER_INFO pEfsUserInfo,
  59. IN PBYTE pbHash,
  60. IN DWORD cbHash,
  61. OUT DWORD *dFlag
  62. );
  63. DWORD
  64. GetCurrentHash(
  65. IN PEFS_USER_INFO pEfsUserInfo,
  66. OUT PBYTE *pbHash,
  67. OUT DWORD *cbHash
  68. );
  69. #ifdef __cplusplus
  70. } // extern C
  71. #endif
  72. #endif // _USERKEY_