master
 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#ifndef FACILITY_USERMODE_FILTER_MANAGER
13#define FACILITY_USERMODE_FILTER_MANAGER 0x1f
14#endif
15
16#define ERROR_FLT_IO_COMPLETE			((HRESULT)0x001f0001)
17#define ERROR_FLT_NO_HANDLER_DEFINED		((HRESULT)0x801f0001)
18#define ERROR_FLT_CONTEXT_ALREADY_DEFINED	((HRESULT)0x801f0002)
19#define ERROR_FLT_INVALID_ASYNCHRONOUS_REQUEST	((HRESULT)0x801f0003)
20#define ERROR_FLT_DISALLOW_FAST_IO		((HRESULT)0x801f0004)
21#define ERROR_FLT_INVALID_NAME_REQUEST		((HRESULT)0x801f0005)
22#define ERROR_FLT_NOT_SAFE_TO_POST_OPERATION	((HRESULT)0x801f0006)
23#define ERROR_FLT_NOT_INITIALIZED		((HRESULT)0x801f0007)
24#define ERROR_FLT_FILTER_NOT_READY		((HRESULT)0x801f0008)
25#define ERROR_FLT_POST_OPERATION_CLEANUP	((HRESULT)0x801f0009)
26#define ERROR_FLT_INTERNAL_ERROR		((HRESULT)0x801f000a)
27#define ERROR_FLT_DELETING_OBJECT		((HRESULT)0x801f000b)
28#define ERROR_FLT_MUST_BE_NONPAGED_POOL		((HRESULT)0x801f000c)
29#define ERROR_FLT_DUPLICATE_ENTRY		((HRESULT)0x801f000d)
30#define ERROR_FLT_CBDQ_DISABLED			((HRESULT)0x801f000e)
31#define ERROR_FLT_DO_NOT_ATTACH			((HRESULT)0x801f000f)
32#define ERROR_FLT_DO_NOT_DETACH			((HRESULT)0x801f0010)
33#define ERROR_FLT_INSTANCE_ALTITUDE_COLLISION	((HRESULT)0x801f0011)
34#define ERROR_FLT_INSTANCE_NAME_COLLISION	((HRESULT)0x801f0012)
35#define ERROR_FLT_FILTER_NOT_FOUND		((HRESULT)0x801f0013)
36#define ERROR_FLT_VOLUME_NOT_FOUND		((HRESULT)0x801f0014)
37#define ERROR_FLT_INSTANCE_NOT_FOUND		((HRESULT)0x801f0015)
38#define ERROR_FLT_CONTEXT_ALLOCATION_NOT_FOUND	((HRESULT)0x801f0016)
39#define ERROR_FLT_INVALID_CONTEXT_REGISTRATION	((HRESULT)0x801f0017)
40#define ERROR_FLT_NAME_CACHE_MISS		((HRESULT)0x801f0018)
41#define ERROR_FLT_NO_DEVICE_OBJECT		((HRESULT)0x801f0019)
42#define ERROR_FLT_VOLUME_ALREADY_MOUNTED	((HRESULT)0x801f001a)
43#define ERROR_FLT_ALREADY_ENLISTED		((HRESULT)0x801f001b)
44#define ERROR_FLT_CONTEXT_ALREADY_LINKED	((HRESULT)0x801F001c)
45#define ERROR_FLT_NO_WAITER_FOR_REPLY		((HRESULT)0x801f0020)
46#define ERROR_FLT_REGISTRATION_BUSY		((HRESULT)0x801F0023)
47
48#endif
49#endif