From: Austin English Subject: fltmgr.sys: add stub dll (try 3) Message-Id: Date: Wed, 25 Feb 2015 00:55:44 -0600 try 3: DriverEntry() instead of DllMain() Supersedes https://source.winehq.org/patches/data/109029 -- -Austin
try 3: DriverEntry() instead of DllMain()

Supersedes https://source.winehq.org/patches/data/109029

--
-Austin
From 09c427c934e775e21ef9585f32510f0e8108bb68 Mon Sep 17 00:00:00 2001 From: Austin English Date: Wed, 25 Feb 2015 00:52:15 -0600 Subject: [PATCH] fltmgr.sys: add stub dll (try 3) --- configure.ac | 1 + dlls/fltmgr.sys/Makefile.in | 1 + dlls/fltmgr.sys/fltmgr.sys.spec | 163 ++++++++++++++++++++++++++++++++++++++++ dlls/fltmgr.sys/main.c | 38 ++++++++++ loader/wine.inf.in | 2 + 5 files changed, 205 insertions(+) create mode 100644 dlls/fltmgr.sys/Makefile.in create mode 100644 dlls/fltmgr.sys/fltmgr.sys.spec create mode 100644 dlls/fltmgr.sys/main.c diff --git a/configure.ac b/configure.ac index 6eda10f..eaaccd8 100644 --- a/configure.ac +++ b/configure.ac @@ -2948,6 +2948,7 @@ WINE_CONFIG_DLL(ext-ms-win-gdi-devcaps-l1-1-0) WINE_CONFIG_DLL(faultrep,,[implib]) WINE_CONFIG_TEST(dlls/faultrep/tests) WINE_CONFIG_DLL(fltlib) +WINE_CONFIG_DLL(fltmgr.sys) WINE_CONFIG_DLL(fntcache) WINE_CONFIG_DLL(fontsub) WINE_CONFIG_DLL(fusion) diff --git a/dlls/fltmgr.sys/Makefile.in b/dlls/fltmgr.sys/Makefile.in new file mode 100644 index 0000000..75bae4d --- /dev/null +++ b/dlls/fltmgr.sys/Makefile.in @@ -0,0 +1 @@ +MODULE = fltmgr.sys diff --git a/dlls/fltmgr.sys/fltmgr.sys.spec b/dlls/fltmgr.sys/fltmgr.sys.spec new file mode 100644 index 0000000..5310269 --- /dev/null +++ b/dlls/fltmgr.sys/fltmgr.sys.spec @@ -0,0 +1,163 @@ +@ stub FltAcquirePushLockExclusive +@ stub FltAcquirePushLockShared +@ stub FltAcquireResourceExclusive +@ stub FltAcquireResourceShared +@ stub FltAllocateCallbackData +@ stub FltAllocateContext +@ stub FltAllocateDeferredIoWorkItem +@ stub FltAllocateFileLock +@ stub FltAllocateGenericWorkItem +@ stub FltAllocatePoolAlignedWithTag +@ stub FltAttachVolume +@ stub FltAttachVolumeAtAltitude +@ stub FltBuildDefaultSecurityDescriptor +@ stub FltCancelFileOpen +@ stub FltCancelIo +@ stub FltCbdqDisable +@ stub FltCbdqEnable +@ stub FltCbdqInitialize +@ stub FltCbdqInsertIo +@ stub FltCbdqRemoveIo +@ stub FltCbdqRemoveNextIo +@ stub FltCheckAndGrowNameControl +@ stub FltCheckLockForReadAccess +@ stub FltCheckLockForWriteAccess +@ stub FltCheckOplock +@ stub FltClearCallbackDataDirty +@ stub FltClearCancelCompletion +@ stub FltClose +@ stub FltCloseClientPort +@ stub FltCloseCommunicationPort +@ stub FltCompareInstanceAltitudes +@ stub FltCompletePendedPostOperation +@ stub FltCompletePendedPreOperation +@ stub FltCreateCommunicationPort +@ stub FltCreateFile +@ stub FltCreateFileEx +@ stub FltCreateSystemVolumeInformationFolder +@ stub FltCurrentBatchOplock +@ stub FltDecodeParameters +@ stub FltDeleteContext +@ stub FltDeleteFileContext +@ stub FltDeleteInstanceContext +@ stub FltDeletePushLock +@ stub FltDeleteStreamContext +@ stub FltDeleteStreamHandleContext +@ stub FltDeleteVolumeContext +@ stub FltDetachVolume +@ stub FltDeviceIoControlFile +@ stub FltDoCompletionProcessingWhenSafe +@ stub FltEnumerateFilterInformation +@ stub FltEnumerateFilters +@ stub FltEnumerateInstanceInformationByFilter +@ stub FltEnumerateInstanceInformationByVolume +@ stub FltEnumerateInstances +@ stub FltEnumerateVolumeInformation +@ stub FltEnumerateVolumes +@ stub FltFlushBuffers +@ stub FltFreeCallbackData +@ stub FltFreeDeferredIoWorkItem +@ stub FltFreeFileLock +@ stub FltFreeGenericWorkItem +@ stub FltFreePoolAlignedWithTag +@ stub FltFreeSecurityDescriptor +@ stub FltFsControlFile +@ stub FltGetBottomInstance +@ stub FltGetContexts +@ stub FltGetDestinationFileNameInformation +@ stub FltGetDeviceObject +@ stub FltGetDiskDeviceObject +@ stub FltGetFileContext +@ stub FltGetFileNameInformation +@ stub FltGetFileNameInformationUnsafe +@ stub FltGetFilterFromInstance +@ stub FltGetFilterFromName +@ stub FltGetFilterInformation +@ stub FltGetInstanceContext +@ stub FltGetInstanceInformation +@ stub FltGetIrpName +@ stub FltGetLowerInstance +@ stub FltGetRequestorProcess +@ stub FltGetRequestorProcessId +@ stub FltGetRoutineAddress +@ stub FltGetStreamContext +@ stub FltGetStreamHandleContext +@ stub FltGetSwappedBufferMdlAddress +@ stub FltGetTopInstance +@ stub FltGetTunneledName +@ stub FltGetUpperInstance +@ stub FltGetVolumeContext +@ stub FltGetVolumeFromDeviceObject +@ stub FltGetVolumeFromFileObject +@ stub FltGetVolumeFromInstance +@ stub FltGetVolumeFromName +@ stub FltGetVolumeGuidName +@ stub FltGetVolumeInstanceFromName +@ stub FltGetVolumeName +@ stub FltGetVolumeProperties +@ stub FltInitializeFileLock +@ stub FltInitializeOplock +@ stub FltInitializePushLock +@ stub FltIs32bitProcess +@ stub FltIsCallbackDataDirty +@ stub FltIsDirectory +@ stub FltIsIoCanceled +@ stub FltIsOperationSynchronous +@ stub FltIsVolumeWritable +@ stub FltLoadFilter +@ stub FltLockUserBuffer +@ stub FltNotifyFilterChangeDirectory +@ stub FltObjectDereference +@ stub FltObjectReference +@ stub FltOpenVolume +@ stub FltOplockFsctrl +@ stub FltOplockIsFastIoPossible +@ stub FltParseFileName +@ stub FltParseFileNameInformation +@ stub FltPerformAsynchronousIo +@ stub FltPerformSynchronousIo +@ stub FltProcessFileLock +@ stub FltPurgeFileNameInformationCache +@ stub FltQueryEaFile +@ stub FltQueryInformationFile +@ stub FltQuerySecurityObject +@ stub FltQueryVolumeInformation +@ stub FltQueryVolumeInformationFile +@ stub FltQueueDeferredIoWorkItem +@ stub FltQueueGenericWorkItem +@ stub FltReadFile +@ stub FltReferenceContext +@ stub FltReferenceFileNameInformation +@ stub FltRegisterFilter +@ stub FltReissueSynchronousIo +@ stub FltReleaseContext +@ stub FltReleaseContexts +@ stub FltReleaseFileNameInformation +@ stub FltReleasePushLock +@ stub FltReleaseResource +@ stub FltRequestOperationStatusCallback +@ stub FltRetainSwappedBufferMdlAddress +@ stub FltReuseCallbackData +@ stub FltSendMessage +@ stub FltSetCallbackDataDirty +@ stub FltSetCancelCompletion +@ stub FltSetEaFile +@ stub FltSetFileContext +@ stub FltSetInformationFile +@ stub FltSetInstanceContext +@ stub FltSetSecurityObject +@ stub FltSetStreamContext +@ stub FltSetStreamHandleContext +@ stub FltSetVolumeContext +@ stub FltSetVolumeInformation +@ stub FltStartFiltering +@ stub FltSupportsFileContexts +@ stub FltSupportsStreamContexts +@ stub FltSupportsStreamHandleContexts +@ stub FltTagFile +@ stub FltUninitializeFileLock +@ stub FltUninitializeOplock +@ stub FltUnloadFilter +@ stub FltUnregisterFilter +@ stub FltUntagFile +@ stub FltWriteFile diff --git a/dlls/fltmgr.sys/main.c b/dlls/fltmgr.sys/main.c new file mode 100644 index 0000000..60d4f4b --- /dev/null +++ b/dlls/fltmgr.sys/main.c @@ -0,0 +1,38 @@ +/* + * fltmgr.sys + * + * Copyright 2015 Austin English + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ +#include + +#define NONAMELESSUNION +#define NONAMELESSSTRUCT + +#include "ntstatus.h" +#include "winbase.h" +#include "winternl.h" +#include "ddk/wdm.h" +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(fltmgr); + +NTSTATUS WINAPI DriverEntry( DRIVER_OBJECT *driver, UNICODE_STRING *path ) +{ + TRACE( "(%p, %s)\n", driver, debugstr_w(path->Buffer) ); + return STATUS_SUCCESS; +} + diff --git a/loader/wine.inf.in b/loader/wine.inf.in index a4548f2..2375d9b 100644 --- a/loader/wine.inf.in +++ b/loader/wine.inf.in @@ -2490,6 +2490,7 @@ HKLM,%CurrentVersion%\Telephony\Country List\998,"SameAreaRule",,"G" 10,syswow64,stdole2.tlb 11,,iexplore.exe 11,,winetest.exe,- +12,,fltmgr.sys,- 12,,mountmgr.sys,- 12,,ndis.sys,- ; skip .NET fake dlls in Wine Mono package @@ -2528,6 +2529,7 @@ HKLM,%CurrentVersion%\Telephony\Country List\998,"SameAreaRule",,"G" 11,,iexplore.exe 11,,notepad.exe 11,,winetest.exe,- +12,,fltmgr.sys 12,,mountmgr.sys 12,,ndis.sys ; skip .NET fake dlls in Wine Mono package -- 2.1.4