[Wine-patches] [eterhack] [0005/0021] ntoskrnl.exe: Add semi-stub implementation of Io{Allocate, Write}ErrorLogEntry.

Alexander Morozov =?iso-8859-1?q?amorozov_=CE=C1_etersoft=2Eru?=
Ср Янв 28 21:10:02 MSK 2009


---
 dlls/ntoskrnl.exe/ntoskrnl.c        |   21 +++++++++++++++++++++
 dlls/ntoskrnl.exe/ntoskrnl.exe.spec |    4 ++--
 include/ddk/wdm.h                   |    2 ++
 3 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index 78f7f23..3122911 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -713,6 +713,27 @@ PVOID WINAPI IoGetDriverObjectExtension( PDRIVER_OBJECT DriverObject,
     return ext_ptr;
 }
 
+
+/***********************************************************************
+ *           IoAllocateErrorLogEntry  (NTOSKRNL.EXE.@)
+ */
+PVOID WINAPI IoAllocateErrorLogEntry( PVOID IoObject, UCHAR EntrySize )
+{
+    FIXME( "%p, %u\n", IoObject, EntrySize );
+    return ExAllocatePool( NonPagedPool, EntrySize );
+}
+
+
+/***********************************************************************
+ *           IoWriteErrorLogEntry  (NTOSKRNL.EXE.@)
+ */
+void WINAPI IoWriteErrorLogEntry( PVOID ElEntry )
+{
+    FIXME( "%p\n", ElEntry );
+    ExFreePool( ElEntry );
+}
+
+
 /***********************************************************************
  *           IoInitializeIrp  (NTOSKRNL.EXE.@)
  */
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
index bdfcb47..d49a1d9 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
@@ -310,7 +310,7 @@
 @ stub IoAllocateAdapterChannel
 @ stub IoAllocateController
 @ stdcall IoAllocateDriverObjectExtension(ptr ptr long ptr)
-@ stub IoAllocateErrorLogEntry
+@ stdcall IoAllocateErrorLogEntry(ptr long)
 @ stdcall IoAllocateIrp(long long)
 @ stdcall IoAllocateMdl(ptr long long long ptr)
 @ stdcall IoAllocateWorkItem(ptr)
@@ -491,7 +491,7 @@
 @ stub IoWMISetSingleItem
 @ stub IoWMISuggestInstanceName
 @ stub IoWMIWriteEvent
-@ stub IoWriteErrorLogEntry
+@ stdcall IoWriteErrorLogEntry(ptr)
 @ stub IoWriteOperationCount
 @ stub IoWritePartitionTableEx
 @ stub IoWriteTransferCount
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index 0404a34..f8c6845 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -1068,6 +1068,7 @@ void      WINAPI ExFreePool(PVOID);
 void      WINAPI ExFreePoolWithTag(PVOID,ULONG);
 
 NTSTATUS  WINAPI IoAllocateDriverObjectExtension(PDRIVER_OBJECT,PVOID,ULONG,PVOID*);
+PVOID     WINAPI IoAllocateErrorLogEntry(PVOID,UCHAR);
 PIRP      WINAPI IoAllocateIrp(CCHAR,BOOLEAN);
 PIRP      WINAPI IoBuildDeviceIoControlRequest(ULONG,PDEVICE_OBJECT,PVOID,ULONG,PVOID,ULONG,BOOLEAN,PKEVENT,PIO_STATUS_BLOCK);
 NTSTATUS  WINAPI IoCreateDevice(DRIVER_OBJECT*,ULONG,UNICODE_STRING*,DEVICE_TYPE,ULONG,BOOLEAN,DEVICE_OBJECT**);
@@ -1085,6 +1086,7 @@ PVOID     WINAPI IoGetDriverObjectExtension(PDRIVER_OBJECT,PVOID);
 PDEVICE_OBJECT WINAPI IoGetRelatedDeviceObject(PFILE_OBJECT);
 void      WINAPI IoInitializeIrp(IRP*,USHORT,CCHAR);
 void      WINAPI IoInvalidateDeviceRelations(PDEVICE_OBJECT,DEVICE_RELATION_TYPE);
+void      WINAPI IoWriteErrorLogEntry(PVOID);
 
 NTSTATUS  WINAPI KeDelayExecutionThread(KPROCESSOR_MODE,BOOLEAN,PLARGE_INTEGER);
 PKTHREAD  WINAPI KeGetCurrentThread(void);
-- 
1.6.0.2.GIT



Подробная информация о списке рассылки Wine-patches