20 #ifndef _UDF_STRUCTURES_H_ 21 #define _UDF_STRUCTURES_H_ 37 struct _UDFDiskDependentFCB;
57 #define UDF_NODE_TYPE_NT_REQ_FCB ((CSHORT)(0xfcb0)) 58 #define UDF_NODE_TYPE_OBJECT_NAME (0xfdecba01) 59 #define UDF_NODE_TYPE_CCB (0xfdecba02) 60 #define UDF_NODE_TYPE_FCB (0xfdecba03) 61 #define UDF_NODE_TYPE_VCB (0xfdecba04) 62 #define UDF_NODE_TYPE_IRP_CONTEXT (0xfdecba05) 63 #define UDF_NODE_TYPE_GLOBAL_DATA (0xfdecba06) 64 #define UDF_NODE_TYPE_FILTER_DEVOBJ (0xfdecba07) 65 #define UDF_NODE_TYPE_UDFFS_DEVOBJ (0xfdecba08) 66 #define UDF_NODE_TYPE_IRP_CONTEXT_LITE (0xfdecba09) 67 #define UDF_NODE_TYPE_UDFFS_DRVOBJ (0xfdecba0a) 97 #define UDF_OBJ_NAME_NOT_FROM_ZONE (0x80000000) 138 #define UDF_CCB_OPENED_BY_UDF (0x00000001) 141 #define UDF_CCB_OPENED_FOR_SYNC_ACCESS (0x00000002) 143 #define UDF_CCB_OPENED_FOR_SEQ_ACCESS (0x00000004) 146 #define UDF_CCB_CLEANED (0x00000008) 149 #define UDF_CCB_ACCESSED (0x00000010) 150 #define UDF_CCB_MODIFIED (0x00000020) 153 #define UDF_CCB_ACCESS_TIME_SET (0x00000040) 154 #define UDF_CCB_MODIFY_TIME_SET (0x00000080) 155 #define UDF_CCB_CREATE_TIME_SET (0x00000100) 156 #define UDF_CCB_WRITE_TIME_SET (0x00000200) 157 #define UDF_CCB_ATTRIBUTES_SET (0x00020000) 159 #define UDF_CCB_CASE_SENSETIVE (0x00000400) 161 #ifndef UDF_READ_ONLY_BUILD 162 #define UDF_CCB_DELETE_ON_CLOSE (0x00000800) 163 #endif //UDF_READ_ONLY_BUILD 166 #define UDF_CCB_VOLUME_OPEN (0x00001000) 167 #define UDF_CCB_MATCH_ALL (0x00002000) 168 #define UDF_CCB_WILDCARD_PRESENT (0x00004000) 169 #define UDF_CCB_CAN_BE_8_DOT_3 (0x00008000) 170 #define UDF_CCB_READ_ONLY (0x00010000) 173 #define UDF_CCB_FLUSHED (0x20000000) 174 #define UDF_CCB_VALID (0x40000000) 175 #define UDF_CCB_NOT_FROM_ZONE (0x80000000) 233 #define UDF_NTREQ_FCB_SD_MODIFIED (0x00000001) 234 #define UDF_NTREQ_FCB_INLIST (0x00000002) 235 #define UDF_NTREQ_FCB_DELETED (0x00000004) 236 #define UDF_NTREQ_FCB_MODIFIED (0x00000008) 237 #define UDF_NTREQ_FCB_VALID (0x40000000) 241 #define UDF_FCB_MT NonPagedPool 300 #define UDF_FCB_VALID (0x00000002) 302 #define UDF_FCB_PAGE_FILE (0x00000004) 303 #define UDF_FCB_DIRECTORY (0x00000008) 304 #define UDF_FCB_ROOT_DIRECTORY (0x00000010) 305 #define UDF_FCB_WRITE_THROUGH (0x00000020) 306 #define UDF_FCB_MAPPED (0x00000040) 307 #define UDF_FCB_FAST_IO_READ_IN_PROGESS (0x00000080) 308 #define UDF_FCB_FAST_IO_WRITE_IN_PROGESS (0x00000100) 309 #define UDF_FCB_DELETE_ON_CLOSE (0x00000200) 310 #define UDF_FCB_MODIFIED (0x00000400) 311 #define UDF_FCB_ACCESSED (0x00000800) 312 #define UDF_FCB_READ_ONLY (0x00001000) 313 #define UDF_FCB_DELAY_CLOSE (0x00002000) 314 #define UDF_FCB_DELETED (0x00004000) 316 #define UDF_FCB_INITIALIZED_CCB_LIST_RESOURCE (0x00008000) 317 #define UDF_FCB_POSTED_RENAME (0x00010000) 319 #define UDF_FCB_DELETE_PARENT (0x10000000) 320 #define UDF_FCB_NOT_FROM_ZONE (0x80000000) 336 #define UDF_RESIDUAL_REFERENCE (2) 339 #define UDF_FLUSH_FLAGS_BREAKABLE (0x00000001) 341 #define UDF_FLUSH_FLAGS_LITE (0x80000000) 343 #define UDF_FLUSH_FLAGS_INTERRUPTED (0x00000001) 345 #define UDF_MAX_BG_WRITERS 16 385 #define UDF_IRP_CONTEXT_CAN_BLOCK (0x00000001) 386 #define UDF_IRP_CONTEXT_WRITE_THROUGH (0x00000002) 387 #define UDF_IRP_CONTEXT_EXCEPTION (0x00000004) 388 #define UDF_IRP_CONTEXT_DEFERRED_WRITE (0x00000008) 389 #define UDF_IRP_CONTEXT_ASYNC_PROCESSING (0x00000010) 390 #define UDF_IRP_CONTEXT_NOT_TOP_LEVEL (0x00000020) 391 #define UDF_IRP_CONTEXT_FLAG_DISABLE_POPUPS (0x00000040) 392 #define UDF_IRP_CONTEXT_FLUSH_REQUIRED (0x00000080) 393 #define UDF_IRP_CONTEXT_FLUSH2_REQUIRED (0x00000100) 394 #define UDF_IRP_CONTEXT_READ_ONLY (0x00010000) 395 #define UDF_IRP_CONTEXT_RES1_ACQ (0x01000000) 396 #define UDF_IRP_CONTEXT_RES2_ACQ (0x02000000) 397 #define UDF_IRP_CONTEXT_FORCED_POST (0x20000000) 398 #define UDF_IRP_CONTEXT_BUFFER_LOCKED (0x40000000) 399 #define UDF_IRP_CONTEXT_NOT_FROM_ZONE (0x80000000) 428 #define UDF_DEFAULT_ZONE_SIZE_SMALL_SYSTEM (0x4) 429 #define UDF_DEFAULT_ZONE_SIZE_MEDIUM_SYSTEM (0x8) 430 #define UDF_DEFAULT_ZONE_SIZE_LARGE_SYSTEM (0xc) 437 #define UDF_NTAS_MULTIPLE (0x2) 489 #define DIRTY_PAGE_LIMIT 32 491 #endif // has this file been included?
uint32 LazyWriterThreadID
UCHAR Pad[((FILE_SYSTEM_STATISTICS_WITHOUT_PAD+0x3f) &~0x3f) - FILE_SYSTEM_STATISTICS_WITHOUT_PAD]
LARGE_INTEGER LastWriteTime
struct _UDFContextControlBlock * PtrUDFCCB
UCHAR PaddingEvt[(0x40 - sizeof(GET_EVENT_USER_OUT)) &0x0f]
UCHAR PaddingDevCap[(0x40 - sizeof(GET_CAPABILITIES_USER_OUT)) &0x0f]
struct _UDFIrpContext UDFIrpContext
UNICODE_STRING ObjectName
struct _UDFObjectName * PtrUDFObjectName
struct _UDFFileIDCacheItem UDFFileIDCacheItem
UDFIdentifier NodeIdentifier
WORK_QUEUE_ITEM WorkQueueItem
ERESOURCE CcbListResource
struct _UDFContextControlBlock UDFCCB
struct _UDFFileControlBlock * ParentFcb
FSRTL_COMMON_FCB_HEADER CommonFCBHeader
_UDFFileControlBlock * Fcb
PDEVICE_OBJECT TargetDeviceObject
UCHAR PaddingError[(0x40 - sizeof(GET_LAST_ERROR_USER_OUT)) &0x0f]
SECTION_OBJECT_POINTERS SectionObject
struct _UDFFileControlBlock * Fcb
struct _UDFFileIDCacheItem * PUDFFileIDCacheItem
struct _UDFFileControlBlock * PtrUDFFCB
struct _UDFIdentifier * PtrUDFIdentifier
struct _UDFEjectWaitContext * PUDFEjectWaitContext
struct _UDFIrpContextLite * IrpContextLite
struct _FILE_SYSTEM_STATISTICS * PFILE_SYSTEM_STATISTICS
PUNICODE_STRING DirectorySearchPattern
struct _UDFFS_DEV_EXTENSION UDFFS_DEV_EXTENSION
FILESYSTEM_STATISTICS Common
NTSTATUS SavedExceptionCode
struct _UDFBGWriteContext * PUDFBGWriteContext
_In_ WDFREQUEST _In_ WDFFILEOBJECT FileObject
struct _UDFVolumeControlBlock * Vcb
UDFIdentifier NodeIdentifier
struct _UDFFileControlBlock UDFFCB
struct _GET_LAST_ERROR_USER_OUT GET_LAST_ERROR_USER_OUT
struct _UDFObjectName UDFObjectName
GET_EVENT_USER_OUT EjectReqBuffer
struct _UDFEjectWaitContext UDFEjectWaitContext
SHARE_ACCESS FCBShareAccess
UDFIdentifier NodeIdentifier
GET_LAST_ERROR_USER_OUT Error
struct _UDFIrpContext * PtrUDFIrpContext
struct _FILESYSTEM_STATISTICS FILESYSTEM_STATISTICS
union _GET_EVENT_USER_OUT GET_EVENT_USER_OUT
PDEVICE_OBJECT lowerFSDeviceObject
UDFIdentifier NodeIdentifier
struct _UDFIrpContextLite UDFIrpContextLite
struct _UDFFS_DEV_EXTENSION * PUDFFS_DEV_EXTENSION
UDFIdentifier NodeIdentifier
LIST_ENTRY DelayedCloseLinks
ACCESS_MASK PreviouslyGrantedAccess
GET_CAPABILITIES_USER_OUT DevCap
struct _UDFBGWriteContext UDFBGWriteContext
struct _FILE_SYSTEM_STATISTICS FILE_SYSTEM_STATISTICS
PSECURITY_DESCRIPTOR SecurityDesc
PDEVICE_OBJECT RealDevice
LARGE_INTEGER CreationTime
uint32 CachedOpenHandleCount
UDFIdentifier NodeIdentifier
struct _UDFIdentifier UDFIdentifier
LARGE_INTEGER LastAccessTime
WORK_QUEUE_ITEM WorkQueueItem
ERESOURCE PagingIoResource
struct _FILTER_DEV_EXTENSION FILTER_DEV_EXTENSION
struct _UDFNTRequiredFCB UDFNTRequiredFCB
_UDFFileControlBlock * Fcb
struct _FILTER_DEV_EXTENSION * PFILTER_DEV_EXTENSION
WORK_QUEUE_ITEM EjectReqWorkQueueItem
struct _GET_CAPABILITIES_USER_OUT GET_CAPABILITIES_USER_OUT
struct _UDFNTRequiredFCB * PtrUDFNTRequiredFCB
UDFIdentifier NodeIdentifier
struct _UDFIrpContextLite * PtrUDFIrpContextLite
PtrUDFNTRequiredFCB NTRequiredFCB