From: Ake Rehnman ake.rehnman@gmail.com
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/kernelbase/security.c | 2 +- dlls/ntdll/sec.c | 17 +++-------------- include/winternl.h | 2 +- 3 files changed, 5 insertions(+), 16 deletions(-)
diff --git a/dlls/kernelbase/security.c b/dlls/kernelbase/security.c index 04898f81b06..851cc98587d 100644 --- a/dlls/kernelbase/security.c +++ b/dlls/kernelbase/security.c @@ -411,7 +411,7 @@ BOOL WINAPI GetWindowsAccountDomainSid( PSID sid, PSID domain_sid, DWORD *size ) */ BOOL WINAPI InitializeSid ( PSID sid, PSID_IDENTIFIER_AUTHORITY auth, BYTE count ) { - return RtlInitializeSid( sid, auth, count ); + return set_ntstatus(RtlInitializeSid( sid, auth, count )); }
/****************************************************************************** diff --git a/dlls/ntdll/sec.c b/dlls/ntdll/sec.c index 51308384ee8..98afc4edd3d 100644 --- a/dlls/ntdll/sec.c +++ b/dlls/ntdll/sec.c @@ -294,19 +294,8 @@ DWORD WINAPI RtlLengthSid(PSID pSid)
/************************************************************************** * RtlInitializeSid [NTDLL.@] - * - * Initialise a SID. - * - * PARAMS - * pSid [I] SID to initialise - * pIdentifierAuthority [I] Identifier Authority - * nSubAuthorityCount [I] Number of Sub Authorities - * - * RETURNS - * Success: TRUE. pSid is initialised with the details given. - * Failure: FALSE, if nSubAuthorityCount is >= SID_MAX_SUB_AUTHORITIES. */ -BOOL WINAPI RtlInitializeSid( +NTSTATUS WINAPI RtlInitializeSid( PSID pSid, PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount) @@ -315,7 +304,7 @@ BOOL WINAPI RtlInitializeSid( SID* pisid=pSid;
if (nSubAuthorityCount >= SID_MAX_SUB_AUTHORITIES) - return FALSE; + return STATUS_INVALID_PARAMETER;
pisid->Revision = SID_REVISION; pisid->SubAuthorityCount = nSubAuthorityCount; @@ -325,7 +314,7 @@ BOOL WINAPI RtlInitializeSid( for (i = 0; i < nSubAuthorityCount; i++) *RtlSubAuthoritySid(pSid, i) = 0;
- return TRUE; + return STATUS_SUCCESS; }
/************************************************************************** diff --git a/include/winternl.h b/include/winternl.h index dfdb8f23ec6..43ffcb3b704 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -4607,7 +4607,7 @@ NTSYSAPI NTSTATUS WINAPI RtlInitializeExtendedContext2(void*,ULONG,CONTEXT_EX** NTSYSAPI void WINAPI RtlInitializeHandleTable(ULONG,ULONG,RTL_HANDLE_TABLE *); NTSYSAPI void WINAPI RtlInitializeResource(LPRTL_RWLOCK); NTSYSAPI void WINAPI RtlInitializeSRWLock(RTL_SRWLOCK*); -NTSYSAPI BOOL WINAPI RtlInitializeSid(PSID,PSID_IDENTIFIER_AUTHORITY,BYTE); +NTSYSAPI NTSTATUS WINAPI RtlInitializeSid(PSID,PSID_IDENTIFIER_AUTHORITY,BYTE); NTSYSAPI NTSTATUS WINAPI RtlInt64ToUnicodeString(ULONGLONG,ULONG,UNICODE_STRING *); NTSYSAPI NTSTATUS WINAPI RtlIntegerToChar(ULONG,ULONG,ULONG,PCHAR); NTSYSAPI NTSTATUS WINAPI RtlIntegerToUnicodeString(ULONG,ULONG,UNICODE_STRING *);