1 /**
2  * This file is part of the mingw-w64 runtime package.
3  * No warranty is given; refer to the file DISCLAIMER within this package.
4  */
5 
6 #ifndef _FLT_WINERROR_
7 #define _FLT_WINERROR_
8 
9 #if NTDDI_VERSION < NTDDI_VISTA || defined (__IN__WINERROR_)
10 
11 #define FILTER_HRESULT_FROM_FLT_NTSTATUS(x) (NT_ASSERT((x & 0xfff0000) == 0x001c0000),(HRESULT) (((x) & 0x8000ffff) | (FACILITY_USERMODE_FILTER_MANAGER << 16)))
12 #define FACILITY_USERMODE_FILTER_MANAGER 0x1f
13 
14 #define ERROR_FLT_IO_COMPLETE			((HRESULT)0x001f0001)
15 #define ERROR_FLT_NO_HANDLER_DEFINED		((HRESULT)0x801f0001)
16 #define ERROR_FLT_CONTEXT_ALREADY_DEFINED	((HRESULT)0x801f0002)
17 #define ERROR_FLT_INVALID_ASYNCHRONOUS_REQUEST	((HRESULT)0x801f0003)
18 #define ERROR_FLT_DISALLOW_FAST_IO		((HRESULT)0x801f0004)
19 #define ERROR_FLT_INVALID_NAME_REQUEST		((HRESULT)0x801f0005)
20 #define ERROR_FLT_NOT_SAFE_TO_POST_OPERATION	((HRESULT)0x801f0006)
21 #define ERROR_FLT_NOT_INITIALIZED		((HRESULT)0x801f0007)
22 #define ERROR_FLT_FILTER_NOT_READY		((HRESULT)0x801f0008)
23 #define ERROR_FLT_POST_OPERATION_CLEANUP	((HRESULT)0x801f0009)
24 #define ERROR_FLT_INTERNAL_ERROR		((HRESULT)0x801f000a)
25 #define ERROR_FLT_DELETING_OBJECT		((HRESULT)0x801f000b)
26 #define ERROR_FLT_MUST_BE_NONPAGED_POOL		((HRESULT)0x801f000c)
27 #define ERROR_FLT_DUPLICATE_ENTRY		((HRESULT)0x801f000d)
28 #define ERROR_FLT_CBDQ_DISABLED			((HRESULT)0x801f000e)
29 #define ERROR_FLT_DO_NOT_ATTACH			((HRESULT)0x801f000f)
30 #define ERROR_FLT_DO_NOT_DETACH			((HRESULT)0x801f0010)
31 #define ERROR_FLT_INSTANCE_ALTITUDE_COLLISION	((HRESULT)0x801f0011)
32 #define ERROR_FLT_INSTANCE_NAME_COLLISION	((HRESULT)0x801f0012)
33 #define ERROR_FLT_FILTER_NOT_FOUND		((HRESULT)0x801f0013)
34 #define ERROR_FLT_VOLUME_NOT_FOUND		((HRESULT)0x801f0014)
35 #define ERROR_FLT_INSTANCE_NOT_FOUND		((HRESULT)0x801f0015)
36 #define ERROR_FLT_CONTEXT_ALLOCATION_NOT_FOUND	((HRESULT)0x801f0016)
37 #define ERROR_FLT_INVALID_CONTEXT_REGISTRATION	((HRESULT)0x801f0017)
38 #define ERROR_FLT_NAME_CACHE_MISS		((HRESULT)0x801f0018)
39 #define ERROR_FLT_NO_DEVICE_OBJECT		((HRESULT)0x801f0019)
40 #define ERROR_FLT_VOLUME_ALREADY_MOUNTED	((HRESULT)0x801f001a)
41 #define ERROR_FLT_ALREADY_ENLISTED		((HRESULT)0x801f001b)
42 #define ERROR_FLT_CONTEXT_ALREADY_LINKED	((HRESULT)0x801F001c)
43 #define ERROR_FLT_NO_WAITER_FOR_REPLY		((HRESULT)0x801f0020)
44 #define ERROR_FLT_REGISTRATION_BUSY		((HRESULT)0x801F0023)
45 
46 #endif
47 #endif
48