summaryrefslogtreecommitdiffstats
path: root/0004-crypt-parse-crypt.sh-create-udev-rule-for-systemd.patch
diff options
context:
space:
mode:
authorHarald Hoyer <harald@redhat.com>2013-04-05 12:05:17 +0200
committerHarald Hoyer <harald@redhat.com>2013-04-05 12:05:17 +0200
commit38a2ddf58ab8d5ff3c1ce0d9abc5931612ef5167 (patch)
treefe1dfc0a3d0a2dcfe9b509442fd27e3008943eae /0004-crypt-parse-crypt.sh-create-udev-rule-for-systemd.patch
parent6195cc16999c67434c84156c5466afc8c36ed693 (diff)
downloaddracut-38a2ddf58ab8d5ff3c1ce0d9abc5931612ef5167.tar.gz
dracut-38a2ddf58ab8d5ff3c1ce0d9abc5931612ef5167.tar.xz
dracut-38a2ddf58ab8d5ff3c1ce0d9abc5931612ef5167.zip
dracut-027-10.git20130405
- fix crypto password timeout on the dracut side
Diffstat (limited to '0004-crypt-parse-crypt.sh-create-udev-rule-for-systemd.patch')
-rw-r--r--0004-crypt-parse-crypt.sh-create-udev-rule-for-systemd.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/0004-crypt-parse-crypt.sh-create-udev-rule-for-systemd.patch b/0004-crypt-parse-crypt.sh-create-udev-rule-for-systemd.patch
new file mode 100644
index 0000000..13f35bf
--- /dev/null
+++ b/0004-crypt-parse-crypt.sh-create-udev-rule-for-systemd.patch
@@ -0,0 +1,31 @@
+From ab9b04f55bb9917749e9ddb52ce8f5f1ef56af99 Mon Sep 17 00:00:00 2001
+From: Harald Hoyer <harald@redhat.com>
+Date: Thu, 4 Apr 2013 12:54:59 +0200
+Subject: [PATCH] crypt/parse-crypt.sh: create udev rule for systemd
+
+Start the systemd-cryptsetup@luks-*.service for the detected crypto_LUKS
+device in the initqueue, so we block in the initqueue and wait for the
+password entry.
+---
+ modules.d/90crypt/parse-crypt.sh | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/modules.d/90crypt/parse-crypt.sh b/modules.d/90crypt/parse-crypt.sh
+index d61220c..4cb281b 100755
+--- a/modules.d/90crypt/parse-crypt.sh
++++ b/modules.d/90crypt/parse-crypt.sh
+@@ -27,6 +27,14 @@ else
+ printf -- '--name cryptroot-ask-%%k %s ' $(command -v cryptroot-ask)
+ printf -- '$env{DEVNAME} luks-$env{ID_FS_UUID} %s"\n' $tout
+ } >> /etc/udev/rules.d/70-luks.rules.new
++ else
++ {
++ printf -- 'ENV{ID_FS_TYPE}=="crypto_LUKS", '
++ printf -- 'ENV{ID_FS_UUID}=="*%s*", ' $luksid
++ printf -- 'RUN+="%s --unique --onetime ' $(command -v initqueue)
++ printf -- '--name systemd-cryptsetup-%%k %s start ' $(command -v systemctl)
++ printf -- 'systemd-cryptsetup@luks$$(dev_unit_name -$env{ID_FS_UUID}).service"\n'
++ } >> /etc/udev/rules.d/70-luks.rules.new
+ fi
+
+ uuid=$luksid