From 0f6d93eb9d63695a64002ec8b0421fbc9fc8a7a3 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Thu, 11 Jan 2018 11:39:44 +0100 Subject: [PATCH] crypt: escape backslashes for systemd unit names b/c udev/initqueue/bash otherwise luks\x2d25e41d19\x2d1580\x2d4e7c\x2d8875\x2d134045008f33 turns to luksx2d25e41d19x2d1580x2d4e7cx2d8875x2d134045008f33 --- modules.d/90crypt/parse-crypt.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules.d/90crypt/parse-crypt.sh b/modules.d/90crypt/parse-crypt.sh index f0a4fba9..ea6802e8 100755 --- a/modules.d/90crypt/parse-crypt.sh +++ b/modules.d/90crypt/parse-crypt.sh @@ -64,6 +64,8 @@ else } >> /etc/udev/rules.d/70-luks.rules.new else luksname=$(dev_unit_name "$luksname") + luksname="$(str_replace "$luksname" '\' '\\')" + if ! crypttab_contains "$serialid"; then { printf -- 'ENV{ID_SERIAL_SHORT}=="*%s*", ' "$serialid" @@ -95,6 +97,8 @@ else } >> /etc/udev/rules.d/70-luks.rules.new else luksname=$(dev_unit_name "$luksname") + luksname="$(str_replace "$luksname" '\' '\\')" + if ! crypttab_contains "$luksid"; then { printf -- 'ENV{ID_FS_TYPE}=="crypto_LUKS", '