ReactOS 0.4.15-dev-7918-g2a2556c
vfwdfdynamics.cpp
Go to the documentation of this file.
1/*++
2
3Module Name: VfWdfDynamics.cpp
4
5Abstract:
6 Generated implementation for WDF API Verifier hooks
7
8Environment:
9 user mode only
10
11--*/
12
13#include "fxmin.hpp"
14#include "vfpriv.hpp"
15
16extern "C" {
17#include "FxDynamics.h"
18}
19
20
21extern "C" {
23}
24
25#ifdef ALLOC_PRAGMA
26#pragma alloc_text(FX_ENHANCED_VERIFIER_SECTION_NAME, \
27 VFWDFEXPORT(WdfCollectionCreate), \
28 VFWDFEXPORT(WdfCollectionGetCount), \
29 VFWDFEXPORT(WdfCollectionAdd), \
30 VFWDFEXPORT(WdfCollectionRemove), \
31 VFWDFEXPORT(WdfCollectionRemoveItem), \
32 VFWDFEXPORT(WdfCollectionGetItem), \
33 VFWDFEXPORT(WdfCollectionGetFirstItem), \
34 VFWDFEXPORT(WdfCollectionGetLastItem), \
35 VFWDFEXPORT(WdfCxDeviceInitAllocate), \
36 VFWDFEXPORT(WdfCxDeviceInitSetRequestAttributes), \
37 VFWDFEXPORT(WdfCxDeviceInitSetFileObjectConfig), \
38 VFWDFEXPORT(WdfCxVerifierKeBugCheck), \
39 VFWDFEXPORT(WdfDeviceGetDeviceState), \
40 VFWDFEXPORT(WdfDeviceSetDeviceState), \
41 VFWDFEXPORT(WdfDeviceWdmDispatchIrp), \
42 VFWDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue), \
43 VFWDFEXPORT(WdfDeviceGetDriver), \
44 VFWDFEXPORT(WdfDeviceGetIoTarget), \
45 VFWDFEXPORT(WdfDeviceAssignS0IdleSettings), \
46 VFWDFEXPORT(WdfDeviceAssignSxWakeSettings), \
47 VFWDFEXPORT(WdfDeviceOpenRegistryKey), \
48 VFWDFEXPORT(WdfDeviceOpenDevicemapKey), \
49 VFWDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks), \
50 VFWDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks), \
51 VFWDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership), \
52 VFWDFEXPORT(WdfDeviceInitSetIoType), \
53 VFWDFEXPORT(WdfDeviceInitSetFileObjectConfig), \
54 VFWDFEXPORT(WdfDeviceInitSetRequestAttributes), \
55 VFWDFEXPORT(WdfDeviceCreate), \
56 VFWDFEXPORT(WdfDeviceSetStaticStopRemove), \
57 VFWDFEXPORT(WdfDeviceCreateDeviceInterface), \
58 VFWDFEXPORT(WdfDeviceSetDeviceInterfaceState), \
59 VFWDFEXPORT(WdfDeviceRetrieveDeviceInterfaceString), \
60 VFWDFEXPORT(WdfDeviceCreateSymbolicLink), \
61 VFWDFEXPORT(WdfDeviceQueryProperty), \
62 VFWDFEXPORT(WdfDeviceAllocAndQueryProperty), \
63 VFWDFEXPORT(WdfDeviceSetPnpCapabilities), \
64 VFWDFEXPORT(WdfDeviceSetPowerCapabilities), \
65 VFWDFEXPORT(WdfDeviceSetFailed), \
66 VFWDFEXPORT(WdfDeviceStopIdleNoTrack), \
67 VFWDFEXPORT(WdfDeviceResumeIdleNoTrack), \
68 VFWDFEXPORT(WdfDeviceStopIdleActual), \
69 VFWDFEXPORT(WdfDeviceResumeIdleActual), \
70 VFWDFEXPORT(WdfDeviceGetFileObject), \
71 VFWDFEXPORT(WdfDeviceGetDefaultQueue), \
72 VFWDFEXPORT(WdfDeviceConfigureRequestDispatching), \
73 VFWDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback), \
74 VFWDFEXPORT(WdfDeviceGetSystemPowerAction), \
75 VFWDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure), \
76 VFWDFEXPORT(WdfDeviceInitSetIoTypeEx), \
77 VFWDFEXPORT(WdfDevicePostEvent), \
78 VFWDFEXPORT(WdfDeviceMapIoSpace), \
79 VFWDFEXPORT(WdfDeviceUnmapIoSpace), \
80 VFWDFEXPORT(WdfDeviceGetHardwareRegisterMappedAddress), \
81 VFWDFEXPORT(WdfDeviceReadFromHardware), \
82 VFWDFEXPORT(WdfDeviceWriteToHardware), \
83 VFWDFEXPORT(WdfDeviceAssignInterfaceProperty), \
84 VFWDFEXPORT(WdfDeviceAllocAndQueryInterfaceProperty), \
85 VFWDFEXPORT(WdfDeviceQueryInterfaceProperty), \
86 VFWDFEXPORT(WdfDeviceGetDeviceStackIoType), \
87 VFWDFEXPORT(WdfDeviceQueryPropertyEx), \
88 VFWDFEXPORT(WdfDeviceAllocAndQueryPropertyEx), \
89 VFWDFEXPORT(WdfDeviceAssignProperty), \
90 VFWDFEXPORT(WdfDeviceGetSelfIoTarget), \
91 VFWDFEXPORT(WdfDeviceInitAllowSelfIoTarget), \
92 VFWDFEXPORT(WdfDriverCreate), \
93 VFWDFEXPORT(WdfDriverGetRegistryPath), \
94 VFWDFEXPORT(WdfDriverOpenParametersRegistryKey), \
95 VFWDFEXPORT(WdfDriverRetrieveVersionString), \
96 VFWDFEXPORT(WdfDriverIsVersionAvailable), \
97 VFWDFEXPORT(WdfFdoInitOpenRegistryKey), \
98 VFWDFEXPORT(WdfFdoInitQueryProperty), \
99 VFWDFEXPORT(WdfFdoInitAllocAndQueryProperty), \
100 VFWDFEXPORT(WdfFdoInitQueryPropertyEx), \
101 VFWDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx), \
102 VFWDFEXPORT(WdfFdoInitSetFilter), \
103 VFWDFEXPORT(WdfFileObjectGetFileName), \
104 VFWDFEXPORT(WdfFileObjectGetDevice), \
105 VFWDFEXPORT(WdfFileObjectGetInitiatorProcessId), \
106 VFWDFEXPORT(WdfFileObjectGetRelatedFileObject), \
107 VFWDFEXPORT(WdfDeviceInitEnableHidInterface), \
108 VFWDFEXPORT(WdfDeviceHidNotifyPresence), \
109 VFWDFEXPORT(WdfInterruptCreate), \
110 VFWDFEXPORT(WdfInterruptQueueDpcForIsr), \
111 VFWDFEXPORT(WdfInterruptQueueWorkItemForIsr), \
112 VFWDFEXPORT(WdfInterruptSynchronize), \
113 VFWDFEXPORT(WdfInterruptAcquireLock), \
114 VFWDFEXPORT(WdfInterruptReleaseLock), \
115 VFWDFEXPORT(WdfInterruptEnable), \
116 VFWDFEXPORT(WdfInterruptDisable), \
117 VFWDFEXPORT(WdfInterruptGetInfo), \
118 VFWDFEXPORT(WdfInterruptSetPolicy), \
119 VFWDFEXPORT(WdfInterruptSetExtendedPolicy), \
120 VFWDFEXPORT(WdfInterruptGetDevice), \
121 VFWDFEXPORT(WdfInterruptTryToAcquireLock), \
122 VFWDFEXPORT(WdfIoQueueCreate), \
123 VFWDFEXPORT(WdfIoQueueGetState), \
124 VFWDFEXPORT(WdfIoQueueStart), \
125 VFWDFEXPORT(WdfIoQueueStop), \
126 VFWDFEXPORT(WdfIoQueueStopSynchronously), \
127 VFWDFEXPORT(WdfIoQueueGetDevice), \
128 VFWDFEXPORT(WdfIoQueueRetrieveNextRequest), \
129 VFWDFEXPORT(WdfIoQueueRetrieveRequestByFileObject), \
130 VFWDFEXPORT(WdfIoQueueFindRequest), \
131 VFWDFEXPORT(WdfIoQueueRetrieveFoundRequest), \
132 VFWDFEXPORT(WdfIoQueueDrainSynchronously), \
133 VFWDFEXPORT(WdfIoQueueDrain), \
134 VFWDFEXPORT(WdfIoQueuePurgeSynchronously), \
135 VFWDFEXPORT(WdfIoQueuePurge), \
136 VFWDFEXPORT(WdfIoQueueReadyNotify), \
137 VFWDFEXPORT(WdfIoQueueStopAndPurge), \
138 VFWDFEXPORT(WdfIoQueueStopAndPurgeSynchronously), \
139 VFWDFEXPORT(WdfIoTargetCreate), \
140 VFWDFEXPORT(WdfIoTargetOpen), \
141 VFWDFEXPORT(WdfIoTargetCloseForQueryRemove), \
142 VFWDFEXPORT(WdfIoTargetClose), \
143 VFWDFEXPORT(WdfIoTargetStart), \
144 VFWDFEXPORT(WdfIoTargetStop), \
145 VFWDFEXPORT(WdfIoTargetPurge), \
146 VFWDFEXPORT(WdfIoTargetGetState), \
147 VFWDFEXPORT(WdfIoTargetGetDevice), \
148 VFWDFEXPORT(WdfIoTargetWdmGetTargetFileHandle), \
149 VFWDFEXPORT(WdfIoTargetSendReadSynchronously), \
150 VFWDFEXPORT(WdfIoTargetFormatRequestForRead), \
151 VFWDFEXPORT(WdfIoTargetSendWriteSynchronously), \
152 VFWDFEXPORT(WdfIoTargetFormatRequestForWrite), \
153 VFWDFEXPORT(WdfIoTargetSendIoctlSynchronously), \
154 VFWDFEXPORT(WdfIoTargetFormatRequestForIoctl), \
155 VFWDFEXPORT(WdfIoTargetSelfAssignDefaultIoQueue), \
156 VFWDFEXPORT(WdfMemoryCreate), \
157 VFWDFEXPORT(WdfMemoryCreatePreallocated), \
158 VFWDFEXPORT(WdfMemoryGetBuffer), \
159 VFWDFEXPORT(WdfMemoryAssignBuffer), \
160 VFWDFEXPORT(WdfMemoryCopyToBuffer), \
161 VFWDFEXPORT(WdfMemoryCopyFromBuffer), \
162 VFWDFEXPORT(WdfObjectGetTypedContextWorker), \
163 VFWDFEXPORT(WdfObjectAllocateContext), \
164 VFWDFEXPORT(WdfObjectContextGetObject), \
165 VFWDFEXPORT(WdfObjectReferenceActual), \
166 VFWDFEXPORT(WdfObjectDereferenceActual), \
167 VFWDFEXPORT(WdfObjectCreate), \
168 VFWDFEXPORT(WdfObjectDelete), \
169 VFWDFEXPORT(WdfObjectQuery), \
170 VFWDFEXPORT(WdfRegistryOpenKey), \
171 VFWDFEXPORT(WdfRegistryCreateKey), \
172 VFWDFEXPORT(WdfRegistryClose), \
173 VFWDFEXPORT(WdfRegistryWdmGetHandle), \
174 VFWDFEXPORT(WdfRegistryRemoveKey), \
175 VFWDFEXPORT(WdfRegistryRemoveValue), \
176 VFWDFEXPORT(WdfRegistryQueryValue), \
177 VFWDFEXPORT(WdfRegistryQueryMemory), \
178 VFWDFEXPORT(WdfRegistryQueryMultiString), \
179 VFWDFEXPORT(WdfRegistryQueryUnicodeString), \
180 VFWDFEXPORT(WdfRegistryQueryString), \
181 VFWDFEXPORT(WdfRegistryQueryULong), \
182 VFWDFEXPORT(WdfRegistryAssignValue), \
183 VFWDFEXPORT(WdfRegistryAssignMemory), \
184 VFWDFEXPORT(WdfRegistryAssignMultiString), \
185 VFWDFEXPORT(WdfRegistryAssignUnicodeString), \
186 VFWDFEXPORT(WdfRegistryAssignString), \
187 VFWDFEXPORT(WdfRegistryAssignULong), \
188 VFWDFEXPORT(WdfRequestCreate), \
189 VFWDFEXPORT(WdfRequestReuse), \
190 VFWDFEXPORT(WdfRequestChangeTarget), \
191 VFWDFEXPORT(WdfRequestFormatRequestUsingCurrentType), \
192 VFWDFEXPORT(WdfRequestSend), \
193 VFWDFEXPORT(WdfRequestGetStatus), \
194 VFWDFEXPORT(WdfRequestMarkCancelable), \
195 VFWDFEXPORT(WdfRequestMarkCancelableEx), \
196 VFWDFEXPORT(WdfRequestUnmarkCancelable), \
197 VFWDFEXPORT(WdfRequestIsCanceled), \
198 VFWDFEXPORT(WdfRequestCancelSentRequest), \
199 VFWDFEXPORT(WdfRequestIsFrom32BitProcess), \
200 VFWDFEXPORT(WdfRequestSetCompletionRoutine), \
201 VFWDFEXPORT(WdfRequestGetCompletionParams), \
202 VFWDFEXPORT(WdfRequestAllocateTimer), \
203 VFWDFEXPORT(WdfRequestComplete), \
204 VFWDFEXPORT(WdfRequestCompleteWithInformation), \
205 VFWDFEXPORT(WdfRequestGetParameters), \
206 VFWDFEXPORT(WdfRequestRetrieveInputMemory), \
207 VFWDFEXPORT(WdfRequestRetrieveOutputMemory), \
208 VFWDFEXPORT(WdfRequestRetrieveInputBuffer), \
209 VFWDFEXPORT(WdfRequestRetrieveOutputBuffer), \
210 VFWDFEXPORT(WdfRequestSetInformation), \
211 VFWDFEXPORT(WdfRequestGetInformation), \
212 VFWDFEXPORT(WdfRequestGetFileObject), \
213 VFWDFEXPORT(WdfRequestGetRequestorMode), \
214 VFWDFEXPORT(WdfRequestForwardToIoQueue), \
215 VFWDFEXPORT(WdfRequestGetIoQueue), \
216 VFWDFEXPORT(WdfRequestRequeue), \
217 VFWDFEXPORT(WdfRequestStopAcknowledge), \
218 VFWDFEXPORT(WdfRequestImpersonate), \
219 VFWDFEXPORT(WdfRequestGetRequestorProcessId), \
220 VFWDFEXPORT(WdfRequestIsFromUserModeDriver), \
221 VFWDFEXPORT(WdfRequestSetUserModeDriverInitiatedIo), \
222 VFWDFEXPORT(WdfRequestGetUserModeDriverInitiatedIo), \
223 VFWDFEXPORT(WdfRequestSetActivityId), \
224 VFWDFEXPORT(WdfRequestRetrieveActivityId), \
225 VFWDFEXPORT(WdfRequestGetEffectiveIoType), \
226 VFWDFEXPORT(WdfCmResourceListGetCount), \
227 VFWDFEXPORT(WdfCmResourceListGetDescriptor), \
228 VFWDFEXPORT(WdfStringCreate), \
229 VFWDFEXPORT(WdfStringGetUnicodeString), \
230 VFWDFEXPORT(WdfObjectAcquireLock), \
231 VFWDFEXPORT(WdfObjectReleaseLock), \
232 VFWDFEXPORT(WdfWaitLockCreate), \
233 VFWDFEXPORT(WdfWaitLockAcquire), \
234 VFWDFEXPORT(WdfWaitLockRelease), \
235 VFWDFEXPORT(WdfSpinLockCreate), \
236 VFWDFEXPORT(WdfSpinLockAcquire), \
237 VFWDFEXPORT(WdfSpinLockRelease), \
238 VFWDFEXPORT(WdfTimerCreate), \
239 VFWDFEXPORT(WdfTimerStart), \
240 VFWDFEXPORT(WdfTimerStop), \
241 VFWDFEXPORT(WdfTimerGetParentObject), \
242 VFWDFEXPORT(WdfUsbTargetDeviceCreate), \
243 VFWDFEXPORT(WdfUsbTargetDeviceCreateWithParameters), \
244 VFWDFEXPORT(WdfUsbTargetDeviceRetrieveInformation), \
245 VFWDFEXPORT(WdfUsbTargetDeviceGetDeviceDescriptor), \
246 VFWDFEXPORT(WdfUsbTargetDeviceRetrieveConfigDescriptor), \
247 VFWDFEXPORT(WdfUsbTargetDeviceQueryString), \
248 VFWDFEXPORT(WdfUsbTargetDeviceAllocAndQueryString), \
249 VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForString), \
250 VFWDFEXPORT(WdfUsbTargetDeviceGetNumInterfaces), \
251 VFWDFEXPORT(WdfUsbTargetDeviceSelectConfig), \
252 VFWDFEXPORT(WdfUsbTargetDeviceSendControlTransferSynchronously), \
253 VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForControlTransfer), \
254 VFWDFEXPORT(WdfUsbTargetDeviceResetPortSynchronously), \
255 VFWDFEXPORT(WdfUsbTargetDeviceQueryUsbCapability), \
256 VFWDFEXPORT(WdfUsbTargetPipeGetInformation), \
257 VFWDFEXPORT(WdfUsbTargetPipeIsInEndpoint), \
258 VFWDFEXPORT(WdfUsbTargetPipeIsOutEndpoint), \
259 VFWDFEXPORT(WdfUsbTargetPipeGetType), \
260 VFWDFEXPORT(WdfUsbTargetPipeSetNoMaximumPacketSizeCheck), \
261 VFWDFEXPORT(WdfUsbTargetPipeWriteSynchronously), \
262 VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForWrite), \
263 VFWDFEXPORT(WdfUsbTargetPipeReadSynchronously), \
264 VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForRead), \
265 VFWDFEXPORT(WdfUsbTargetPipeConfigContinuousReader), \
266 VFWDFEXPORT(WdfUsbTargetPipeAbortSynchronously), \
267 VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForAbort), \
268 VFWDFEXPORT(WdfUsbTargetPipeResetSynchronously), \
269 VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForReset), \
270 VFWDFEXPORT(WdfUsbInterfaceGetInterfaceNumber), \
271 VFWDFEXPORT(WdfUsbInterfaceGetNumEndpoints), \
272 VFWDFEXPORT(WdfUsbInterfaceGetDescriptor), \
273 VFWDFEXPORT(WdfUsbInterfaceGetNumSettings), \
274 VFWDFEXPORT(WdfUsbInterfaceSelectSetting), \
275 VFWDFEXPORT(WdfUsbInterfaceGetEndpointInformation), \
276 VFWDFEXPORT(WdfUsbTargetDeviceGetInterface), \
277 VFWDFEXPORT(WdfUsbInterfaceGetConfiguredSettingIndex), \
278 VFWDFEXPORT(WdfUsbInterfaceGetNumConfiguredPipes), \
279 VFWDFEXPORT(WdfUsbInterfaceGetConfiguredPipe), \
280 VFWDFEXPORT(WdfVerifierDbgBreakPoint), \
281 VFWDFEXPORT(WdfVerifierKeBugCheck), \
282 VFWDFEXPORT(WdfGetTriageInfo), \
283 VFWDFEXPORT(WdfWorkItemCreate), \
284 VFWDFEXPORT(WdfWorkItemEnqueue), \
285 VFWDFEXPORT(WdfWorkItemGetParentObject), \
286 VFWDFEXPORT(WdfWorkItemFlush), \
287 )
288#endif // #pragma alloc_text
289
292WDFAPI
294VFWDFEXPORT(WdfCollectionCreate)(
295 _In_
299 _Out_
300 WDFCOLLECTION* Collection
301 )
302{
305}
306
308WDFAPI
309ULONG
310VFWDFEXPORT(WdfCollectionGetCount)(
311 _In_
313 _In_
314 WDFCOLLECTION Collection
315 )
316{
319}
320
323WDFAPI
325VFWDFEXPORT(WdfCollectionAdd)(
326 _In_
328 _In_
329 WDFCOLLECTION Collection,
330 _In_
332 )
333{
336}
337
339WDFAPI
340VOID
341VFWDFEXPORT(WdfCollectionRemove)(
342 _In_
344 _In_
345 WDFCOLLECTION Collection,
346 _In_
348 )
349{
352}
353
355WDFAPI
356VOID
357VFWDFEXPORT(WdfCollectionRemoveItem)(
358 _In_
360 _In_
361 WDFCOLLECTION Collection,
362 _In_
364 )
365{
368}
369
371WDFAPI
373VFWDFEXPORT(WdfCollectionGetItem)(
374 _In_
376 _In_
377 WDFCOLLECTION Collection,
378 _In_
380 )
381{
384}
385
387WDFAPI
389VFWDFEXPORT(WdfCollectionGetFirstItem)(
390 _In_
392 _In_
393 WDFCOLLECTION Collection
394 )
395{
398}
399
401WDFAPI
403VFWDFEXPORT(WdfCollectionGetLastItem)(
404 _In_
406 _In_
407 WDFCOLLECTION Collection
408 )
409{
412}
413
416WDFAPI
418VFWDFEXPORT(WdfCxDeviceInitAllocate)(
419 _In_
421 _In_
423 )
424{
427}
428
430WDFAPI
431VOID
432VFWDFEXPORT(WdfCxDeviceInitSetRequestAttributes)(
433 _In_
435 _In_
437 _In_
439 )
440{
443}
444
446WDFAPI
447VOID
448VFWDFEXPORT(WdfCxDeviceInitSetFileObjectConfig)(
449 _In_
451 _In_
453 _In_
457 )
458{
461}
462
463WDFAPI
464VOID
466 _In_
470 _In_
471 ULONG BugCheckCode,
472 _In_
473 ULONG_PTR BugCheckParameter1,
474 _In_
475 ULONG_PTR BugCheckParameter2,
476 _In_
477 ULONG_PTR BugCheckParameter3,
478 _In_
479 ULONG_PTR BugCheckParameter4
480 )
481{
483 ((PFN_WDFCXVERIFIERKEBUGCHECK) WdfVersion.Functions.pfnWdfCxVerifierKeBugCheck)(DriverGlobals, Object, BugCheckCode, BugCheckParameter1, BugCheckParameter2, BugCheckParameter3, BugCheckParameter4);
484}
485
487WDFAPI
488VOID
489VFWDFEXPORT(WdfDeviceGetDeviceState)(
490 _In_
492 _In_
493 WDFDEVICE Device,
494 _Out_
496 )
497{
500}
501
503WDFAPI
504VOID
505VFWDFEXPORT(WdfDeviceSetDeviceState)(
506 _In_
508 _In_
509 WDFDEVICE Device,
510 _In_
512 )
513{
516}
517
520WDFAPI
522VFWDFEXPORT(WdfDeviceWdmDispatchIrp)(
523 _In_
525 _In_
526 WDFDEVICE Device,
527 _In_
529 _In_
531 )
532{
535}
536
539WDFAPI
541VFWDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue)(
542 _In_
544 _In_
545 WDFDEVICE Device,
546 _In_
547 PIRP Irp,
548 _In_
549 WDFQUEUE Queue,
550 _In_
552 )
553{
555 return ((PFN_WDFDEVICEWDMDISPATCHIRPTOIOQUEUE) WdfVersion.Functions.pfnWdfDeviceWdmDispatchIrpToIoQueue)(DriverGlobals, Device, Irp, Queue, Flags);
556}
557
559WDFAPI
560WDFDRIVER
561VFWDFEXPORT(WdfDeviceGetDriver)(
562 _In_
564 _In_
565 WDFDEVICE Device
566 )
567{
569 return ((PFN_WDFDEVICEGETDRIVER) WdfVersion.Functions.pfnWdfDeviceGetDriver)(DriverGlobals, Device);
570}
571
573WDFAPI
574WDFIOTARGET
575VFWDFEXPORT(WdfDeviceGetIoTarget)(
576 _In_
578 _In_
579 WDFDEVICE Device
580 )
581{
583 return ((PFN_WDFDEVICEGETIOTARGET) WdfVersion.Functions.pfnWdfDeviceGetIoTarget)(DriverGlobals, Device);
584}
585
588WDFAPI
590VFWDFEXPORT(WdfDeviceAssignS0IdleSettings)(
591 _In_
593 _In_
594 WDFDEVICE Device,
595 _In_
597 )
598{
600 return ((PFN_WDFDEVICEASSIGNS0IDLESETTINGS) WdfVersion.Functions.pfnWdfDeviceAssignS0IdleSettings)(DriverGlobals, Device, Settings);
601}
602
605WDFAPI
607VFWDFEXPORT(WdfDeviceAssignSxWakeSettings)(
608 _In_
610 _In_
611 WDFDEVICE Device,
612 _In_
614 )
615{
617 return ((PFN_WDFDEVICEASSIGNSXWAKESETTINGS) WdfVersion.Functions.pfnWdfDeviceAssignSxWakeSettings)(DriverGlobals, Device, Settings);
618}
619
622WDFAPI
624VFWDFEXPORT(WdfDeviceOpenRegistryKey)(
625 _In_
627 _In_
628 WDFDEVICE Device,
629 _In_
631 _In_
635 _Out_
636 WDFKEY* Key
637 )
638{
641}
642
645WDFAPI
647VFWDFEXPORT(WdfDeviceOpenDevicemapKey)(
648 _In_
650 _In_
651 WDFDEVICE Device,
652 _In_
654 _In_
658 _Out_
659 WDFKEY* Key
660 )
661{
664}
665
667WDFAPI
668VOID
669VFWDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks)(
670 _In_
672 _In_
674 _In_
676 )
677{
680}
681
683WDFAPI
684VOID
685VFWDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks)(
686 _In_
688 _In_
690 _In_
692 )
693{
696}
697
699WDFAPI
700VOID
701VFWDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership)(
702 _In_
704 _In_
706 _In_
708 )
709{
712}
713
715WDFAPI
716VOID
717VFWDFEXPORT(WdfDeviceInitSetIoType)(
718 _In_
720 _In_
722 _In_
724 )
725{
728}
729
731WDFAPI
732VOID
733VFWDFEXPORT(WdfDeviceInitSetFileObjectConfig)(
734 _In_
736 _In_
738 _In_
742 )
743{
746}
747
749WDFAPI
750VOID
751VFWDFEXPORT(WdfDeviceInitSetRequestAttributes)(
752 _In_
754 _In_
756 _In_
758 )
759{
762}
763
766WDFAPI
768VFWDFEXPORT(WdfDeviceCreate)(
769 _In_
771 _Inout_
775 _Out_
776 WDFDEVICE* Device
777 )
778{
781
784
786 &hookInfo,
790 Device);
791
793
794 if (hookInfo.DonotCallKmdfLib) {
795 return hookInfo.DdiCallStatus;
796 }
797
799}
800
802WDFAPI
803VOID
804VFWDFEXPORT(WdfDeviceSetStaticStopRemove)(
805 _In_
807 _In_
808 WDFDEVICE Device,
809 _In_
811 )
812{
815}
816
819WDFAPI
821VFWDFEXPORT(WdfDeviceCreateDeviceInterface)(
822 _In_
824 _In_
825 WDFDEVICE Device,
826 _In_
830 )
831{
834}
835
837WDFAPI
838VOID
839VFWDFEXPORT(WdfDeviceSetDeviceInterfaceState)(
840 _In_
842 _In_
843 WDFDEVICE Device,
844 _In_
848 _In_
850 )
851{
854}
855
858WDFAPI
860VFWDFEXPORT(WdfDeviceRetrieveDeviceInterfaceString)(
861 _In_
863 _In_
864 WDFDEVICE Device,
865 _In_
869 _In_
870 WDFSTRING String
871 )
872{
875}
876
879WDFAPI
881VFWDFEXPORT(WdfDeviceCreateSymbolicLink)(
882 _In_
884 _In_
885 WDFDEVICE Device,
886 _In_
888 )
889{
892}
893
896WDFAPI
898VFWDFEXPORT(WdfDeviceQueryProperty)(
899 _In_
901 _In_
902 WDFDEVICE Device,
903 _In_
905 _In_
909 _Out_
911 )
912{
915}
916
919WDFAPI
921VFWDFEXPORT(WdfDeviceAllocAndQueryProperty)(
922 _In_
924 _In_
925 WDFDEVICE Device,
926 _In_
928 _In_
933 _Out_
934 WDFMEMORY* PropertyMemory
935 )
936{
939}
940
942WDFAPI
943VOID
944VFWDFEXPORT(WdfDeviceSetPnpCapabilities)(
945 _In_
947 _In_
948 WDFDEVICE Device,
949 _In_
951 )
952{
955}
956
958WDFAPI
959VOID
960VFWDFEXPORT(WdfDeviceSetPowerCapabilities)(
961 _In_
963 _In_
964 WDFDEVICE Device,
965 _In_
967 )
968{
971}
972
974WDFAPI
975VOID
976VFWDFEXPORT(WdfDeviceSetFailed)(
977 _In_
979 _In_
980 WDFDEVICE Device,
981 _In_
983 )
984{
987}
988
992WDFAPI
994VFWDFEXPORT(WdfDeviceStopIdleNoTrack)(
995 _In_
997 _In_
998 WDFDEVICE Device,
999 _In_
1001 )
1002{
1005}
1006
1008WDFAPI
1009VOID
1010VFWDFEXPORT(WdfDeviceResumeIdleNoTrack)(
1011 _In_
1013 _In_
1014 WDFDEVICE Device
1015 )
1016{
1019}
1020
1024WDFAPI
1026VFWDFEXPORT(WdfDeviceStopIdleActual)(
1027 _In_
1029 _In_
1030 WDFDEVICE Device,
1031 _In_
1033 _In_opt_
1035 _In_
1037 _In_z_
1039 )
1040{
1043}
1044
1046WDFAPI
1047VOID
1048VFWDFEXPORT(WdfDeviceResumeIdleActual)(
1049 _In_
1051 _In_
1052 WDFDEVICE Device,
1053 _In_opt_
1054 PVOID Tag,
1055 _In_
1056 LONG Line,
1057 _In_z_
1058 PCHAR File
1059 )
1060{
1063}
1064
1066WDFAPI
1067WDFFILEOBJECT
1068VFWDFEXPORT(WdfDeviceGetFileObject)(
1069 _In_
1071 _In_
1072 WDFDEVICE Device,
1073 _In_
1075 )
1076{
1079}
1080
1082WDFAPI
1083WDFQUEUE
1084VFWDFEXPORT(WdfDeviceGetDefaultQueue)(
1085 _In_
1087 _In_
1088 WDFDEVICE Device
1089 )
1090{
1092 return ((PFN_WDFDEVICEGETDEFAULTQUEUE) WdfVersion.Functions.pfnWdfDeviceGetDefaultQueue)(DriverGlobals, Device);
1093}
1094
1097WDFAPI
1099VFWDFEXPORT(WdfDeviceConfigureRequestDispatching)(
1100 _In_
1102 _In_
1103 WDFDEVICE Device,
1104 _In_
1105 WDFQUEUE Queue,
1106 _In_
1109 )
1110{
1113}
1114
1117WDFAPI
1119VFWDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback)(
1120 _In_
1122 _In_
1123 WDFDEVICE Device,
1124 _In_opt_
1125 WDFDRIVER Driver,
1126 _In_
1128 _In_
1130 _In_opt_
1132 )
1133{
1136}
1137
1139WDFAPI
1141VFWDFEXPORT(WdfDeviceGetSystemPowerAction)(
1142 _In_
1144 _In_
1145 WDFDEVICE Device
1146 )
1147{
1149 return ((PFN_WDFDEVICEGETSYSTEMPOWERACTION) WdfVersion.Functions.pfnWdfDeviceGetSystemPowerAction)(DriverGlobals, Device);
1150}
1151
1153WDFAPI
1154VOID
1155VFWDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure)(
1156 _In_
1158 _In_
1160 _In_
1162 )
1163{
1166}
1167
1169WDFAPI
1170VOID
1171VFWDFEXPORT(WdfDeviceInitSetIoTypeEx)(
1172 _In_
1174 _In_
1176 _In_
1178 )
1179{
1182}
1183
1185WDFAPI
1187VFWDFEXPORT(WdfDevicePostEvent)(
1188 _In_
1190 _In_
1191 WDFDEVICE Device,
1192 _In_
1194 _In_
1197 BYTE* Data,
1198 _In_
1200 )
1201{
1204}
1205
1208WDFAPI
1210VFWDFEXPORT(WdfDeviceMapIoSpace)(
1211 _In_
1213 _In_
1214 WDFDEVICE Device,
1215 _In_
1217 _In_
1219 _In_
1221 _Out_
1223 )
1224{
1227}
1228
1230WDFAPI
1231VOID
1232VFWDFEXPORT(WdfDeviceUnmapIoSpace)(
1233 _In_
1235 _In_
1236 WDFDEVICE Device,
1237 _In_
1239 _In_
1241 )
1242{
1245}
1246
1248WDFAPI
1249PVOID
1250VFWDFEXPORT(WdfDeviceGetHardwareRegisterMappedAddress)(
1251 _In_
1253 _In_
1254 WDFDEVICE Device,
1255 _In_
1257 )
1258{
1261}
1262
1264WDFAPI
1265SIZE_T
1266VFWDFEXPORT(WdfDeviceReadFromHardware)(
1267 _In_
1269 _In_
1270 WDFDEVICE Device,
1271 _In_
1272 WDF_DEVICE_HWACCESS_TARGET_TYPE Type,
1273 _In_
1274 WDF_DEVICE_HWACCESS_TARGET_SIZE Size,
1275 _In_
1278 PVOID Buffer,
1279 _In_opt_
1281 )
1282{
1285}
1286
1288WDFAPI
1289VOID
1290VFWDFEXPORT(WdfDeviceWriteToHardware)(
1291 _In_
1293 _In_
1294 WDFDEVICE Device,
1295 _In_
1296 WDF_DEVICE_HWACCESS_TARGET_TYPE Type,
1297 _In_
1298 WDF_DEVICE_HWACCESS_TARGET_SIZE Size,
1299 _In_
1301 _In_
1304 PVOID Buffer,
1305 _In_opt_
1306 ULONG Count
1307 )
1308{
1311}
1312
1314WDFAPI
1316VFWDFEXPORT(WdfDeviceAssignInterfaceProperty)(
1317 _In_
1319 _In_
1320 WDFDEVICE Device,
1321 _In_
1322 PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
1323 _In_
1325 _In_
1329 )
1330{
1333}
1334
1336WDFAPI
1338VFWDFEXPORT(WdfDeviceAllocAndQueryInterfaceProperty)(
1339 _In_
1341 _In_
1342 WDFDEVICE Device,
1343 _In_
1344 PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
1345 _In_
1347 _In_opt_
1349 _Out_
1350 WDFMEMORY* PropertyMemory,
1351 _Out_
1353 )
1354{
1357}
1358
1360WDFAPI
1362VFWDFEXPORT(WdfDeviceQueryInterfaceProperty)(
1363 _In_
1365 _In_
1366 WDFDEVICE Device,
1367 _In_
1368 PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
1369 _In_
1373 _Out_
1375 _Out_
1377 )
1378{
1381}
1382
1384WDFAPI
1385VOID
1386VFWDFEXPORT(WdfDeviceGetDeviceStackIoType)(
1387 _In_
1389 _In_
1390 WDFDEVICE Device,
1391 _Out_
1393 _Out_
1395 )
1396{
1399}
1400
1403WDFAPI
1405VFWDFEXPORT(WdfDeviceQueryPropertyEx)(
1406 _In_
1408 _In_
1409 WDFDEVICE Device,
1410 _In_
1412 _In_
1414 _Out_
1416 _Out_
1418 _Out_
1420 )
1421{
1424}
1425
1428WDFAPI
1430VFWDFEXPORT(WdfDeviceAllocAndQueryPropertyEx)(
1431 _In_
1433 _In_
1434 WDFDEVICE Device,
1435 _In_
1437 _In_
1440 _In_opt_
1442 _Out_
1443 WDFMEMORY* PropertyMemory,
1444 _Out_
1446 )
1447{
1450}
1451
1454WDFAPI
1456VFWDFEXPORT(WdfDeviceAssignProperty)(
1457 _In_
1459 _In_
1460 WDFDEVICE Device,
1461 _In_
1463 _In_
1465 _In_
1466 ULONG Size,
1467 _In_opt_
1468 PVOID Data
1469 )
1470{
1473}
1474
1476WDFAPI
1477WDFIOTARGET
1478VFWDFEXPORT(WdfDeviceGetSelfIoTarget)(
1479 _In_
1481 _In_
1482 WDFDEVICE Device
1483 )
1484{
1487}
1488
1490WDFAPI
1491VOID
1492VFWDFEXPORT(WdfDeviceInitAllowSelfIoTarget)(
1493 _In_
1495 _In_
1497 )
1498{
1501}
1502
1505WDFAPI
1507VFWDFEXPORT(WdfDriverCreate)(
1508 _In_
1510 _In_
1512 _In_
1514 _In_opt_
1516 _In_
1518 _Out_opt_
1519 WDFDRIVER* Driver
1520 )
1521{
1524}
1525
1527WDFAPI
1528PWSTR
1529VFWDFEXPORT(WdfDriverGetRegistryPath)(
1530 _In_
1532 _In_
1533 WDFDRIVER Driver
1534 )
1535{
1537 return ((PFN_WDFDRIVERGETREGISTRYPATH) WdfVersion.Functions.pfnWdfDriverGetRegistryPath)(DriverGlobals, Driver);
1538}
1539
1542WDFAPI
1544VFWDFEXPORT(WdfDriverOpenParametersRegistryKey)(
1545 _In_
1547 _In_
1548 WDFDRIVER Driver,
1549 _In_
1551 _In_opt_
1553 _Out_
1554 WDFKEY* Key
1555 )
1556{
1559}
1560
1563WDFAPI
1565VFWDFEXPORT(WdfDriverRetrieveVersionString)(
1566 _In_
1568 _In_
1569 WDFDRIVER Driver,
1570 _In_
1571 WDFSTRING String
1572 )
1573{
1575 return ((PFN_WDFDRIVERRETRIEVEVERSIONSTRING) WdfVersion.Functions.pfnWdfDriverRetrieveVersionString)(DriverGlobals, Driver, String);
1576}
1577
1580WDFAPI
1581BOOLEAN
1582VFWDFEXPORT(WdfDriverIsVersionAvailable)(
1583 _In_
1585 _In_
1586 WDFDRIVER Driver,
1587 _In_
1589 )
1590{
1593}
1594
1597WDFAPI
1599VFWDFEXPORT(WdfFdoInitOpenRegistryKey)(
1600 _In_
1602 _In_
1604 _In_
1606 _In_
1608 _In_opt_
1610 _Out_
1611 WDFKEY* Key
1612 )
1613{
1616}
1617
1620WDFAPI
1622VFWDFEXPORT(WdfFdoInitQueryProperty)(
1623 _In_
1625 _In_
1627 _In_
1629 _In_
1633 _Out_
1635 )
1636{
1639}
1640
1643WDFAPI
1645VFWDFEXPORT(WdfFdoInitAllocAndQueryProperty)(
1646 _In_
1648 _In_
1650 _In_
1652 _In_
1655 _In_opt_
1657 _Out_
1658 WDFMEMORY* PropertyMemory
1659 )
1660{
1663}
1664
1667WDFAPI
1669VFWDFEXPORT(WdfFdoInitQueryPropertyEx)(
1670 _In_
1672 _In_
1674 _In_
1676 _In_
1678 _Out_
1680 _Out_
1682 _Out_
1684 )
1685{
1688}
1689
1692WDFAPI
1694VFWDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx)(
1695 _In_
1697 _In_
1699 _In_
1701 _In_
1704 _In_opt_
1706 _Out_
1707 WDFMEMORY* PropertyMemory,
1708 _Out_
1710 )
1711{
1714}
1715
1717WDFAPI
1718VOID
1719VFWDFEXPORT(WdfFdoInitSetFilter)(
1720 _In_
1722 _In_
1724 )
1725{
1728}
1729
1731WDFAPI
1733VFWDFEXPORT(WdfFileObjectGetFileName)(
1734 _In_
1736 _In_
1737 WDFFILEOBJECT FileObject
1738 )
1739{
1742}
1743
1745WDFAPI
1746WDFDEVICE
1747VFWDFEXPORT(WdfFileObjectGetDevice)(
1748 _In_
1750 _In_
1751 WDFFILEOBJECT FileObject
1752 )
1753{
1756}
1757
1759WDFAPI
1760ULONG
1761VFWDFEXPORT(WdfFileObjectGetInitiatorProcessId)(
1762 _In_
1764 _In_
1765 WDFFILEOBJECT FileObject
1766 )
1767{
1769 return ((PFN_WDFFILEOBJECTGETINITIATORPROCESSID) WdfVersion.Functions.pfnWdfFileObjectGetInitiatorProcessId)(DriverGlobals, FileObject);
1770}
1771
1773WDFAPI
1774WDFFILEOBJECT
1775VFWDFEXPORT(WdfFileObjectGetRelatedFileObject)(
1776 _In_
1778 _In_
1779 WDFFILEOBJECT FileObject
1780 )
1781{
1783 return ((PFN_WDFFILEOBJECTGETRELATEDFILEOBJECT) WdfVersion.Functions.pfnWdfFileObjectGetRelatedFileObject)(DriverGlobals, FileObject);
1784}
1785
1787WDFAPI
1788VOID
1789VFWDFEXPORT(WdfDeviceInitEnableHidInterface)(
1790 _In_
1792 _In_
1794 )
1795{
1798}
1799
1802WDFAPI
1804VFWDFEXPORT(WdfDeviceHidNotifyPresence)(
1805 _In_
1807 _In_
1808 WDFDEVICE Device,
1809 _In_
1811 )
1812{
1815}
1816
1819WDFAPI
1821VFWDFEXPORT(WdfInterruptCreate)(
1822 _In_
1824 _In_
1825 WDFDEVICE Device,
1826 _In_
1828 _In_opt_
1830 _Out_
1831 WDFINTERRUPT* Interrupt
1832 )
1833{
1836}
1837
1838WDFAPI
1839BOOLEAN
1841 _In_
1843 _In_
1844 WDFINTERRUPT Interrupt
1845 )
1846{
1849}
1850
1851WDFAPI
1852BOOLEAN
1854 _In_
1856 _In_
1857 WDFINTERRUPT Interrupt
1858 )
1859{
1862}
1863
1865WDFAPI
1866BOOLEAN
1867VFWDFEXPORT(WdfInterruptSynchronize)(
1868 _In_
1870 _In_
1871 WDFINTERRUPT Interrupt,
1872 _In_
1874 _In_
1876 )
1877{
1880}
1881
1883WDFAPI
1884VOID
1885VFWDFEXPORT(WdfInterruptAcquireLock)(
1886 _In_
1888 _In_
1890 _Acquires_lock_(_Curr_)
1891 WDFINTERRUPT Interrupt
1892 )
1893{
1895 ((PFN_WDFINTERRUPTACQUIRELOCK) WdfVersion.Functions.pfnWdfInterruptAcquireLock)(DriverGlobals, Interrupt);
1896}
1897
1899WDFAPI
1900VOID
1901VFWDFEXPORT(WdfInterruptReleaseLock)(
1902 _In_
1904 _In_
1906 _Releases_lock_(_Curr_)
1907 WDFINTERRUPT Interrupt
1908 )
1909{
1911 ((PFN_WDFINTERRUPTRELEASELOCK) WdfVersion.Functions.pfnWdfInterruptReleaseLock)(DriverGlobals, Interrupt);
1912}
1913
1915WDFAPI
1916VOID
1917VFWDFEXPORT(WdfInterruptEnable)(
1918 _In_
1920 _In_
1921 WDFINTERRUPT Interrupt
1922 )
1923{
1926}
1927
1929WDFAPI
1930VOID
1931VFWDFEXPORT(WdfInterruptDisable)(
1932 _In_
1934 _In_
1935 WDFINTERRUPT Interrupt
1936 )
1937{
1940}
1941
1943WDFAPI
1944VOID
1945VFWDFEXPORT(WdfInterruptGetInfo)(
1946 _In_
1948 _In_
1949 WDFINTERRUPT Interrupt,
1950 _Out_
1952 )
1953{
1956}
1957
1959WDFAPI
1960VOID
1961VFWDFEXPORT(WdfInterruptSetPolicy)(
1962 _In_
1964 _In_
1965 WDFINTERRUPT Interrupt,
1966 _In_
1968 _In_
1970 _In_
1972 )
1973{
1976}
1977
1979WDFAPI
1980VOID
1981VFWDFEXPORT(WdfInterruptSetExtendedPolicy)(
1982 _In_
1984 _In_
1985 WDFINTERRUPT Interrupt,
1986 _In_
1988 )
1989{
1992}
1993
1994WDFAPI
1995WDFDEVICE
1997 _In_
1999 _In_
2000 WDFINTERRUPT Interrupt
2001 )
2002{
2005}
2006
2008_Post_satisfies_(return == 1 || return == 0)
2010WDFAPI
2011BOOLEAN
2012VFWDFEXPORT(WdfInterruptTryToAcquireLock)(
2013 _In_
2015 _In_
2018 WDFINTERRUPT Interrupt
2019 )
2020{
2022 return ((PFN_WDFINTERRUPTTRYTOACQUIRELOCK) WdfVersion.Functions.pfnWdfInterruptTryToAcquireLock)(DriverGlobals, Interrupt);
2023}
2024
2027WDFAPI
2029VFWDFEXPORT(WdfIoQueueCreate)(
2030 _In_
2032 _In_
2033 WDFDEVICE Device,
2034 _In_
2036 _In_opt_
2038 _Out_opt_
2039 WDFQUEUE* Queue
2040 )
2041{
2044
2047
2049 &hookInfo,
2051 Device,
2052 Config,
2054 Queue);
2055
2057
2058 if (hookInfo.DonotCallKmdfLib) {
2059 return hookInfo.DdiCallStatus;
2060 }
2061
2063}
2064
2066WDFAPI
2068VFWDFEXPORT(WdfIoQueueGetState)(
2069 _In_
2071 _In_
2072 WDFQUEUE Queue,
2073 _Out_opt_
2075 _Out_opt_
2077 )
2078{
2081}
2082
2084WDFAPI
2085VOID
2086VFWDFEXPORT(WdfIoQueueStart)(
2087 _In_
2089 _In_
2090 WDFQUEUE Queue
2091 )
2092{
2095}
2096
2098WDFAPI
2099VOID
2100VFWDFEXPORT(WdfIoQueueStop)(
2101 _In_
2103 _In_
2104 WDFQUEUE Queue,
2106 _When_(Context == 0, _In_opt_)
2111 )
2112{
2115}
2116
2118WDFAPI
2119VOID
2120VFWDFEXPORT(WdfIoQueueStopSynchronously)(
2121 _In_
2123 _In_
2124 WDFQUEUE Queue
2125 )
2126{
2129}
2130
2132WDFAPI
2133WDFDEVICE
2134VFWDFEXPORT(WdfIoQueueGetDevice)(
2135 _In_
2137 _In_
2138 WDFQUEUE Queue
2139 )
2140{
2142 return ((PFN_WDFIOQUEUEGETDEVICE) WdfVersion.Functions.pfnWdfIoQueueGetDevice)(DriverGlobals, Queue);
2143}
2144
2147WDFAPI
2149VFWDFEXPORT(WdfIoQueueRetrieveNextRequest)(
2150 _In_
2152 _In_
2153 WDFQUEUE Queue,
2154 _Out_
2155 WDFREQUEST* OutRequest
2156 )
2157{
2162 }
2163 return rtn;
2164}
2165
2168WDFAPI
2170VFWDFEXPORT(WdfIoQueueRetrieveRequestByFileObject)(
2171 _In_
2173 _In_
2174 WDFQUEUE Queue,
2175 _In_
2176 WDFFILEOBJECT FileObject,
2177 _Out_
2178 WDFREQUEST* OutRequest
2179 )
2180{
2183 if (rtn == STATUS_SUCCESS) {
2185 }
2186 return rtn;
2187}
2188
2191WDFAPI
2193VFWDFEXPORT(WdfIoQueueFindRequest)(
2194 _In_
2196 _In_
2197 WDFQUEUE Queue,
2198 _In_opt_
2199 WDFREQUEST FoundRequest,
2200 _In_opt_
2201 WDFFILEOBJECT FileObject,
2204 _Out_
2205 WDFREQUEST* OutRequest
2206 )
2207{
2210}
2211
2214WDFAPI
2216VFWDFEXPORT(WdfIoQueueRetrieveFoundRequest)(
2217 _In_
2219 _In_
2220 WDFQUEUE Queue,
2221 _In_
2222 WDFREQUEST FoundRequest,
2223 _Out_
2224 WDFREQUEST* OutRequest
2225 )
2226{
2229 if (rtn == STATUS_SUCCESS) {
2231 }
2232 return rtn;
2233}
2234
2236WDFAPI
2237VOID
2238VFWDFEXPORT(WdfIoQueueDrainSynchronously)(
2239 _In_
2241 _In_
2242 WDFQUEUE Queue
2243 )
2244{
2247}
2248
2250WDFAPI
2251VOID
2252VFWDFEXPORT(WdfIoQueueDrain)(
2253 _In_
2255 _In_
2256 WDFQUEUE Queue,
2257 _When_(Context != 0, _In_)
2258 _When_(Context == 0, _In_opt_)
2263 )
2264{
2267}
2268
2270WDFAPI
2271VOID
2272VFWDFEXPORT(WdfIoQueuePurgeSynchronously)(
2273 _In_
2275 _In_
2276 WDFQUEUE Queue
2277 )
2278{
2281}
2282
2284WDFAPI
2285VOID
2286VFWDFEXPORT(WdfIoQueuePurge)(
2287 _In_
2289 _In_
2290 WDFQUEUE Queue,
2291 _When_(Context != 0, _In_)
2292 _When_(Context == 0, _In_opt_)
2297 )
2298{
2301}
2302
2305WDFAPI
2307VFWDFEXPORT(WdfIoQueueReadyNotify)(
2308 _In_
2310 _In_
2311 WDFQUEUE Queue,
2312 _In_opt_
2314 _In_opt_
2316 )
2317{
2320}
2321
2323WDFAPI
2324VOID
2325VFWDFEXPORT(WdfIoQueueStopAndPurge)(
2326 _In_
2328 _In_
2329 WDFQUEUE Queue,
2330 _When_(Context != 0, _In_)
2331 _When_(Context == 0, _In_opt_)
2336 )
2337{
2340}
2341
2343WDFAPI
2344VOID
2345VFWDFEXPORT(WdfIoQueueStopAndPurgeSynchronously)(
2346 _In_
2348 _In_
2349 WDFQUEUE Queue
2350 )
2351{
2354}
2355
2358WDFAPI
2360VFWDFEXPORT(WdfIoTargetCreate)(
2361 _In_
2363 _In_
2364 WDFDEVICE Device,
2365 _In_opt_
2367 _Out_
2368 WDFIOTARGET* IoTarget
2369 )
2370{
2373}
2374
2377WDFAPI
2379VFWDFEXPORT(WdfIoTargetOpen)(
2380 _In_
2382 _In_
2383 WDFIOTARGET IoTarget,
2384 _In_
2386 )
2387{
2390}
2391
2393WDFAPI
2394VOID
2395VFWDFEXPORT(WdfIoTargetCloseForQueryRemove)(
2396 _In_
2398 _In_
2399 WDFIOTARGET IoTarget
2400 )
2401{
2404}
2405
2407WDFAPI
2408VOID
2409VFWDFEXPORT(WdfIoTargetClose)(
2410 _In_
2412 _In_
2413 WDFIOTARGET IoTarget
2414 )
2415{
2418}
2419
2422WDFAPI
2424VFWDFEXPORT(WdfIoTargetStart)(
2425 _In_
2427 _In_
2428 WDFIOTARGET IoTarget
2429 )
2430{
2433}
2434
2437WDFAPI
2438VOID
2439VFWDFEXPORT(WdfIoTargetStop)(
2440 _In_
2442 _In_
2443 WDFIOTARGET IoTarget,
2444 _In_
2447 )
2448{
2451}
2452
2455WDFAPI
2456VOID
2457VFWDFEXPORT(WdfIoTargetPurge)(
2458 _In_
2460 _In_
2461 WDFIOTARGET IoTarget,
2462 _In_
2465 )
2466{
2469}
2470
2472WDFAPI
2474VFWDFEXPORT(WdfIoTargetGetState)(
2475 _In_
2477 _In_
2478 WDFIOTARGET IoTarget
2479 )
2480{
2483}
2484
2486WDFAPI
2487WDFDEVICE
2488VFWDFEXPORT(WdfIoTargetGetDevice)(
2489 _In_
2491 _In_
2492 WDFIOTARGET IoTarget
2493 )
2494{
2497}
2498
2500WDFAPI
2501HANDLE
2502VFWDFEXPORT(WdfIoTargetWdmGetTargetFileHandle)(
2503 _In_
2505 _In_
2506 WDFIOTARGET IoTarget
2507 )
2508{
2510 return ((PFN_WDFIOTARGETWDMGETTARGETFILEHANDLE) WdfVersion.Functions.pfnWdfIoTargetWdmGetTargetFileHandle)(DriverGlobals, IoTarget);
2511}
2512
2515WDFAPI
2517VFWDFEXPORT(WdfIoTargetSendReadSynchronously)(
2518 _In_
2520 _In_
2521 WDFIOTARGET IoTarget,
2522 _In_opt_
2523 WDFREQUEST Request,
2524 _In_opt_
2526 _In_opt_
2528 _In_opt_
2530 _Out_opt_
2532 )
2533{
2536}
2537
2540WDFAPI
2542VFWDFEXPORT(WdfIoTargetFormatRequestForRead)(
2543 _In_
2545 _In_
2546 WDFIOTARGET IoTarget,
2547 _In_
2548 WDFREQUEST Request,
2549 _In_opt_
2550 WDFMEMORY OutputBuffer,
2551 _In_opt_
2553 _In_opt_
2555 )
2556{
2559}
2560
2563WDFAPI
2565VFWDFEXPORT(WdfIoTargetSendWriteSynchronously)(
2566 _In_
2568 _In_
2569 WDFIOTARGET IoTarget,
2570 _In_opt_
2571 WDFREQUEST Request,
2572 _In_opt_
2574 _In_opt_
2576 _In_opt_
2578 _Out_opt_
2580 )
2581{
2584}
2585
2588WDFAPI
2590VFWDFEXPORT(WdfIoTargetFormatRequestForWrite)(
2591 _In_
2593 _In_
2594 WDFIOTARGET IoTarget,
2595 _In_
2596 WDFREQUEST Request,
2597 _In_opt_
2598 WDFMEMORY InputBuffer,
2599 _In_opt_
2601 _In_opt_
2603 )
2604{
2607}
2608
2611WDFAPI
2613VFWDFEXPORT(WdfIoTargetSendIoctlSynchronously)(
2614 _In_
2616 _In_
2617 WDFIOTARGET IoTarget,
2618 _In_opt_
2619 WDFREQUEST Request,
2620 _In_
2622 _In_opt_
2624 _In_opt_
2626 _In_opt_
2628 _Out_opt_
2630 )
2631{
2634}
2635
2638WDFAPI
2640VFWDFEXPORT(WdfIoTargetFormatRequestForIoctl)(
2641 _In_
2643 _In_
2644 WDFIOTARGET IoTarget,
2645 _In_
2646 WDFREQUEST Request,
2647 _In_
2649 _In_opt_
2650 WDFMEMORY InputBuffer,
2651 _In_opt_
2653 _In_opt_
2654 WDFMEMORY OutputBuffer,
2655 _In_opt_
2657 )
2658{
2661}
2662
2664WDFAPI
2666VFWDFEXPORT(WdfIoTargetSelfAssignDefaultIoQueue)(
2667 _In_
2669 _In_
2670 WDFIOTARGET IoTarget,
2671 _In_
2672 WDFQUEUE Queue
2673 )
2674{
2677}
2678
2682WDFAPI
2684VFWDFEXPORT(WdfMemoryCreate)(
2685 _In_
2687 _In_opt_
2689 _In_
2692 _In_opt_
2694 _In_
2696 size_t BufferSize,
2697 _Out_
2698 WDFMEMORY* Memory,
2700 PVOID* Buffer
2701 )
2702{
2705}
2706
2709WDFAPI
2711VFWDFEXPORT(WdfMemoryCreatePreallocated)(
2712 _In_
2714 _In_opt_
2717 PVOID Buffer,
2718 _In_
2720 size_t BufferSize,
2721 _Out_
2722 WDFMEMORY* Memory
2723 )
2724{
2727}
2728
2730WDFAPI
2731PVOID
2732VFWDFEXPORT(WdfMemoryGetBuffer)(
2733 _In_
2735 _In_
2736 WDFMEMORY Memory,
2737 _Out_opt_
2738 size_t* BufferSize
2739 )
2740{
2743}
2744
2747WDFAPI
2749VFWDFEXPORT(WdfMemoryAssignBuffer)(
2750 _In_
2752 _In_
2753 WDFMEMORY Memory,
2755 PVOID Buffer,
2756 _In_
2758 size_t BufferSize
2759 )
2760{
2762 return ((PFN_WDFMEMORYASSIGNBUFFER) WdfVersion.Functions.pfnWdfMemoryAssignBuffer)(DriverGlobals, Memory, Buffer, BufferSize);
2763}
2764
2767WDFAPI
2769VFWDFEXPORT(WdfMemoryCopyToBuffer)(
2770 _In_
2772 _In_
2773 WDFMEMORY SourceMemory,
2774 _In_
2776 _Out_writes_bytes_( NumBytesToCopyTo )
2777 PVOID Buffer,
2778 _In_
2779 _When_(NumBytesToCopyTo == 0, __drv_reportError(NumBytesToCopyTo cannot be zero))
2780 size_t NumBytesToCopyTo
2781 )
2782{
2784 return ((PFN_WDFMEMORYCOPYTOBUFFER) WdfVersion.Functions.pfnWdfMemoryCopyToBuffer)(DriverGlobals, SourceMemory, SourceOffset, Buffer, NumBytesToCopyTo);
2785}
2786
2789WDFAPI
2791VFWDFEXPORT(WdfMemoryCopyFromBuffer)(
2792 _In_
2794 _In_
2796 _In_
2798 _In_
2799 PVOID Buffer,
2800 _In_
2801 _When_(NumBytesToCopyFrom == 0, __drv_reportError(NumBytesToCopyFrom cannot be zero))
2802 size_t NumBytesToCopyFrom
2803 )
2804{
2806 return ((PFN_WDFMEMORYCOPYFROMBUFFER) WdfVersion.Functions.pfnWdfMemoryCopyFromBuffer)(DriverGlobals, DestinationMemory, DestinationOffset, Buffer, NumBytesToCopyFrom);
2807}
2808
2809WDFAPI
2810PVOID
2813 _In_
2815 _In_
2817 _In_
2819 )
2820{
2823}
2824
2825WDFAPI
2828 _In_
2830 _In_
2832 _In_
2833 PWDF_OBJECT_ATTRIBUTES ContextAttributes,
2835 PVOID* Context
2836 )
2837{
2840}
2841
2842WDFAPI
2846 _In_
2848 _In_
2850 )
2851{
2854}
2855
2856WDFAPI
2857VOID
2859 _In_
2861 _In_
2863 _In_opt_
2864 PVOID Tag,
2865 _In_
2866 LONG Line,
2867 _In_z_
2868 PCHAR File
2869 )
2870{
2873}
2874
2875WDFAPI
2876VOID
2878 _In_
2880 _In_
2882 _In_opt_
2883 PVOID Tag,
2884 _In_
2885 LONG Line,
2886 _In_z_
2887 PCHAR File
2888 )
2889{
2892}
2893
2896WDFAPI
2898VFWDFEXPORT(WdfObjectCreate)(
2899 _In_
2901 _In_opt_
2903 _Out_
2905 )
2906{
2909}
2910
2912WDFAPI
2913VOID
2914VFWDFEXPORT(WdfObjectDelete)(
2915 _In_
2917 _In_
2919 )
2920{
2923}
2924
2927WDFAPI
2929VFWDFEXPORT(WdfObjectQuery)(
2930 _In_
2932 _In_
2934 _In_
2936 _In_
2939 PVOID QueryBuffer
2940 )
2941{
2943 return ((PFN_WDFOBJECTQUERY) WdfVersion.Functions.pfnWdfObjectQuery)(DriverGlobals, Object, Guid, QueryBufferLength, QueryBuffer);
2944}
2945
2948WDFAPI
2950VFWDFEXPORT(WdfRegistryOpenKey)(
2951 _In_
2953 _In_opt_
2955 _In_
2957 _In_
2959 _In_opt_
2961 _Out_
2962 WDFKEY* Key
2963 )
2964{
2967}
2968
2971WDFAPI
2973VFWDFEXPORT(WdfRegistryCreateKey)(
2974 _In_
2976 _In_opt_
2977 WDFKEY ParentKey,
2978 _In_
2980 _In_
2982 _In_
2984 _Out_opt_
2986 _In_opt_
2988 _Out_
2989 WDFKEY* Key
2990 )
2991{
2994}
2995
2997WDFAPI
2998VOID
2999VFWDFEXPORT(WdfRegistryClose)(
3000 _In_
3002 _In_
3003 WDFKEY Key
3004 )
3005{
3008}
3009
3011WDFAPI
3012HANDLE
3013VFWDFEXPORT(WdfRegistryWdmGetHandle)(
3014 _In_
3016 _In_
3017 WDFKEY Key
3018 )
3019{
3021 return ((PFN_WDFREGISTRYWDMGETHANDLE) WdfVersion.Functions.pfnWdfRegistryWdmGetHandle)(DriverGlobals, Key);
3022}
3023
3026WDFAPI
3028VFWDFEXPORT(WdfRegistryRemoveKey)(
3029 _In_
3031 _In_
3032 WDFKEY Key
3033 )
3034{
3036 return ((PFN_WDFREGISTRYREMOVEKEY) WdfVersion.Functions.pfnWdfRegistryRemoveKey)(DriverGlobals, Key);
3037}
3038
3041WDFAPI
3043VFWDFEXPORT(WdfRegistryRemoveValue)(
3044 _In_
3046 _In_
3047 WDFKEY Key,
3048 _In_
3050 )
3051{
3054}
3055
3058WDFAPI
3060VFWDFEXPORT(WdfRegistryQueryValue)(
3061 _In_
3063 _In_
3064 WDFKEY Key,
3065 _In_
3067 _In_
3070 PVOID Value,
3071 _Out_opt_
3073 _Out_opt_
3075 )
3076{
3079}
3080
3083WDFAPI
3085VFWDFEXPORT(WdfRegistryQueryMemory)(
3086 _In_
3088 _In_
3089 WDFKEY Key,
3090 _In_
3092 _In_
3095 _In_opt_
3097 _Out_
3098 WDFMEMORY* Memory,
3099 _Out_opt_
3101 )
3102{
3105}
3106
3109WDFAPI
3111VFWDFEXPORT(WdfRegistryQueryMultiString)(
3112 _In_
3114 _In_
3115 WDFKEY Key,
3116 _In_
3118 _In_opt_
3120 _In_
3121 WDFCOLLECTION Collection
3122 )
3123{
3126}
3127
3130WDFAPI
3132VFWDFEXPORT(WdfRegistryQueryUnicodeString)(
3133 _In_
3135 _In_
3136 WDFKEY Key,
3137 _In_
3139 _Out_opt_
3143 )
3144{
3147}
3148
3151WDFAPI
3153VFWDFEXPORT(WdfRegistryQueryString)(
3154 _In_
3156 _In_
3157 WDFKEY Key,
3158 _In_
3160 _In_
3161 WDFSTRING String
3162 )
3163{
3166}
3167
3170WDFAPI
3172VFWDFEXPORT(WdfRegistryQueryULong)(
3173 _In_
3175 _In_
3176 WDFKEY Key,
3177 _In_
3179 _Out_
3181 )
3182{
3185}
3186
3189WDFAPI
3191VFWDFEXPORT(WdfRegistryAssignValue)(
3192 _In_
3194 _In_
3195 WDFKEY Key,
3196 _In_
3198 _In_
3200 _In_
3203 PVOID Value
3204 )
3205{
3208}
3209
3212WDFAPI
3214VFWDFEXPORT(WdfRegistryAssignMemory)(
3215 _In_
3217 _In_
3218 WDFKEY Key,
3219 _In_
3221 _In_
3223 _In_
3224 WDFMEMORY Memory,
3225 _In_opt_
3227 )
3228{
3231}
3232
3235WDFAPI
3237VFWDFEXPORT(WdfRegistryAssignMultiString)(
3238 _In_
3240 _In_
3241 WDFKEY Key,
3242 _In_
3244 _In_
3245 WDFCOLLECTION StringsCollection
3246 )
3247{
3250}
3251
3254WDFAPI
3256VFWDFEXPORT(WdfRegistryAssignUnicodeString)(
3257 _In_
3259 _In_
3260 WDFKEY Key,
3261 _In_
3263 _In_
3265 )
3266{
3268 return ((PFN_WDFREGISTRYASSIGNUNICODESTRING) WdfVersion.Functions.pfnWdfRegistryAssignUnicodeString)(DriverGlobals, Key, ValueName, Value);
3269}
3270
3273WDFAPI
3275VFWDFEXPORT(WdfRegistryAssignString)(
3276 _In_
3278 _In_
3279 WDFKEY Key,
3280 _In_
3282 _In_
3283 WDFSTRING String
3284 )
3285{
3288}
3289
3292WDFAPI
3294VFWDFEXPORT(WdfRegistryAssignULong)(
3295 _In_
3297 _In_
3298 WDFKEY Key,
3299 _In_
3301 _In_
3302 ULONG Value
3303 )
3304{
3307}
3308
3311WDFAPI
3313VFWDFEXPORT(WdfRequestCreate)(
3314 _In_
3316 _In_opt_
3318 _In_opt_
3319 WDFIOTARGET IoTarget,
3320 _Out_
3321 WDFREQUEST* Request
3322 )
3323{
3326}
3327
3329WDFAPI
3331VFWDFEXPORT(WdfRequestReuse)(
3332 _In_
3334 _In_
3335 WDFREQUEST Request,
3336 _In_
3338 )
3339{
3342}
3343
3346WDFAPI
3348VFWDFEXPORT(WdfRequestChangeTarget)(
3349 _In_
3351 _In_
3352 WDFREQUEST Request,
3353 _In_
3354 WDFIOTARGET IoTarget
3355 )
3356{
3359}
3360
3362WDFAPI
3363VOID
3364VFWDFEXPORT(WdfRequestFormatRequestUsingCurrentType)(
3365 _In_
3367 _In_
3368 WDFREQUEST Request
3369 )
3370{
3373}
3374
3377WDFAPI
3378BOOLEAN
3380 _In_
3382 _In_
3383 WDFREQUEST Request,
3384 _In_
3385 WDFIOTARGET Target,
3386 _In_opt_
3388 )
3389{
3392}
3393
3396WDFAPI
3398VFWDFEXPORT(WdfRequestGetStatus)(
3399 _In_
3401 _In_
3402 WDFREQUEST Request
3403 )
3404{
3407}
3408
3410WDFAPI
3411VOID
3412VFWDFEXPORT(WdfRequestMarkCancelable)(
3413 _In_
3415 _In_
3416 WDFREQUEST Request,
3417 _In_
3419 )
3420{
3423}
3424
3427WDFAPI
3429VFWDFEXPORT(WdfRequestMarkCancelableEx)(
3430 _In_
3432 _In_
3433 WDFREQUEST Request,
3434 _In_
3436 )
3437{
3440}
3441
3444WDFAPI
3446VFWDFEXPORT(WdfRequestUnmarkCancelable)(
3447 _In_
3449 _In_
3450 WDFREQUEST Request
3451 )
3452{
3454 return ((PFN_WDFREQUESTUNMARKCANCELABLE) WdfVersion.Functions.pfnWdfRequestUnmarkCancelable)(DriverGlobals, Request);
3455}
3456
3459WDFAPI
3460BOOLEAN
3461VFWDFEXPORT(WdfRequestIsCanceled)(
3462 _In_
3464 _In_
3465 WDFREQUEST Request
3466 )
3467{
3470}
3471
3473WDFAPI
3474BOOLEAN
3475VFWDFEXPORT(WdfRequestCancelSentRequest)(
3476 _In_
3478 _In_
3479 WDFREQUEST Request
3480 )
3481{
3483 return ((PFN_WDFREQUESTCANCELSENTREQUEST) WdfVersion.Functions.pfnWdfRequestCancelSentRequest)(DriverGlobals, Request);
3484}
3485
3488WDFAPI
3489BOOLEAN
3490VFWDFEXPORT(WdfRequestIsFrom32BitProcess)(
3491 _In_
3493 _In_
3494 WDFREQUEST Request
3495 )
3496{
3498 return ((PFN_WDFREQUESTISFROM32BITPROCESS) WdfVersion.Functions.pfnWdfRequestIsFrom32BitProcess)(DriverGlobals, Request);
3499}
3500
3502WDFAPI
3503VOID
3504VFWDFEXPORT(WdfRequestSetCompletionRoutine)(
3505 _In_
3507 _In_
3508 WDFREQUEST Request,
3509 _In_opt_
3513 )
3514{
3517}
3518
3520WDFAPI
3521VOID
3522VFWDFEXPORT(WdfRequestGetCompletionParams)(
3523 _In_
3525 _In_
3526 WDFREQUEST Request,
3527 _Out_
3529 )
3530{
3533}
3534
3537WDFAPI
3539VFWDFEXPORT(WdfRequestAllocateTimer)(
3540 _In_
3542 _In_
3543 WDFREQUEST Request
3544 )
3545{
3547 return ((PFN_WDFREQUESTALLOCATETIMER) WdfVersion.Functions.pfnWdfRequestAllocateTimer)(DriverGlobals, Request);
3548}
3549
3551WDFAPI
3552VOID
3553VFWDFEXPORT(WdfRequestComplete)(
3554 _In_
3556 _In_
3557 WDFREQUEST Request,
3558 _In_
3560 )
3561{
3565}
3566
3568WDFAPI
3569VOID
3570VFWDFEXPORT(WdfRequestCompleteWithInformation)(
3571 _In_
3573 _In_
3574 WDFREQUEST Request,
3575 _In_
3577 _In_
3579 )
3580{
3584}
3585
3587WDFAPI
3588VOID
3589VFWDFEXPORT(WdfRequestGetParameters)(
3590 _In_
3592 _In_
3593 WDFREQUEST Request,
3594 _Out_
3596 )
3597{
3600}
3601
3604WDFAPI
3606VFWDFEXPORT(WdfRequestRetrieveInputMemory)(
3607 _In_
3609 _In_
3610 WDFREQUEST Request,
3611 _Out_
3612 WDFMEMORY* Memory
3613 )
3614{
3616 return ((PFN_WDFREQUESTRETRIEVEINPUTMEMORY) WdfVersion.Functions.pfnWdfRequestRetrieveInputMemory)(DriverGlobals, Request, Memory);
3617}
3618
3621WDFAPI
3623VFWDFEXPORT(WdfRequestRetrieveOutputMemory)(
3624 _In_
3626 _In_
3627 WDFREQUEST Request,
3628 _Out_
3629 WDFMEMORY* Memory
3630 )
3631{
3633 return ((PFN_WDFREQUESTRETRIEVEOUTPUTMEMORY) WdfVersion.Functions.pfnWdfRequestRetrieveOutputMemory)(DriverGlobals, Request, Memory);
3634}
3635
3638WDFAPI
3640VFWDFEXPORT(WdfRequestRetrieveInputBuffer)(
3641 _In_
3643 _In_
3644 WDFREQUEST Request,
3645 _In_
3648 PVOID* Buffer,
3649 _Out_opt_
3650 size_t* Length
3651 )
3652{
3655}
3656
3659WDFAPI
3661VFWDFEXPORT(WdfRequestRetrieveOutputBuffer)(
3662 _In_
3664 _In_
3665 WDFREQUEST Request,
3666 _In_
3669 PVOID* Buffer,
3670 _Out_opt_
3671 size_t* Length
3672 )
3673{
3676}
3677
3679WDFAPI
3680VOID
3681VFWDFEXPORT(WdfRequestSetInformation)(
3682 _In_
3684 _In_
3685 WDFREQUEST Request,
3686 _In_
3688 )
3689{
3692}
3693
3695WDFAPI
3697VFWDFEXPORT(WdfRequestGetInformation)(
3698 _In_
3700 _In_
3701 WDFREQUEST Request
3702 )
3703{
3705 return ((PFN_WDFREQUESTGETINFORMATION) WdfVersion.Functions.pfnWdfRequestGetInformation)(DriverGlobals, Request);
3706}
3707
3709WDFAPI
3710WDFFILEOBJECT
3711VFWDFEXPORT(WdfRequestGetFileObject)(
3712 _In_
3714 _In_
3715 WDFREQUEST Request
3716 )
3717{
3719 return ((PFN_WDFREQUESTGETFILEOBJECT) WdfVersion.Functions.pfnWdfRequestGetFileObject)(DriverGlobals, Request);
3720}
3721
3723WDFAPI
3725VFWDFEXPORT(WdfRequestGetRequestorMode)(
3726 _In_
3728 _In_
3729 WDFREQUEST Request
3730 )
3731{
3733 return ((PFN_WDFREQUESTGETREQUESTORMODE) WdfVersion.Functions.pfnWdfRequestGetRequestorMode)(DriverGlobals, Request);
3734}
3735
3738WDFAPI
3740VFWDFEXPORT(WdfRequestForwardToIoQueue)(
3741 _In_
3743 _In_
3744 WDFREQUEST Request,
3745 _In_
3747 )
3748{
3751}
3752
3754WDFAPI
3755WDFQUEUE
3756VFWDFEXPORT(WdfRequestGetIoQueue)(
3757 _In_
3759 _In_
3760 WDFREQUEST Request
3761 )
3762{
3765}
3766
3769WDFAPI
3771VFWDFEXPORT(WdfRequestRequeue)(
3772 _In_
3774 _In_
3775 WDFREQUEST Request
3776 )
3777{
3780}
3781
3783WDFAPI
3784VOID
3785VFWDFEXPORT(WdfRequestStopAcknowledge)(
3786 _In_
3788 _In_
3789 WDFREQUEST Request,
3790 _In_
3792 )
3793{
3796}
3797
3800WDFAPI
3802VFWDFEXPORT(WdfRequestImpersonate)(
3803 _In_
3805 _In_
3806 WDFREQUEST Request,
3807 _In_
3809 _In_
3810 PFN_WDF_REQUEST_IMPERSONATE EvtRequestImpersonate,
3811 _In_opt_
3813 )
3814{
3817}
3818
3820WDFAPI
3821ULONG
3822VFWDFEXPORT(WdfRequestGetRequestorProcessId)(
3823 _In_
3825 _In_
3826 WDFREQUEST Request
3827 )
3828{
3830 return ((PFN_WDFREQUESTGETREQUESTORPROCESSID) WdfVersion.Functions.pfnWdfRequestGetRequestorProcessId)(DriverGlobals, Request);
3831}
3832
3834WDFAPI
3835BOOLEAN
3836VFWDFEXPORT(WdfRequestIsFromUserModeDriver)(
3837 _In_
3839 _In_
3840 WDFREQUEST Request
3841 )
3842{
3844 return ((PFN_WDFREQUESTISFROMUSERMODEDRIVER) WdfVersion.Functions.pfnWdfRequestIsFromUserModeDriver)(DriverGlobals, Request);
3845}
3846
3848WDFAPI
3849VOID
3850VFWDFEXPORT(WdfRequestSetUserModeDriverInitiatedIo)(
3851 _In_
3853 _In_
3854 WDFREQUEST Request,
3855 _In_
3857 )
3858{
3861}
3862
3864WDFAPI
3865BOOLEAN
3866VFWDFEXPORT(WdfRequestGetUserModeDriverInitiatedIo)(
3867 _In_
3869 _In_
3870 WDFREQUEST Request
3871 )
3872{
3874 return ((PFN_WDFREQUESTGETUSERMODEDRIVERINITIATEDIO) WdfVersion.Functions.pfnWdfRequestGetUserModeDriverInitiatedIo)(DriverGlobals, Request);
3875}
3876
3878WDFAPI
3879VOID
3880VFWDFEXPORT(WdfRequestSetActivityId)(
3881 _In_
3883 _In_
3884 WDFREQUEST Request,
3885 _In_
3887 )
3888{
3891}
3892
3894WDFAPI
3896VFWDFEXPORT(WdfRequestRetrieveActivityId)(
3897 _In_
3899 _In_
3900 WDFREQUEST Request,
3901 _Out_
3903 )
3904{
3907}
3908
3910WDFAPI
3912VFWDFEXPORT(WdfRequestGetEffectiveIoType)(
3913 _In_
3915 _In_
3916 WDFREQUEST Request
3917 )
3918{
3920 return ((PFN_WDFREQUESTGETEFFECTIVEIOTYPE) WdfVersion.Functions.pfnWdfRequestGetEffectiveIoType)(DriverGlobals, Request);
3921}
3922
3924WDFAPI
3925ULONG
3926VFWDFEXPORT(WdfCmResourceListGetCount)(
3927 _In_
3929 _In_
3930 WDFCMRESLIST List
3931 )
3932{
3934 return ((PFN_WDFCMRESOURCELISTGETCOUNT) WdfVersion.Functions.pfnWdfCmResourceListGetCount)(DriverGlobals, List);
3935}
3936
3938WDFAPI
3940VFWDFEXPORT(WdfCmResourceListGetDescriptor)(
3941 _In_
3943 _In_
3944 WDFCMRESLIST List,
3945 _In_
3946 ULONG Index
3947 )
3948{
3950 return ((PFN_WDFCMRESOURCELISTGETDESCRIPTOR) WdfVersion.Functions.pfnWdfCmResourceListGetDescriptor)(DriverGlobals, List, Index);
3951}
3952
3955WDFAPI
3957VFWDFEXPORT(WdfStringCreate)(
3958 _In_
3960 _In_opt_
3962 _In_opt_
3964 _Out_
3965 WDFSTRING* String
3966 )
3967{
3970}
3971
3973WDFAPI
3974VOID
3975VFWDFEXPORT(WdfStringGetUnicodeString)(
3976 _In_
3978 _In_
3979 WDFSTRING String,
3980 _Out_
3982 )
3983{
3986}
3987
3989WDFAPI
3990VOID
3991VFWDFEXPORT(WdfObjectAcquireLock)(
3992 _In_
3994 _In_
3996 _Acquires_lock_(_Curr_)
3998 )
3999{
4001 ((PFN_WDFOBJECTACQUIRELOCK) WdfVersion.Functions.pfnWdfObjectAcquireLock)(DriverGlobals, Object);
4002}
4003
4005WDFAPI
4006VOID
4007VFWDFEXPORT(WdfObjectReleaseLock)(
4008 _In_
4010 _In_
4011 _Requires_lock_held_(_Curr_)
4012 _Releases_lock_(_Curr_)
4014 )
4015{
4017 ((PFN_WDFOBJECTRELEASELOCK) WdfVersion.Functions.pfnWdfObjectReleaseLock)(DriverGlobals, Object);
4018}
4019
4022WDFAPI
4024VFWDFEXPORT(WdfWaitLockCreate)(
4025 _In_
4027 _In_opt_
4029 _Out_
4030 WDFWAITLOCK* Lock
4031 )
4032{
4035}
4036
4043WDFAPI
4046 _In_
4048 _In_
4050 WDFWAITLOCK Lock,
4051 _In_opt_
4053 )
4054{
4057}
4058
4060WDFAPI
4061VOID
4062VFWDFEXPORT(WdfWaitLockRelease)(
4063 _In_
4065 _In_
4066 _Requires_lock_held_(_Curr_)
4067 _Releases_lock_(_Curr_)
4068 WDFWAITLOCK Lock
4069 )
4070{
4072 ((PFN_WDFWAITLOCKRELEASE) WdfVersion.Functions.pfnWdfWaitLockRelease)(DriverGlobals, Lock);
4073}
4074
4077WDFAPI
4079VFWDFEXPORT(WdfSpinLockCreate)(
4080 _In_
4082 _In_opt_
4084 _Out_
4085 WDFSPINLOCK* SpinLock
4086 )
4087{
4090}
4091
4094WDFAPI
4095VOID
4096VFWDFEXPORT(WdfSpinLockAcquire)(
4097 _In_
4099 _In_
4101 _Acquires_lock_(_Curr_)
4103 WDFSPINLOCK SpinLock
4104 )
4105{
4108}
4109
4112WDFAPI
4113VOID
4114VFWDFEXPORT(WdfSpinLockRelease)(
4115 _In_
4117 _In_
4118 _Requires_lock_held_(_Curr_)
4119 _Releases_lock_(_Curr_)
4121 WDFSPINLOCK SpinLock
4122 )
4123{
4126}
4127
4130WDFAPI
4132VFWDFEXPORT(WdfTimerCreate)(
4133 _In_
4135 _In_
4137 _In_
4139 _Out_
4140 WDFTIMER* Timer
4141 )
4142{
4145}
4146
4148WDFAPI
4149BOOLEAN
4150VFWDFEXPORT(WdfTimerStart)(
4151 _In_
4153 _In_
4154 WDFTIMER Timer,
4155 _In_
4157 )
4158{
4161}
4162
4165WDFAPI
4166BOOLEAN
4167VFWDFEXPORT(WdfTimerStop)(
4168 _In_
4170 _In_
4171 WDFTIMER Timer,
4172 _In_
4174 )
4175{
4178}
4179
4181WDFAPI
4183VFWDFEXPORT(WdfTimerGetParentObject)(
4184 _In_
4186 _In_
4187 WDFTIMER Timer
4188 )
4189{
4191 return ((PFN_WDFTIMERGETPARENTOBJECT) WdfVersion.Functions.pfnWdfTimerGetParentObject)(DriverGlobals, Timer);
4192}
4193
4196WDFAPI
4198VFWDFEXPORT(WdfUsbTargetDeviceCreate)(
4199 _In_
4201 _In_
4202 WDFDEVICE Device,
4203 _In_opt_
4205 _Out_
4206 WDFUSBDEVICE* UsbDevice
4207 )
4208{
4211}
4212
4215WDFAPI
4217VFWDFEXPORT(WdfUsbTargetDeviceCreateWithParameters)(
4218 _In_
4220 _In_
4221 WDFDEVICE Device,
4222 _In_
4224 _In_opt_
4226 _Out_
4227 WDFUSBDEVICE* UsbDevice
4228 )
4229{
4232}
4233
4236WDFAPI
4238VFWDFEXPORT(WdfUsbTargetDeviceRetrieveInformation)(
4239 _In_
4241 _In_
4242 WDFUSBDEVICE UsbDevice,
4243 _Out_
4245 )
4246{
4249}
4250
4252WDFAPI
4253VOID
4254VFWDFEXPORT(WdfUsbTargetDeviceGetDeviceDescriptor)(
4255 _In_
4257 _In_
4258 WDFUSBDEVICE UsbDevice,
4259 _Out_
4261 )
4262{
4265}
4266
4269WDFAPI
4271VFWDFEXPORT(WdfUsbTargetDeviceRetrieveConfigDescriptor)(
4272 _In_
4274 _In_
4275 WDFUSBDEVICE UsbDevice,
4278 _Inout_
4280 )
4281{
4283#pragma prefast(suppress: __WARNING_HIGH_PRIORITY_OVERFLOW_POSTCONDITION, "This is a verifier DDI hook routine and all it does is call original routine.")
4285}
4286
4289WDFAPI
4291VFWDFEXPORT(WdfUsbTargetDeviceQueryString)(
4292 _In_
4294 _In_
4295 WDFUSBDEVICE UsbDevice,
4296 _In_opt_
4297 WDFREQUEST Request,
4298 _In_opt_
4302 _Inout_
4304 _In_
4306 _In_opt_
4308 )
4309{
4312}
4313
4316WDFAPI
4318VFWDFEXPORT(WdfUsbTargetDeviceAllocAndQueryString)(
4319 _In_
4321 _In_
4322 WDFUSBDEVICE UsbDevice,
4323 _In_opt_
4325 _Out_
4326 WDFMEMORY* StringMemory,
4327 _Out_opt_
4329 _In_
4331 _In_opt_
4333 )
4334{
4337}
4338
4341WDFAPI
4343VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForString)(
4344 _In_
4346 _In_
4347 WDFUSBDEVICE UsbDevice,
4348 _In_
4349 WDFREQUEST Request,
4350 _In_
4351 WDFMEMORY Memory,
4352 _In_opt_
4354 _In_
4356 _In_opt_
4358 )
4359{
4362}
4363
4365WDFAPI
4366UCHAR
4367VFWDFEXPORT(WdfUsbTargetDeviceGetNumInterfaces)(
4368 _In_
4370 _In_
4371 WDFUSBDEVICE UsbDevice
4372 )
4373{
4375 return ((PFN_WDFUSBTARGETDEVICEGETNUMINTERFACES) WdfVersion.Functions.pfnWdfUsbTargetDeviceGetNumInterfaces)(DriverGlobals, UsbDevice);
4376}
4377
4380WDFAPI
4382VFWDFEXPORT(WdfUsbTargetDeviceSelectConfig)(
4383 _In_
4385 _In_
4386 WDFUSBDEVICE UsbDevice,
4387 _In_opt_
4389 _Inout_
4391 )
4392{
4395}
4396
4399WDFAPI
4401VFWDFEXPORT(WdfUsbTargetDeviceSendControlTransferSynchronously)(
4402 _In_
4404 _In_
4405 WDFUSBDEVICE UsbDevice,
4406 _In_opt_
4407 WDFREQUEST Request,
4408 _In_opt_
4410 _In_
4412 _In_opt_
4414 _Out_opt_
4416 )
4417{
4420}
4421
4424WDFAPI
4426VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForControlTransfer)(
4427 _In_
4429 _In_
4430 WDFUSBDEVICE UsbDevice,
4431 _In_
4432 WDFREQUEST Request,
4433 _In_
4435 _In_opt_
4437 _In_opt_
4439 )
4440{
4443}
4444
4447WDFAPI
4449VFWDFEXPORT(WdfUsbTargetDeviceResetPortSynchronously)(
4450 _In_
4452 _In_
4453 WDFUSBDEVICE UsbDevice
4454 )
4455{
4457 return ((PFN_WDFUSBTARGETDEVICERESETPORTSYNCHRONOUSLY) WdfVersion.Functions.pfnWdfUsbTargetDeviceResetPortSynchronously)(DriverGlobals, UsbDevice);
4458}
4459
4462WDFAPI
4464VFWDFEXPORT(WdfUsbTargetDeviceQueryUsbCapability)(
4465 _In_
4467 _In_
4468 WDFUSBDEVICE UsbDevice,
4469 _In_
4471 _In_
4476 PVOID CapabilityBuffer,
4477 _Out_opt_
4480 )
4481{
4483 return ((PFN_WDFUSBTARGETDEVICEQUERYUSBCAPABILITY) WdfVersion.Functions.pfnWdfUsbTargetDeviceQueryUsbCapability)(DriverGlobals, UsbDevice, CapabilityType, CapabilityBufferLength, CapabilityBuffer, ResultLength);
4484}
4485
4487WDFAPI
4488VOID
4489VFWDFEXPORT(WdfUsbTargetPipeGetInformation)(
4490 _In_
4492 _In_
4493 WDFUSBPIPE Pipe,
4494 _Out_
4496 )
4497{
4500}
4501
4503WDFAPI
4504BOOLEAN
4505VFWDFEXPORT(WdfUsbTargetPipeIsInEndpoint)(
4506 _In_
4508 _In_
4509 WDFUSBPIPE Pipe
4510 )
4511{
4513 return ((PFN_WDFUSBTARGETPIPEISINENDPOINT) WdfVersion.Functions.pfnWdfUsbTargetPipeIsInEndpoint)(DriverGlobals, Pipe);
4514}
4515
4517WDFAPI
4518BOOLEAN
4519VFWDFEXPORT(WdfUsbTargetPipeIsOutEndpoint)(
4520 _In_
4522 _In_
4523 WDFUSBPIPE Pipe
4524 )
4525{
4527 return ((PFN_WDFUSBTARGETPIPEISOUTENDPOINT) WdfVersion.Functions.pfnWdfUsbTargetPipeIsOutEndpoint)(DriverGlobals, Pipe);
4528}
4529
4531WDFAPI
4533VFWDFEXPORT(WdfUsbTargetPipeGetType)(
4534 _In_
4536 _In_
4537 WDFUSBPIPE Pipe
4538 )
4539{
4541 return ((PFN_WDFUSBTARGETPIPEGETTYPE) WdfVersion.Functions.pfnWdfUsbTargetPipeGetType)(DriverGlobals, Pipe);
4542}
4543
4545WDFAPI
4546VOID
4547VFWDFEXPORT(WdfUsbTargetPipeSetNoMaximumPacketSizeCheck)(
4548 _In_
4550 _In_
4551 WDFUSBPIPE Pipe
4552 )
4553{
4555 ((PFN_WDFUSBTARGETPIPESETNOMAXIMUMPACKETSIZECHECK) WdfVersion.Functions.pfnWdfUsbTargetPipeSetNoMaximumPacketSizeCheck)(DriverGlobals, Pipe);
4556}
4557
4560WDFAPI
4562VFWDFEXPORT(WdfUsbTargetPipeWriteSynchronously)(
4563 _In_
4565 _In_
4566 WDFUSBPIPE Pipe,
4567 _In_opt_
4568 WDFREQUEST Request,
4569 _In_opt_
4571 _In_opt_
4573 _Out_opt_
4575 )
4576{
4579}
4580
4583WDFAPI
4585VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForWrite)(
4586 _In_
4588 _In_
4589 WDFUSBPIPE Pipe,
4590 _In_
4591 WDFREQUEST Request,
4592 _In_opt_
4593 WDFMEMORY WriteMemory,
4594 _In_opt_
4596 )
4597{
4600}
4601
4604WDFAPI
4606VFWDFEXPORT(WdfUsbTargetPipeReadSynchronously)(
4607 _In_
4609 _In_
4610 WDFUSBPIPE Pipe,
4611 _In_opt_
4612 WDFREQUEST Request,
4613 _In_opt_
4615 _In_opt_
4617 _Out_opt_
4619 )
4620{
4623}
4624
4627WDFAPI
4629VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForRead)(
4630 _In_
4632 _In_
4633 WDFUSBPIPE Pipe,
4634 _In_
4635 WDFREQUEST Request,
4636 _In_opt_
4637 WDFMEMORY ReadMemory,
4638 _In_opt_
4640 )
4641{
4644}
4645
4648WDFAPI
4650VFWDFEXPORT(WdfUsbTargetPipeConfigContinuousReader)(
4651 _In_
4653 _In_
4654 WDFUSBPIPE Pipe,
4655 _In_
4657 )
4658{
4660 return ((PFN_WDFUSBTARGETPIPECONFIGCONTINUOUSREADER) WdfVersion.Functions.pfnWdfUsbTargetPipeConfigContinuousReader)(DriverGlobals, Pipe, Config);
4661}
4662
4665WDFAPI
4667VFWDFEXPORT(WdfUsbTargetPipeAbortSynchronously)(
4668 _In_
4670 _In_
4671 WDFUSBPIPE Pipe,
4672 _In_opt_
4673 WDFREQUEST Request,
4674 _In_opt_
4676 )
4677{
4680}
4681
4684WDFAPI
4686VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForAbort)(
4687 _In_
4689 _In_
4690 WDFUSBPIPE Pipe,
4691 _In_
4692 WDFREQUEST Request
4693 )
4694{
4696 return ((PFN_WDFUSBTARGETPIPEFORMATREQUESTFORABORT) WdfVersion.Functions.pfnWdfUsbTargetPipeFormatRequestForAbort)(DriverGlobals, Pipe, Request);
4697}
4698
4701WDFAPI
4703VFWDFEXPORT(WdfUsbTargetPipeResetSynchronously)(
4704 _In_
4706 _In_
4707 WDFUSBPIPE Pipe,
4708 _In_opt_
4709 WDFREQUEST Request,
4710 _In_opt_
4712 )
4713{
4716}
4717
4720WDFAPI
4722VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForReset)(
4723 _In_
4725 _In_
4726 WDFUSBPIPE Pipe,
4727 _In_
4728 WDFREQUEST Request
4729 )
4730{
4732 return ((PFN_WDFUSBTARGETPIPEFORMATREQUESTFORRESET) WdfVersion.Functions.pfnWdfUsbTargetPipeFormatRequestForReset)(DriverGlobals, Pipe, Request);
4733}
4734
4736WDFAPI
4737BYTE
4738VFWDFEXPORT(WdfUsbInterfaceGetInterfaceNumber)(
4739 _In_
4741 _In_
4742 WDFUSBINTERFACE UsbInterface
4743 )
4744{
4746 return ((PFN_WDFUSBINTERFACEGETINTERFACENUMBER) WdfVersion.Functions.pfnWdfUsbInterfaceGetInterfaceNumber)(DriverGlobals, UsbInterface);
4747}
4748
4750WDFAPI
4751BYTE
4752VFWDFEXPORT(WdfUsbInterfaceGetNumEndpoints)(
4753 _In_
4755 _In_
4756 WDFUSBINTERFACE UsbInterface,
4757 _In_
4759 )
4760{
4763}
4764
4766WDFAPI
4767VOID
4768VFWDFEXPORT(WdfUsbInterfaceGetDescriptor)(
4769 _In_
4771 _In_
4772 WDFUSBINTERFACE UsbInterface,
4773 _In_
4775 _Out_
4777 )
4778{
4781}
4782
4784WDFAPI
4785BYTE
4786VFWDFEXPORT(WdfUsbInterfaceGetNumSettings)(
4787 _In_
4789 _In_
4790 WDFUSBINTERFACE UsbInterface
4791 )
4792{
4795}
4796
4799WDFAPI
4801VFWDFEXPORT(WdfUsbInterfaceSelectSetting)(
4802 _In_
4804 _In_
4805 WDFUSBINTERFACE UsbInterface,
4806 _In_opt_
4808 _In_
4810 )
4811{
4814}
4815
4817WDFAPI
4818VOID
4819VFWDFEXPORT(WdfUsbInterfaceGetEndpointInformation)(
4820 _In_
4822 _In_
4823 WDFUSBINTERFACE UsbInterface,
4824 _In_
4826 _In_
4828 _Out_
4830 )
4831{
4834}
4835
4837WDFAPI
4838WDFUSBINTERFACE
4839VFWDFEXPORT(WdfUsbTargetDeviceGetInterface)(
4840 _In_
4842 _In_
4843 WDFUSBDEVICE UsbDevice,
4844 _In_
4846 )
4847{
4850}
4851
4853WDFAPI
4854BYTE
4855VFWDFEXPORT(WdfUsbInterfaceGetConfiguredSettingIndex)(
4856 _In_
4858 _In_
4859 WDFUSBINTERFACE Interface
4860 )
4861{
4863 return ((PFN_WDFUSBINTERFACEGETCONFIGUREDSETTINGINDEX) WdfVersion.Functions.pfnWdfUsbInterfaceGetConfiguredSettingIndex)(DriverGlobals, Interface);
4864}
4865
4867WDFAPI
4868BYTE
4869VFWDFEXPORT(WdfUsbInterfaceGetNumConfiguredPipes)(
4870 _In_
4872 _In_
4873 WDFUSBINTERFACE UsbInterface
4874 )
4875{
4877 return ((PFN_WDFUSBINTERFACEGETNUMCONFIGUREDPIPES) WdfVersion.Functions.pfnWdfUsbInterfaceGetNumConfiguredPipes)(DriverGlobals, UsbInterface);
4878}
4879
4881WDFAPI
4882WDFUSBPIPE
4883VFWDFEXPORT(WdfUsbInterfaceGetConfiguredPipe)(
4884 _In_
4886 _In_
4887 WDFUSBINTERFACE UsbInterface,
4888 _In_
4890 _Out_opt_
4892 )
4893{
4896}
4897
4898WDFAPI
4899VOID
4901 _In_
4903 )
4904{
4907}
4908
4909WDFAPI
4910VOID
4912 _In_
4914 _In_
4915 ULONG BugCheckCode,
4916 _In_
4917 ULONG_PTR BugCheckParameter1,
4918 _In_
4919 ULONG_PTR BugCheckParameter2,
4920 _In_
4921 ULONG_PTR BugCheckParameter3,
4922 _In_
4923 ULONG_PTR BugCheckParameter4
4924 )
4925{
4927 ((PFN_WDFVERIFIERKEBUGCHECK) WdfVersion.Functions.pfnWdfVerifierKeBugCheck)(DriverGlobals, BugCheckCode, BugCheckParameter1, BugCheckParameter2, BugCheckParameter3, BugCheckParameter4);
4928}
4929
4930WDFAPI
4931PVOID
4933 _In_
4935 )
4936{
4939}
4940
4943WDFAPI
4945VFWDFEXPORT(WdfWorkItemCreate)(
4946 _In_
4948 _In_
4950 _In_
4952 _Out_
4953 WDFWORKITEM* WorkItem
4954 )
4955{
4958}
4959
4961WDFAPI
4962VOID
4963VFWDFEXPORT(WdfWorkItemEnqueue)(
4964 _In_
4966 _In_
4967 WDFWORKITEM WorkItem
4968 )
4969{
4972}
4973
4975WDFAPI
4977VFWDFEXPORT(WdfWorkItemGetParentObject)(
4978 _In_
4980 _In_
4981 WDFWORKITEM WorkItem
4982 )
4983{
4985 return ((PFN_WDFWORKITEMGETPARENTOBJECT) WdfVersion.Functions.pfnWdfWorkItemGetParentObject)(DriverGlobals, WorkItem);
4986}
4987
4989WDFAPI
4990VOID
4991VFWDFEXPORT(WdfWorkItemFlush)(
4992 _In_
4994 _In_
4995 WDFWORKITEM WorkItem
4996 )
4997{
5000}
5001
5002
unsigned char BOOLEAN
LONG NTSTATUS
Definition: precomp.h:26
#define __drv_aliasesMem
Definition: btrfs_drv.h:203
return
Definition: dirsup.c:529
#define _Acquires_lock_(lock)
#define _Requires_lock_held_(lock)
#define _Requires_lock_not_held_(lock)
#define _Releases_lock_(lock)
ULONG DEVPROPTYPE
Definition: devpropdef.h:24
ULONG * PDEVPROPTYPE
Definition: devpropdef.h:24
#define NULL
Definition: types.h:112
ULONG_PTR KAFFINITY
Definition: compat.h:85
#define __drv_reportError(why)
Definition: driverspecs.h:320
#define _IRQL_requires_min_(irql)
Definition: driverspecs.h:231
#define _IRQL_requires_max_(irql)
Definition: driverspecs.h:230
#define _IRQL_restores_
Definition: driverspecs.h:233
#define _IRQL_saves_
Definition: driverspecs.h:235
#define _IRQL_raises_(irql)
Definition: driverspecs.h:228
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
#define APC_LEVEL
Definition: env_spec_w32.h:695
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
DriverGlobals
#define VFWDFEXPORT(a)
Definition: fxmacros.hpp:158
ULONG Handle
Definition: gdb_input.c:15
__in WDFOBJECT __in PCWDF_OBJECT_CONTEXT_TYPE_INFO TypeInfo
Definition: handleapi.cpp:601
__in PVOID ContextPointer
Definition: handleapi.cpp:679
_In_ WDFINTERRUPT _In_ PFN_WDF_INTERRUPT_SYNCHRONIZE Callback
_In_ PWDFCXDEVICE_INIT _In_ PWDFCX_FILEOBJECT_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES FileObjectAttributes
NTSTATUS status
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
_Must_inspect_result_ _In_ WDFIOTARGET _In_ WDFREQUEST _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET OutputBufferOffset
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
_Must_inspect_result_ _In_ WDFDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFIOTARGET * IoTarget
PerfIoComplete(Request)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_CHILD_LIST_CONFIG Config
_In_ WDFREQUEST _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES MemoryAttributes
_Must_inspect_result_ _In_ WDFDEVICE _In_ PIRP Irp
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG DeviceOffset
_Must_inspect_result_ _In_ WDFDEVICE _In_ PIRP _In_ WDFQUEUE Queue
_Must_inspect_result_ _In_ WDFDEVICE _In_opt_ WDFDRIVER _In_ UCHAR _In_ PFN_WDFDEVICE_WDM_IRP_DISPATCH EvtDeviceWdmIrpDisptach
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING SymbolicLinkName
_In_ WDFREQUEST _In_ PWDF_REQUEST_REUSE_PARAMS ReuseParams
_In_ WDFDEVICE _Out_ PWDF_DEVICE_STATE DeviceState
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN _In_opt_ PVOID Tag
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ ULONG _Out_ PVOID _Out_ PULONG _Out_ PDEVPROPTYPE Type
_In_ WDFUSBINTERFACE _In_ UCHAR _Out_ PUSB_INTERFACE_DESCRIPTOR InterfaceDescriptor
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
_In_ WDFINTERRUPT _In_ WDF_INTERRUPT_POLICY _In_ WDF_INTERRUPT_PRIORITY Priority
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE StopAndPurgeComplete
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST FoundRequest
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFMEMORY * PropertyMemory
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE Interface
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG DeviceInstanceKeyType
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES StringsAttributes
_In_ WDFINTERRUPT _In_ PWDF_INTERRUPT_EXTENDED_POLICY PolicyAndGroup
_Must_inspect_result_ _In_ WDFUSBDEVICE _Out_writes_bytes_to_opt_ ConfigDescriptorLength PVOID _Inout_ PUSHORT ConfigDescriptorLength
_Must_inspect_result_ _In_ WDFDEVICE _In_ PIRP _In_ WDFCONTEXT DispatchContext
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_ PULONG ResultLength
_In_ WDFUSBDEVICE _Out_ PUSB_DEVICE_DESCRIPTOR UsbDeviceDescriptor
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ CONST GUID * CapabilityType
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES DriverAttributes
WDFAPI NTSTATUS VFWDFEXPORT() WdfObjectAllocateContext(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PWDF_OBJECT_ATTRIBUTES ContextAttributes, _Outptr_opt_ PVOID *Context)
WDFVERSION WdfVersion
BufferSize
_Must_inspect_result_ _In_opt_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES StringAttributes
_Must_inspect_result_ _In_ WDFIOTARGET _In_ PWDF_IO_TARGET_OPEN_PARAMS OpenParams
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
_Must_inspect_result_ _In_ WDFDRIVER _In_ PWDF_DRIVER_VERSION_AVAILABLE_PARAMS VersionAvailableParams
WDFAPI VOID VFWDFEXPORT() WdfObjectDereferenceActual(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File)
_Must_inspect_result_ _In_ WDFQUEUE _Out_ WDFREQUEST * OutRequest
_Must_inspect_result_ _Inout_ PWDFDEVICE_INIT _In_opt_ PWDF_OBJECT_ATTRIBUTES DeviceAttributes
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_writes_opt_ NumCharacters PUSHORT _Inout_ PUSHORT _In_ UCHAR _In_opt_ USHORT LangID
_In_ PWDFDEVICE_INIT _In_ PWDF_REMOVE_LOCK_OPTIONS Options
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT ValueByteLength
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFCOLLECTION * Collection
_Must_inspect_result_ WDFAPI NTSTATUS VFWDFEXPORT() WdfWaitLockAcquire(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) WDFWAITLOCK Lock, _In_opt_ PLONGLONG Timeout)
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ PWDF_MEMORY_DESCRIPTOR MemoryDescriptor
_In_ PWDFDEVICE_INIT _In_ PWDF_POWER_POLICY_EVENT_CALLBACKS PowerPolicyEventCallbacks
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN WaitForD0
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST _In_opt_ WDFFILEOBJECT _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters
_Must_inspect_result_ _In_ WDFDEVICE _In_ CONST GUID _In_opt_ PCUNICODE_STRING ReferenceString
_Must_inspect_result_ _In_ WDFREQUEST _In_ WDFQUEUE DestinationQueue
PAGED_CODE_LOCKED()
_Must_inspect_result_ _In_ WDFREQUEST _In_ size_t MinimumRequiredSize
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_IO_QUEUE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES QueueAttributes
_Must_inspect_result_ _In_ WDFDMATRANSACTION _In_ PFN_WDF_PROGRAM_DMA _In_ WDF_DMA_DIRECTION _In_ PMDL _In_ size_t Offset
_In_ WDFQUEUE _Out_opt_ PULONG _Out_opt_ PULONG DriverRequests
_In_ WDFINTERRUPT _In_ WDF_INTERRUPT_POLICY _In_ WDF_INTERRUPT_PRIORITY _In_ KAFFINITY TargetProcessorSet
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
_In_ WDFIOTARGET _In_ _Strict_type_match_ WDF_IO_TARGET_SENT_IO_ACTION Action
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
_In_ WDFDEVICE _In_ WDF_DEVICE_FAILED_ACTION FailedAction
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ CONST GUID _In_ ULONG CapabilityBufferLength
_In_ WDFREQUEST _In_ BOOLEAN Requeue
_Must_inspect_result_ _In_opt_ WDFKEY ParentKey
_Must_inspect_result_ _In_ PWDF_TIMER_CONFIG _In_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFTIMER * Timer
_In_ WDFDPC _In_ BOOLEAN Wait
_Must_inspect_result_ _In_ WDFREQUEST _In_ size_t MinimumRequiredLength
_In_ WDFDEVICE _In_ PWDF_DEVICE_POWER_CAPABILITIES PowerCapabilities
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE StopComplete
_Must_inspect_result_ _In_ WDFIOTARGET _In_ WDFREQUEST _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET InputBufferOffset
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_ ULONG IoctlCode
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN _In_opt_ PVOID _In_ LONG Line
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty
_In_ WDFUSBINTERFACE _In_ UCHAR PipeIndex
_In_ WDFREQUEST _In_ PFN_WDF_REQUEST_CANCEL EvtRequestCancel
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesRead
_Must_inspect_result_ _In_ WDFDRIVER Driver
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_ ULONG _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesReturned
_Must_inspect_result_ WDFAPI BOOLEAN VFWDFEXPORT() WdfRequestSend(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFIOTARGET Target, _In_opt_ PWDF_REQUEST_SEND_OPTIONS Options)
_Must_inspect_result_ _In_ WDFUSBINTERFACE _In_opt_ PWDF_OBJECT_ATTRIBUTES PipesAttributes
_In_ WDFQUEUE _Out_opt_ PULONG QueueRequests
WDFAPI WDFDEVICE VFWDFEXPORT() WdfInterruptGetDevice(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt)
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_writes_opt_ NumCharacters PUSHORT _Inout_ PUSHORT _In_ UCHAR StringIndex
_In_ PWDFDEVICE_INIT _In_ WDF_DEVICE_IO_TYPE IoType
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes
_In_ WDFTIMER _In_ LONGLONG DueTime
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG CreateOptions
NTSTATUS rtn
PropertyBuffer
_Must_inspect_result_ _In_ WDFDMATRANSACTION _In_opt_ WDFCONTEXT Context
_Must_inspect_result_ _In_ PWDF_WORKITEM_CONFIG _In_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWORKITEM * WorkItem
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ __drv_aliasesMem PVOID Buffer
_Must_inspect_result_ _In_ WDFCMRESLIST List
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET SetupPacket
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_INTERRUPT_CONFIG Configuration
_In_ WDFDEVICE _In_ CONST GUID _In_opt_ PCUNICODE_STRING _In_ BOOLEAN IsInterfaceEnabled
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG _Out_opt_ PULONG CreateDisposition
_In_ WDFDEVICE _In_ BOOLEAN Stoppable
_In_ WDFCOLLECTION _In_ WDFOBJECT Item
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES SpinLockAttributes
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ WDFREQUEST _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ WDFMEMORY TransferMemory
_In_ WDFREQUEST _In_ NTSTATUS _In_ ULONG_PTR Information
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG PoolTag
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ PWDF_DRIVER_CONFIG DriverConfig
_In_ WDFDMATRANSACTION _Out_ NTSTATUS * Status
_In_ WDFUSBPIPE _Out_ PWDF_USB_PIPE_INFORMATION PipeInformation
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ PWDF_MEMORY_DESCRIPTOR _Out_opt_ PULONG BytesTransferred
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY WriteMemory
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET ReadOffset
_In_ PWDFDEVICE_INIT _In_ PFN_WDF_DEVICE_SHUTDOWN_NOTIFICATION _In_ UCHAR Flags
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID * Guid
_Must_inspect_result_ _In_ WDFMEMORY DestinationMemory
_In_ PWDFDEVICE_INIT _In_ WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE ReleaseHardwareOrderOnFailure
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
RtlZeroMemory & hookInfo(VF_HOOK_PROCESS_INFO)
WDFAPI VOID VFWDFEXPORT() WdfVerifierKeBugCheck(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
WDFAPI VOID VFWDFEXPORT() WdfCxVerifierKeBugCheck(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ WDFOBJECT Object, _In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
WDFAPI BOOLEAN VFWDFEXPORT() WdfInterruptQueueWorkItemForIsr(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt)
_In_ WDFREQUEST _Out_ PWDF_REQUEST_COMPLETION_PARAMS Params
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG _In_ _Out_ WDFMEMORY * Memory
_In_ PWDFDEVICE_INIT _In_ PWDF_IO_TYPE_CONFIG IoTypeConfig
_In_ WDFUSBINTERFACE UsbInterface
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFKEY * Key
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
_Must_inspect_result_ _In_ PWDFCXDEVICE_INIT CxDeviceInit
_Must_inspect_result_ _In_ WDFDMAENABLER _In_ _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE QueueReady
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE PurgeComplete
_Must_inspect_result_ _In_ WDFMEMORY _In_ size_t DestinationOffset
WDFAPI PVOID FASTCALL VFWDFEXPORT() WdfObjectGetTypedContextWorker(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PCWDF_OBJECT_CONTEXT_TYPE_INFO TypeInfo)
_In_ WDFUSBINTERFACE _In_ UCHAR _In_ UCHAR EndpointIndex
_In_ WDFUSBINTERFACE _In_ UCHAR _Out_opt_ PWDF_USB_PIPE_INFORMATION PipeInfo
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_writes_opt_ NumCharacters PUSHORT _Inout_ PUSHORT NumCharacters
_Must_inspect_result_ _In_ WDFDEVICE _In_opt_ WDFDRIVER _In_ UCHAR _In_ PFN_WDFDEVICE_WDM_IRP_DISPATCH _In_opt_ WDFCONTEXT DriverContext
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_opt_ PULONG ValueLengthQueried
WDFAPI WDFOBJECT FASTCALL VFWDFEXPORT() WdfObjectContextGetObject(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PVOID ContextPointer)
_In_ PWDFCXDEVICE_INIT _In_ PWDF_OBJECT_ATTRIBUTES RequestAttributes
_In_ WDFUSBDEVICE _In_ UCHAR InterfaceIndex
_In_ PWDFDEVICE_INIT _In_ PWDF_PNPPOWER_EVENT_CALLBACKS PnpPowerEventCallbacks
_Must_inspect_result_ _In_ WDFUSBDEVICE _Out_writes_bytes_to_opt_ ConfigDescriptorLength PVOID ConfigDescriptor
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN _In_opt_ PVOID _In_ LONG _In_z_ PCHAR File
_In_ PWDFDEVICE_INIT _In_ BOOLEAN IsPowerPolicyOwner
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE DrainComplete
_Must_inspect_result_ _In_ WDFDEVICE _In_ CONST GUID * InterfaceClassGUID
_In_ PWDFDEVICE_INIT _In_ PWDF_FILEOBJECT_CONFIG FileObjectConfig
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_opt_ PULONG _Out_opt_ PULONG ValueType
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ ULONG _Out_ PVOID _Out_ PULONG RequiredSize
_In_ WDFUSBINTERFACE _In_ UCHAR _In_ UCHAR _Out_ PWDF_USB_PIPE_INFORMATION EndpointInfo
_Must_inspect_result_ _In_ WDFDEVICE Device
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET WriteOffset
_Must_inspect_result_ _In_ WDFDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFUSBDEVICE * UsbDevice
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS Settings
_In_ WDFCOLLECTION _In_ ULONG Index
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFQUEUE _In_ _Strict_type_match_ WDF_REQUEST_TYPE RequestType
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES LockAttributes
WDFAPI BOOLEAN VFWDFEXPORT() WdfInterruptQueueDpcForIsr(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt)
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES StringMemoryAttributes
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesWritten
_In_ PWDFCXDEVICE_INIT _In_ PWDFCX_FILEOBJECT_CONFIG CxFileObjectConfig
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID _In_ ULONG QueryBufferLength
_In_ PWDFDEVICE_INIT DeviceInit
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ WDFCOLLECTION StringsCollection
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES PropertyMemoryAttributes
_In_ WDFINTERRUPT _In_ WDF_INTERRUPT_POLICY Policy
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFSPINLOCK * SpinLock
_Must_inspect_result_ _In_opt_ PCUNICODE_STRING UnicodeString
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY ReadMemory
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES CollectionAttributes
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFMEMORY * StringMemory
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _In_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET MemoryOffsets
_In_ WDFUSBPIPE Pipe
_In_ WDFDEVICE _In_ PFILE_OBJECT FileObject
_Must_inspect_result_ _In_ PWDFCXDEVICE_INIT _In_ PFN_WDFCXDEVICE_WDM_IRP_PREPROCESS _In_ UCHAR MajorFunction
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_INTERRUPT_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFINTERRUPT * Interrupt
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions
Length
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG _In_opt_ PVOID Data
_In_ WDFREQUEST _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE _In_opt_ __drv_aliasesMem WDFCONTEXT CompletionContext
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFREQUEST Request
_Must_inspect_result_ _In_ WDFMEMORY SourceMemory
_In_ WDFDEVICE _In_ PWDF_DEVICE_PNP_CAPABILITIES PnpCapabilities
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES PipeAttributes
_Must_inspect_result_ _In_ WDFDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES IoTargetAttributes
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ WDFREQUEST _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET TransferOffset
_In_ WDFUSBINTERFACE _In_ UCHAR SettingIndex
_Must_inspect_result_ _In_ WDFMEMORY _In_ size_t SourceOffset
WDFAPI VOID VFWDFEXPORT() WdfObjectReferenceActual(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File)
enum _SECURITY_IMPERSONATION_LEVEL SECURITY_IMPERSONATION_LEVEL
#define _Outptr_result_bytebuffer_(size)
Definition: ms_sal.h:472
#define _Out_opt_
Definition: ms_sal.h:346
#define _In_reads_bytes_(size)
Definition: ms_sal.h:321
#define _Inout_
Definition: ms_sal.h:378
#define _Out_writes_bytes_(size)
Definition: ms_sal.h:350
#define _Out_writes_bytes_all_(size)
Definition: ms_sal.h:362
#define _In_z_
Definition: ms_sal.h:313
#define _Outptr_opt_result_bytebuffer_(size)
Definition: ms_sal.h:473
#define _Outptr_opt_
Definition: ms_sal.h:429
#define _Deref_out_range_(lb, ub)
Definition: ms_sal.h:575
#define _Always_(annos)
Definition: ms_sal.h:270
#define _Out_writes_opt_(size)
Definition: ms_sal.h:349
#define _Pre_writable_byte_size_(size)
Definition: ms_sal.h:647
#define _Pre_notnull_
Definition: ms_sal.h:680
#define _Inout_opt_
Definition: ms_sal.h:379
#define _Must_inspect_result_
Definition: ms_sal.h:558
#define _Out_writes_all_opt_(size)
Definition: ms_sal.h:358
#define _Out_
Definition: ms_sal.h:345
#define _In_reads_opt_(size)
Definition: ms_sal.h:320
#define _Out_writes_bytes_all_opt_(size)
Definition: ms_sal.h:363
#define _When_(expr, annos)
Definition: ms_sal.h:254
#define _Strict_type_match_
Definition: ms_sal.h:2954
#define _Out_writes_bytes_to_opt_(size, count)
Definition: ms_sal.h:361
#define _In_
Definition: ms_sal.h:308
#define _In_reads_bytes_opt_(size)
Definition: ms_sal.h:322
#define _In_opt_
Definition: ms_sal.h:309
#define _Post_satisfies_(cond)
Definition: ms_sal.h:588
#define _Out_writes_bytes_opt_(size)
Definition: ms_sal.h:351
#define _In_reads_(size)
Definition: ms_sal.h:319
enum _WDF_EVENT_TYPE WDF_EVENT_TYPE
Definition: mxum.h:120
ULONG ACCESS_MASK
Definition: nt_native.h:40
#define FASTCALL
Definition: nt_native.h:50
#define UNREFERENCED_PARAMETER(P)
Definition: ntbasedef.h:317
__GNU_EXTENSION typedef __int64 * PLONGLONG
Definition: ntbasedef.h:382
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
POWER_ACTION
Definition: ntpoapi.h:122
#define CONST
Definition: pedump.c:81
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
static ULONG Timeout
Definition: ping.c:61
int zero
Definition: sehframes.cpp:29
#define STATUS_SUCCESS
Definition: shellext.h:65
Definition: scsiwmi.h:51
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceFormatRequestForString
Definition: fxdynamics.h:436
PFN_WDFREGISTRYASSIGNMEMORY pfnWdfRegistryAssignMemory
Definition: fxdynamics.h:293
PFN_WDFWORKITEMFLUSH pfnWdfWorkItemFlush
Definition: fxdynamics.h:491
PFN_WDFFDOINITOPENREGISTRYKEY pfnWdfFdoInitOpenRegistryKey
Definition: fxdynamics.h:176
PFN_WDFWORKITEMGETPARENTOBJECT pfnWdfWorkItemGetParentObject
Definition: fxdynamics.h:490
PFN_ROSWDFUNIMPLEMENTED pfnWdfCxDeviceInitAllocate
Definition: fxdynamics.h:515
PFN_WDFREQUESTISCANCELED pfnWdfRequestIsCanceled
Definition: fxdynamics.h:308
PFN_WDFIOTARGETCLOSE pfnWdfIoTargetClose
Definition: fxdynamics.h:221
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetConfiguredSettingIndex
Definition: fxdynamics.h:471
PFN_WDFDEVICEINITALLOWSELFIOTARGET pfnWdfDeviceInitAllowSelfIoTarget
Definition: fxdynamics.h:583
PFN_WDFREQUESTREUSE pfnWdfRequestReuse
Definition: fxdynamics.h:300
PFN_WDFDEVICEASSIGNPROPERTY pfnWdfDeviceAssignProperty
Definition: fxdynamics.h:577
PFN_WDFIOTARGETSTART pfnWdfIoTargetStart
Definition: fxdynamics.h:222
PFN_WDFSPINLOCKCREATE pfnWdfSpinLockCreate
Definition: fxdynamics.h:366
PFN_WDFREQUESTSETUSERMODEDRIVERINITIATEDIO pfnWdfRequestSetUserModeDriverInitiatedIo
Definition: fxdynamics.h:203
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeReadSynchronously
Definition: fxdynamics.h:456
PFN_WDFINTERRUPTCREATE pfnWdfInterruptCreate
Definition: fxdynamics.h:192
PFN_WDFSTRINGCREATE pfnWdfStringCreate
Definition: fxdynamics.h:359
PFN_WDFDRIVERISVERSIONAVAILABLE pfnWdfDriverIsVersionAvailable
Definition: fxdynamics.h:174
PFN_WDFCOLLECTIONADD pfnWdfCollectionAdd
Definition: fxdynamics.h:43
PFN_WDFIOTARGETPURGE pfnWdfIoTargetPurge
Definition: fxdynamics.h:552
PFN_WDFREQUESTSTOPACKNOWLEDGE pfnWdfRequestStopAcknowledge
Definition: fxdynamics.h:335
PFN_WDFDEVICECONFIGUREREQUESTDISPATCHING pfnWdfDeviceConfigureRequestDispatching
Definition: fxdynamics.h:126
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceResetPortSynchronously
Definition: fxdynamics.h:444
PFN_WDFINTERRUPTGETDEVICE pfnWdfInterruptGetDevice
Definition: fxdynamics.h:202
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeGetType
Definition: fxdynamics.h:452
PFN_WDFDEVICEGETDEVICESTACKIOTYPE pfnWdfDeviceGetDeviceStackIoType
Definition: fxdynamics.h:75
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeIsInEndpoint
Definition: fxdynamics.h:450
PFN_WDFDEVICEINITSETRELEASEHARDWAREORDERONFAILURE pfnWdfDeviceInitSetReleaseHardwareOrderOnFailure
Definition: fxdynamics.h:570
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetEndpointInformation
Definition: fxdynamics.h:469
PFN_WDFIOTARGETCLOSEFORQUERYREMOVE pfnWdfIoTargetCloseForQueryRemove
Definition: fxdynamics.h:220
PFN_WDFDEVICEINITSETPNPPOWEREVENTCALLBACKS pfnWdfDeviceInitSetPnpPowerEventCallbacks
Definition: fxdynamics.h:88
PFN_WDFIOQUEUESTART pfnWdfIoQueueStart
Definition: fxdynamics.h:205
PFN_WDFIOQUEUEFINDREQUEST pfnWdfIoQueueFindRequest
Definition: fxdynamics.h:211
PFN_WDFIOQUEUERETRIEVEFOUNDREQUEST pfnWdfIoQueueRetrieveFoundRequest
Definition: fxdynamics.h:212
PFN_WDFMEMORYCOPYTOBUFFER pfnWdfMemoryCopyToBuffer
Definition: fxdynamics.h:247
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeFormatRequestForWrite
Definition: fxdynamics.h:455
PFN_WDFINTERRUPTACQUIRELOCK pfnWdfInterruptAcquireLock
Definition: fxdynamics.h:195
PFN_WDFREQUESTISFROMUSERMODEDRIVER pfnWdfRequestIsFromUserModeDriver
Definition: fxdynamics.h:202
PFN_WDFINTERRUPTENABLE pfnWdfInterruptEnable
Definition: fxdynamics.h:197
PFN_WDFDEVICEQUERYINTERFACEPROPERTY pfnWdfDeviceQueryInterfaceProperty
Definition: fxdynamics.h:74
PFN_WDFREGISTRYASSIGNMULTISTRING pfnWdfRegistryAssignMultiString
Definition: fxdynamics.h:294
PFN_WDFDEVICECREATESYMBOLICLINK pfnWdfDeviceCreateSymbolicLink
Definition: fxdynamics.h:113
PFN_WDFCMRESOURCELISTGETCOUNT pfnWdfCmResourceListGetCount
Definition: fxdynamics.h:355
PFN_WDFDEVICEGETDEFAULTQUEUE pfnWdfDeviceGetDefaultQueue
Definition: fxdynamics.h:125
PFN_WDFIOQUEUESTOPANDPURGE pfnWdfIoQueueStopAndPurge
Definition: fxdynamics.h:550
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetInterfaceNumber
Definition: fxdynamics.h:465
PFN_WDFDRIVERCREATE pfnWdfDriverCreate
Definition: fxdynamics.h:167
PFN_WDFREQUESTRETRIEVEACTIVITYID pfnWdfRequestRetrieveActivityId
Definition: fxdynamics.h:206
PFN_WDFIOTARGETFORMATREQUESTFORIOCTL pfnWdfIoTargetFormatRequestForIoctl
Definition: fxdynamics.h:238
PFN_WDFMEMORYCREATE pfnWdfMemoryCreate
Definition: fxdynamics.h:243
PFN_ROSWDFUNIMPLEMENTED pfnWdfVerifierKeBugCheck
Definition: fxdynamics.h:476
PFN_WDFREQUESTALLOCATETIMER pfnWdfRequestAllocateTimer
Definition: fxdynamics.h:313
PFN_WDFREQUESTCOMPLETEWITHINFORMATION pfnWdfRequestCompleteWithInformation
Definition: fxdynamics.h:316
PFN_WDFOBJECTQUERY pfnWdfObjectQuery
Definition: fxdynamics.h:260
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetDescriptor
Definition: fxdynamics.h:467
PFN_WDFCOLLECTIONREMOVE pfnWdfCollectionRemove
Definition: fxdynamics.h:44
PFN_WDFDEVICEHIDNOTIFYPRESENCE pfnWdfDeviceHidNotifyPresence
Definition: fxdynamics.h:273
PFN_WDFREGISTRYCREATEKEY pfnWdfRegistryCreateKey
Definition: fxdynamics.h:281
PFN_WDFREQUESTMARKCANCELABLE pfnWdfRequestMarkCancelable
Definition: fxdynamics.h:306
PFN_WDFIOQUEUESTOP pfnWdfIoQueueStop
Definition: fxdynamics.h:206
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceGetInterface
Definition: fxdynamics.h:470
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceSelectSetting
Definition: fxdynamics.h:468
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceCreateWithParameters
Definition: fxdynamics.h:557
PFN_WDFDEVICESETSTATICSTOPREMOVE pfnWdfDeviceSetStaticStopRemove
Definition: fxdynamics.h:109
PFN_WDFIOTARGETFORMATREQUESTFORWRITE pfnWdfIoTargetFormatRequestForWrite
Definition: fxdynamics.h:236
PFN_WDFREQUESTSETINFORMATION pfnWdfRequestSetInformation
Definition: fxdynamics.h:326
PFN_WDFREQUESTFORMATREQUESTUSINGCURRENTTYPE pfnWdfRequestFormatRequestUsingCurrentType
Definition: fxdynamics.h:302
PFN_ROSWDFUNIMPLEMENTED pfnWdfCxVerifierKeBugCheck
Definition: fxdynamics.h:566
PFN_WDFREGISTRYQUERYULONG pfnWdfRegistryQueryULong
Definition: fxdynamics.h:291
PFN_WDFREQUESTUNMARKCANCELABLE pfnWdfRequestUnmarkCancelable
Definition: fxdynamics.h:307
PFN_WDFDEVICECONFIGUREWDMIRPDISPATCHCALLBACK pfnWdfDeviceConfigureWdmIrpDispatchCallback
Definition: fxdynamics.h:524
PFN_WDFREGISTRYASSIGNVALUE pfnWdfRegistryAssignValue
Definition: fxdynamics.h:292
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeConfigContinuousReader
Definition: fxdynamics.h:458
PFN_WDFIOQUEUEDRAIN pfnWdfIoQueueDrain
Definition: fxdynamics.h:214
PFN_WDFREQUESTGETREQUESTORPROCESSID pfnWdfRequestGetRequestorProcessId
Definition: fxdynamics.h:201
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetConfiguredPipe
Definition: fxdynamics.h:473
PFN_WDFDEVICEGETIOTARGET pfnWdfDeviceGetIoTarget
Definition: fxdynamics.h:75
PFN_WDFOBJECTCREATE pfnWdfObjectCreate
Definition: fxdynamics.h:258
PFN_WDFDEVICEINITSETPOWERPOLICYOWNERSHIP pfnWdfDeviceInitSetPowerPolicyOwnership
Definition: fxdynamics.h:90
PFN_WDFFDOINITALLOCANDQUERYPROPERTYEX pfnWdfFdoInitAllocAndQueryPropertyEx
Definition: fxdynamics.h:579
PFN_WDFCOLLECTIONCREATE pfnWdfCollectionCreate
Definition: fxdynamics.h:41
PFN_WDFIOQUEUERETRIEVENEXTREQUEST pfnWdfIoQueueRetrieveNextRequest
Definition: fxdynamics.h:209
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeResetSynchronously
Definition: fxdynamics.h:461
PFN_WDFDEVICESETPNPCAPABILITIES pfnWdfDeviceSetPnpCapabilities
Definition: fxdynamics.h:116
PFN_WDFINTERRUPTSETPOLICY pfnWdfInterruptSetPolicy
Definition: fxdynamics.h:201
PFN_WDFDEVICERETRIEVEDEVICEINTERFACESTRING pfnWdfDeviceRetrieveDeviceInterfaceString
Definition: fxdynamics.h:112
PFN_WDFDEVICEPOSTEVENT pfnWdfDevicePostEvent
Definition: fxdynamics.h:66
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceCreate
Definition: fxdynamics.h:430
PFN_WDFDRIVEROPENPARAMETERSREGISTRYKEY pfnWdfDriverOpenParametersRegistryKey
Definition: fxdynamics.h:170
PFN_WDFIOTARGETWDMGETTARGETFILEHANDLE pfnWdfIoTargetWdmGetTargetFileHandle
Definition: fxdynamics.h:232
PFN_WDFWORKITEMCREATE pfnWdfWorkItemCreate
Definition: fxdynamics.h:488
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetNumSettings
Definition: fxdynamics.h:499
PFN_WDFREGISTRYQUERYVALUE pfnWdfRegistryQueryValue
Definition: fxdynamics.h:286
PFN_WDFREGISTRYQUERYUNICODESTRING pfnWdfRegistryQueryUnicodeString
Definition: fxdynamics.h:289
PFN_WDFREQUESTGETINFORMATION pfnWdfRequestGetInformation
Definition: fxdynamics.h:327
PFN_WDFREGISTRYASSIGNSTRING pfnWdfRegistryAssignString
Definition: fxdynamics.h:296
PFN_WDFREQUESTCOMPLETE pfnWdfRequestComplete
Definition: fxdynamics.h:314
PFN_WDFIOQUEUEPURGESYNCHRONOUSLY pfnWdfIoQueuePurgeSynchronously
Definition: fxdynamics.h:215
PFN_WDFDEVICEOPENDEVICEMAPKEY pfnWdfDeviceOpenDevicemapKey
Definition: fxdynamics.h:585
PFN_WDFDEVICESETFAILED pfnWdfDeviceSetFailed
Definition: fxdynamics.h:120
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeIsOutEndpoint
Definition: fxdynamics.h:451
PFN_WDFDEVICEINITSETIOTYPE pfnWdfDeviceInitSetIoType
Definition: fxdynamics.h:94
PFN_WDFIOQUEUERETRIEVEREQUESTBYFILEOBJECT pfnWdfIoQueueRetrieveRequestByFileObject
Definition: fxdynamics.h:210
PFN_WDFDEVICEUNMAPIOSPACE pfnWdfDeviceUnmapIoSpace
Definition: fxdynamics.h:68
PFN_WDFDEVICEWRITETOHARDWARE pfnWdfDeviceWriteToHardware
Definition: fxdynamics.h:71
PFN_WDFTIMERGETPARENTOBJECT pfnWdfTimerGetParentObject
Definition: fxdynamics.h:372
PFN_WDFINTERRUPTQUEUEDPCFORISR pfnWdfInterruptQueueDpcForIsr
Definition: fxdynamics.h:193
PFN_WDFREQUESTFORWARDTOIOQUEUE pfnWdfRequestForwardToIoQueue
Definition: fxdynamics.h:332
PFN_WDFIOTARGETGETDEVICE pfnWdfIoTargetGetDevice
Definition: fxdynamics.h:225
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceQueryUsbCapability
Definition: fxdynamics.h:558
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceGetNumInterfaces
Definition: fxdynamics.h:437
PFN_WDFINTERRUPTSYNCHRONIZE pfnWdfInterruptSynchronize
Definition: fxdynamics.h:194
PFN_WDFDEVICEGETHARDWAREREGISTERMAPPEDADDRESS pfnWdfDeviceGetHardwareRegisterMappedAddress
Definition: fxdynamics.h:69
PFN_WDFFDOINITQUERYPROPERTYEX pfnWdfFdoInitQueryPropertyEx
Definition: fxdynamics.h:578
PFN_WDFREQUESTGETPARAMETERS pfnWdfRequestGetParameters
Definition: fxdynamics.h:317
PFN_WDFREGISTRYASSIGNUNICODESTRING pfnWdfRegistryAssignUnicodeString
Definition: fxdynamics.h:295
PFN_WDFDEVICEASSIGNS0IDLESETTINGS pfnWdfDeviceAssignS0IdleSettings
Definition: fxdynamics.h:79
PFN_WDFFILEOBJECTGETRELATEDFILEOBJECT pfnWdfFileObjectGetRelatedFileObject
Definition: fxdynamics.h:93
PFN_WDFINTERRUPTDISABLE pfnWdfInterruptDisable
Definition: fxdynamics.h:198
PFN_WDFREQUESTGETEFFECTIVEIOTYPE pfnWdfRequestGetEffectiveIoType
Definition: fxdynamics.h:207
PFN_WDFOBJECTGETTYPEDCONTEXTWORKER pfnWdfObjectGetTypedContextWorker
Definition: fxdynamics.h:253
PFN_WDFDEVICESTOPIDLENOTRACK pfnWdfDeviceStopIdleNoTrack
Definition: fxdynamics.h:121
PFN_WDFWORKITEMENQUEUE pfnWdfWorkItemEnqueue
Definition: fxdynamics.h:489
PFN_WDFTIMERSTOP pfnWdfTimerStop
Definition: fxdynamics.h:371
PFN_WDFREQUESTGETSTATUS pfnWdfRequestGetStatus
Definition: fxdynamics.h:305
PFN_ROSWDFUNIMPLEMENTED pfnWdfVerifierDbgBreakPoint
Definition: fxdynamics.h:475
PFN_WDFDEVICEGETSYSTEMPOWERACTION pfnWdfDeviceGetSystemPowerAction
Definition: fxdynamics.h:502
PFN_WDFTIMERCREATE pfnWdfTimerCreate
Definition: fxdynamics.h:369
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeFormatRequestForAbort
Definition: fxdynamics.h:460
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeSetNoMaximumPacketSizeCheck
Definition: fxdynamics.h:453
PFN_WDFDEVICECREATE pfnWdfDeviceCreate
Definition: fxdynamics.h:108
PFN_WDFDEVICESETPOWERCAPABILITIES pfnWdfDeviceSetPowerCapabilities
Definition: fxdynamics.h:117
PFN_WDFREQUESTISFROM32BITPROCESS pfnWdfRequestIsFrom32BitProcess
Definition: fxdynamics.h:310
PFN_WDFDEVICEGETDRIVER pfnWdfDeviceGetDriver
Definition: fxdynamics.h:72
PFN_WDFMEMORYCOPYFROMBUFFER pfnWdfMemoryCopyFromBuffer
Definition: fxdynamics.h:248
PFN_WDFIOTARGETSELFASSIGNDEFAULTIOQUEUE pfnWdfIoTargetSelfAssignDefaultIoQueue
Definition: fxdynamics.h:584
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceFormatRequestForControlTransfer
Definition: fxdynamics.h:442
PFN_WDFDEVICEGETFILEOBJECT pfnWdfDeviceGetFileObject
Definition: fxdynamics.h:123
PFN_ROSWDFUNIMPLEMENTED pfnWdfCxDeviceInitSetRequestAttributes
Definition: fxdynamics.h:518
PFN_WDFREQUESTGETCOMPLETIONPARAMS pfnWdfRequestGetCompletionParams
Definition: fxdynamics.h:312
PFN_WDFDEVICEQUERYPROPERTY pfnWdfDeviceQueryProperty
Definition: fxdynamics.h:114
PFN_WDFREQUESTGETREQUESTORMODE pfnWdfRequestGetRequestorMode
Definition: fxdynamics.h:331
PFN_WDFDEVICEINITSETIOTYPEEX pfnWdfDeviceInitSetIoTypeEx
Definition: fxdynamics.h:574
PFN_WDFFDOINITALLOCANDQUERYPROPERTY pfnWdfFdoInitAllocAndQueryProperty
Definition: fxdynamics.h:178
PFN_WDFINTERRUPTSETEXTENDEDPOLICY pfnWdfInterruptSetExtendedPolicy
Definition: fxdynamics.h:503
PFN_WDFFDOINITSETFILTER pfnWdfFdoInitSetFilter
Definition: fxdynamics.h:180
PFN_WDFDEVICEWDMDISPATCHIRP pfnWdfDeviceWdmDispatchIrp
Definition: fxdynamics.h:521
PFN_WDFIOQUEUEDRAINSYNCHRONOUSLY pfnWdfIoQueueDrainSynchronously
Definition: fxdynamics.h:213
PFN_WDFDEVICEASSIGNSXWAKESETTINGS pfnWdfDeviceAssignSxWakeSettings
Definition: fxdynamics.h:80
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetNumConfiguredPipes
Definition: fxdynamics.h:472
PFN_WDFDEVICEASSIGNINTERFACEPROPERTY pfnWdfDeviceAssignInterfaceProperty
Definition: fxdynamics.h:72
PFN_WDFOBJECTRELEASELOCK pfnWdfObjectReleaseLock
Definition: fxdynamics.h:362
PFN_WDFREQUESTGETIOQUEUE pfnWdfRequestGetIoQueue
Definition: fxdynamics.h:333
PFN_WDFINTERRUPTRELEASELOCK pfnWdfInterruptReleaseLock
Definition: fxdynamics.h:196
PFN_WDFREQUESTMARKCANCELABLEEX pfnWdfRequestMarkCancelableEx
Definition: fxdynamics.h:507
PFN_WDFCOLLECTIONGETLASTITEM pfnWdfCollectionGetLastItem
Definition: fxdynamics.h:48
PFN_WDFSTRINGGETUNICODESTRING pfnWdfStringGetUnicodeString
Definition: fxdynamics.h:360
PFN_WDFREQUESTRETRIEVEINPUTBUFFER pfnWdfRequestRetrieveInputBuffer
Definition: fxdynamics.h:320
PFN_WDFMEMORYASSIGNBUFFER pfnWdfMemoryAssignBuffer
Definition: fxdynamics.h:246
PFN_WDFREQUESTCANCELSENTREQUEST pfnWdfRequestCancelSentRequest
Definition: fxdynamics.h:309
PFN_WDFIOTARGETGETSTATE pfnWdfIoTargetGetState
Definition: fxdynamics.h:224
PFN_WDFMEMORYGETBUFFER pfnWdfMemoryGetBuffer
Definition: fxdynamics.h:245
PFN_WDFDEVICEMAPIOSPACE pfnWdfDeviceMapIoSpace
Definition: fxdynamics.h:67
PFN_WDFDEVICEALLOCANDQUERYPROPERTYEX pfnWdfDeviceAllocAndQueryPropertyEx
Definition: fxdynamics.h:576
PFN_WDFREQUESTRETRIEVEOUTPUTBUFFER pfnWdfRequestRetrieveOutputBuffer
Definition: fxdynamics.h:321
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeWriteSynchronously
Definition: fxdynamics.h:454
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeFormatRequestForRead
Definition: fxdynamics.h:457
PFN_WDFREGISTRYASSIGNULONG pfnWdfRegistryAssignULong
Definition: fxdynamics.h:297
PFN_WDFDEVICEINITSETPOWERPOLICYEVENTCALLBACKS pfnWdfDeviceInitSetPowerPolicyEventCallbacks
Definition: fxdynamics.h:89
PFN_WDFMEMORYCREATEPREALLOCATED pfnWdfMemoryCreatePreallocated
Definition: fxdynamics.h:244
PFN_WDFREGISTRYWDMGETHANDLE pfnWdfRegistryWdmGetHandle
Definition: fxdynamics.h:283
PFN_WDFWAITLOCKACQUIRE pfnWdfWaitLockAcquire
Definition: fxdynamics.h:364
PFN_WDFIOTARGETCREATE pfnWdfIoTargetCreate
Definition: fxdynamics.h:218
PFN_WDFDEVICEGETSELFIOTARGET pfnWdfDeviceGetSelfIoTarget
Definition: fxdynamics.h:582
PFN_WDFDEVICEINITSETFILEOBJECTCONFIG pfnWdfDeviceInitSetFileObjectConfig
Definition: fxdynamics.h:104
PFN_WDFDEVICERESUMEIDLENOTRACK pfnWdfDeviceResumeIdleNoTrack
Definition: fxdynamics.h:122
PFN_WDFOBJECTCONTEXTGETOBJECT pfnWdfObjectContextGetObject
Definition: fxdynamics.h:255
PFN_WDFCOLLECTIONGETFIRSTITEM pfnWdfCollectionGetFirstItem
Definition: fxdynamics.h:47
PFN_WDFREQUESTGETFILEOBJECT pfnWdfRequestGetFileObject
Definition: fxdynamics.h:328
PFN_WDFOBJECTALLOCATECONTEXT pfnWdfObjectAllocateContext
Definition: fxdynamics.h:254
PFN_WDFREQUESTSETCOMPLETIONROUTINE pfnWdfRequestSetCompletionRoutine
Definition: fxdynamics.h:311
PFN_WDFDRIVERGETREGISTRYPATH pfnWdfDriverGetRegistryPath
Definition: fxdynamics.h:168
PFN_WDFIOTARGETOPEN pfnWdfIoTargetOpen
Definition: fxdynamics.h:219
PFN_WDFREQUESTIMPERSONATE pfnWdfRequestImpersonate
Definition: fxdynamics.h:200
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceGetDeviceDescriptor
Definition: fxdynamics.h:432
PFN_WDFREQUESTCHANGETARGET pfnWdfRequestChangeTarget
Definition: fxdynamics.h:301
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceRetrieveInformation
Definition: fxdynamics.h:431
PFN_WDFDEVICEGETDEVICESTATE pfnWdfDeviceGetDeviceState
Definition: fxdynamics.h:61
PFN_WDFDEVICEREADFROMHARDWARE pfnWdfDeviceReadFromHardware
Definition: fxdynamics.h:70
PFN_WDFREQUESTRETRIEVEOUTPUTMEMORY pfnWdfRequestRetrieveOutputMemory
Definition: fxdynamics.h:319
PFN_WDFIOQUEUECREATE pfnWdfIoQueueCreate
Definition: fxdynamics.h:203
PFN_WDFINTERRUPTQUEUEWORKITEMFORISR pfnWdfInterruptQueueWorkItemForIsr
Definition: fxdynamics.h:548
PFN_WDFDEVICERESUMEIDLEACTUAL pfnWdfDeviceResumeIdleActual
Definition: fxdynamics.h:581
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbInterfaceGetNumEndpoints
Definition: fxdynamics.h:466
PFN_WDFDEVICEINITSETREQUESTATTRIBUTES pfnWdfDeviceInitSetRequestAttributes
Definition: fxdynamics.h:105
PFN_WDFIOQUEUEREADYNOTIFY pfnWdfIoQueueReadyNotify
Definition: fxdynamics.h:217
PFN_WDFIOQUEUEGETSTATE pfnWdfIoQueueGetState
Definition: fxdynamics.h:204
PFN_WDFOBJECTREFERENCEACTUAL pfnWdfObjectReferenceActual
Definition: fxdynamics.h:256
PFN_WDFDEVICESETDEVICESTATE pfnWdfDeviceSetDeviceState
Definition: fxdynamics.h:62
PFN_WDFDEVICESETDEVICEINTERFACESTATE pfnWdfDeviceSetDeviceInterfaceState
Definition: fxdynamics.h:111
PFN_WDFREGISTRYQUERYMEMORY pfnWdfRegistryQueryMemory
Definition: fxdynamics.h:287
PFN_WDFFDOINITQUERYPROPERTY pfnWdfFdoInitQueryProperty
Definition: fxdynamics.h:177
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceAllocAndQueryString
Definition: fxdynamics.h:435
PFN_WDFCOLLECTIONREMOVEITEM pfnWdfCollectionRemoveItem
Definition: fxdynamics.h:45
PFN_WDFOBJECTDELETE pfnWdfObjectDelete
Definition: fxdynamics.h:259
PFN_WDFIOQUEUESTOPANDPURGESYNCHRONOUSLY pfnWdfIoQueueStopAndPurgeSynchronously
Definition: fxdynamics.h:551
PFN_WDFDEVICEWDMDISPATCHIRPTOIOQUEUE pfnWdfDeviceWdmDispatchIrpToIoQueue
Definition: fxdynamics.h:522
PFN_WDFWAITLOCKRELEASE pfnWdfWaitLockRelease
Definition: fxdynamics.h:365
PFN_WDFREGISTRYOPENKEY pfnWdfRegistryOpenKey
Definition: fxdynamics.h:280
PFN_WDFDEVICECREATEDEVICEINTERFACE pfnWdfDeviceCreateDeviceInterface
Definition: fxdynamics.h:110
PFN_ROSWDFUNIMPLEMENTED pfnWdfGetTriageInfo
Definition: fxdynamics.h:572
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeAbortSynchronously
Definition: fxdynamics.h:459
PFN_WDFCOLLECTIONGETCOUNT pfnWdfCollectionGetCount
Definition: fxdynamics.h:42
PFN_WDFREGISTRYCLOSE pfnWdfRegistryClose
Definition: fxdynamics.h:282
PFN_WDFDEVICEOPENREGISTRYKEY pfnWdfDeviceOpenRegistryKey
Definition: fxdynamics.h:81
PFN_WDFCOLLECTIONGETITEM pfnWdfCollectionGetItem
Definition: fxdynamics.h:46
PFN_WDFCMRESOURCELISTGETDESCRIPTOR pfnWdfCmResourceListGetDescriptor
Definition: fxdynamics.h:356
PFN_WDFREGISTRYREMOVEVALUE pfnWdfRegistryRemoveValue
Definition: fxdynamics.h:285
PFN_WDFREGISTRYQUERYSTRING pfnWdfRegistryQueryString
Definition: fxdynamics.h:290
PFN_WDFREQUESTREQUEUE pfnWdfRequestRequeue
Definition: fxdynamics.h:334
PFN_WDFOBJECTACQUIRELOCK pfnWdfObjectAcquireLock
Definition: fxdynamics.h:361
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceSendControlTransferSynchronously
Definition: fxdynamics.h:441
PFN_WDFIOQUEUEPURGE pfnWdfIoQueuePurge
Definition: fxdynamics.h:216
PFN_WDFDEVICESTOPIDLEACTUAL pfnWdfDeviceStopIdleActual
Definition: fxdynamics.h:580
PFN_WDFDEVICEALLOCANDQUERYINTERFACEPROPERTY pfnWdfDeviceAllocAndQueryInterfaceProperty
Definition: fxdynamics.h:73
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceQueryString
Definition: fxdynamics.h:434
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeFormatRequestForReset
Definition: fxdynamics.h:462
PFN_WDFREQUESTSEND pfnWdfRequestSend
Definition: fxdynamics.h:304
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetPipeGetInformation
Definition: fxdynamics.h:449
PFN_WDFINTERRUPTGETINFO pfnWdfInterruptGetInfo
Definition: fxdynamics.h:200
PFN_WDFREGISTRYREMOVEKEY pfnWdfRegistryRemoveKey
Definition: fxdynamics.h:284
PFN_WDFOBJECTDEREFERENCEACTUAL pfnWdfObjectDereferenceActual
Definition: fxdynamics.h:257
PFN_WDFREQUESTRETRIEVEINPUTMEMORY pfnWdfRequestRetrieveInputMemory
Definition: fxdynamics.h:318
PFN_WDFIOTARGETSTOP pfnWdfIoTargetStop
Definition: fxdynamics.h:223
PFN_WDFINTERRUPTTRYTOACQUIRELOCK pfnWdfInterruptTryToAcquireLock
Definition: fxdynamics.h:549
PFN_WDFWAITLOCKCREATE pfnWdfWaitLockCreate
Definition: fxdynamics.h:363
PFN_WDFREGISTRYQUERYMULTISTRING pfnWdfRegistryQueryMultiString
Definition: fxdynamics.h:288
PFN_WDFDEVICEQUERYPROPERTYEX pfnWdfDeviceQueryPropertyEx
Definition: fxdynamics.h:575
PFN_WDFREQUESTSETACTIVITYID pfnWdfRequestSetActivityId
Definition: fxdynamics.h:205
PFN_WDFREQUESTGETUSERMODEDRIVERINITIATEDIO pfnWdfRequestGetUserModeDriverInitiatedIo
Definition: fxdynamics.h:204
PFN_WDFIOTARGETSENDWRITESYNCHRONOUSLY pfnWdfIoTargetSendWriteSynchronously
Definition: fxdynamics.h:235
PFN_WDFSPINLOCKRELEASE pfnWdfSpinLockRelease
Definition: fxdynamics.h:368
PFN_WDFTIMERSTART pfnWdfTimerStart
Definition: fxdynamics.h:370
PFN_WDFDEVICEINITENABLEHIDINTERFACE pfnWdfDeviceInitEnableHidInterface
Definition: fxdynamics.h:272
PFN_WDFFILEOBJECTGETINITIATORPROCESSID pfnWdfFileObjectGetInitiatorProcessId
Definition: fxdynamics.h:92
PFN_WDFIOQUEUEGETDEVICE pfnWdfIoQueueGetDevice
Definition: fxdynamics.h:208
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceSelectConfig
Definition: fxdynamics.h:438
PFN_WDFIOQUEUESTOPSYNCHRONOUSLY pfnWdfIoQueueStopSynchronously
Definition: fxdynamics.h:207
PFN_ROSWDFUNIMPLEMENTED pfnWdfUsbTargetDeviceRetrieveConfigDescriptor
Definition: fxdynamics.h:433
PFN_WDFDRIVERRETRIEVEVERSIONSTRING pfnWdfDriverRetrieveVersionString
Definition: fxdynamics.h:173
PFN_WDFDEVICEALLOCANDQUERYPROPERTY pfnWdfDeviceAllocAndQueryProperty
Definition: fxdynamics.h:115
PFN_WDFFILEOBJECTGETFILENAME pfnWdfFileObjectGetFileName
Definition: fxdynamics.h:188
PFN_WDFIOTARGETFORMATREQUESTFORREAD pfnWdfIoTargetFormatRequestForRead
Definition: fxdynamics.h:234
PFN_WDFFILEOBJECTGETDEVICE pfnWdfFileObjectGetDevice
Definition: fxdynamics.h:190
PFN_ROSWDFUNIMPLEMENTED pfnWdfCxDeviceInitSetFileObjectConfig
Definition: fxdynamics.h:519
PFN_WDFIOTARGETSENDREADSYNCHRONOUSLY pfnWdfIoTargetSendReadSynchronously
Definition: fxdynamics.h:233
PFN_WDFIOTARGETSENDIOCTLSYNCHRONOUSLY pfnWdfIoTargetSendIoctlSynchronously
Definition: fxdynamics.h:237
PFN_WDFSPINLOCKACQUIRE pfnWdfSpinLockAcquire
Definition: fxdynamics.h:367
PFN_WDFREQUESTCREATE pfnWdfRequestCreate
Definition: fxdynamics.h:298
WDFFUNCTIONS Functions
Definition: fxdynamics.h:594
Definition: ps.c:97
uint16_t * PWSTR
Definition: typedefs.h:56
uint32_t * PULONG_PTR
Definition: typedefs.h:65
uint32_t * PULONG
Definition: typedefs.h:59
INT POOL_TYPE
Definition: typedefs.h:78
int64_t LONGLONG
Definition: typedefs.h:68
ULONG_PTR SIZE_T
Definition: typedefs.h:80
uint16_t * PUSHORT
Definition: typedefs.h:56
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
char * PCHAR
Definition: typedefs.h:51
_In_ WDFDEVICE _In_ WDF_DEVICE_HWACCESS_TARGET_TYPE _In_ WDF_DEVICE_HWACCESS_TARGET_SIZE _In_ PVOID _In_opt_ ULONG Count
_In_ WDFDEVICE _Out_ WDF_DEVICE_IO_TYPE * ReadWriteIoType
_In_ WDFDEVICE _In_ REFGUID EventGuid
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN IsPresent
_Must_inspect_result_ _In_ WDFREQUEST _In_ SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
_In_ WDFDEVICE _Out_ WDF_DEVICE_IO_TYPE _Out_ WDF_DEVICE_IO_TYPE * IoControlIoType
_In_ WDFDEVICE _In_ WDF_DEVICE_HWACCESS_TARGET_TYPE _In_ WDF_DEVICE_HWACCESS_TARGET_SIZE _In_ PVOID TargetAddress
_Must_inspect_result_ _In_ WDFREQUEST _In_ SECURITY_IMPERSONATION_LEVEL _In_ PFN_WDF_REQUEST_IMPERSONATE EvtRequestImpersonate
_Must_inspect_result_ _In_ WDFDEVICE _In_ PHYSICAL_ADDRESS _In_ SIZE_T _In_ MEMORY_CACHING_TYPE CacheType
_In_ WDFDEVICE _In_ REFGUID _In_ WDF_EVENT_TYPE WdfEventType
_In_ WDFDEVICE _In_ REFGUID _In_ WDF_EVENT_TYPE _In_ ULONG DataSizeCb
_In_ WDFDEVICE _In_ PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData
_Must_inspect_result_ _In_ WDFDEVICE _In_ PHYSICAL_ADDRESS PhysicalAddress
_In_ WDFREQUEST _In_ LPGUID ActivityId
_Must_inspect_result_ _In_ WDFDEVICE _In_ PHYSICAL_ADDRESS _In_ SIZE_T _In_ MEMORY_CACHING_TYPE _Out_ PVOID * PseudoBaseAddress
_In_ WDFREQUEST _In_ BOOLEAN IsUserModeDriverInitiated
_Must_inspect_result_ _In_ WDFDEVICE _In_ PHYSICAL_ADDRESS _In_ SIZE_T NumberOfBytes
_Must_inspect_result_ NTSTATUS AddEventHooksWdfIoQueueCreate(__inout PVF_HOOK_PROCESS_INFO HookProcessInfo, __in PWDF_DRIVER_GLOBALS DriverGlobals, __in WDFDEVICE Device, __in PWDF_IO_QUEUE_CONFIG Config, __in PWDF_OBJECT_ATTRIBUTES QueueAttributes, __out WDFQUEUE *Queue)
Definition: verifier.cpp:250
_Must_inspect_result_ NTSTATUS AddEventHooksWdfDeviceCreate(__inout PVF_HOOK_PROCESS_INFO HookProcessInfo, __in PWDF_DRIVER_GLOBALS DriverGlobals, __in PWDFDEVICE_INIT *DeviceInit, __in PWDF_OBJECT_ATTRIBUTES DeviceAttributes, __out WDFDEVICE *Device)
Definition: verifier.cpp:52
FORCEINLINE BOOLEAN PerfIoStart(__in WDFREQUEST Handle)
Definition: vfprivkm.hpp:119
_Must_inspect_result_ _In_ WDFDEVICE Device
Definition: wdfchildlist.h:474
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_CHILD_LIST_CONFIG Config
Definition: wdfchildlist.h:476
_In_ PWDFDEVICE_INIT DeviceInit
Definition: wdfcontrol.h:113
VOID(STDCALL * PFN_WDFCXVERIFIERKEBUGCHECK)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ WDFOBJECT Object, _In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
Definition: wdfcx.h:104
NTSTATUS(STDCALL * PFN_WDFIOTARGETSELFASSIGNDEFAULTIOQUEUE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFQUEUE Queue)
Definition: wdfcx.h:124
WDFIOTARGET(STDCALL * PFN_WDFDEVICEGETSELFIOTARGET)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device)
Definition: wdfcx.h:114
PWDFCXDEVICE_INIT(STDCALL * PFN_WDFCXDEVICEINITALLOCATE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit)
Definition: wdfcx.h:69
VOID(STDCALL * PFN_WDFCXDEVICEINITSETFILEOBJECTCONFIG)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFCXDEVICE_INIT CxDeviceInit, _In_ PWDFCX_FILEOBJECT_CONFIG CxFileObjectConfig, _In_opt_ PWDF_OBJECT_ATTRIBUTES FileObjectAttributes)
Definition: wdfcx.h:97
VOID(STDCALL * PFN_WDFCXDEVICEINITSETREQUESTATTRIBUTES)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFCXDEVICE_INIT CxDeviceInit, _In_ PWDF_OBJECT_ATTRIBUTES RequestAttributes)
Definition: wdfcx.h:91
VOID(STDCALL * PFN_WDFDEVICEINITALLOWSELFIOTARGET)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit)
Definition: wdfcx.h:119
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_ PULONG ResultLength
Definition: wdfdevice.h:3776
EVT_WDFDEVICE_WDM_IRP_DISPATCH * PFN_WDFDEVICE_WDM_IRP_DISPATCH
Definition: wdfdevice.h:1710
enum _WDF_REQUEST_TYPE WDF_REQUEST_TYPE
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: wdfdevice.h:3815
_Must_inspect_result_ _In_ WDFDEVICE _In_ PIRP _In_ WDFQUEUE Queue
Definition: wdfdevice.h:2225
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN WaitForD0
Definition: wdfdevice.h:4006
_In_ PWDFDEVICE_INIT _In_ PWDF_REMOVE_LOCK_OPTIONS Options
Definition: wdfdevice.h:3534
_Must_inspect_result_ _Inout_ PWDFDEVICE_INIT _In_opt_ PWDF_OBJECT_ATTRIBUTES DeviceAttributes
Definition: wdfdevice.h:3563
enum _WDF_DEVICE_IO_TYPE WDF_DEVICE_IO_TYPE
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3771
enum _WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE
enum _WDF_DEVICE_FAILED_ACTION WDF_DEVICE_FAILED_ACTION
_In_ WDFREQUEST Request
Definition: wdfdevice.h:547
_In_ WDFDPC _In_ BOOLEAN Wait
Definition: wdfdpc.h:170
WDFAPI BOOLEAN(STDCALL * PFN_WDFINTERRUPTQUEUEDPCFORISR)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt)
Definition: wdfinterrupt.h:405
enum _WDF_INTERRUPT_PRIORITY WDF_INTERRUPT_PRIORITY
enum _WDF_INTERRUPT_POLICY WDF_INTERRUPT_POLICY
EVT_WDF_INTERRUPT_SYNCHRONIZE * PFN_WDF_INTERRUPT_SYNCHRONIZE
Definition: wdfinterrupt.h:115
WDFAPI BOOLEAN(STDCALL * PFN_WDFINTERRUPTQUEUEWORKITEMFORISR)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt)
Definition: wdfinterrupt.h:428
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_INTERRUPT_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFINTERRUPT * Interrupt
Definition: wdfinterrupt.h:379
WDFAPI WDFDEVICE(STDCALL * PFN_WDFINTERRUPTGETDEVICE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt)
Definition: wdfinterrupt.h:712
_Must_inspect_result_ _In_ WDFQUEUE _Out_ WDFREQUEST * OutRequest
Definition: wdfio.h:800
EVT_WDF_IO_QUEUE_STATE * PFN_WDF_IO_QUEUE_STATE
Definition: wdfio.h:380
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE PurgeComplete
Definition: wdfio.h:1030
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE StopComplete
Definition: wdfio.h:712
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_IO_QUEUE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES QueueAttributes
Definition: wdfio.h:617
enum _WDF_IO_QUEUE_STATE WDF_IO_QUEUE_STATE
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE StopAndPurgeComplete
Definition: wdfio.h:1133
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE DrainComplete
Definition: wdfio.h:968
enum _WDF_IO_TARGET_PURGE_IO_ACTION WDF_IO_TARGET_PURGE_IO_ACTION
enum _WDF_IO_TARGET_SENT_IO_ACTION WDF_IO_TARGET_SENT_IO_ACTION
_In_ WDFIOTARGET _In_ _Strict_type_match_ WDF_IO_TARGET_SENT_IO_ACTION Action
Definition: wdfiotarget.h:510
WDF_EXTERN_C_START enum _WDF_IO_TARGET_STATE WDF_IO_TARGET_STATE
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
Definition: wdfmemory.h:254
WDFAPI VOID(STDCALL * PFN_WDFOBJECTREFERENCEACTUAL)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File)
Definition: wdfobject.h:628
WDFAPI VOID(STDCALL * PFN_WDFOBJECTDEREFERENCEACTUAL)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File)
Definition: wdfobject.h:663
WDFAPI NTSTATUS(STDCALL * PFN_WDFOBJECTALLOCATECONTEXT)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PWDF_OBJECT_ATTRIBUTES ContextAttributes, _Outptr_opt_ PVOID *Context)
Definition: wdfobject.h:574
WDFAPI PVOID(FASTCALL * PFN_WDFOBJECTGETTYPEDCONTEXTWORKER)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PCWDF_OBJECT_CONTEXT_TYPE_INFO TypeInfo)
Definition: wdfobject.h:547
WDFAPI WDFOBJECT(FASTCALL * PFN_WDFOBJECTCONTEXTGETOBJECT)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PVOID ContextPointer)
Definition: wdfobject.h:605
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID _In_ ULONG QueryBufferLength
Definition: wdfobject.h:764
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength
Definition: wdfregistry.h:275
@ WDF_REQUEST_SEND_OPTION_SYNCHRONOUS
Definition: wdfrequest.h:109
_In_ WDFIOTARGET Target
Definition: wdfrequest.h:306
EVT_WDF_REQUEST_COMPLETION_ROUTINE * PFN_WDF_REQUEST_COMPLETION_ROUTINE
Definition: wdfrequest.h:313
_Must_inspect_result_ WDFAPI BOOLEAN(STDCALL * PFN_WDFREQUESTSEND)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFIOTARGET Target, _In_opt_ PWDF_REQUEST_SEND_OPTIONS Options)
Definition: wdfrequest.h:662
EVT_WDF_REQUEST_CANCEL * PFN_WDF_REQUEST_CANCEL
Definition: wdfrequest.h:130
_Must_inspect_result_ WDFAPI NTSTATUS(STDCALL * PFN_WDFWAITLOCKACQUIRE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) WDFWAITLOCK Lock, _In_opt_ PLONGLONG Timeout)
Definition: wdfsync.h:155
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
Definition: wdfsync.h:127
#define WDFAPI
Definition: wdftypes.h:53
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ CONST GUID _In_ ULONG CapabilityBufferLength
Definition: wdfusb.h:1615
_Must_inspect_result_ _In_ WDFUSBDEVICE _Out_writes_bytes_to_opt_ ConfigDescriptorLength PVOID ConfigDescriptor
Definition: wdfusb.h:1036
_Must_inspect_result_ _In_ WDFUSBDEVICE _Out_writes_bytes_to_opt_ ConfigDescriptorLength PVOID _Inout_ PUSHORT ConfigDescriptorLength
Definition: wdfusb.h:1040
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_writes_opt_ NumCharacters PUSHORT _Inout_ PUSHORT NumCharacters
Definition: wdfusb.h:1078
enum _WDF_USB_PIPE_TYPE WDF_USB_PIPE_TYPE
WDFAPI VOID(STDCALL * PFN_WDFVERIFIERKEBUGCHECK)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
Definition: wdfverifier.h:80
FORCEINLINE VOID WdfVerifierDbgBreakPoint()
Definition: wdfverifier.h:68
FORCEINLINE PVOID WdfGetTriageInfo()
Definition: wdfverifier.h:126
WDFAPI VOID(STDCALL * PFN_WDFVERIFIERDBGBREAKPOINT)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals)
Definition: wdfverifier.h:61
WDFAPI PVOID(STDCALL * PFN_WDFGETTRIAGEINFO)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals)
Definition: wdfverifier.h:119
DEVICE_REGISTRY_PROPERTY
Definition: iotypes.h:1194
* PFILE_OBJECT
Definition: iotypes.h:1998
CCHAR KPROCESSOR_MODE
Definition: ketypes.h:7
enum _MEMORY_CACHING_TYPE MEMORY_CACHING_TYPE
unsigned char UCHAR
Definition: xmlstorage.h:181
unsigned char BYTE
Definition: xxhash.c:193