aboutsummaryrefslogtreecommitdiff
path: root/lib/libbe
diff options
context:
space:
mode:
authorKyle Evans <kevans@FreeBSD.org>2025-02-26 22:23:24 +0000
committerKyle Evans <kevans@FreeBSD.org>2025-02-26 22:24:24 +0000
commit181549c37f1913f5ca292d8515a6e5e0068a9fe7 (patch)
tree93398e87e3135dffc7ae2540bbd97c44ccfc6624 /lib/libbe
parent17e8437e8d05aa91f2d1f31cece68204e7294a74 (diff)
Diffstat (limited to 'lib/libbe')
-rw-r--r--lib/libbe/be.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/libbe/be.c b/lib/libbe/be.c
index 62563a33d975..e0ced1c5bcfc 100644
--- a/lib/libbe/be.c
+++ b/lib/libbe/be.c
@@ -680,8 +680,20 @@ be_deep_clone_prop(int prop, void *cb)
dccb = cb;
/* Skip some properties we don't want to touch */
- if (prop == ZFS_PROP_CANMOUNT)
+ switch (prop) {
+ /*
+ * libzfs insists on these being naturally inherited in the
+ * cloning process.
+ */
+ case ZFS_PROP_KEYFORMAT:
+ case ZFS_PROP_KEYLOCATION:
+ case ZFS_PROP_ENCRYPTION:
+ case ZFS_PROP_PBKDF2_ITERS:
+
+ /* FALLTHROUGH */
+ case ZFS_PROP_CANMOUNT: /* Forced by libbe */
return (ZPROP_CONT);
+ }
/* Don't copy readonly properties */
if (zfs_prop_readonly(prop))