@@ -25,17 +25,19 @@ function deactivate_luks {
2525function reencrypt_luks {
2626 declare kiwi_RootPart=${kiwi_RootPart}
2727 local disk=$1
28+ local keyslot=/root/.luks.slot
2829 local header_checksum_origin=/root/.luks.header
2930 local header_checksum_cur=/root/.luks.header.cur
3031 local keyfile=/root/.root.keyfile
3132 local new_keyfile=/run/.kiwi_reencrypt.keyfile
32- local passphrase_file=/root/.slot0
33+ local passphrase_file=/root/.slotpass
3334 local progress=/dev/install_progress
3435 local load_text=" Reencrypting..."
3536 local title_text=" LUKS"
3637 local device
3738 device=$( get_partition_node_name " ${disk} " " ${kiwi_RootPart} " )
3839 read -r header_checksum_origin < " ${header_checksum_origin} "
40+ read -r keyslot < " ${keyslot} "
3941
4042 # Checksum test if luks header is still the image origin header
4143 cryptsetup luksHeaderBackup \
@@ -66,18 +68,18 @@ function reencrypt_luks {
6668 chmod 0400 " ${new_keyfile} "
6769 cryptsetup \
6870 --key-file " ${passphrase_file} " \
69- --key-slot 0 \
71+ --key-slot " ${keyslot} " \
7072 luksChangeKey " ${device} " " ${new_keyfile} "
7173 cp " ${new_keyfile} " " ${passphrase_file} "
7274 fi
7375 # reencrypt
7476 setup_progress_fifo ${progress}
7577 (
76- # reencrypt slot0 , this will wipe all key slots
78+ # reencrypt, this will overwrite all key slots
7779 cryptsetup reencrypt \
7880 --progress-frequency 1 \
7981 --key-file " ${passphrase_file} " \
80- --key-slot 0 \
82+ --key-slot " ${keyslot} " \
8183 " ${device} " 2>&1 | sed -u ' s/.* \([0-9]*\)[0-9.]*%.*/\1/'
8284 ) > " ${progress} " &
8385 run_progress_dialog " ${load_text} " " ${title_text} "
0 commit comments