From 9ca6684291e8a30cce2158285078664f8c771638 Mon Sep 17 00:00:00 2001 From: guazhang Date: Wed, 27 Mar 2024 11:53:21 +0800 Subject: [PATCH 1/3] fixed md_create issue #1013 --- src/python/gi/overrides/BlockDev.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/python/gi/overrides/BlockDev.py b/src/python/gi/overrides/BlockDev.py index d830e485..25852f66 100644 --- a/src/python/gi/overrides/BlockDev.py +++ b/src/python/gi/overrides/BlockDev.py @@ -1018,7 +1018,7 @@ __all__.append("md_get_superblock_size") _md_create = BlockDev.md_create @override(BlockDev.md_create) -def md_create(device_name, level, disks, spares=0, version=None, bitmap=False, chunk_size=0, extra=None, **kwargs): +def md_create(device_name, level, disks, spares=0, version=None, bitmap=None, chunk_size=0, extra=None, **kwargs): extra = _get_extra(extra, kwargs) return _md_create(device_name, level, disks, spares, version, bitmap, chunk_size, extra) __all__.append("md_create") -- 2.45.0 From 829cea63351c8d5264573eb3d8953cd0069d2566 Mon Sep 17 00:00:00 2001 From: Vojtech Trefny Date: Wed, 3 Apr 2024 15:58:04 +0200 Subject: [PATCH 2/3] crypto: Fix double free in bd_crypto_luks_remove_key --- src/plugins/crypto.c | 1 - tests/crypto_test.py | 6 ++++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/plugins/crypto.c b/src/plugins/crypto.c index 5120ec57..f764593f 100644 --- a/src/plugins/crypto.c +++ b/src/plugins/crypto.c @@ -1480,7 +1480,6 @@ gboolean bd_crypto_luks_remove_key (const gchar *device, BDCryptoKeyslotContext return FALSE; } - crypt_safe_free (key_buf); crypt_free (cd); bd_utils_report_finished (progress_id, "Completed"); return TRUE; diff --git a/tests/crypto_test.py b/tests/crypto_test.py index 6fe15a07..54ec0176 100644 --- a/tests/crypto_test.py +++ b/tests/crypto_test.py @@ -524,6 +524,9 @@ class CryptoTestRemoveKey(CryptoTestCase): succ = BlockDev.crypto_luks_add_key(self.loop_dev, ctx, nctx2) self.assertTrue(succ) + nctx3 = BlockDev.CryptoKeyslotContext(keyfile=self.keyfile) + succ = BlockDev.crypto_luks_add_key(self.loop_dev, ctx, nctx3) + with self.assertRaises(GLib.GError): wctx = BlockDev.CryptoKeyslotContext(passphrase="wrong-passphrase") BlockDev.crypto_luks_remove_key(self.loop_dev, wctx) @@ -534,6 +537,9 @@ class CryptoTestRemoveKey(CryptoTestCase): succ = BlockDev.crypto_luks_remove_key(self.loop_dev, nctx2) self.assertTrue(succ) + succ = BlockDev.crypto_luks_remove_key(self.loop_dev, nctx3) + self.assertTrue(succ) + @tag_test(TestTags.SLOW) def test_luks_remove_key(self): self._remove_key(self._luks_format) -- 2.45.0 From c50d43b4d8e9d10b410265c72d2bbf5372eb41e6 Mon Sep 17 00:00:00 2001 From: Vojtech Trefny Date: Tue, 16 Apr 2024 12:02:27 +0200 Subject: [PATCH 3/3] tests: Fix running tests without ntfsprogs --- tests/fs_tests/generic_test.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/fs_tests/generic_test.py b/tests/fs_tests/generic_test.py index fb890229..df25e25a 100644 --- a/tests/fs_tests/generic_test.py +++ b/tests/fs_tests/generic_test.py @@ -342,8 +342,12 @@ class CanResizeRepairCheckLabel(GenericNoDevTestCase): self.assertEqual(util, "resize2fs") avail, util = BlockDev.fs_can_get_min_size("ntfs") - self.assertTrue(avail) - self.assertEqual(util, None) + if self.ntfs_avail: + self.assertTrue(avail) + self.assertEqual(util, None) + else: + self.assertFalse(avail) + self.assertEqual(util, "ntfsresize") with self.assertRaises(GLib.GError): BlockDev.fs_can_get_min_size("xfs") -- 2.45.0