[Wine-patches] [eterhack 08/24] ntoskrnl.exe: Add stub for IoRegisterPlugPlayNotification.
Alexander Morozov
=?iso-8859-1?q?amorozov_=CE=C1_etersoft=2Eru?=
Ср Мар 4 12:25:17 MSK 2009
---
dlls/ntoskrnl.exe/ntoskrnl.c | 19 +++++++++++++++++++
dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +-
include/ddk/wdm.h | 10 ++++++++++
3 files changed, 30 insertions(+), 1 deletions(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index bf32101..a95bac0 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -1631,6 +1631,25 @@ void WINAPI IoRegisterDriverReinitialization( PDRIVER_OBJECT obj, PDRIVER_REINIT
/***********************************************************************
+ * IoRegisterPlugPlayNotification (NTOSKRNL.EXE.@)
+ */
+NTSTATUS WINAPI IoRegisterPlugPlayNotification( IO_NOTIFICATION_EVENT_CATEGORY
+ EventCategory,
+ ULONG EventCategoryFlags,
+ PVOID EventCategoryData,
+ PDRIVER_OBJECT DriverObject,
+ PDRIVER_NOTIFICATION_CALLBACK_ROUTINE
+ CallbackRoutine, PVOID Context,
+ PVOID *NotificationEntry )
+{
+ FIXME( "stub: %u %u %p %p %p %p %p\n", EventCategory, EventCategoryFlags,
+ EventCategoryData, DriverObject, CallbackRoutine, Context,
+ NotificationEntry );
+ return STATUS_SUCCESS;
+}
+
+
+/***********************************************************************
* IoRegisterShutdownNotification (NTOSKRNL.EXE.@)
*/
NTSTATUS WINAPI IoRegisterShutdownNotification( PDEVICE_OBJECT obj )
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
index a28467b..402e2ad 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
@@ -430,7 +430,7 @@
@ stub IoRegisterFileSystem
@ stub IoRegisterFsRegistrationChange
@ stub IoRegisterLastChanceShutdownNotification
-@ stub IoRegisterPlugPlayNotification
+@ stdcall IoRegisterPlugPlayNotification(long long ptr ptr ptr ptr ptr)
@ stdcall IoReleaseCancelSpinLock(long)
@ stdcall IoRegisterShutdownNotification(ptr)
@ stub IoReleaseRemoveLockAndWaitEx
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index f14251d..f6c192d 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -1089,6 +1089,15 @@ typedef enum {
DevicePropertyRemovalPolicy
} DEVICE_REGISTRY_PROPERTY;
+typedef enum _IO_NOTIFICATION_EVENT_CATEGORY {
+ EventCategoryReserved,
+ EventCategoryHardwareProfileChange,
+ EventCategoryDeviceInterfaceChange,
+ EventCategoryTargetDeviceChange
+} IO_NOTIFICATION_EVENT_CATEGORY;
+
+typedef NTSTATUS (WINAPI *PDRIVER_NOTIFICATION_CALLBACK_ROUTINE)(PVOID,PVOID);
+
NTSTATUS WINAPI ObCloseHandle(IN HANDLE handle);
#define IoGetCurrentIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.CurrentStackLocation)
@@ -1135,6 +1144,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);
+NTSTATUS WINAPI IoRegisterPlugPlayNotification(IO_NOTIFICATION_EVENT_CATEGORY,ULONG,PVOID,PDRIVER_OBJECT,PDRIVER_NOTIFICATION_CALLBACK_ROUTINE,PVOID,PVOID*);
void WINAPI IoWriteErrorLogEntry(PVOID);
NTSTATUS WINAPI KeDelayExecutionThread(KPROCESSOR_MODE,BOOLEAN,PLARGE_INTEGER);
--
1.6.1.3.GIT
Подробная информация о списке рассылки Wine-patches