mirror of
https://gitlab.gnome.org/GNOME/gparted
synced 2024-08-27 19:50:23 +00:00
![Mike Fleetwood](/assets/img/avatar_default.png)
Load basic details of active Device-mapper encryption mappings from the kernel. Use dmsetup active targets. # cryptsetup luksFormat /dev/sdb5 # cryptsetup luksFormat /dev/sdb6 # cryptsetup luksOpen /dev/sdb6 sdb6_crypt # ls -l /dev/mapper/sdb6_crypt /dev/dm-0 lrwxrwxrwx. 1 root root 7 Nov 15 09:03 /dev/mapper/sdb6_crypt -> ../dm-0 brw-rw----. 1 root disk 253, 0 Nov 15 09:03 /dev/dm-0 # ls -l /dev/sdb6 brw-rw----. 1 root disk 8, 22 Nov 15 09:02 /dev/sdb6 # dmsetup table --target crypt sdb6_crypt: 0 1044480 crypt aes-cbc-essiv:sha256 0000000000000000000000000000000000000000000000000000000000000000 0 8:22 4096 So far just load the mapping name and underlying block device reference (path or major, minor pair). Note that all supported kernels appear to report the underlying block device as major, minor pair in the dmsetup output. Underlying block device paths are added to the cache when found during a search to avoid stat(2) call on subsequent searches for the same path. Prints debugging to show results, like this: # ./gpartedbin ====================== libparted : 2.4 ====================== DEBUG: /dev/sdb5: LUKS closed DEBUG: /dev/sdb6: LUKS open mapping /dev/mapper/sdb6_crypt Bug 760080 - Implement read-only LUKS support
43 lines
1.1 KiB
C++
43 lines
1.1 KiB
C++
/* Copyright (C) 2015 Mike Fleetwood
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
|
|
/* LUKS_Info
|
|
*
|
|
* Cache of active Linux kernel Device-mapper encryption mappings.
|
|
* (Named LUKS because only encryption using the LUKS on disk format is
|
|
* recognised and handled).
|
|
*/
|
|
|
|
#ifndef GPARTED_LUKS_INFO_H
|
|
#define GPARTED_LUKS_INFO_H
|
|
|
|
#include <glibmm/ustring.h>
|
|
|
|
namespace GParted
|
|
{
|
|
|
|
class LUKS_Info
|
|
{
|
|
public:
|
|
static void load_cache();
|
|
static Glib::ustring get_mapping_name( const Glib::ustring & path );
|
|
};
|
|
|
|
}//GParted
|
|
|
|
#endif /* GPARTED_LUKS_INFO_H */
|