Damjan Jovanovic : ntoskrnl.exe: Implement IoCompleteRequest.
Alexandre Julliard
julliard at winehq.org
Tue Mar 23 12:12:51 CDT 2010
Module: wine
Branch: master
Commit: 3c6c2fe8df071f82efd8a50ebf6272a260f97c03
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3c6c2fe8df071f82efd8a50ebf6272a260f97c03
Author: Damjan Jovanovic <damjan.jov at gmail.com>
Date: Tue Mar 23 17:52:49 2010 +0200
ntoskrnl.exe: Implement IoCompleteRequest.
---
dlls/ntoskrnl.exe/ntoskrnl.c | 24 +++++++++++++++++-------
dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +-
include/ddk/wdm.h | 1 +
3 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index 3513b01..7a5af73 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -789,14 +789,9 @@ NTSTATUS WINAPI IoReportResourceUsage(PUNICODE_STRING name, PDRIVER_OBJECT drv_o
/***********************************************************************
- * IofCompleteRequest (NTOSKRNL.EXE.@)
+ * IoCompleteRequest (NTOSKRNL.EXE.@)
*/
-#ifdef DEFINE_FASTCALL2_ENTRYPOINT
-DEFINE_FASTCALL2_ENTRYPOINT( IofCompleteRequest )
-void WINAPI __regs_IofCompleteRequest( IRP *irp, UCHAR priority_boost )
-#else
-void WINAPI IofCompleteRequest( IRP *irp, UCHAR priority_boost )
-#endif
+VOID WINAPI IoCompleteRequest( IRP *irp, UCHAR priority_boost )
{
IO_STACK_LOCATION *irpsp;
PIO_COMPLETION_ROUTINE routine;
@@ -853,6 +848,21 @@ void WINAPI IofCompleteRequest( IRP *irp, UCHAR priority_boost )
/***********************************************************************
+ * IofCompleteRequest (NTOSKRNL.EXE.@)
+ */
+#ifdef DEFINE_FASTCALL2_ENTRYPOINT
+DEFINE_FASTCALL2_ENTRYPOINT( IofCompleteRequest )
+void WINAPI __regs_IofCompleteRequest( IRP *irp, UCHAR priority_boost )
+#else
+void WINAPI IofCompleteRequest( IRP *irp, UCHAR priority_boost )
+#endif
+{
+ TRACE( "%p %u\n", irp, priority_boost );
+ IoCompleteRequest( irp, priority_boost );
+}
+
+
+/***********************************************************************
* InterlockedCompareExchange (NTOSKRNL.EXE.@)
*/
#ifdef DEFINE_FASTCALL3_ENTRYPOINT
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
index 0cbbbc6..993de77 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
@@ -333,7 +333,7 @@
@ stub IoCheckQuerySetVolumeInformation
@ stub IoCheckQuotaBufferValidity
@ stub IoCheckShareAccess
-@ stub IoCompleteRequest
+@ stdcall IoCompleteRequest(ptr long)
@ stub IoConnectInterrupt
@ stub IoCreateController
@ stdcall IoCreateDevice(ptr long ptr long long long ptr)
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index 72c6e85..95a27a8 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -1047,6 +1047,7 @@ void WINAPI ExFreePoolWithTag(PVOID,ULONG);
NTSTATUS WINAPI IoAllocateDriverObjectExtension(PDRIVER_OBJECT,PVOID,ULONG,PVOID*);
PVOID WINAPI IoAllocateErrorLogEntry(PVOID,UCHAR);
PIRP WINAPI IoAllocateIrp(CCHAR,BOOLEAN);
+VOID WINAPI IoCompleteRequest(IRP*,UCHAR);
NTSTATUS WINAPI IoCreateDevice(DRIVER_OBJECT*,ULONG,UNICODE_STRING*,DEVICE_TYPE,ULONG,BOOLEAN,DEVICE_OBJECT**);
NTSTATUS WINAPI IoCreateDriver(UNICODE_STRING*,PDRIVER_INITIALIZE);
NTSTATUS WINAPI IoCreateSymbolicLink(UNICODE_STRING*,UNICODE_STRING*);
More information about the wine-cvs
mailing list