Implement RtlValidRelativeSecurityDescriptor. Take 2.

Dmitry Timoshkov dmitry at baikal.ru
Sun Oct 11 22:21:30 CDT 2015


With a FIXME() this time.

Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
---
 dlls/ntdll/ntdll.spec |  2 +-
 dlls/ntdll/sec.c      | 10 ++++++++++
 include/winternl.h    |  1 +
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index ca3561d..1e68ef3 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -936,7 +936,7 @@
 @ stub RtlUsageHeap
 @ cdecl -i386 -norelay RtlUshortByteSwap() NTDLL_RtlUshortByteSwap
 @ stdcall RtlValidAcl(ptr)
-# @ stub RtlValidRelativeSecurityDescriptor
+@ stdcall RtlValidRelativeSecurityDescriptor(ptr long long)
 @ stdcall RtlValidSecurityDescriptor(ptr)
 @ stdcall RtlValidSid(ptr)
 @ stdcall RtlValidateHeap(long long ptr)
diff --git a/dlls/ntdll/sec.c b/dlls/ntdll/sec.c
index 360a579..125c86e 100644
--- a/dlls/ntdll/sec.c
+++ b/dlls/ntdll/sec.c
@@ -558,6 +558,16 @@ NTSTATUS WINAPI RtlValidSecurityDescriptor(
 }
 
 /**************************************************************************
+ * RtlValidRelativeSecurityDescriptor		[NTDLL.@]
+ */
+BOOLEAN WINAPI RtlValidRelativeSecurityDescriptor(PSECURITY_DESCRIPTOR descriptor,
+    ULONG length, SECURITY_INFORMATION info)
+{
+    FIXME("%p,%u,%d: semi-stub\n", descriptor, length, info);
+    return RtlValidSecurityDescriptor(descriptor) == STATUS_SUCCESS;
+}
+
+/**************************************************************************
  *  RtlLengthSecurityDescriptor			[NTDLL.@]
  */
 ULONG WINAPI RtlLengthSecurityDescriptor(
diff --git a/include/winternl.h b/include/winternl.h
index 3e64b4d..8d7eb72 100644
--- a/include/winternl.h
+++ b/include/winternl.h
@@ -2600,6 +2600,7 @@ NTSYSAPI NTSTATUS  WINAPI RtlUpdateTimer(HANDLE, HANDLE, DWORD, DWORD);
 NTSYSAPI CHAR      WINAPI RtlUpperChar(CHAR);
 NTSYSAPI void      WINAPI RtlUpperString(STRING *,const STRING *);
 NTSYSAPI NTSTATUS  WINAPI RtlValidSecurityDescriptor(PSECURITY_DESCRIPTOR);
+NTSYSAPI BOOLEAN   WINAPI RtlValidRelativeSecurityDescriptor(PSECURITY_DESCRIPTOR,ULONG,SECURITY_INFORMATION);
 NTSYSAPI BOOLEAN   WINAPI RtlValidAcl(PACL);
 NTSYSAPI BOOLEAN   WINAPI RtlValidSid(PSID);
 NTSYSAPI BOOLEAN   WINAPI RtlValidateHeap(HANDLE,ULONG,LPCVOID);
-- 
2.6.0




More information about the wine-patches mailing list