Data Structures |
| struct | PDIR_RECORD |
| struct | PVD_HEADER |
| struct | PPVD |
| struct | PSVD |
| struct | PCDINFO |
| struct | PDEVICE_EXTENSION |
| struct | PCDFS_SHORT_NAME |
| struct | PFCB |
| struct | PCCB |
| struct | CDFS_GLOBAL_DATA |
Defines |
| #define | CDFS_BASIC_SECTOR 2048 |
| #define | CDFS_PRIMARY_DESCRIPTOR_LOCATION 16 |
| #define | BLOCKSIZE CDFS_BASIC_SECTOR |
| #define | CDFS_MAX_NAME_LEN 256 |
| #define | BOOT_VOLUME_DESCRIPTOR_TYPE 0 |
| #define | PRIMARY_VOLUME_DESCRIPTOR_TYPE 1 |
| #define | SUPPLEMENTARY_VOLUME_DESCRIPTOR_TYPE 2 |
| #define | VOLUME_PARTITION_DESCRIPTOR_TYPE 3 |
| #define | VOLUME_DESCRIPTOR_SET_TERMINATOR 255 |
| #define | FILE_FLAG_HIDDEN 0x01 |
| #define | FILE_FLAG_DIRECTORY 0x02 |
| #define | FILE_FLAG_SYSTEM 0x04 |
| #define | FILE_FLAG_READONLY 0x10 |
| #define | FCB_CACHE_INITIALIZED 0x0001 |
| #define | FCB_IS_VOLUME_STREAM 0x0002 |
| #define | FCB_IS_VOLUME 0x0004 |
| #define | MAX_PATH 260 |
| #define | TAG_CCB 'BCCI' |
| #define | TAG_FCB 'BCFI' |
Typedefs |
| typedef struct DEVICE_EXTENSION * | PDEVICE_EXTENSION |
| typedef struct DEVICE_EXTENSION | VCB |
| typedef struct DEVICE_EXTENSION * | PVCB |
| typedef struct CDFS_GLOBAL_DATA * | PCDFS_GLOBAL_DATA |
Functions |
| NTSTATUS NTAPI | CdfsCleanup (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsClose (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS | CdfsCloseFile (PDEVICE_EXTENSION DeviceExt, PFILE_OBJECT FileObject) |
| NTSTATUS | CdfsReadSectors (IN PDEVICE_OBJECT DeviceObject, IN ULONG DiskSector, IN ULONG SectorCount, IN OUT PUCHAR Buffer, IN BOOLEAN Override) |
| NTSTATUS | CdfsDeviceIoControl (IN PDEVICE_OBJECT DeviceObject, IN ULONG CtlCode, IN PVOID InputBuffer, IN ULONG InputBufferSize, IN OUT PVOID OutputBuffer, IN OUT PULONG pOutputBufferSize, IN BOOLEAN Override) |
| NTSTATUS NTAPI | CdfsCreate (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsDeviceControl (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsDirectoryControl (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| PFCB | CdfsCreateFCB (PCWSTR FileName) |
| VOID | CdfsDestroyFCB (PFCB Fcb) |
| BOOLEAN | CdfsFCBIsDirectory (PFCB Fcb) |
| BOOLEAN | CdfsFCBIsRoot (PFCB Fcb) |
| VOID | CdfsGrabFCB (PDEVICE_EXTENSION Vcb, PFCB Fcb) |
| VOID | CdfsReleaseFCB (PDEVICE_EXTENSION Vcb, PFCB Fcb) |
| VOID | CdfsAddFCBToTable (PDEVICE_EXTENSION Vcb, PFCB Fcb) |
| PFCB | CdfsGrabFCBFromTable (PDEVICE_EXTENSION Vcb, PUNICODE_STRING FileName) |
| NTSTATUS | CdfsFCBInitializeCache (PVCB Vcb, PFCB Fcb) |
| PFCB | CdfsMakeRootFCB (PDEVICE_EXTENSION Vcb) |
| PFCB | CdfsOpenRootFCB (PDEVICE_EXTENSION Vcb) |
| NTSTATUS | CdfsMakeFCBFromDirEntry (PVCB Vcb, PFCB DirectoryFCB, PWSTR LongName, PWSTR ShortName, PDIR_RECORD Record, ULONG DirectorySector, ULONG DirectoryOffset, PFCB *fileFCB) |
| NTSTATUS | CdfsAttachFCBToFileObject (PDEVICE_EXTENSION Vcb, PFCB Fcb, PFILE_OBJECT FileObject) |
| NTSTATUS | CdfsDirFindFile (PDEVICE_EXTENSION DeviceExt, PFCB DirectoryFcb, PUNICODE_STRING FileToFind, PFCB *FoundFCB) |
| NTSTATUS | CdfsGetFCBForFile (PDEVICE_EXTENSION Vcb, PFCB *pParentFCB, PFCB *pFCB, PUNICODE_STRING FileName) |
| NTSTATUS NTAPI | CdfsQueryInformation (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsSetInformation (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsFileSystemControl (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| VOID | CdfsSwapString (PWCHAR Out, PUCHAR In, ULONG Count) |
| VOID | CdfsDateTimeToSystemTime (PFCB Fcb, PLARGE_INTEGER SystemTime) |
| VOID | CdfsFileFlagsToAttributes (PFCB Fcb, PULONG FileAttributes) |
| VOID | CdfsShortNameCacheGet (PFCB DirectoryFcb, PLARGE_INTEGER StreamOffset, PUNICODE_STRING LongName, PUNICODE_STRING ShortName) |
| NTSTATUS NTAPI | CdfsRead (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsWrite (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsQueryVolumeInformation (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | CdfsSetVolumeInformation (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| NTSTATUS NTAPI | DriverEntry (PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath) |
| BOOLEAN NTAPI | CdfsAcquireForLazyWrite (IN PVOID Context, IN BOOLEAN Wait) |
| VOID NTAPI | CdfsReleaseFromLazyWrite (IN PVOID Context) |
Variables |
| PCDFS_GLOBAL_DATA | CdfsGlobalData |