libstorage-ng
Toggle main menu visibility
Loading...
Searching...
No Matches
Luks.h
1
/*
2
* Copyright (c) [2016-2021] SUSE LLC
3
*
4
* All Rights Reserved.
5
*
6
* This program is free software; you can redistribute it and/or modify it
7
* under the terms of version 2 of the GNU General Public License as published
8
* by the Free Software Foundation.
9
*
10
* This program is distributed in the hope that it will be useful, but WITHOUT
11
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
13
* more details.
14
*
15
* You should have received a copy of the GNU General Public License along
16
* with this program; if not, contact Novell, Inc.
17
*
18
* To contact Novell about this file by physical or electronic mail, you may
19
* find current contact information at www.novell.com.
20
*/
21
22
23
#ifndef STORAGE_LUKS_H
24
#define STORAGE_LUKS_H
25
26
27
#include "storage/Devices/Encryption.h"
28
29
30
namespace
storage
31
{
32
38
class
Luks :
public
Encryption
39
{
40
public
:
41
48
static
Luks*
create
(
Devicegraph
* devicegraph,
const
std::string& dm_table_name);
49
50
static
Luks* load(
Devicegraph
* devicegraph,
const
xmlNode* node);
51
55
static
std::vector<Luks*>
get_all
(
Devicegraph
* devicegraph);
56
60
static
std::vector<const Luks*>
get_all
(
const
Devicegraph
* devicegraph);
61
65
const
std::string&
get_uuid
()
const
;
66
70
void
set_uuid
(
const
std::string& uuid);
71
77
const
std::string&
get_label
()
const
;
78
84
void
set_label
(
const
std::string& label);
85
89
const
std::string&
get_format_options
()
const
;
90
98
void
set_format_options
(
const
std::string& format_options);
99
105
static
void
reset_activation_infos
();
106
107
public
:
108
109
class
Impl;
110
111
Impl& get_impl();
112
const
Impl& get_impl()
const
;
113
114
virtual
Luks* clone()
const override
;
115
virtual
std::unique_ptr<Device> clone_v2()
const override
;
116
117
Luks(Impl* impl);
118
ST_NO_SWIG Luks(std::unique_ptr<Device::Impl>&& impl);
119
120
};
121
122
128
bool
is_luks
(
const
Device
* device);
129
136
Luks
*
to_luks
(
Device
* device);
137
141
const
Luks
*
to_luks
(
const
Device
* device);
142
143
}
144
145
#endif
storage::Device
An abstract base class for storage devices.
Definition
Device.h:82
storage::Devicegraph
The main container of the libstorage-ng.
Definition
Devicegraph.h:170
storage::Luks
An LUKS encryption layer on a block device.
Definition
Luks.h:39
storage::Luks::create
static Luks * create(Devicegraph *devicegraph, const std::string &dm_table_name)
Create a device of type Luks.
storage::Luks::get_label
const std::string & get_label() const
Get the LUKS label.
storage::Luks::get_all
static std::vector< Luks * > get_all(Devicegraph *devicegraph)
Get all Lukses.
storage::Luks::get_all
static std::vector< const Luks * > get_all(const Devicegraph *devicegraph)
Get all Lukses.
storage::Luks::set_format_options
void set_format_options(const std::string &format_options)
Set extra options for luks format call.
storage::Luks::reset_activation_infos
static void reset_activation_infos()
The library keeps track of whether the activation of a specific LUKS device was canceled and of the p...
storage::Luks::get_uuid
const std::string & get_uuid() const
Get the LUKS UUID.
storage::Luks::set_uuid
void set_uuid(const std::string &uuid)
Set the LUKS UUID.
storage::Luks::set_label
void set_label(const std::string &label)
Set the LUKS label.
storage::Luks::get_format_options
const std::string & get_format_options() const
Get extra options for luks format call.
storage
The storage namespace.
Definition
Actiongraph.h:40
storage::to_luks
Luks * to_luks(Device *device)
Converts pointer to Device to pointer to Luks.
storage::is_luks
bool is_luks(const Device *device)
Checks whether device points to a Luks.
storage
Devices
Luks.h
Generated by
1.17.0