* PROGRAMMERS: Eric Kohl
*/
+#ifndef _SAMSRV_PCH_
+#define _SAMSRV_PCH_
+
#include <stdio.h>
#include <stdlib.h>
-#include <limits.h>
+
#define WIN32_NO_STATUS
#define _INC_WINDOWS
#define COM_NO_WINDOWS_H
+
#include <windef.h>
#include <winbase.h>
#include <winreg.h>
-#include <winuser.h>
#define NTOS_MODE_USER
-#include <ndk/cmfuncs.h>
#include <ndk/kefuncs.h>
#include <ndk/obfuncs.h>
#include <ndk/rtlfuncs.h>
#include <ddk/ntsam.h>
-#include <ntsecapi.h>
#include <sddl.h>
-
-#include <samsrv/samsrv.h>
-
#include <sam_s.h>
#include <wine/debug.h>
-
-#include "resources.h"
+WINE_DEFAULT_DEBUG_CHANNEL(samsrv);
typedef enum _SAM_DB_OBJECT_TYPE
{
SampRemoveMemberFromAllAliases(IN PSAM_DB_OBJECT DomainObject,
IN PRPC_SID MemberSid);
+NTSTATUS
+SampCreateAccountSid(IN PSAM_DB_OBJECT DomainObject,
+ IN ULONG ulRelativeId,
+ IN OUT PSID *AccountSid);
/* group.h */
SampCreateGroupSD(OUT PSECURITY_DESCRIPTOR *GroupSd,
OUT PULONG Size);
+NTSTATUS
+SampCreateUserSD(IN PSID UserSid,
+ OUT PSECURITY_DESCRIPTOR *UserSd,
+ OUT PULONG Size);
/* setup.c */
NTSTATUS
SampRemoveUserFromAllGroups(IN PSAM_DB_OBJECT UserObject);
+NTSTATUS
+SampRemoveUserFromAllAliases(IN PSAM_DB_OBJECT UserObject);
+
NTSTATUS
SampSetUserPassword(IN PSAM_DB_OBJECT UserObject,
IN PENCRYPTED_NT_OWF_PASSWORD NtPassword,
IN BOOLEAN LmPasswordPresent);
NTSTATUS
-SampGetLogonHoursAttrbute(IN PSAM_DB_OBJECT UserObject,
- IN OUT PSAMPR_LOGON_HOURS LogonHours);
+SampGetLogonHoursAttribute(IN PSAM_DB_OBJECT UserObject,
+ IN OUT PSAMPR_LOGON_HOURS LogonHours);
NTSTATUS
-SampSetLogonHoursAttrbute(IN PSAM_DB_OBJECT UserObject,
- IN PSAMPR_LOGON_HOURS LogonHours);
+SampSetLogonHoursAttribute(IN PSAM_DB_OBJECT UserObject,
+ IN PSAMPR_LOGON_HOURS LogonHours);
/* utils.c */
SystemFunction007(PUNICODE_STRING string,
LPBYTE hash);
-/* EOF */
+NTSTATUS
+WINAPI
+SystemFunction013(const BYTE *in,
+ const BYTE *key,
+ LPBYTE out);
+
+#endif /* _SAMSRV_PCH_ */