From c0d3464fa75534b93050ef9f2748394c05b327fa Mon Sep 17 00:00:00 2001 From: Alexei Znamensky <103110+russoz@users.noreply.github.com> Date: Wed, 29 Apr 2026 07:14:44 +1200 Subject: [PATCH] crypttab: fix option parsing when value contains multiple equal signs (#11926) * fix(crypttab): preserve option values containing multiple equal signs Fixes #4963 Co-Authored-By: Claude Sonnet 4.6 * fix(crypttab): add changelog fragment for PR 11926 Co-Authored-By: Claude Sonnet 4.6 --------- Co-authored-by: Claude Sonnet 4.6 --- changelogs/fragments/11926-crypttab-fix-opts-equal-sign.yml | 2 ++ plugins/modules/crypttab.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 changelogs/fragments/11926-crypttab-fix-opts-equal-sign.yml diff --git a/changelogs/fragments/11926-crypttab-fix-opts-equal-sign.yml b/changelogs/fragments/11926-crypttab-fix-opts-equal-sign.yml new file mode 100644 index 0000000000..3f0e202814 --- /dev/null +++ b/changelogs/fragments/11926-crypttab-fix-opts-equal-sign.yml @@ -0,0 +1,2 @@ +bugfixes: + - crypttab - fix parsing of options whose value contains an equal sign (https://github.com/ansible-collections/community.general/issues/4963, https://github.com/ansible-collections/community.general/pull/11926). diff --git a/plugins/modules/crypttab.py b/plugins/modules/crypttab.py index d64570ca48..55d9e6ea0d 100644 --- a/plugins/modules/crypttab.py +++ b/plugins/modules/crypttab.py @@ -281,7 +281,7 @@ class Options(dict): self.itemlist = [] if opts_string is not None: for opt in opts_string.split(","): - kv = opt.split("=") + kv = opt.split("=", 1) if len(kv) > 1: k, v = (kv[0], kv[1]) else: