Rename sbs to block_devices_to_mount

Signed-off-by: Roland Vet <RlndVt@protonmail.com>
This commit is contained in:
Roland Vet 2024-02-20 19:46:59 +01:00
parent b7c43996a1
commit 46ed72461f

View File

@ -185,32 +185,32 @@ fn devs_str_sbs_from_uuid(uuid: String) -> anyhow::Result<(String, Vec<bch_sb_ha
} }
fn cmd_mount_inner(opt: Cli) -> anyhow::Result<()> { fn cmd_mount_inner(opt: Cli) -> anyhow::Result<()> {
let (devs, sbs) = if opt.dev.starts_with("UUID=") { let (devices, block_devices_to_mount) = if opt.dev.starts_with("UUID=") {
let uuid = opt.dev.replacen("UUID=", "", 1); let uuid = opt.dev.replacen("UUID=", "", 1);
devs_str_sbs_from_uuid(uuid)? devs_str_sbs_from_uuid(uuid)?
} else if opt.dev.starts_with("OLD_BLKID_UUID=") { } else if opt.dev.starts_with("OLD_BLKID_UUID=") {
let uuid = opt.dev.replacen("OLD_BLKID_UUID=", "", 1); let uuid = opt.dev.replacen("OLD_BLKID_UUID=", "", 1);
devs_str_sbs_from_uuid(uuid)? devs_str_sbs_from_uuid(uuid)?
} else { } else {
let mut sbs = Vec::new(); let mut block_devices_to_mount = Vec::new();
for dev in opt.dev.split(':') { for dev in opt.dev.split(':') {
let dev = PathBuf::from(dev); let dev = PathBuf::from(dev);
sbs.push(read_super_silent(&dev)?); block_devices_to_mount.push(read_super_silent(&dev)?);
} }
(opt.dev, sbs) (opt.dev, block_devices_to_mount)
}; };
if sbs.len() == 0 { if block_devices_to_mount.len() == 0 {
Err(anyhow::anyhow!("No device found from specified parameters"))?; Err(anyhow::anyhow!("No device found from specified parameters"))?;
} }
// Check if the filesystem's master key is encrypted // Check if the filesystem's master key is encrypted
if unsafe { bcachefs::bch2_sb_is_encrypted(sbs[0].sb) } { if unsafe { bcachefs::bch2_sb_is_encrypted(block_devices_to_mount[0].sb) } {
// Filesystem's master key is encrypted, attempt to decrypt // Filesystem's master key is encrypted, attempt to decrypt
// First by key_file, if available // First by key_file, if available
let fallback_to_prepare_key = if let Some(key_file) = &opt.key_file { let fallback_to_prepare_key = if let Some(key_file) = &opt.key_file {
match key::read_from_key_file(&sbs[0], key_file.as_path()) { match key::read_from_key_file(&block_devices_to_mount[0], key_file.as_path()) {
Ok(()) => { Ok(()) => {
// Decryption succeeded // Decryption succeeded
false false
@ -227,23 +227,23 @@ fn cmd_mount_inner(opt: Cli) -> anyhow::Result<()> {
}; };
// If decryption by key_file was unsuccesful, prompt for password (or follow key_policy) // If decryption by key_file was unsuccesful, prompt for password (or follow key_policy)
if fallback_to_prepare_key { if fallback_to_prepare_key {
key::prepare_key(&sbs[0], opt.key_location)?; key::prepare_key(&block_devices_to_mount[0], opt.key_location)?;
}; };
} }
if let Some(mountpoint) = opt.mountpoint { if let Some(mountpoint) = opt.mountpoint {
info!( info!(
"mounting with params: device: {}, target: {}, options: {}", "mounting with params: device: {}, target: {}, options: {}",
devs, devices,
mountpoint.to_string_lossy(), mountpoint.to_string_lossy(),
&opt.options &opt.options
); );
mount(devs, mountpoint, &opt.options)?; mount(devices, mountpoint, &opt.options)?;
} else { } else {
info!( info!(
"would mount with params: device: {}, options: {}", "would mount with params: device: {}, options: {}",
devs, devices,
&opt.options &opt.options
); );
} }