1 //
2 //    Copyright (C) Microsoft.  All rights reserved.
3 //
4 #ifndef __FX_LIBRARY_COMMON_H__
5 #define __FX_LIBRARY_COMMON_H__
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif // __cplusplus
10 
11 extern ULONG WdfLdrDbgPrintOn;
12 extern PCHAR WdfLdrType;
13 
14 extern WDFVERSION WdfVersion;
15 
16 extern RTL_OSVERSIONINFOW  gOsVersion;
17 
18 #define _LIT_(a)    # a
19 #define LITERAL(a) _LIT_(a)
20 
21 
22 
23 
24 #define __Print(_x_)                    \
25 {                                       \
26     if (WdfLdrDbgPrintOn) {             \
27     }                                   \
28 }
29 
30 #define WDF_ENHANCED_VERIFIER_OPTIONS_VALUE_NAME      L"EnhancedVerifierOptions"
31 
32 typedef
33 NTSTATUS
34 (*PFN_RTL_GET_VERSION)(
35     OUT PRTL_OSVERSIONINFOW VersionInformation
36     );
37 
38 NTSTATUS
39 FxLibraryCommonCommission(
40     VOID
41     );
42 
43 NTSTATUS
44 FxLibraryCommonDecommission(
45     VOID
46     );
47 
48 NTSTATUS
49 FxLibraryCommonRegisterClient(
50     PWDF_BIND_INFO        Info,
51     PWDF_DRIVER_GLOBALS * WdfDriverGlobals,
52     PCLIENT_INFO          ClientInfo
53     );
54 
55 NTSTATUS
56 FxLibraryCommonUnregisterClient(
57     PWDF_BIND_INFO        Info,
58     PWDF_DRIVER_GLOBALS   WdfDriverGlobals
59     );
60 
61 VOID
62 GetEnhancedVerifierOptions(
63     PCLIENT_INFO ClientInfo,
64     PULONG Options
65     );
66 
67 #ifdef __cplusplus
68 } // extern "C"
69 #endif // __cplusplus
70 
71 #endif // __FX_LIBRARY_COMMON_H__
72