|
libstorage-ng
|
An LUKS encryption layer on a block device. More...
#include <Luks.h>
Public Member Functions | |
| const std::string & | get_uuid () const |
| Get the LUKS UUID. | |
| void | set_uuid (const std::string &uuid) |
| Set the LUKS UUID. | |
| const std::string & | get_label () const |
| Get the LUKS label. | |
| void | set_label (const std::string &label) |
| Set the LUKS label. | |
| const std::string & | get_format_options () const ST_DEPRECATED |
| void | set_format_options (const std::string &format_options) ST_DEPRECATED |
| const std::vector< std::string > & | get_format_options_v2 () const |
| Get extra options for luks format call. | |
| void | set_format_options_v2 (const std::vector< std::string > &format_options_v2) |
| Set extra options for luks format call. | |
| Impl & | get_impl () |
| const Impl & | get_impl () const |
| virtual Luks * | clone () const override |
| virtual std::unique_ptr< Device > | clone_v2 () const override |
| Luks (Impl *impl) | |
| ST_NO_SWIG | Luks (std::unique_ptr< Device::Impl > &&impl) |
| Public Member Functions inherited from storage::Encryption | |
| EncryptionType | get_type () const |
| Get the encryption type. | |
| void | set_type (EncryptionType type) |
| Set the encryption type. | |
| const std::string & | get_password () const |
| Get the encryption password. | |
| void | set_password (const std::string &password) |
| Set the encryption password. | |
| const std::string & | get_key_file () const |
| Get the key file. | |
| void | set_key_file (const std::string &key_file) |
| Set the key file. | |
| bool | is_use_key_file_in_commit () const |
| Get whether the key file is used in commit. | |
| void | set_use_key_file_in_commit (bool use_key_file_in_commit) |
| Set whether the key file is used in commit. | |
| const std::string & | get_cipher () const |
| Get the cipher. | |
| void | set_cipher (const std::string &cipher) |
| Set the cipher. | |
| unsigned int | get_key_size () const |
| Get the key size in bytes. | |
| void | set_key_size (unsigned int key_size) |
| Set the key size in bytes. | |
| const std::string & | get_pbkdf () const |
| Get the PBKDF (of the first used keyslot). | |
| void | set_pbkdf (const std::string &pbkdf) |
| Set the PBKDF. | |
| const std::string & | get_integrity () const |
| Get the integrity. | |
| void | set_integrity (const std::string &integrity) |
| Set the integrity. | |
| MountByType | get_mount_by () const |
| Get the mount-by method. | |
| void | set_mount_by (MountByType mount_by) |
| Set the mount-by method. | |
| void | set_default_mount_by () |
| Set the mount-by method to the global default, see Storage::get_default_mount_by(). | |
| const std::vector< std::string > & | get_crypt_options () const |
| Get options (fourth field) in /etc/crypttab. | |
| void | set_crypt_options (const std::vector< std::string > &crypt_options) |
| Set options (fourth field) in /etc/crypttab. | |
| bool | is_in_etc_crypttab () const |
| Query whether the LUKS device is present (probed devicegraph) or will be present (staging devicegraph) in /etc/crypttab. | |
| void | set_in_etc_crypttab (bool in_etc_crypttab) |
| Set whether the LUKS device will be present in /etc/crypttab. | |
| BlkDevice * | get_blk_device () |
| Return underlying blk device. | |
| const BlkDevice * | get_blk_device () const |
| Return underlying blk device. | |
| const std::string & | get_open_options () const ST_DEPRECATED |
| void | set_open_options (const std::string &open_options) ST_DEPRECATED |
| const std::vector< std::string > & | get_open_options_v2 () const |
| Get extra options for open calls. | |
| void | set_open_options_v2 (const std::vector< std::string > &open_options_v2) |
| Set extra options for open calls. | |
| Impl & | get_impl () |
| const Impl & | get_impl () const |
| Encryption (Impl *impl) | |
| ST_NO_SWIG | Encryption (std::unique_ptr< Device::Impl > &&impl) |
| Public Member Functions inherited from storage::BlkDevice | |
| const std::string & | get_name () const |
| Get the device name. | |
| void | set_name (const std::string &name) |
| Set the device name. | |
| const Region & | get_region () const |
| void | set_region (const Region ®ion) |
| unsigned long long | get_size () const |
| Returns the size of the block device. | |
| void | set_size (unsigned long long size) |
| Set the size of the block device. | |
| std::string | get_size_string () const |
| Returns the size of the block device as a localised string. | |
| const Topology & | get_topology () const |
| Get the topology. | |
| void | set_topology (const Topology &topology) |
| Set the topology. | |
| bool | is_active () const |
| bool | is_read_only () const |
| Return whether the block device is read-only. | |
| const std::string & | get_sysfs_name () const |
| const std::string & | get_sysfs_path () const |
| const std::vector< std::string > & | get_udev_paths () const |
| Return the names of the udev by-path links of the blk device. | |
| const std::vector< std::string > & | get_udev_ids () const |
| Return the names of the udev by-id links of the blk device. | |
| bool | is_usable_as_blk_device () const |
| Checks whether the blk device is in general usable as a blk device. | |
| RemoveInfo | detect_remove_info () const |
| Check whether the device can be removed. | |
| const std::string & | get_dm_table_name () const |
| Return device-mapper table name (dm-table-name for short). | |
| void | set_dm_table_name (const std::string &dm_table_name) |
| Set the device-mapper table name (dm-table-name for short). | |
| BlkFilesystem * | create_blk_filesystem (FsType fs_type) |
| Creates a block filesystem on the block device. | |
| bool | has_blk_filesystem () const |
| Return whether the block device has a block filesystem. | |
| BlkFilesystem * | get_blk_filesystem () |
| Return the block filesystem of the block device. | |
| const BlkFilesystem * | get_blk_filesystem () const |
| Return the block filesystem of the block device. | |
| BlkFilesystem * | create_filesystem (FsType fs_type) ST_DEPRECATED |
| Creates a block filesystem on the block device. | |
| bool | has_filesystem () const ST_DEPRECATED |
| Return whether the block device has a block filesystem. | |
| BlkFilesystem * | get_filesystem () ST_DEPRECATED |
| Return the block filesystem of the block device. | |
| const BlkFilesystem * | get_filesystem () const ST_DEPRECATED |
| Return the block filesystem of the block device. | |
| Encryption * | create_encryption (const std::string &dm_table_name) ST_DEPRECATED |
| Creates an encryption device on the blk device. | |
| Encryption * | create_encryption (const std::string &dm_table_name, EncryptionType type) |
| Creates an encryption device on the blk device. | |
| void | remove_encryption () |
| Removes an encryption device on the blk device. | |
| bool | has_encryption () const |
| Return whether the block device has an Encryption. | |
| Encryption * | get_encryption () |
| Return the Encryption of the block device. | |
| const Encryption * | get_encryption () const |
| Return the Encryption of the block device. | |
| Bcache * | create_bcache (const std::string &name) |
| Creates a Bcache on the blk device. | |
| bool | has_bcache () const |
| Return whether the block device has a BCache. | |
| Bcache * | get_bcache () |
| Return the Bcache of the block device. | |
| const Bcache * | get_bcache () const |
| Return the Bcache of the block device. | |
| BcacheCset * | create_bcache_cset () |
| Creates a BcacheCset on the blk device. | |
| bool | has_bcache_cset () const |
| Return whether the block device has a BcacheCset. | |
| BcacheCset * | get_bcache_cset () |
| Return the BcacheCset of the block device. | |
| const BcacheCset * | get_bcache_cset () const |
| Return the BcacheCset of the block device. | |
| std::vector< MountByType > | possible_mount_bys () const |
| Returns the possible mount-by methods to reference the block device. | |
| Impl & | get_impl () |
| const Impl & | get_impl () const |
| Public Member Functions inherited from storage::Device | |
| sid_t | get_sid () const |
| Return the storage id (sid) of the device. | |
| bool | operator== (const Device &rhs) const |
| bool | operator!= (const Device &rhs) const |
| Device * | copy_to_devicegraph (Devicegraph *devicegraph) const |
| Copies the device to the devicegraph. | |
| bool | exists_in_devicegraph (const Devicegraph *devicegraph) const |
| Checks if the device exists in the devicegraph. | |
| bool | exists_in_probed () const |
| Checks if the device exists in the probed devicegraph. | |
| bool | exists_in_staging () const |
| Checks if the device exists in the staging devicegraph. | |
| bool | exists_in_system () const |
| Checks if the device exists in the system devicegraph. | |
| std::string | get_displayname () const |
| ResizeInfo | detect_resize_info () const |
| Detect the resize info of the device. | |
| bool | has_children () const |
| size_t | num_children () const |
| bool | has_parents () const |
| size_t | num_parents () const |
| std::vector< Device * > | get_children () |
| std::vector< const Device * > | get_children () const |
| std::vector< Device * > | get_children (View view) |
| Get all children of the device. | |
| std::vector< const Device * > | get_children (View view) const |
| Get all children of the device. | |
| std::vector< Device * > | get_parents () |
| std::vector< const Device * > | get_parents () const |
| std::vector< Device * > | get_parents (View view) |
| Get all parents of the device. | |
| std::vector< const Device * > | get_parents (View view) const |
| Get all parents of the device. | |
| std::vector< Device * > | get_siblings (bool itself) |
| std::vector< const Device * > | get_siblings (bool itself) const |
| std::vector< Device * > | get_descendants (bool itself) |
| std::vector< const Device * > | get_descendants (bool itself) const |
| std::vector< Device * > | get_descendants (bool itself, View view) |
| std::vector< const Device * > | get_descendants (bool itself, View view) const |
| std::vector< Device * > | get_ancestors (bool itself) |
| std::vector< const Device * > | get_ancestors (bool itself) const |
| std::vector< Device * > | get_leaves (bool itself) |
| std::vector< const Device * > | get_leaves (bool itself) const |
| std::vector< Device * > | get_roots (bool itself) |
| std::vector< const Device * > | get_roots (bool itself) const |
| std::vector< Holder * > | get_in_holders () |
| std::vector< const Holder * > | get_in_holders () const |
| std::vector< Holder * > | get_out_holders () |
| std::vector< const Holder * > | get_out_holders () const |
| void | remove_descendants () ST_DEPRECATED |
| void | remove_descendants (View view) |
| Remove all descendants of the device. | |
| const std::map< std::string, std::string > & | get_userdata () const |
| Return the userdata of the device. | |
| void | set_userdata (const std::map< std::string, std::string > &userdata) |
| Set the userdata of the device. | |
| std::string | get_name_sort_key () const |
| Get a sort-key based on the device name. | |
| Devicegraph * | get_devicegraph () |
| Return the devicegraph the device belongs to. | |
| const Devicegraph * | get_devicegraph () const |
| Return the devicegraph the device belongs to. | |
| Impl & | get_impl () |
| const Impl & | get_impl () const |
| void | save (xmlNode *node) const ST_DEPRECATED |
Static Public Member Functions | |
| static Luks * | create (Devicegraph *devicegraph, const std::string &dm_table_name) |
| Create a device of type Luks. | |
| static Luks * | load (Devicegraph *devicegraph, const xmlNode *node) |
| static std::vector< Luks * > | get_all (Devicegraph *devicegraph) |
| Get all Lukses. | |
| static std::vector< const Luks * > | get_all (const Devicegraph *devicegraph) |
| Get all Lukses. | |
| static void | reset_activation_infos () |
| The library keeps track of whether the activation of a specific LUKS device was canceled and of the password. | |
| Static Public Member Functions inherited from storage::Encryption | |
| static Encryption * | create (Devicegraph *devicegraph, const std::string &dm_table_name) |
| Create a device of type Encryption. | |
| static Encryption * | load (Devicegraph *devicegraph, const xmlNode *node) |
| static std::vector< Encryption * > | get_all (Devicegraph *devicegraph) |
| Get all Encryption objects of the devicegraph. | |
| static std::vector< const Encryption * > | get_all (const Devicegraph *devicegraph) |
| Get all Encryption objects of the devicegraph. | |
| Static Public Member Functions inherited from storage::BlkDevice | |
| static bool | is_valid_dm_table_name (const std::string &dm_table_name) |
| Check whether the DM table name is valid. | |
| static std::vector< BlkDevice * > | get_all (Devicegraph *devicegraph) |
| Get all BlkDevices. | |
| static std::vector< const BlkDevice * > | get_all (const Devicegraph *devicegraph) |
| Get all BlkDevices. | |
| static BlkDevice * | find_by_name (Devicegraph *devicegraph, const std::string &name) |
| Find a block device by its name. | |
| static const BlkDevice * | find_by_name (const Devicegraph *devicegraph, const std::string &name) |
| Find a block device by its name. | |
| static bool | exists_by_any_name (const Devicegraph *devicegraph, const std::string &name, SystemInfo &system_info) |
| Check if a block device by any name including any symbolic links in /dev. | |
| static BlkDevice * | find_by_any_name (Devicegraph *devicegraph, const std::string &name) ST_DEPRECATED |
| Find a block device by any name including any symbolic links in /dev. | |
| static BlkDevice * | find_by_any_name (Devicegraph *devicegraph, const std::string &name, SystemInfo &system_info) |
| Find a block device by any name including any symbolic links in /dev. | |
| static const BlkDevice * | find_by_any_name (const Devicegraph *devicegraph, const std::string &name) ST_DEPRECATED |
| Find a block device by any name including any symbolic links in /dev. | |
| static const BlkDevice * | find_by_any_name (const Devicegraph *devicegraph, const std::string &name, SystemInfo &system_info) |
| Find a block device by any name including any symbolic links in /dev. | |
| static bool | compare_by_dm_table_name (const BlkDevice *lhs, const BlkDevice *rhs) |
| Compare (less than) two BlkDevices by DM table name. | |
| Static Public Member Functions inherited from storage::Device | |
| static std::vector< Device * > | get_all (Devicegraph *devicegraph) |
| Get all Devices. | |
| static std::vector< const Device * > | get_all (const Devicegraph *devicegraph) |
| Get all Devices. | |
| static bool | compare_by_sid (const Device *lhs, const Device *rhs) |
| Compare (less than) two Devices by sid. | |
| static bool | compare_by_name (const Device *lhs, const Device *rhs) |
| Compare (less than) two Devices by name. | |
Additional Inherited Members | |
| Protected Member Functions inherited from storage::BlkDevice | |
| BlkDevice (Impl *impl) | |
| ST_NO_SWIG | BlkDevice (std::unique_ptr< Device::Impl > &&impl) |
| Protected Member Functions inherited from storage::Device | |
| Device (Impl *impl) ST_DEPRECATED | |
| ST_NO_SWIG | Device (std::unique_ptr< Impl > &&impl) |
| void | create (Devicegraph *devicegraph) ST_DEPRECATED |
| Create a device in the devicegraph. | |
| void | load (Devicegraph *devicegraph) ST_DEPRECATED |
An LUKS encryption layer on a block device.
Do not resize the Luks object but the underlying BlkDevice object.
|
overridevirtual |
Reimplemented from storage::Encryption.
|
overridevirtual |
Reimplemented from storage::Encryption.
|
static |
Create a device of type Luks.
Usually this function is not called directly. Instead BlkDevice::create_encryption() is called.
|
static |
Get all Lukses.
| const std::string & storage::Luks::get_label | ( | ) | const |
Get the LUKS label.
Only available in LUKS version 2.
|
static |
The library keeps track of whether the activation of a specific LUKS device was canceled and of the password.
Using this function that information can be reset.
| void storage::Luks::set_format_options_v2 | ( | const std::vector< std::string > & | format_options_v2 | ) |
Set extra options for luks format call.
No quoting required. It is undefined where exactly the extra options are inserted into the command line options of the external program.
Options that modify the size of the resulting blk device (e.g. –integrity) are not allowed.
| void storage::Luks::set_label | ( | const std::string & | label | ) |
Set the LUKS label.
Only available in LUKS version 2.
| void storage::Luks::set_uuid | ( | const std::string & | uuid | ) |
Set the LUKS UUID.
The UUID is only set when creating a new LUKS on disk.