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.

213 lines
4.3 KiB

  1. #include "dspch.h"
  2. #pragma hdrstop
  3. #include <sspi.h>
  4. #define SEC_ENTRY __stdcall
  5. #define EXTENDED_NAME_FORMAT DWORD
  6. #define PLSA_STRING PVOID
  7. #define SECURITY_LOGON_TYPE DWORD
  8. #define POLICY_NOTIFICATION_INFORMATION_CLASS DWORD
  9. #define PLSA_OPERATIONAL_MODE PULONG
  10. static
  11. BOOLEAN
  12. SEC_ENTRY
  13. GetUserNameExA(
  14. EXTENDED_NAME_FORMAT NameFormat,
  15. LPSTR lpNameBuffer,
  16. PULONG nSize
  17. )
  18. {
  19. return FALSE;
  20. }
  21. static
  22. BOOLEAN
  23. SEC_ENTRY
  24. GetUserNameExW(
  25. EXTENDED_NAME_FORMAT NameFormat,
  26. LPWSTR lpNameBuffer,
  27. PULONG nSize
  28. )
  29. {
  30. return FALSE;
  31. }
  32. static
  33. NTSTATUS
  34. NTAPI
  35. LsaCallAuthenticationPackage(
  36. IN HANDLE LsaHandle,
  37. IN ULONG AuthenticationPackage,
  38. IN PVOID ProtocolSubmitBuffer,
  39. IN ULONG SubmitBufferLength,
  40. OUT PVOID *ProtocolReturnBuffer,
  41. OUT PULONG ReturnBufferLength,
  42. OUT PNTSTATUS ProtocolStatus
  43. )
  44. {
  45. return STATUS_PROCEDURE_NOT_FOUND;
  46. }
  47. static
  48. NTSTATUS
  49. NTAPI
  50. LsaConnectUntrusted (
  51. OUT PHANDLE LsaHandle
  52. )
  53. {
  54. return STATUS_PROCEDURE_NOT_FOUND;
  55. }
  56. static
  57. NTSTATUS
  58. NTAPI
  59. LsaDeregisterLogonProcess (
  60. IN HANDLE LsaHandle
  61. )
  62. {
  63. return STATUS_PROCEDURE_NOT_FOUND;
  64. }
  65. static
  66. NTSTATUS
  67. NTAPI
  68. LsaFreeReturnBuffer (
  69. IN PVOID Buffer
  70. )
  71. {
  72. return STATUS_PROCEDURE_NOT_FOUND;
  73. }
  74. static
  75. NTSTATUS
  76. NTAPI
  77. LsaLogonUser (
  78. IN HANDLE LsaHandle,
  79. IN PLSA_STRING OriginName,
  80. IN SECURITY_LOGON_TYPE LogonType,
  81. IN ULONG AuthenticationPackage,
  82. IN PVOID AuthenticationInformation,
  83. IN ULONG AuthenticationInformationLength,
  84. IN PTOKEN_GROUPS LocalGroups OPTIONAL,
  85. IN PTOKEN_SOURCE SourceContext,
  86. OUT PVOID *ProfileBuffer,
  87. OUT PULONG ProfileBufferLength,
  88. OUT PLUID LogonId,
  89. OUT PHANDLE Token,
  90. OUT PQUOTA_LIMITS Quotas,
  91. OUT PNTSTATUS SubStatus
  92. )
  93. {
  94. return STATUS_PROCEDURE_NOT_FOUND;
  95. }
  96. static
  97. NTSTATUS
  98. NTAPI
  99. LsaLookupAuthenticationPackage (
  100. IN HANDLE LsaHandle,
  101. IN PLSA_STRING PackageName,
  102. OUT PULONG AuthenticationPackage
  103. )
  104. {
  105. return STATUS_PROCEDURE_NOT_FOUND;
  106. }
  107. static
  108. NTSTATUS
  109. NTAPI
  110. LsaRegisterLogonProcess (
  111. IN PLSA_STRING LogonProcessName,
  112. OUT PHANDLE LsaHandle,
  113. OUT PLSA_OPERATIONAL_MODE SecurityMode
  114. )
  115. {
  116. return STATUS_PROCEDURE_NOT_FOUND;
  117. }
  118. static
  119. NTSTATUS
  120. NTAPI
  121. LsaRegisterPolicyChangeNotification(
  122. IN POLICY_NOTIFICATION_INFORMATION_CLASS InformationClass,
  123. IN HANDLE NotificationEventHandle
  124. )
  125. {
  126. return STATUS_PROCEDURE_NOT_FOUND;
  127. }
  128. static
  129. NTSTATUS
  130. NTAPI
  131. LsaUnregisterPolicyChangeNotification(
  132. IN POLICY_NOTIFICATION_INFORMATION_CLASS InformationClass,
  133. IN HANDLE NotificationEventHandle
  134. )
  135. {
  136. return STATUS_PROCEDURE_NOT_FOUND;
  137. }
  138. static
  139. SECURITY_STATUS
  140. SEC_ENTRY
  141. QueryContextAttributesW(
  142. PCtxtHandle phContext, // Context to query
  143. unsigned long ulAttribute, // Attribute to query
  144. void SEC_FAR * pBuffer // Buffer for attributes
  145. )
  146. {
  147. return STATUS_PROCEDURE_NOT_FOUND;
  148. }
  149. static
  150. SECURITY_STATUS
  151. SEC_ENTRY
  152. SetContextAttributesW(
  153. PCtxtHandle phContext, // Context to Set
  154. unsigned long ulAttribute, // Attribute to Set
  155. void SEC_FAR * pBuffer, // Buffer for attributes
  156. unsigned long cbBuffer // Size (in bytes) of pBuffer
  157. )
  158. {
  159. return STATUS_PROCEDURE_NOT_FOUND;
  160. }
  161. static
  162. BOOLEAN
  163. SEC_ENTRY
  164. TranslateNameW(
  165. LPCWSTR lpAccountName,
  166. EXTENDED_NAME_FORMAT AccountNameFormat,
  167. EXTENDED_NAME_FORMAT DesiredNameFormat,
  168. LPWSTR lpTranslatedName,
  169. PULONG nSize
  170. )
  171. {
  172. return FALSE;
  173. }
  174. //
  175. // !! WARNING !! The entries below must be in alphabetical order, and are CASE SENSITIVE (eg lower case comes last!)
  176. //
  177. DEFINE_PROCNAME_ENTRIES(secur32)
  178. {
  179. DLPENTRY(GetUserNameExA)
  180. DLPENTRY(GetUserNameExW)
  181. DLPENTRY(LsaCallAuthenticationPackage)
  182. DLPENTRY(LsaConnectUntrusted)
  183. DLPENTRY(LsaDeregisterLogonProcess)
  184. DLPENTRY(LsaFreeReturnBuffer)
  185. DLPENTRY(LsaLogonUser)
  186. DLPENTRY(LsaLookupAuthenticationPackage)
  187. DLPENTRY(LsaRegisterLogonProcess)
  188. DLPENTRY(LsaRegisterPolicyChangeNotification)
  189. DLPENTRY(LsaUnregisterPolicyChangeNotification)
  190. DLPENTRY(QueryContextAttributesW)
  191. DLPENTRY(SetContextAttributesW)
  192. DLPENTRY(TranslateNameW)
  193. };
  194. DEFINE_PROCNAME_MAP(secur32)