Skip to content

Commit db89d18

Browse files
Merge pull request #1428 from rvykydal/update-luks-passphrase-saving
Fix luks save_passphrase for missing format context
2 parents fd76af1 + d5dbcab commit db89d18

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

blivet/static_data/luks_data.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ def add_passphrases(self, passphrases):
8686
def save_passphrase(self, device):
8787
""" Save a device's LUKS passphrase in case of reset. """
8888
pctx = device.format.contexts.get_context("passphrase")
89-
passphrase = pctx._passphrase
89+
passphrase = pctx and pctx._passphrase
9090
if passphrase:
9191
luks_data.luks_devs[device.format.uuid] = passphrase
9292
self.add_passphrase(passphrase)

tests/storage_tests/formats_test/luks_test.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,10 @@ def test_luks_save_passphrase(self):
304304
self.assertIsNotNone(disk)
305305
self.assertTrue(disk.format.has_key)
306306

307+
# remove passphrase and try to save it (should not fail)
308+
disk.format.passphrase = None
309+
blivet.static_data.luks_data.save_passphrase(disk)
310+
307311
def test_label_subsystem(self):
308312
disk = self.storage.devicetree.get_device_by_path(self.vdevs[0])
309313
self.assertIsNotNone(disk)

0 commit comments

Comments
 (0)