Author: tfaber
Date: Sun Jun 21 16:38:44 2015
New Revision: 68232

URL: http://svn.reactos.org/svn/reactos?rev=68232&view=rev
Log:
[RTL][NTDLL]
- Add basic implementations of RtlApplicationVerifierStop and 
RtlCopyMappedMemory for the benefit of some Windows dlls
CORE-9857 CORE-9858 #resolve

Added:
    trunk/reactos/lib/rtl/appverifier.c   (with props)
Modified:
    trunk/reactos/dll/ntdll/def/ntdll.spec
    trunk/reactos/lib/rtl/CMakeLists.txt
    trunk/reactos/lib/rtl/memstream.c

Modified: trunk/reactos/dll/ntdll/def/ntdll.spec
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/ntdll/def/ntdll.spec?rev=68232&r1=68231&r2=68232&view=diff
==============================================================================
--- trunk/reactos/dll/ntdll/def/ntdll.spec      [iso-8859-1] (original)
+++ trunk/reactos/dll/ntdll/def/ntdll.spec      [iso-8859-1] Sun Jun 21 
16:38:44 2015
@@ -467,7 +467,7 @@
 @ stdcall RtlAppendStringToString(ptr ptr)
 @ stdcall RtlAppendUnicodeStringToString(ptr ptr)
 @ stdcall RtlAppendUnicodeToString(ptr wstr)
-;@ stdcall RtlApplicationVerifierStop
+@ stdcall RtlApplicationVerifierStop(ptr str ptr str ptr str ptr str ptr str)
 @ stdcall RtlApplyRXact(ptr)
 @ stdcall RtlApplyRXactNoFlush(ptr)
 @ stdcall RtlAreAllAccessesGranted(long long)
@@ -506,7 +506,7 @@
 @ stdcall -arch=win32 -ret64 RtlConvertUlongToLargeInteger(long)
 @ stdcall RtlCopyLuid(ptr ptr)
 @ stdcall RtlCopyLuidAndAttributesArray(long ptr ptr)
-;@ stdcall RtlCopyMappedMemory
+@ stdcall RtlCopyMappedMemory(ptr ptr long)
 @ stdcall RtlCopyMemoryStreamTo(ptr ptr int64 ptr ptr)
 @ stdcall RtlCopyOutOfProcessMemoryStreamTo(ptr ptr int64 ptr ptr) 
RtlCopyMemoryStreamTo
 @ stdcall RtlCopySecurityDescriptor(ptr ptr)

Modified: trunk/reactos/lib/rtl/CMakeLists.txt
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/CMakeLists.txt?rev=68232&r1=68231&r2=68232&view=diff
==============================================================================
--- trunk/reactos/lib/rtl/CMakeLists.txt        [iso-8859-1] (original)
+++ trunk/reactos/lib/rtl/CMakeLists.txt        [iso-8859-1] Sun Jun 21 
16:38:44 2015
@@ -9,6 +9,7 @@
     access.c
     acl.c
     actctx.c
+    appverifier.c
     assert.c
     atom.c
     avltable.c

Added: trunk/reactos/lib/rtl/appverifier.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/appverifier.c?rev=68232
==============================================================================
--- trunk/reactos/lib/rtl/appverifier.c (added)
+++ trunk/reactos/lib/rtl/appverifier.c [iso-8859-1] Sun Jun 21 16:38:44 2015
@@ -0,0 +1,46 @@
+/*
+ * PROJECT:         ReactOS Runtime Library
+ * LICENSE:         BSD - See COPYING.ARM in the top level directory
+ * FILE:            lib/rtl/appverifier.c
+ * PURPOSE:         RTL Application Verifier Routines
+ * PROGRAMMERS:     Thomas Faber <[email protected]>
+ */
+
+/* INCLUDES *****************************************************************/
+
+#include <rtl.h>
+
+#define NDEBUG
+#include <debug.h>
+
+/* FUNCTIONS ***************************************************************/
+
+/*
+ * @implemented
+ */
+VOID
+NTAPI
+RtlApplicationVerifierStop(
+    _In_ ULONG_PTR Code,
+    _In_ PCSTR Message,
+    _In_ PVOID Value1,
+    _In_ PCSTR Description1,
+    _In_ PVOID Value2,
+    _In_ PCSTR Description2,
+    _In_ PVOID Value3,
+    _In_ PCSTR Description3,
+    _In_ PVOID Value4,
+    _In_ PCSTR Description4)
+{
+    PTEB Teb = NtCurrentTeb();
+
+    DbgPrint("**************************************************\n");
+    DbgPrint("VERIFIER STOP %08Ix: pid %04Ix:  %s\n",
+             Code, (ULONG_PTR)Teb->ClientId.UniqueProcess, Message);
+    DbgPrint("    %p : %s\n", Value1, Description1);
+    DbgPrint("    %p : %s\n", Value2, Description2);
+    DbgPrint("    %p : %s\n", Value3, Description3);
+    DbgPrint("    %p : %s\n", Value4, Description4);
+    DbgPrint("**************************************************\n");
+    DbgBreakPoint();
+}

Propchange: trunk/reactos/lib/rtl/appverifier.c
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/lib/rtl/memstream.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/memstream.c?rev=68232&r1=68231&r2=68232&view=diff
==============================================================================
--- trunk/reactos/lib/rtl/memstream.c   [iso-8859-1] (original)
+++ trunk/reactos/lib/rtl/memstream.c   [iso-8859-1] Sun Jun 21 16:38:44 2015
@@ -1,7 +1,7 @@
 /*
  * COPYRIGHT:       See COPYING in the top level directory
  * PROJECT:         ReactOS system libraries
- * FILE:            lib/rtl/mem.c
+ * FILE:            lib/rtl/memstream.c
  * PURPOSE:         MemoryStream functions
  * PROGRAMMER:      David Quintana ([email protected])
  */
@@ -465,3 +465,17 @@
 
     return E_NOTIMPL;
 }
+
+/*
+ * @implemented
+ */
+VOID
+NTAPI
+RtlCopyMappedMemory(
+    _Out_ PVOID Destination,
+    _In_ const VOID *Source,
+    _In_ SIZE_T Size)
+{
+    /* FIXME: This is supposed to handle STATUS_IN_PAGE_ERROR exceptions */
+    RtlCopyMemory(Destination, Source, Size);
+}


Reply via email to