freeotfeapiconsts.h
来自「文件驱动加密,功能强大,可产生加密分区,支持AES,MD2,MD4,MD5MD2」· C头文件 代码 · 共 173 行
H
173 行
// Description: FreeOTFE Device Driver API
// By Sarah Dean
// Email: sdean12@sdean12.org
// WWW: http://www.FreeOTFE.org/
//
// -----------------------------------------------------------------------------
//
#ifndef _FreeOTFEAPIConsts_H
#define _FreeOTFEAPIConsts_H 1
// =========================================================================
// Const definitions
#define DEVICE_SLASH L"\\"
#define MAIN_DEVICE_NAME L"FreeOTFE"
#define DEVICE_BASE_NAME L"\\" MAIN_DEVICE_NAME
#define DEVICE_FREEOTFE_ROOT L"\\Device" DEVICE_BASE_NAME
#define DEVICE_DOSDEVICES L"\\DosDevices"
#define DEVICE_DOSDEVICES_GLOBAL L"\\DosDevices\\Global"
#define DEVICE_SYMLINK_FREEOTFE_ROOT DEVICE_DOSDEVICES
// Main device
#define DEVICE_MAIN_NAME DEVICE_FREEOTFE_ROOT DEVICE_BASE_NAME
#define DEVICE_SYMLINK_MAIN_NAME DEVICE_SYMLINK_FREEOTFE_ROOT DEVICE_BASE_NAME
// Disk devices
#define DEVICE_DISK_DIR_NAME DEVICE_FREEOTFE_ROOT L"\\Disks"
#define DEVICE_DISK_PREFIX DEVICE_DISK_DIR_NAME L"\\Disk"
// The following is just padding to represent the number tacked onto the
// end of DEVICE_DISK_PREFIX
#define DEVICE_DISK_NUMBER L"zzzzz"
#define IOCTL_FREEOTFE_VERSION CTL_CODE( \
FILE_DEVICE_DISK, \
0x800, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
#define IOCTL_FREEOTFE_CREATE CTL_CODE( \
FILE_DEVICE_DISK, \
0x805, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
#define IOCTL_FREEOTFE_SET_RAW CTL_CODE( \
FILE_DEVICE_DISK, \
0x809, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
#define IOCTL_FREEOTFE_GET_RAW CTL_CODE( \
FILE_DEVICE_DISK, \
0x80A, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
#define IOCTL_FREEOTFE_MOUNT CTL_CODE( \
FILE_DEVICE_DISK, \
0x801, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
#define IOCTL_FREEOTFE_DISMOUNT CTL_CODE( \
FILE_DEVICE_DISK, \
0x802, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
#define IOCTL_FREEOTFE_DESTROY CTL_CODE( \
FILE_DEVICE_DISK, \
0x806, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// This returns the number of *disk* devices which exist
#define IOCTL_FREEOTFE_GET_DISK_DEVICE_COUNT CTL_CODE( \
FILE_DEVICE_DISK, \
0x807, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// This returns the kernel mode devicenames of all *disk* devices which exist
#define IOCTL_FREEOTFE_GET_DISK_DEVICE_LIST CTL_CODE( \
FILE_DEVICE_DISK, \
0x808, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// CTL_CODE with 0x803 moved to FreeOTFEAPIConstsCommon.h
// CTL_CODE with 0x804 moved to FreeOTFEAPIConstsCommon.h
// Derive a key
#define IOCTL_FREEOTFE_DERIVE_KEY CTL_CODE( \
FILE_DEVICE_UNKNOWN, \
0x810, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// Generate a MAC
#define IOCTL_FREEOTFE_GENERATE_MAC CTL_CODE( \
FILE_DEVICE_UNKNOWN, \
0x811, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// Encrypt a block
#define IOCTL_FREEOTFE_ENCRYPT_BLOCK CTL_CODE( \
FILE_DEVICE_UNKNOWN, \
0x812, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// Decrypt a block
#define IOCTL_FREEOTFE_DECRYPT_BLOCK CTL_CODE( \
FILE_DEVICE_UNKNOWN, \
0x813, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// Lock, dismount, remove, eject and unlock
// Originally added for Vista, where the user can't do this if UAC is
// operational, and the userspace software isn't running with escalated privs
#define IOCTL_FREEOTFE_LDREU CTL_CODE( \
FILE_DEVICE_UNKNOWN, \
0x814, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// Create DOS symlink for device
#define IOCTL_FREEOTFE_DOS_MOUNTPOINT_CREATE CTL_CODE( \
FILE_DEVICE_UNKNOWN, \
0x815, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// Create DOS symlink for device
#define IOCTL_FREEOTFE_DOS_MOUNTPOINT_DELETE CTL_CODE( \
FILE_DEVICE_UNKNOWN, \
0x816, \
METHOD_BUFFERED, \
FILE_READ_DATA \
)
// =========================================================================
// =========================================================================
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?