ntoskrnl.exe: Add stub for IoGetDeviceInterfaces.
Alexander Morozov
amorozov at etersoft.ru
Thu Feb 3 08:54:59 CST 2011
This patch fixes loading ProtectorA.sys driver which is installed by
CNCBSecPkg_EN.exe (see http://bugs.winehq.org/show_bug.cgi?id=25964)
-------------- next part --------------
From e223932acf575dec4058feecf440536bdc11f697 Mon Sep 17 00:00:00 2001
From: Alexander Morozov <amorozov at etersoft.ru>
Date: Thu, 3 Feb 2011 17:49:10 +0300
Subject: [PATCH] ntoskrnl.exe: Add stub for IoGetDeviceInterfaces.
---
dlls/ntoskrnl.exe/ntoskrnl.c | 13 +++++++++++++
dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +-
include/ddk/wdm.h | 1 +
3 files changed, 15 insertions(+), 1 deletions(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index a5c1659..4f70b98 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -622,6 +622,19 @@ NTSTATUS WINAPI IoDeleteSymbolicLink( UNICODE_STRING *name )
/***********************************************************************
+ * IoGetDeviceInterfaces (NTOSKRNL.EXE.@)
+ */
+NTSTATUS WINAPI IoGetDeviceInterfaces( CONST GUID *InterfaceClassGuid,
+ PDEVICE_OBJECT PhysicalDeviceObject,
+ ULONG Flags, PWSTR *SymbolicLinkList )
+{
+ FIXME( "stub: %s %p %x %p\n", debugstr_guid(InterfaceClassGuid),
+ PhysicalDeviceObject, Flags, SymbolicLinkList );
+ return STATUS_NOT_IMPLEMENTED;
+}
+
+
+/***********************************************************************
* IoGetDeviceObjectPointer (NTOSKRNL.EXE.@)
*/
NTSTATUS WINAPI IoGetDeviceObjectPointer( UNICODE_STRING *name, ACCESS_MASK access, PFILE_OBJECT *file, PDEVICE_OBJECT *device )
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
index ef0d50f..6d645ad 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
@@ -381,7 +381,7 @@
@ stub IoGetCurrentProcess
@ stub IoGetDeviceAttachmentBaseRef
@ stub IoGetDeviceInterfaceAlias
-@ stub IoGetDeviceInterfaces
+@ stdcall IoGetDeviceInterfaces(ptr ptr long ptr)
@ stdcall IoGetDeviceObjectPointer(ptr long ptr ptr)
@ stdcall IoGetDeviceProperty(ptr long long ptr ptr)
@ stub IoGetDeviceToVerify
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index 6df5290..2f3fccb 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -1106,6 +1106,7 @@ void WINAPI IoDeleteDriver(DRIVER_OBJECT*);
NTSTATUS WINAPI IoDeleteSymbolicLink(UNICODE_STRING*);
void WINAPI IoFreeIrp(IRP*);
PEPROCESS WINAPI IoGetCurrentProcess(void);
+NTSTATUS WINAPI IoGetDeviceInterfaces(CONST GUID*,PDEVICE_OBJECT,ULONG,PWSTR*);
NTSTATUS WINAPI IoGetDeviceObjectPointer(UNICODE_STRING*,ACCESS_MASK,PFILE_OBJECT*,PDEVICE_OBJECT*);
NTSTATUS WINAPI IoGetDeviceProperty(PDEVICE_OBJECT,DEVICE_REGISTRY_PROPERTY,ULONG,PVOID,PULONG);
PVOID WINAPI IoGetDriverObjectExtension(PDRIVER_OBJECT,PVOID);
--
1.7.3.5
More information about the wine-patches
mailing list