class DeviceManager
Defined at line 36 of file ../../src/devices/block/drivers/zxcrypt/device-manager.h
|zxcrypt::DeviceManager| is a "wrapper" driver for zxcrypt volumes. Each block device with valid
zxcrypt metadata will result in a wrapper being created, but the wrapper cannot perform any block
operations. To perform block operations, |Unseal| must first be called with a valid key and
slot, which will cause an unsealed |zxcrypt::Device| to be added to the device tree.
Public Methods
zx_status_t Create (void * ctx, zx_device_t * parent)
Defined at line 31 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void DeviceManager (zx_device_t * parent)
Defined at line 38 of file ../../src/devices/block/drivers/zxcrypt/device-manager.h
void ~DeviceManager ()
Defined at line 39 of file ../../src/devices/block/drivers/zxcrypt/device-manager.h
void DeviceManager (const DeviceManager & )
Defined at line 40 of file ../../src/devices/block/drivers/zxcrypt/device-manager.h
void DeviceManager (DeviceManager && )
Defined at line 40 of file ../../src/devices/block/drivers/zxcrypt/device-manager.h
DeviceManager & operator= (const DeviceManager & )
Defined at line 40 of file ../../src/devices/block/drivers/zxcrypt/device-manager.h
DeviceManager & operator= (DeviceManager && )
Defined at line 40 of file ../../src/devices/block/drivers/zxcrypt/device-manager.h
zx_status_t Bind ()
Adds the device
Defined at line 52 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void DdkUnbind (ddk::UnbindTxn txn)
ddk::Device methods; see ddktl/device.h
Defined at line 69 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void DdkRelease ()
Defined at line 88 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void DdkChildPreRelease (void * child_ctx)
ddk::ChildPreRelease methods
Defined at line 90 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void Format (FormatRequestView request, FormatCompleter::Sync & completer)
Formats the zxcrypt volume, destroying any data contained therein, and
enrolls the given key in the requested key slot. Leaves the device sealed.
Defined at line 122 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void Unseal (UnsealRequestView request, UnsealCompleter::Sync & completer)
Unseals the zxcrypt volume and adds it as a |zxcrypt::Device| to the device tree.
Defined at line 132 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void Seal (SealCompleter::Sync & completer)
Removes the unsealed |zxcrypt::Device|, if present.
Defined at line 142 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc
void Shred (ShredCompleter::Sync & completer)
Clobbers the superblock (and any backup superblocks), preventing future
Unseal operations from succeeding (provided no other program is
manipulating the underlying block device).
Defined at line 157 of file ../../src/devices/block/drivers/zxcrypt/device-manager.cc