/usr/x86_64-w64-mingw32/include/clfs.h is in mingw-w64-x86-64-dev 2.0.3-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 | /**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the w64 mingw-runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _INC_CLFS
#define _INC_CLFS
#if (_WIN32_WINNT >= 0x0600)
#ifdef __cplusplus
extern "C" {
#endif
typedef enum {
ClfsContextNone = 0x00,
ClfsContextUndoNext,
ClfsContextPrevious,
ClfsContextForward
} CLFS_CONTEXT_MODE, *PCLFS_CONTEXT_MODE, **PPCLFS_CONTEXT_MODE;
typedef enum _CLFS_IOSTATS_CLASS {
ClfsIoStatsDefault = 0x0000,
ClfsIoStatsMax = 0xFFFF
} CLFS_IOSTATS_CLASS, *PCLFS_IOSTATS_CLASS, **PPCLFS_IOSTATS_CLASS;
typedef enum _CLFS_LOG_ARCHIVE_MODE {
ClfsLogArchiveEnabled = 0x01,
ClfsLogArchiveDisabled = 0x02
} CLFS_LOG_ARCHIVE_MODE, *PCLFS_LOG_ARCHIVE_MODE;
typedef enum _CLFS_RECORD_TYPE {
ClfsDataRecord = 0x01,
ClfsRestartRecord = 0x02,
ClfsClientRecord = 0x3F
} CLFS_RECORD_TYPE, *PCLFS_RECORD_TYPE;
typedef union _CLFS_LSN {
ULONGLONG Internal;
} CLFS_LSN, *PCLFS_LSN;
/*http://msdn.microsoft.com/en-us/library/bb540355%28VS.85%29.aspx*/
typedef enum _CLFS_SCAN_MODE {
CLFS_SCAN_INIT = 0x01,
CLFS_SCAN_FORWARD = 0x02,
CLFS_SCAN_BACKWARD = 0x04,
CLFS_SCAN_CLOSE = 0x08,
CLFS_SCAN_INITIALIZED = 0x10,
CLFS_SCAN_BUFFERED = 0x20
} CLFS_SCAN_MODE;
/* enum guessed from http://msdn.microsoft.com/en-us/library/bb540336%28VS.85%29.aspx */
typedef enum _CLFS_CONTAINER_STATE {
ClfsContainerInitializing = 0x01,
ClfsContainerInactive = 0x02,
ClfsContainerActive = 0x04,
ClfsContainerActivePendingDelete = 0x08,
ClfsContainerPendingArchive = 0x10,
ClfsContainerPendingArchiveAndDelete = 0x20
} CLFS_CONTAINER_STATE;
typedef DWORD CLFS_CONTAINER_ID;
/* Goes in wdm.h */
typedef struct _CLFS_CONTAINER_INFORMATION {
ULONG FileAttributes;
ULONGLONG CreationTime;
ULONGLONG LastAccessTime;
ULONGLONG LastWriteTime;
LONGLONG ContainerSize;
ULONG FileNameActualLength;
ULONG FileNameLength;
WCHAR FileName[MAX_PATH];
CLFS_CONTAINER_STATE State;
CLFS_CONTAINER_ID PhysicalContainerId;
CLFS_CONTAINER_ID LogicalContainerId;
} CLFS_CONTAINER_INFORMATION, *PCLFS_CONTAINER_INFORMATION, **PPCLFS_CONTAINER_INFORMATION;
/**/
typedef struct _CLFS_IO_STATISTICS_HEADER {
UCHAR ubMajorVersion;
UCHAR ubMinorVersion;
CLFS_IOSTATS_CLASS eStatsClass;
USHORT cbLength;
ULONG coffData;
} CLFS_IO_STATISTICS_HEADER, *PCLFS_IO_STATISTICS_HEADER, **PPCLFS_IO_STATISTICS_HEADER;
typedef struct _CLFS_ARCHIVE_DESCRIPTOR {
ULONGLONG coffLow;
ULONGLONG coffHigh;
CLFS_CONTAINER_INFORMATION infoContainer;
} CLFS_ARCHIVE_DESCRIPTOR, *PCLFS_ARCHIVE_DESCRIPTOR, **PPCLFS_ARCHIVE_DESCRIPTOR;
typedef struct _CLFS_INFORMATION {
LONGLONG TotalAvailable;
LONGLONG CurrentAvailable;
LONGLONG TotalReservation;
ULONGLONG BaseFileSize;
ULONGLONG ContainerSize;
ULONG TotalContainers;
ULONG FreeContainers;
ULONG TotalClients;
ULONG Attributes;
ULONG FlushThreshold;
ULONG SectorSize;
CLFS_LSN MinArchiveTailLsn;
CLFS_LSN BaseLsn;
CLFS_LSN LastFlushedLsn;
CLFS_LSN LastLsn;
CLFS_LSN RestartLsn;
GUID Identity;
} CLFS_INFORMATION, *PCLFS_INFORMATION, **PPCLFS_INFORMATION;
typedef struct _CLFS_IO_STATISTICS {
CLFS_IO_STATISTICS_HEADER hdrIoStats;
ULONGLONG cFlush;
ULONGLONG cbFlush;
ULONGLONG cMetaFlush;
ULONGLONG cbMetaFlush;
} CLFS_IO_STATISTICS, *PCLFS_IO_STATISTICS, **PPCLFS_IO_STATISTICS;
typedef struct _CLFS_NODE_ID {
ULONG cType;
ULONG cbNode;
} CLFS_NODE_ID, *PCLFS_NODE_ID;
typedef struct _CLFS_SCAN_CONTEXT {
CLFS_NODE_ID cidNode;
HANDLE hLog;
ULONG cIndex;
ULONG cContainers;
ULONG cContainersReturned;
CLFS_SCAN_MODE eScanMode;
PCLFS_CONTAINER_INFORMATION pinfoContainer;
} CLFS_SCAN_CONTEXT, *PCLFS_SCAN_CONTEXT;
typedef struct _CLFS_WRITE_ENTRY {
PVOID Buffer;
ULONG ByteLength;
} CLFS_WRITE_ENTRY, *PCLFS_WRITE_ENTRY;
WINBOOL WINAPI LsnEqual(
const CLFS_LSN *plsn1,
const CLFS_LSN *plsn2
);
WINBOOL WINAPI LsnGreater(
const CLFS_LSN *plsn1,
const CLFS_LSN *plsn2
);
WINBOOL WINAPI LsnLess(
const CLFS_LSN *plsn1,
const CLFS_LSN *plsn2
);
WINBOOL WINAPI LsnNull(
const CLFS_LSN *plsn
);
#ifdef __cplusplus
}
#endif
#endif /*(_WIN32_WINNT >= 0x0600)*/
#endif /*_INC_CLFS*/
|