ReactOS 0.4.16-dev-433-g6363f78
|
#include <stdlib.h>
#include <stddef.h>
#include <time.h>
#include <ntstatus.h>
#include <windef.h>
#include <winbase.h>
#include <winternl.h>
#include <devioctl.h>
#include <ntdddisk.h>
#include <ntddscsi.h>
#include <ntddstor.h>
#include <ata.h>
#include <mountmgr.h>
#include <stringapiset.h>
#include <stdbool.h>
#include "../btrfs.h"
#include "../btrfsioctl.h"
#include "../crc32c.h"
#include "../xxhash.h"
Go to the source code of this file.
Classes | |
struct | DSTRING |
struct | STREAM_MESSAGE |
struct | options |
struct | btrfs_item |
struct | btrfs_chunk |
struct | btrfs_root |
struct | btrfs_dev |
struct | TEXTOUTPUT |
struct | EXTENT_ITEM_METADATA |
struct | EXTENT_ITEM_METADATA2 |
Macros | |
#define | WIN32_NO_STATUS |
#define | SHA256_HASH_SIZE 32 |
#define | BLAKE2_HASH_SIZE 32 |
#define | FSCTL_LOCK_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 6, METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | FSCTL_UNLOCK_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 7, METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | FSCTL_DISMOUNT_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 8, METHOD_BUFFERED, FILE_ANY_ACCESS) |
#define | DEVICE_DSM_FLAG_TRIM_NOT_FS_ALLOCATED 0x80000000 |
#define | FORMAT_FLAG_QUICK_FORMAT 0x00000001 |
#define | FORMAT_FLAG_UNKNOWN1 0x00000002 |
#define | FORMAT_FLAG_DISMOUNT_FIRST 0x00000004 |
#define | FORMAT_FLAG_UNKNOWN2 0x00000040 |
#define | FORMAT_FLAG_LARGE_RECORDS 0x00000100 |
#define | FORMAT_FLAG_INTEGRITY_DISABLE 0x00000100 |
#define | keycmp(key1, key2) |
Typedefs | |
typedef struct TEXTOUTPUT * | PTEXTOUTPUT |
typedef BOOLEAN(NTAPI * | PFMIFSCALLBACK) (CALLBACKCOMMAND Command, ULONG SubAction, PVOID ActionInfo) |
#define BLAKE2_HASH_SIZE 32 |
Definition at line 70 of file btrfslib.c.
#define DEVICE_DSM_FLAG_TRIM_NOT_FS_ALLOCATED 0x80000000 |
Definition at line 79 of file btrfslib.c.
#define FORMAT_FLAG_DISMOUNT_FIRST 0x00000004 |
Definition at line 108 of file btrfslib.c.
#define FORMAT_FLAG_INTEGRITY_DISABLE 0x00000100 |
Definition at line 111 of file btrfslib.c.
#define FORMAT_FLAG_LARGE_RECORDS 0x00000100 |
Definition at line 110 of file btrfslib.c.
#define FORMAT_FLAG_QUICK_FORMAT 0x00000001 |
Definition at line 106 of file btrfslib.c.
#define FORMAT_FLAG_UNKNOWN1 0x00000002 |
Definition at line 107 of file btrfslib.c.
#define FORMAT_FLAG_UNKNOWN2 0x00000040 |
Definition at line 109 of file btrfslib.c.
#define FSCTL_DISMOUNT_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 8, METHOD_BUFFERED, FILE_ANY_ACCESS) |
Definition at line 76 of file btrfslib.c.
#define FSCTL_LOCK_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 6, METHOD_BUFFERED, FILE_ANY_ACCESS) |
Definition at line 74 of file btrfslib.c.
#define FSCTL_UNLOCK_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 7, METHOD_BUFFERED, FILE_ANY_ACCESS) |
Definition at line 75 of file btrfslib.c.
Definition at line 168 of file btrfslib.c.
#define SHA256_HASH_SIZE 32 |
Definition at line 67 of file btrfslib.c.
#define WIN32_NO_STATUS |
Definition at line 22 of file btrfslib.c.
typedef BOOLEAN(NTAPI * PFMIFSCALLBACK) (CALLBACKCOMMAND Command, ULONG SubAction, PVOID ActionInfo) |
Definition at line 237 of file btrfslib.c.
typedef struct TEXTOUTPUT * PTEXTOUTPUT |
Definition at line 217 of file btrfslib.c.
Definition at line 190 of file btrfslib.c.
|
static |
Definition at line 940 of file btrfslib.c.
Referenced by write_btrfs().
|
static |
Definition at line 392 of file btrfslib.c.
Referenced by write_btrfs().
|
static |
Definition at line 1010 of file btrfslib.c.
Referenced by set_default_subvol().
|
static |
Definition at line 903 of file btrfslib.c.
Referenced by init_fs_tree(), and set_default_subvol().
|
static |
Definition at line 339 of file btrfslib.c.
Referenced by add_block_group_items(), add_chunk(), add_dir_item(), add_inode_ref(), assign_addresses(), find_chunk_offset(), init_fs_tree(), set_default_subvol(), and write_btrfs().
|
static |
Definition at line 284 of file btrfslib.c.
Referenced by look_for_roots(), mount_vol(), and write_btrfs().
|
static |
Definition at line 507 of file btrfslib.c.
Referenced by write_btrfs().
Definition at line 237 of file blake2b-ref.c.
Referenced by calc_superblock_checksum(), calc_thread_main(), calc_tree_checksum(), check_sector_csum(), check_superblock_checksum(), check_tree_checksum(), get_sector_csum(), and get_tree_checksum().
Definition at line 126 of file sha256.c.
Referenced by calc_superblock_checksum(), calc_tree_checksum(), and check_superblock_checksum().
|
static |
Definition at line 732 of file btrfslib.c.
Referenced by write_superblocks().
|
static |
Definition at line 600 of file btrfslib.c.
Referenced by write_roots().
|
static |
Definition at line 1165 of file btrfslib.c.
Referenced by is_mounted_multi_device().
NTSTATUS WINAPI ChkdskEx | ( | PUNICODE_STRING | DriveRoot, |
BOOLEAN | FixErrors, | ||
BOOLEAN | Verbose, | ||
BOOLEAN | CheckOnlyIfDirty, | ||
BOOLEAN | ScanDrive, | ||
PFMIFSCALLBACK | Callback | ||
) |
Definition at line 246 of file btrfslib.c.
Definition at line 957 of file btrfslib.c.
Referenced by write_btrfs().
Definition at line 1581 of file btrfslib.c.
Definition at line 1297 of file btrfslib.c.
Referenced by FormatEx2().
|
static |
Definition at line 372 of file btrfslib.c.
Referenced by add_chunk().
Definition at line 1533 of file btrfslib.c.
|
static |
Definition at line 1336 of file btrfslib.c.
Referenced by FormatEx().
|
static |
Definition at line 324 of file btrfslib.c.
Referenced by write_btrfs().
|
static |
Definition at line 297 of file btrfslib.c.
Referenced by write_btrfs().
|
static |
Definition at line 479 of file btrfslib.c.
Referenced by assign_addresses().
|
static |
Definition at line 687 of file btrfslib.c.
Referenced by get_uuid(), init_device(), and write_btrfs().
Definition at line 1574 of file btrfslib.c.
|
static |
Definition at line 706 of file btrfslib.c.
Referenced by init_device(), and write_btrfs().
|
static |
Definition at line 916 of file btrfslib.c.
Referenced by write_btrfs().
FORCEINLINE VOID InitializeListHead | ( | PLIST_ENTRY | ListHead | ) |
Definition at line 121 of file btrfslib.c.
FORCEINLINE VOID InsertTailList | ( | PLIST_ENTRY | ListHead, |
PLIST_ENTRY | Entry | ||
) |
Definition at line 125 of file btrfslib.c.
Definition at line 1200 of file btrfslib.c.
Referenced by FormatEx2().
Definition at line 1314 of file btrfslib.c.
Referenced by FormatEx2().
Definition at line 975 of file btrfslib.c.
Referenced by write_btrfs().
|
static |
Definition at line 1148 of file btrfslib.c.
Referenced by is_mounted_multi_device().
NTSTATUS NTAPI NtReadFile | ( | HANDLE | FileHandle, |
HANDLE | Event, | ||
PIO_APC_ROUTINE | ApcRoutine, | ||
PVOID | ApcContext, | ||
PIO_STATUS_BLOCK | IoStatusBlock, | ||
PVOID | Buffer, | ||
ULONG | Length, | ||
PLARGE_INTEGER | ByteOffset, | ||
PULONG | Key | ||
) |
Referenced by is_mounted_multi_device().
NTSTATUS NTAPI NtWriteFile | ( | HANDLE | FileHandle, |
HANDLE | Event, | ||
PIO_APC_ROUTINE | ApcRoutine, | ||
PVOID | ApcContext, | ||
PIO_STATUS_BLOCK | IoStatusBlock, | ||
PVOID | Buffer, | ||
ULONG | Length, | ||
PLARGE_INTEGER | ByteOffset, | ||
PULONG | Key | ||
) |
Referenced by clear_first_megabyte(), write_data(), and write_superblocks().
|
static |
Definition at line 1029 of file btrfslib.c.
Referenced by write_btrfs().
Definition at line 1570 of file btrfslib.c.
Definition at line 1566 of file btrfslib.c.
Definition at line 1558 of file btrfslib.c.
|
static |
Definition at line 458 of file btrfslib.c.
Referenced by get_next_address().
|
static |
Definition at line 877 of file btrfslib.c.
Referenced by init_fs_tree(), and set_default_subvol().
|
static |
Definition at line 1061 of file btrfslib.c.
Referenced by FormatEx2().
|
static |
Definition at line 580 of file btrfslib.c.
|
static |
Definition at line 620 of file btrfslib.c.
Referenced by write_btrfs().
|
static |
Definition at line 752 of file btrfslib.c.
Referenced by write_btrfs().
uint16_t def_csum_type = CSUM_TYPE_CRC32C |
Definition at line 180 of file btrfslib.c.
Referenced by calc_superblock_checksum(), calc_tree_checksum(), FormatEx2(), SetCsumType(), and write_superblocks().
uint64_t def_incompat_flags = BTRFS_INCOMPAT_FLAGS_EXTENDED_IREF | BTRFS_INCOMPAT_FLAGS_SKINNY_METADATA |
Definition at line 179 of file btrfslib.c.
Referenced by FormatEx2(), and SetIncompatFlags().
ULONG def_node_size = 0 |
Definition at line 178 of file btrfslib.c.
Referenced by FormatEx2(), and SetSizes().
ULONG def_sector_size = 0 |
Definition at line 178 of file btrfslib.c.
Referenced by FormatEx2(), and SetSizes().
Definition at line 177 of file btrfslib.c.