]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
fix: use getargs with _cryptgetargsname
authorHarald Hoyer <harald@redhat.com>
Mon, 8 Mar 2021 12:17:40 +0000 (13:17 +0100)
committerHarald Hoyer <harald@hoyer.xyz>
Wed, 10 Mar 2021 18:31:19 +0000 (19:31 +0100)
modules.d/90crypt/parse-crypt.sh

index 4e899fedf0834afc0537674163d079ecb72a8ca7..b85bbdc07edcdb1abadf3d6710d92f904b6ef053 100755 (executable)
@@ -8,13 +8,10 @@ _cryptgetargsname() {
     local _o _found _key
     unset _o
     unset _found
-    CMDLINE=$(getcmdline)
     _key="$1"
     set --
-    for _o in $CMDLINE; do
-        if [ "$_o" = "$_key" ]; then
-            _found=1;
-        elif [ "${_o%=*}" = "${_key%=}" ]; then
+    for _o in $(getargs rd.luks.name); do
+        if [ "${_o%=*}" = "${_key%=}" ]; then
             [ -n "${_o%=*}" ] && set -- "$@" "${_o#*=}";
             _found=1;
         fi
@@ -56,7 +53,7 @@ else
             unset _uuid
 
             uuid=${uuid##luks-}
-            if luksname=$(_cryptgetargsname "rd.luks.name=$uuid="); then
+            if luksname=$(_cryptgetargsname "$uuid="); then
                 luksname="${luksname#$uuid=}"
             else
                 luksname="luks-$uuid"
@@ -94,7 +91,7 @@ else
             unset _serialid
 
             serialid=${serialid##luks-}
-            if luksname=$(_cryptgetargsname "rd.luks.name=$serialid="); then
+            if luksname=$(_cryptgetargsname "$serialid="); then
                 luksname="${luksname#$serialid=}"
             else
                 luksname="luks-$serialid"
@@ -132,7 +129,7 @@ else
             unset _luksid
 
             luksid=${luksid##luks-}
-            if luksname=$(_cryptgetargsname "rd.luks.name=$luksid="); then
+            if luksname=$(_cryptgetargsname "$luksid="); then
                 luksname="${luksname#$luksid=}"
             else
                 luksname="luks-$luksid"