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.

137 lines
3.2 KiB

  1. //+-----------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (c) Microsoft Corporation 2000
  6. //
  7. // File: LsaAp.h
  8. //
  9. // Contents: prototypes for export functions
  10. //
  11. //
  12. // History: KDamour 15Mar00 Created (based on NTLM)
  13. //
  14. //------------------------------------------------------------------------
  15. #ifndef NTDIGEST_LSAAP_H
  16. #define NTDIGEST_LSAAP_H
  17. #include <samrpc.h>
  18. #include <samisrv.h>
  19. ///////////////////////////////////////////////////////////////////////
  20. // //
  21. // Authentication package dispatch routine definitions //
  22. // //
  23. ///////////////////////////////////////////////////////////////////////
  24. NTSTATUS
  25. LsaApInitializePackage(
  26. IN ULONG AuthenticationPackageId,
  27. IN PLSA_DISPATCH_TABLE LsaDispatchTable,
  28. IN PSTRING Database OPTIONAL,
  29. IN PSTRING Confidentiality OPTIONAL,
  30. OUT PSTRING *AuthenticationPackageName
  31. );
  32. NTSTATUS
  33. LsaApLogonUser(
  34. IN PLSA_CLIENT_REQUEST ClientRequest,
  35. IN SECURITY_LOGON_TYPE LogonType,
  36. IN PVOID AuthenticationInformation,
  37. IN PVOID ClientAuthenticationBase,
  38. IN ULONG AuthenticationInformationLength,
  39. OUT PVOID *ProfileBuffer,
  40. OUT PULONG ProfileBufferSize,
  41. OUT PLUID LogonId,
  42. OUT PNTSTATUS SubStatus,
  43. OUT PLSA_TOKEN_INFORMATION_TYPE TokenInformationType,
  44. OUT PVOID *TokenInformation,
  45. OUT PUNICODE_STRING *AccountName,
  46. OUT PUNICODE_STRING *AuthenticatingAuthority
  47. );
  48. NTSTATUS
  49. LsaApCallPackage(
  50. IN PLSA_CLIENT_REQUEST ClientRequest,
  51. IN PVOID ProtocolSubmitBuffer,
  52. IN PVOID ClientBufferBase,
  53. IN ULONG SubmitBufferSize,
  54. OUT PVOID *ProtocolReturnBuffer,
  55. OUT PULONG ReturnBufferSize,
  56. OUT PNTSTATUS ProtocolStatus
  57. );
  58. NTSTATUS
  59. LsaApCallPackagePassthrough(
  60. IN PLSA_CLIENT_REQUEST ClientRequest,
  61. IN PVOID ProtocolSubmitBuffer,
  62. IN PVOID ClientBufferBase,
  63. IN ULONG SubmitBufferSize,
  64. OUT PVOID *ProtocolReturnBuffer,
  65. OUT PULONG ReturnBufferSize,
  66. OUT PNTSTATUS ProtocolStatus
  67. );
  68. VOID
  69. LsaApLogonTerminated(
  70. IN PLUID LogonId
  71. );
  72. NTSTATUS
  73. DigestGetPasswd(
  74. IN SAMPR_HANDLE UserHandle,
  75. IN PDIGEST_PARAMETER pDigest,
  76. IN PUSER_CREDENTIALS pUserCreds
  77. );
  78. NTSTATUS
  79. DigestOpenSamUser(
  80. IN PDIGEST_PARAMETER pDigest,
  81. OUT SAMPR_HANDLE *ppUserHandle,
  82. OUT PUCHAR * ppucUserAuthData,
  83. OUT PULONG pulAuthDataSize
  84. );
  85. NTSTATUS
  86. DigestCloseSamUser(
  87. IN SAMPR_HANDLE UserHandle);
  88. NTSTATUS
  89. DigestUpdateLogonStatistics(
  90. IN SAM_HANDLE UserHandle,
  91. IN PSAM_LOGON_STATISTICS LogonStats);
  92. NTSTATUS
  93. DigestOpenSam(void);
  94. NTSTATUS
  95. DigestCloseSam(void);
  96. BOOL
  97. DigestCompareDomainNames(
  98. IN PUNICODE_STRING String,
  99. IN PUNICODE_STRING AmbiguousName,
  100. IN PUNICODE_STRING FlatName OPTIONAL
  101. );
  102. NTSTATUS
  103. DigestCheckPacForSidFiltering(
  104. IN PDIGEST_PARAMETER pDigest,
  105. IN OUT PUCHAR *PacData,
  106. IN OUT PULONG PacSize
  107. );
  108. PVOID
  109. MIDL_user_allocate(
  110. IN size_t BufferSize
  111. );
  112. VOID
  113. MIDL_user_free(
  114. IN PVOID Buffer
  115. );
  116. #endif // NTDIGEST_LSAAP_H