From 6d58fa27a43833737143e0788097224a559808de Mon Sep 17 00:00:00 2001 From: Harald Hoyer <harald@redhat.com> Date: Mon, 5 Jan 2015 16:07:38 +0100 Subject: [PATCH] change "while read x" to cope with EOF without newline while read x || [ -n "$x" ] should do the trick --- Makefile | 2 +- dracut-functions.sh | 32 +++++++++---------- dracut-logger.sh | 2 +- dracut.sh | 18 +++++------ lsinitrd.sh | 2 +- modules.d/00systemd/module-setup.sh | 2 +- modules.d/01fips/fips.sh | 6 ++-- modules.d/02caps/caps.sh | 2 +- modules.d/10i18n/module-setup.sh | 6 ++-- modules.d/30convertfs/convertfs.sh | 4 +-- modules.d/40network/dhclient-script.sh | 4 +-- modules.d/45ifcfg/write-ifcfg.sh | 2 +- modules.d/45url-lib/url-lib.sh | 2 +- modules.d/50drm/module-setup.sh | 4 +-- .../50plymouth/plymouth-populate-initrd.sh | 2 +- modules.d/80cms/cmssetup.sh | 6 ++-- modules.d/90crypt/crypt-lib.sh | 4 +-- modules.d/90crypt/cryptroot-ask.sh | 2 +- modules.d/90crypt/module-setup.sh | 4 +-- modules.d/90kernel-modules/module-setup.sh | 4 +-- modules.d/90mdraid/module-setup.sh | 2 +- modules.d/90mdraid/parse-md.sh | 2 +- modules.d/90multipath/module-setup.sh | 4 +-- modules.d/95fstab-sys/mount-sys.sh | 2 +- modules.d/95iscsi/iscsiroot.sh | 2 +- modules.d/95iscsi/module-setup.sh | 4 +-- modules.d/95rootfs-block/mount-root.sh | 2 +- modules.d/95ssh-client/module-setup.sh | 2 +- modules.d/95virtfs/mount-virtfs.sh | 2 +- .../98dracut-systemd/dracut-cmdline-ask.sh | 2 +- modules.d/98usrmount/mount-usr.sh | 2 +- modules.d/99base/dracut-lib.sh | 16 +++++----- modules.d/99base/init.sh | 6 ++-- modules.d/99base/loginit.sh | 2 +- modules.d/99fs-lib/fs-lib.sh | 4 +-- modules.d/99shutdown/shutdown.sh | 2 +- test/TEST-01-BASIC/test-init.sh | 2 +- test/TEST-02-SYSTEMD/test-init.sh | 2 +- test/TEST-03-USR-MOUNT/test-init.sh | 4 +-- test/TEST-04-FULL-SYSTEMD/test-init.sh | 4 +-- test/TEST-04-FULL-SYSTEMD/test.sh | 4 +-- test/TEST-10-RAID/create-root.sh | 2 +- test/TEST-10-RAID/test-init.sh | 2 +- test/TEST-11-LVM/test-init.sh | 2 +- test/TEST-12-RAID-DEG/create-root.sh | 2 +- test/TEST-12-RAID-DEG/test-init.sh | 2 +- test/TEST-14-IMSM/test-init.sh | 2 +- test/TEST-16-DMSQUASH/test-init.sh | 2 +- test/TEST-17-LVM-THIN/test-init.sh | 2 +- test/TEST-20-NFS/client-init.sh | 4 +-- test/TEST-30-ISCSI/client-init.sh | 4 +-- test/TEST-40-NBD/client-init.sh | 2 +- test/TEST-40-NBD/create-root.sh | 2 +- test/TEST-50-MULTINIC/client-init.sh | 2 +- 54 files changed, 106 insertions(+), 106 deletions(-) diff --git a/Makefile b/Makefile index 647bb7ab..cf215764 100644 --- a/Makefile +++ b/Makefile @@ -234,7 +234,7 @@ hostimage: all @echo wrote test-$(shell uname -r).img AUTHORS: - git shortlog --numbered --summary -e |while read a rest; do echo $$rest;done > AUTHORS + git shortlog --numbered --summary -e |while read a rest || [ -n "$$rest" ]; do echo $$rest;done > AUTHORS dracut.html.sign: dracut-$(VERSION).tar.xz dracut.html gpg-sign-all dracut-$(VERSION).tar.xz dracut.html diff --git a/dracut-functions.sh b/dracut-functions.sh index 37ddca2d..a330bd23 100755 --- a/dracut-functions.sh +++ b/dracut-functions.sh @@ -309,7 +309,7 @@ get_fs_env() { [[ $1 ]] || return unset ID_FS_TYPE ID_FS_TYPE=$(blkid -u filesystem -o export -- "$1" \ - | while read line; do + | while read line || [ -n "$line" ]; do if [[ "$line" == TYPE\=* ]]; then printf "%s" "${line#TYPE=}"; exit 0; @@ -435,7 +435,7 @@ find_block_device() { if [[ $use_fstab != yes ]]; then [[ -d $_find_mpt/. ]] findmnt -e -v -n -o 'MAJ:MIN,SOURCE' --target "$_find_mpt" | { \ - while read _majmin _dev; do + while read _majmin _dev || [ -n "$_dev" ]; do if [[ -b $_dev ]]; then if ! [[ $_majmin ]] || [[ $_majmin == 0:* ]]; then _majmin=$(get_maj_min $_dev) @@ -456,7 +456,7 @@ find_block_device() { # fall back to /etc/fstab findmnt -e --fstab -v -n -o 'MAJ:MIN,SOURCE' --target "$_find_mpt" | { \ - while read _majmin _dev; do + while read _majmin _dev || [ -n "$_dev" ]; do if ! [[ $_dev ]]; then _dev="$_majmin" unset _majmin @@ -492,7 +492,7 @@ find_mp_fstype() { if [[ $use_fstab != yes ]]; then findmnt -e -v -n -o 'FSTYPE' --target "$1" | { \ - while read _fs; do + while read _fs || [ -n "$_fs" ]; do [[ $_fs ]] || continue [[ $_fs = "autofs" ]] && continue printf "%s" "$_fs" @@ -501,7 +501,7 @@ find_mp_fstype() { fi findmnt --fstab -e -v -n -o 'FSTYPE' --target "$1" | { \ - while read _fs; do + while read _fs || [ -n "$_fs" ]; do [[ $_fs ]] || continue [[ $_fs = "autofs" ]] && continue printf "%s" "$_fs" @@ -528,7 +528,7 @@ find_dev_fstype() { if [[ $use_fstab != yes ]]; then findmnt -e -v -n -o 'FSTYPE' --source "$_find_dev" | { \ - while read _fs; do + while read _fs || [ -n "$_fs" ]; do [[ $_fs ]] || continue [[ $_fs = "autofs" ]] && continue printf "%s" "$_fs" @@ -537,7 +537,7 @@ find_dev_fstype() { fi findmnt --fstab -e -v -n -o 'FSTYPE' --source "$_find_dev" | { \ - while read _fs; do + while read _fs || [ -n "$_fs" ]; do [[ $_fs ]] || continue [[ $_fs = "autofs" ]] && continue printf "%s" "$_fs" @@ -997,7 +997,7 @@ prepare_udev_rules() { for f in "$@"; do f="${initdir}/etc/udev/rules.d/$f" [ -e "$f" ] || continue - while read line; do + while read line || [ -n "$line" ]; do if [ "${line%%IMPORT PATH_ID}" != "$line" ]; then if [ $UDEVVERSION -ge 174 ]; then printf '%sIMPORT{builtin}="path_id"\n' "${line%%IMPORT PATH_ID}" @@ -1512,7 +1512,7 @@ for_each_kmod_dep() { local _func=$1 _kmod=$2 _cmd _modpath _options shift 2 modprobe "$@" --ignore-install --show-depends $_kmod 2>&${_fderr} | ( - while read _cmd _modpath _options; do + while read _cmd _modpath _options || [ -n "$_cmd" ]; do [[ $_cmd = insmod ]] || continue $_func ${_modpath} || exit $? done @@ -1528,7 +1528,7 @@ dracut_kernel_post() { --ignore-install --show-depends --set-version $kernel \ < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist" 2>/dev/null \ | sort -u \ - | while read _cmd _modpath _options; do + | while read _cmd _modpath _options || [ -n "$_cmd" ]; do [[ $_cmd = insmod ]] || continue echo "$_modpath" done > "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" @@ -1537,7 +1537,7 @@ dracut_kernel_post() { if [[ $DRACUT_INSTALL ]] && [[ -z $_moddirname ]]; then xargs -r $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${loginstall:+-L "$loginstall"} -a < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" else - while read _modpath; do + while read _modpath || [ -n "$_modpath" ]; do local _destpath=$_modpath [[ $_moddirname ]] && _destpath=${_destpath##$_moddirname/} _destpath=${_destpath##*/lib/modules/$kernel/} @@ -1545,12 +1545,12 @@ dracut_kernel_post() { done < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" fi ) & - _pid=$(jobs -p | while read a ; do printf ":$a";done) + _pid=$(jobs -p | while read a || [ -n "$a" ]; do printf ":$a";done) _pid=${_pid##*:} if [[ $DRACUT_INSTALL ]]; then xargs -r modinfo -k $kernel -F firmware < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" \ - | while read line; do + | while read line || [ -n "$line" ]; do for _fwdir in $fw_dir; do echo $_fwdir/$line; done; @@ -1635,7 +1635,7 @@ find_kernel_modules_by_path () { _OLDIFS=$IFS IFS=: - while read a rest; do + while read a rest || [ -n "$a" ]; do [[ $a = */$1/* ]] || [[ $a = updates/* ]] || continue printf "%s\n" "$srcmods/$a" done < "$srcmods/modules.dep" @@ -1730,7 +1730,7 @@ instmods() { function instmods_1() { local _mod _mpargs if (($# == 0)); then # filenames from stdin - while read _mod; do + while read _mod || [ -n "$_mod" ]; do inst1mod "${_mod%.ko*}" || { if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then dfatal "Failed to install module $_mod" @@ -1753,7 +1753,7 @@ instmods() { # Capture all stderr from modprobe to _fderr. We could use {var}>... # redirections, but that would make dracut require bash4 at least. eval "( instmods_1 \"\$@\" ) ${_fderr}>&1" \ - | while read line; do [[ "$line" =~ $_filter_not_found ]] || echo $line;done | derror + | while read line || [ -n "$line" ]; do [[ "$line" =~ $_filter_not_found ]] || echo $line;done | derror _ret=$? return $_ret } diff --git a/dracut-logger.sh b/dracut-logger.sh index 86cdafae..41e04f4b 100755 --- a/dracut-logger.sh +++ b/dracut-logger.sh @@ -365,7 +365,7 @@ dlog() { if (( $# > 1 )); then _do_dlog "$@" else - while read line; do + while read line || [ -n "$line" ]; do _do_dlog "$1" "$line" done fi diff --git a/dracut.sh b/dracut.sh index ab842218..6215b360 100755 --- a/dracut.sh +++ b/dracut.sh @@ -1151,7 +1151,7 @@ done for f in $add_fstab; do [[ -e $f ]] || continue - while read dev rest; do + while read dev rest || [ -n "$dev" ]; do push_host_devs "$dev" done < "$f" done @@ -1198,11 +1198,11 @@ if [[ $hostonly ]]; then done if [[ -f /proc/swaps ]] && [[ -f /etc/fstab ]]; then - while read dev type rest; do + while read dev type rest || [ -n "$dev" ]; do [[ -b $dev ]] || continue [[ "$type" == "partition" ]] || continue - while read _d _m _t _o _r; do + while read _d _m _t _o _r || [ -n "$_d" ]; do [[ "$_d" == \#* ]] && continue [[ $_d ]] || continue [[ $_t != "swap" ]] && continue @@ -1212,7 +1212,7 @@ if [[ $hostonly ]]; then [[ "$_d" -ef "$dev" ]] || continue if [[ -f /etc/crypttab ]]; then - while read _mapper _a _p _o; do + while read _mapper _a _p _o || [ -n "$_mapper" ]; do [[ $_mapper = \#* ]] && continue [[ "$_d" -ef /dev/mapper/"$_mapper" ]] || continue [[ "$_o" ]] || _o="$_p" @@ -1231,8 +1231,8 @@ if [[ $hostonly ]]; then # record all host modaliases declare -A host_modalias find /sys/devices/ -name uevent -print > "$initdir/.modalias" - while read m; do - while read line; do + while read m || [ -n "$m" ]; do + while read line || [ -n "$line" ]; do [[ "$line" != MODALIAS\=* ]] && continue modalias="${line##MODALIAS=}" && [[ $modalias ]] && host_modalias["$modalias"]=1 break @@ -1241,14 +1241,14 @@ if [[ $hostonly ]]; then rm -f -- "$initdir/.modalias" - while read _k _s _v; do + while read _k _s _v || [ -n "$_k" ]; do [ "$_k" != "name" -a "$_k" != "driver" ] && continue host_modalias["$_v"]=1 done </proc/crypto # check /proc/modules declare -A host_modules - while read m rest; do + while read m rest || [ -n "$m" ]; do host_modules["$m"]=1 done </proc/modules fi @@ -1633,7 +1633,7 @@ if [[ $do_strip = yes ]] && ! [[ $DRACUT_FIPS_MODE ]]; then # strip kernel modules, but do not touch signed modules find "$initdir" -type f -path '*/lib/modules/*.ko' -print0 \ - | while read -r -d $'\0' f; do + | while read -r -d $'\0' f || [ -n "$f" ]; do SIG=$(tail -c 28 "$f") [[ $SIG == '~Module signature appended~' ]] || { printf "%s\000" "$f"; } done | xargs -r -0 strip -g diff --git a/lsinitrd.sh b/lsinitrd.sh index dda0b746..94674af7 100755 --- a/lsinitrd.sh +++ b/lsinitrd.sh @@ -149,7 +149,7 @@ list_files() if (( ${#filenames[@]} <= 0 )); then - echo "Image: $image: $(du -h $image | while read a b; do echo $a;done)" + echo "Image: $image: $(du -h $image | while read a b || [ -n "$a" ]; do echo $a;done)" echo "========================================================================" fi diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh index 9d406589..3403b4b7 100755 --- a/modules.d/00systemd/module-setup.sh +++ b/modules.d/00systemd/module-setup.sh @@ -138,7 +138,7 @@ install() { local _line i for i in "$1"/*.conf; do [[ -f $i ]] || continue - while read _line; do + while read _line || [ -n "$_line" ]; do case $_line in \#*) ;; diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh index 14253e10..6acdf62a 100755 --- a/modules.d/01fips/fips.sh +++ b/modules.d/01fips/fips.sh @@ -59,8 +59,8 @@ do_rhevh_check() kpath=${1} # If we're on RHEV-H, the kernel is in /run/initramfs/live/vmlinuz0 - HMAC_SUM_ORIG=$(cat $NEWROOT/boot/.vmlinuz-${KERNEL}.hmac | while read a b; do printf "%s\n" $a; done) - HMAC_SUM_CALC=$(sha512hmac $kpath | while read a b; do printf "%s\n" $a; done || return 1) + HMAC_SUM_ORIG=$(cat $NEWROOT/boot/.vmlinuz-${KERNEL}.hmac | while read a b || [ -n "$a" ]; do printf "%s\n" $a; done) + HMAC_SUM_CALC=$(sha512hmac $kpath | while read a b || [ -n "$a" ]; do printf "%s\n" $a; done || return 1) if [ -z "$HMAC_SUM_ORIG" ] || [ -z "$HMAC_SUM_CALC" ] || [ "${HMAC_SUM_ORIG}" != "${HMAC_SUM_CALC}" ]; then warn "HMAC sum mismatch" return 1 @@ -92,7 +92,7 @@ do_fips() if ! modprobe "${_module}"; then # check if kernel provides generic algo _found=0 - while read _k _s _v; do + while read _k _s _v || [ -n "$_k" ]; do [ "$_k" != "name" -a "$_k" != "driver" ] && continue [ "$_v" != "$_module" ] && continue _found=1 diff --git a/modules.d/02caps/caps.sh b/modules.d/02caps/caps.sh index feb25c7d..ee91dce4 100755 --- a/modules.d/02caps/caps.sh +++ b/modules.d/02caps/caps.sh @@ -4,7 +4,7 @@ capsmode=$(getarg rd.caps) if [ "$capsmode" = "1" ]; then CAPS_INIT_DROP=$(getarg rd.caps.initdrop=) - CAPS_USERMODEHELPER_BSET=$(capsh --drop="$CAPS_INIT_DROP" -- -c 'while read a b ; do [ "$a" = "CapBnd:" ] && echo $((0x${b:$((${#b}-8)):8})) $((0x${b:$((${#b}-16)):8})) && break; done < /proc/self/status') + CAPS_USERMODEHELPER_BSET=$(capsh --drop="$CAPS_INIT_DROP" -- -c 'while read a b || [ -n "$a" ]; do [ "$a" = "CapBnd:" ] && echo $((0x${b:$((${#b}-8)):8})) $((0x${b:$((${#b}-16)):8})) && break; done < /proc/self/status') CAPS_MODULES_DISABLED=$(getarg rd.caps.disablemodules=) CAPS_KEXEC_DISABLED=$(getarg rd.caps.disablekexec=) diff --git a/modules.d/10i18n/module-setup.sh b/modules.d/10i18n/module-setup.sh index 671b607c..94398759 100755 --- a/modules.d/10i18n/module-setup.sh +++ b/modules.d/10i18n/module-setup.sh @@ -40,7 +40,7 @@ install() { *) cmd=grep ;; esac - for INCL in $($cmd "^include " $MAP | while read a a b; do echo ${a//\"/}; done); do + for INCL in $($cmd "^include " $MAP | while read a a b || [ -n "$a" ]; do echo ${a//\"/}; done); do for FN in $(find ${kbddir}/keymaps -type f -name $INCL\*); do findkeymap $FN done @@ -114,12 +114,12 @@ install() { rm -f -- "${initdir}${kbddir}/consoletrans/utflist" find "${initdir}${kbddir}/" -name README\* -delete find "${initdir}${kbddir}/" -name '*.gz' -print -quit \ - | while read line; do + | while read line || [ -n "$line" ]; do inst_multiple gzip done find "${initdir}${kbddir}/" -name '*.bz2' -print -quit \ - | while read line; do + | while read line || [ -n "$line" ]; do inst_multiple bzip2 done } diff --git a/modules.d/30convertfs/convertfs.sh b/modules.d/30convertfs/convertfs.sh index 2b6dca93..66bb4a64 100755 --- a/modules.d/30convertfs/convertfs.sh +++ b/modules.d/30convertfs/convertfs.sh @@ -74,7 +74,7 @@ rm -f -- "$testfile" find_mount() { local dev mnt etc wanted_dev wanted_dev="$(readlink -e -q $1)" - while read dev mnt etc; do + while read dev mnt etc || [ -n "$dev" ]; do [ "$dev" = "$wanted_dev" ] && echo "$dev" && return 0 done < /proc/mounts return 1 @@ -93,7 +93,7 @@ else return 1 fi - while read a m a; do + while read a m a || [ -n "$m" ]; do [ "$m" = "$1" ] && return 0 done < /proc/mounts return 1 diff --git a/modules.d/40network/dhclient-script.sh b/modules.d/40network/dhclient-script.sh index 50f1985b..b2dab90a 100755 --- a/modules.d/40network/dhclient-script.sh +++ b/modules.d/40network/dhclient-script.sh @@ -111,7 +111,7 @@ case $reason in fi unset layer2 setup_interface - set | while read line; do + set | while read line || [ -n "$line" ]; do [ "${line#new_}" = "$line" ] && continue echo "$line" done >/tmp/dhclient.$netif.dhcpopts @@ -132,7 +132,7 @@ case $reason in echo "dhcp: BOND6 setting $netif" setup_interface6 - set | while read line; do + set | while read line || [ -n "$line" ]; do [ "${line#new_}" = "$line" ] && continue echo "$line" done >/tmp/dhclient.$netif.dhcpopts diff --git a/modules.d/45ifcfg/write-ifcfg.sh b/modules.d/45ifcfg/write-ifcfg.sh index 63afbaa3..fa7db273 100755 --- a/modules.d/45ifcfg/write-ifcfg.sh +++ b/modules.d/45ifcfg/write-ifcfg.sh @@ -22,7 +22,7 @@ get_config_line_by_subchannel() local line CHANNELS="$1" - while read line; do + while read line || [ -n "$line" ]; do if strstr "$line" "$CHANNELS"; then echo $line return 0 diff --git a/modules.d/45url-lib/url-lib.sh b/modules.d/45url-lib/url-lib.sh index 03c087b9..08c3ebb4 100755 --- a/modules.d/45url-lib/url-lib.sh +++ b/modules.d/45url-lib/url-lib.sh @@ -120,7 +120,7 @@ command -v ctorrent >/dev/null \ nfs_already_mounted() { local server="$1" path="$2" localdir="" s="" p="" - cat /proc/mounts | while read src mnt rest; do + cat /proc/mounts | while read src mnt rest || [ -n "$src" ]; do splitsep ":" "$src" s p if [ "$server" = "$s" ]; then if [ "$path" = "$p" ]; then diff --git a/modules.d/50drm/module-setup.sh b/modules.d/50drm/module-setup.sh index 95b23cfc..517b8581 100755 --- a/modules.d/50drm/module-setup.sh +++ b/modules.d/50drm/module-setup.sh @@ -22,7 +22,7 @@ installkernel() { local _merge=8 _side2=9 function nmf1() { local _fname _fcont - while read _fname; do + while read _fname || [ -n "$_fname" ]; do case "$_fname" in *.ko) _fcont="$(< $_fname)" ;; *.ko.gz) _fcont="$(gzip -dc $_fname)" ;; @@ -35,7 +35,7 @@ installkernel() { } function rotor() { local _f1 _f2 - while read _f1; do + while read _f1 || [ -n "$_f1" ]; do echo "$_f1" if read _f2; then echo "$_f2" 1>&${_side2} diff --git a/modules.d/50plymouth/plymouth-populate-initrd.sh b/modules.d/50plymouth/plymouth-populate-initrd.sh index 9ea460e2..6c184ac9 100755 --- a/modules.d/50plymouth/plymouth-populate-initrd.sh +++ b/modules.d/50plymouth/plymouth-populate-initrd.sh @@ -26,7 +26,7 @@ if [[ $hostonly ]]; then if [ -L /usr/share/plymouth/themes/default.plymouth ]; then inst /usr/share/plymouth/themes/default.plymouth # Install plugin for this theme - PLYMOUTH_PLUGIN=$(grep "^ModuleName=" /usr/share/plymouth/themes/default.plymouth | while read a b c; do echo $b; done;) + PLYMOUTH_PLUGIN=$(grep "^ModuleName=" /usr/share/plymouth/themes/default.plymouth | while read a b c || [ -n "$b" ]; do echo $b; done;) inst_libdir_file "plymouth/${PLYMOUTH_PLUGIN}.so" fi else diff --git a/modules.d/80cms/cmssetup.sh b/modules.d/80cms/cmssetup.sh index f716eaa0..3b8750b6 100755 --- a/modules.d/80cms/cmssetup.sh +++ b/modules.d/80cms/cmssetup.sh @@ -42,7 +42,7 @@ function dasd_settle() { } function dasd_settle_all() { - for dasdccw in $(while read line; do echo "${line%%(*}"; done < /proc/dasd/devices) ; do + for dasdccw in $(while read line || [ -n "$line" ]; do echo "${line%%(*}"; done < /proc/dasd/devices) ; do if ! dasd_settle $dasdccw ; then echo $"Could not access DASD $dasdccw in time" return 1 @@ -84,7 +84,7 @@ function readcmsfile() # $1=dasdport $2=filename # dasd_mod must be loaded without setting any DASD online dev=$(canonicalize_devno $1) numcpus=$( - while read line; do + while read line || [ -n "$line" ]; do if strstr "$line" "# processors"; then echo ${line##*:}; break; @@ -181,7 +181,7 @@ processcmsfile() unset _do_zfcp for i in ${!FCP_*}; do - echo "${!i}" | while read port rest; do + echo "${!i}" | while read port rest || [ -n "$port" ]; do case $port in *.*.*) ;; diff --git a/modules.d/90crypt/crypt-lib.sh b/modules.d/90crypt/crypt-lib.sh index 3f12ea0f..39c7a0b3 100755 --- a/modules.d/90crypt/crypt-lib.sh +++ b/modules.d/90crypt/crypt-lib.sh @@ -7,7 +7,7 @@ crypttab_contains() { local luks="$1" local l d rest if [ -f /etc/crypttab ]; then - while read l d rest; do + while read l d rest || [ -n "$l" ]; do strstr "${l##luks-}" "${luks##luks-}" && return 0 strstr "$d" "${luks##luks-}" && return 0 done < /etc/crypttab @@ -155,7 +155,7 @@ getkey() { [ -f "$keys_file" ] || return 1 local IFS=: - while read luks_dev key_dev key_path; do + while read luks_dev key_dev key_path || [ -n "$luks_dev" ]; do if match_dev "$luks_dev" "$for_dev"; then echo "${key_dev}:${key_path}" return 0 diff --git a/modules.d/90crypt/cryptroot-ask.sh b/modules.d/90crypt/cryptroot-ask.sh index bbab269d..5b513638 100755 --- a/modules.d/90crypt/cryptroot-ask.sh +++ b/modules.d/90crypt/cryptroot-ask.sh @@ -23,7 +23,7 @@ numtries=${3:-10} # TODO: improve to support what cmdline does if [ -f /etc/crypttab ] && getargbool 1 rd.luks.crypttab -d -n rd_NO_CRYPTTAB; then - while read name dev luksfile luksoptions; do + while read name dev luksfile luksoptions || [ -n "$name" ]; do # ignore blank lines and comments if [ -z "$name" -o "${name#\#}" != "$name" ]; then continue diff --git a/modules.d/90crypt/module-setup.sh b/modules.d/90crypt/module-setup.sh index ea1e3409..e8c690eb 100755 --- a/modules.d/90crypt/module-setup.sh +++ b/modules.d/90crypt/module-setup.sh @@ -35,7 +35,7 @@ cmdline() { UUID=$( blkid -u crypto -o export $dev \ - | while read line; do + | while read line || [ -n "$line" ]; do [[ ${line#UUID} = $line ]] && continue printf "%s" "${line#UUID=}" break @@ -65,7 +65,7 @@ install() { if [[ $hostonly ]] && [[ -f /etc/crypttab ]]; then # filter /etc/crypttab for the devices we need - while read _mapper _dev _rest; do + while read _mapper _dev _rest || [ -n "$_mapper" ]; do [[ $_mapper = \#* ]] && continue [[ $_dev ]] || continue diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh index 6e2fd741..40803df8 100755 --- a/modules.d/90kernel-modules/module-setup.sh +++ b/modules.d/90kernel-modules/module-setup.sh @@ -9,7 +9,7 @@ installkernel() { local _merge=8 _side2=9 function bmf1() { local _f - while read _f; do case "$_f" in + while read _f || [ -n "$_f" ]; do case "$_f" in *.ko) [[ $(< $_f) =~ $_blockfuncs ]] && echo "$_f" ;; *.ko.gz) [[ $(gzip -dc <$_f) =~ $_blockfuncs ]] && echo "$_f" ;; *.ko.xz) [[ $(xz -dc <$_f) =~ $_blockfuncs ]] && echo "$_f" ;; @@ -19,7 +19,7 @@ installkernel() { } function rotor() { local _f1 _f2 - while read _f1; do + while read _f1 || [ -n "$_f1" ]; do echo "$_f1" if read _f2; then echo "$_f2" 1>&${_side2} diff --git a/modules.d/90mdraid/module-setup.sh b/modules.d/90mdraid/module-setup.sh index 747ea8aa..621d0fb9 100755 --- a/modules.d/90mdraid/module-setup.sh +++ b/modules.d/90mdraid/module-setup.sh @@ -46,7 +46,7 @@ cmdline() { UUID=$( /sbin/mdadm --examine --export $dev \ - | while read line; do + | while read line || [ -n "$line" ]; do [[ ${line#MD_UUID=} = $line ]] && continue printf "%s" "${line#MD_UUID=} " done diff --git a/modules.d/90mdraid/parse-md.sh b/modules.d/90mdraid/parse-md.sh index 7a3e87ab..24fc6d3f 100755 --- a/modules.d/90mdraid/parse-md.sh +++ b/modules.d/90mdraid/parse-md.sh @@ -10,7 +10,7 @@ else if [ -n "$MD_UUID" ]; then for f in /etc/udev/rules.d/65-md-incremental*.rules; do [ -e "$f" ] || continue - while read line; do + while read line || [ -n "$line" ]; do if [ "${line%%UUID CHECK}" != "$line" ]; then printf 'IMPORT{program}="/sbin/mdadm --examine --export $tempnode"\n' for uuid in $MD_UUID; do diff --git a/modules.d/90multipath/module-setup.sh b/modules.d/90multipath/module-setup.sh index 0f88f82b..29643d47 100755 --- a/modules.d/90multipath/module-setup.sh +++ b/modules.d/90multipath/module-setup.sh @@ -46,7 +46,7 @@ installkernel() { local _merge=8 _side2=9 function bmf1() { local _f - while read _f; do + while read _f || [ -n "$_f" ]; do case "$_f" in *.ko) [[ $(< $_f) =~ $_funcs ]] && echo "$_f" ;; *.ko.gz) [[ $(gzip -dc <$_f) =~ $_funcs ]] && echo "$_f" ;; @@ -58,7 +58,7 @@ installkernel() { function rotor() { local _f1 _f2 - while read _f1; do + while read _f1 || [ -n "$_f1" ]; do echo "$_f1" if read _f2; then echo "$_f2" 1>&${_side2} diff --git a/modules.d/95fstab-sys/mount-sys.sh b/modules.d/95fstab-sys/mount-sys.sh index a851bbfc..9ec100f0 100755 --- a/modules.d/95fstab-sys/mount-sys.sh +++ b/modules.d/95fstab-sys/mount-sys.sh @@ -7,7 +7,7 @@ fstab_mount() { local _dev _mp _fs _opts _dump _pass _rest test -e "$1" || return 1 info "Mounting from $1" - while read _dev _mp _fs _opts _dump _pass _rest; do + while read _dev _mp _fs _opts _dump _pass _rest || [ -n "$_dev" ]; do [ -z "${_dev%%#*}" ] && continue # Skip comment lines ismounted $_mp && continue # Skip mounted filesystem if [ "$_pass" -gt 0 ] && ! strstr "$_opts" _netdev; then diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh index 5bfb0171..460e4386 100755 --- a/modules.d/95iscsi/iscsiroot.sh +++ b/modules.d/95iscsi/iscsiroot.sh @@ -123,7 +123,7 @@ handle_netroot() if [ -z $iscsi_initiator ]; then if [ -f /sys/firmware/ibft/initiator/initiator-name ]; then - iscsi_initiator=$(while read line; do echo $line;done < /sys/firmware/ibft/initiator/initiator-name) + iscsi_initiator=$(while read line || [ -n "$line" ]; do echo $line;done < /sys/firmware/ibft/initiator/initiator-name) fi fi diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh index f13119f9..406a9da0 100755 --- a/modules.d/95iscsi/module-setup.sh +++ b/modules.d/95iscsi/module-setup.sh @@ -166,7 +166,7 @@ installkernel() { local _merge=8 _side2=9 function bmf1() { local _f - while read _f; do + while read _f || [ -n "$_f" ]; do case "$_f" in *.ko) [[ $(< $_f) =~ $_funcs ]] && echo "$_f" ;; *.ko.gz) [[ $(gzip -dc <$_f) =~ $_funcs ]] && echo "$_f" ;; @@ -178,7 +178,7 @@ installkernel() { function rotor() { local _f1 _f2 - while read _f1; do + while read _f1 || [ -n "$_f1" ]; do echo "$_f1" if read _f2; then echo "$_f2" 1>&${_side2} diff --git a/modules.d/95rootfs-block/mount-root.sh b/modules.d/95rootfs-block/mount-root.sh index 74cff65d..7e9c5bb6 100755 --- a/modules.d/95rootfs-block/mount-root.sh +++ b/modules.d/95rootfs-block/mount-root.sh @@ -81,7 +81,7 @@ mount_root() { # the root filesystem, # remount it with the proper options rootopts="defaults" - while read dev mp fs opts dump fsck; do + while read dev mp fs opts dump fsck || [ -n "$dev" ]; do # skip comments [ "${dev%%#*}" != "$dev" ] && continue diff --git a/modules.d/95ssh-client/module-setup.sh b/modules.d/95ssh-client/module-setup.sh index d5c8bfac..0a0e80cd 100755 --- a/modules.d/95ssh-client/module-setup.sh +++ b/modules.d/95ssh-client/module-setup.sh @@ -44,7 +44,7 @@ inst_sshenv() if [[ -f /etc/ssh/ssh_config ]]; then inst_simple /etc/ssh/ssh_config sed -i -e 's/\(^[[:space:]]*\)ProxyCommand/\1# ProxyCommand/' ${initdir}/etc/ssh/ssh_config - while read key val; do + while read key val || [ -n "$key" ]; do [[ $key != "GlobalKnownHostsFile" ]] && continue inst_simple "$val" break diff --git a/modules.d/95virtfs/mount-virtfs.sh b/modules.d/95virtfs/mount-virtfs.sh index 693b5434..d05ca904 100755 --- a/modules.d/95virtfs/mount-virtfs.sh +++ b/modules.d/95virtfs/mount-virtfs.sh @@ -42,7 +42,7 @@ mount_root() { # the root filesystem, # remount it with the proper options rootopts="defaults" - while read dev mp fs opts rest; do + while read dev mp fs opts rest || [ -n "$dev" ]; do # skip comments [ "${dev%%#*}" != "$dev" ] && continue diff --git a/modules.d/98dracut-systemd/dracut-cmdline-ask.sh b/modules.d/98dracut-systemd/dracut-cmdline-ask.sh index 7433d93c..ab8933ad 100755 --- a/modules.d/98dracut-systemd/dracut-cmdline-ask.sh +++ b/modules.d/98dracut-systemd/dracut-cmdline-ask.sh @@ -10,7 +10,7 @@ echo echo echo echo "Enter additional kernel command line parameter (end with ctrl-d or .)" -while read -e -p "> " line; do +while read -e -p "> " line || [ -n "$line" ]; do [[ "$line" == "." ]] && break [[ "$line" ]] && printf -- "%s\n" "$line" >> /etc/cmdline.d/99-cmdline-ask.conf done diff --git a/modules.d/98usrmount/mount-usr.sh b/modules.d/98usrmount/mount-usr.sh index 3ad2c932..c29610f0 100755 --- a/modules.d/98usrmount/mount-usr.sh +++ b/modules.d/98usrmount/mount-usr.sh @@ -52,7 +52,7 @@ mount_usr() { local _dev _mp _fs _opts _rest _usr_found _ret _freq _passno # check, if we have to mount the /usr filesystem - while read _dev _mp _fs _opts _freq _passno; do + while read _dev _mp _fs _opts _freq _passno || [ -n "$_dev" ]; do [ "${_dev%%#*}" != "$_dev" ] && continue if [ "$_mp" = "/usr" ]; then case "$_dev" in diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh index 259e2057..a2b58bfa 100755 --- a/modules.d/99base/dracut-lib.sh +++ b/modules.d/99base/dracut-lib.sh @@ -79,13 +79,13 @@ else fi vwarn() { - while read line; do + while read line || [ -n "$line" ]; do warn $line; done } vinfo() { - while read line; do + while read line || [ -n "$line" ]; do info $line; done } @@ -131,7 +131,7 @@ getcmdline() { unset _line if [ -e /etc/cmdline ]; then - while read -r _line; do + while read -r _line || [ -n "$_line" ]; do CMDLINE_ETC="$CMDLINE_ETC $_line"; done </etc/cmdline; fi @@ -506,7 +506,7 @@ incol2() { [ -z "$file" ] && return 1; [ -z "$str" ] && return 1; - while read dummy check restofline; do + while read dummy check restofline || [ -n "$check" ]; do if [ "$check" = "$str" ]; then debug_on return 0 @@ -539,7 +539,7 @@ udevproperty() { find_mount() { local dev mnt etc wanted_dev wanted_dev="$(readlink -e -q $1)" - while read dev mnt etc; do + while read dev mnt etc || [ -n "$dev" ]; do [ "$dev" = "$wanted_dev" ] && echo "$dev" && return 0 done < /proc/mounts return 1 @@ -558,7 +558,7 @@ else return 1 fi - while read a m a; do + while read a m a || [ -n "$m" ]; do [ "$m" = "$1" ] && return 0 done < /proc/mounts return 1 @@ -1007,7 +1007,7 @@ wait_for_loginit() if [ $i -eq 10 ]; then kill %1 >/dev/null 2>&1 - kill $(while read line;do echo $line;done</run/initramfs/loginit.pid) + kill $(while read line || [ -n "$line" ];do echo $line;done</run/initramfs/loginit.pid) fi setdebug @@ -1289,7 +1289,7 @@ show_memstats() remove_hostonly_files() { rm -fr /etc/cmdline /etc/cmdline.d/*.conf if [ -f /lib/dracut/hostonly-files ]; then - while read -r line; do + while read line || [ -n "$line" ]; do [ -e "$line" ] || [ -h "$line" ] || continue rm -f "$line" done < /lib/dracut/hostonly-files diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh index 918dea5e..f4291c4e 100755 --- a/modules.d/99base/init.sh +++ b/modules.d/99base/init.sh @@ -72,7 +72,7 @@ fi if command -v kmod >/dev/null 2>/dev/null; then kmod static-nodes --format=tmpfiles 2>/dev/null | \ - while read type file mode a a a majmin; do + while read type file mode a a a majmin || [ -n "$type" ]; do type=${type%\!} case $type in d) @@ -113,7 +113,7 @@ source_conf /etc/conf.d if getarg "rd.cmdline=ask"; then echo "Enter additional kernel command line parameter (end with ctrl-d or .)" - while read -p "> " line; do + while read -p "> " line || [ -n "$line" ]; do [ "$line" = "." ] && break echo "$line" >> /etc/cmdline.d/99-cmdline-ask.conf done @@ -254,7 +254,7 @@ done { echo -n "Mounted root filesystem " - while read dev mp rest; do [ "$mp" = "$NEWROOT" ] && echo $dev; done < /proc/mounts + while read dev mp rest || [ -n "$dev" ]; do [ "$mp" = "$NEWROOT" ] && echo $dev; done < /proc/mounts } | vinfo # pre pivot scripts are sourced just before we doing cleanup and switch over diff --git a/modules.d/99base/loginit.sh b/modules.d/99base/loginit.sh index 25f55137..aa8dcf3d 100755 --- a/modules.d/99base/loginit.sh +++ b/modules.d/99base/loginit.sh @@ -10,7 +10,7 @@ printf -- "$$" > /run/initramfs/loginit.pid [ -e /dev/kmsg ] && exec 5>/dev/kmsg || exec 5>/dev/null exec 6>/run/initramfs/init.log -while read line; do +while read line || [ -n "$line" ]; do if [ "$line" = "DRACUT_LOG_END" ]; then rm -f -- /run/initramfs/loginit.pipe exit 0 diff --git a/modules.d/99fs-lib/fs-lib.sh b/modules.d/99fs-lib/fs-lib.sh index 7ec558aa..df3803d0 100755 --- a/modules.d/99fs-lib/fs-lib.sh +++ b/modules.d/99fs-lib/fs-lib.sh @@ -141,7 +141,7 @@ fsck_single() { [ $# -lt 2 ] && return 255 # if UUID= marks more than one device, take only the first one - [ -e "$_dev" ] || _dev=$(devnames "$_dev"| while read line; do if [ -n "$line" ]; then echo $line; break;fi;done) + [ -e "$_dev" ] || _dev=$(devnames "$_dev"| while read line || [ -n "$line" ]; do if [ -n "$line" ]; then echo $line; break;fi;done) [ -e "$_dev" ] || return 255 _fs=$(det_fs "$_dev" "$_fs") fsck_able "$_fs" || return 255 @@ -186,7 +186,7 @@ det_fs() { local _fs _fs=$(udevadm info --query=env --name="$_dev" | \ - while read line; do + while read line || [ -n "$line" ]; do if str_starts $line "ID_FS_TYPE="; then echo ${line#ID_FS_TYPE=} break diff --git a/modules.d/99shutdown/shutdown.sh b/modules.d/99shutdown/shutdown.sh index c183f9db..afee0515 100755 --- a/modules.d/99shutdown/shutdown.sh +++ b/modules.d/99shutdown/shutdown.sh @@ -38,7 +38,7 @@ killall_proc_mountpoint /oldroot umount_a() { local _did_umount="n" - while read a mp a; do + while read a mp a || [ -n "$mp" ]; do if strstr "$mp" oldroot; then if umount "$mp"; then _did_umount="y" diff --git a/test/TEST-01-BASIC/test-init.sh b/test/TEST-01-BASIC/test-init.sh index cf5a0262..ef196ecb 100755 --- a/test/TEST-01-BASIC/test-init.sh +++ b/test/TEST-01-BASIC/test-init.sh @@ -2,7 +2,7 @@ >/dev/watchdog export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sdb diff --git a/test/TEST-02-SYSTEMD/test-init.sh b/test/TEST-02-SYSTEMD/test-init.sh index 3fc24f52..b7e01921 100755 --- a/test/TEST-02-SYSTEMD/test-init.sh +++ b/test/TEST-02-SYSTEMD/test-init.sh @@ -1,7 +1,7 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec </dev/console >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sda1 diff --git a/test/TEST-03-USR-MOUNT/test-init.sh b/test/TEST-03-USR-MOUNT/test-init.sh index 99e109aa..48fbfeaf 100755 --- a/test/TEST-03-USR-MOUNT/test-init.sh +++ b/test/TEST-03-USR-MOUNT/test-init.sh @@ -2,12 +2,12 @@ >/dev/watchdog export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec </dev/console >/dev/console 2>&1 ismounted() { - while read a m a; do + while read a m a || [ -n "$m" ]; do [ "$m" = "$1" ] && return 0 done < /proc/mounts return 1 diff --git a/test/TEST-04-FULL-SYSTEMD/test-init.sh b/test/TEST-04-FULL-SYSTEMD/test-init.sh index 3012213e..ad516f1f 100755 --- a/test/TEST-04-FULL-SYSTEMD/test-init.sh +++ b/test/TEST-04-FULL-SYSTEMD/test-init.sh @@ -2,12 +2,12 @@ >/dev/watchdog export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec </dev/console >/dev/console 2>&1 ismounted() { - while read a m a; do + while read a m a || [ -n "$a" ]; do [ "$m" = "$1" ] && return 0 done < /proc/mounts return 1 diff --git a/test/TEST-04-FULL-SYSTEMD/test.sh b/test/TEST-04-FULL-SYSTEMD/test.sh index 90f5876f..0629bc23 100755 --- a/test/TEST-04-FULL-SYSTEMD/test.sh +++ b/test/TEST-04-FULL-SYSTEMD/test.sh @@ -163,7 +163,7 @@ EOF /etc/security \ /lib64/security \ /lib/security -xtype f \ - | while read file; do + | while read file || [ -n "$file" ]; do inst_multiple -o $file done @@ -193,7 +193,7 @@ EOF # install any Execs from the service files egrep -ho '^Exec[^ ]*=[^ ]+' $initdir/lib/systemd/system/*.service \ - | while read i; do + | while read i || [ -n "$i" ]; do i=${i##Exec*=}; i=${i##-} inst_multiple -o $i done diff --git a/test/TEST-10-RAID/create-root.sh b/test/TEST-10-RAID/create-root.sh index 151f3e09..a7e56a51 100755 --- a/test/TEST-10-RAID/create-root.sh +++ b/test/TEST-10-RAID/create-root.sh @@ -35,6 +35,6 @@ lvm lvchange -a n /dev/dracut/root udevadm settle cryptsetup luksClose /dev/mapper/dracut_crypt_test udevadm settle -eval $(udevadm info --query=env --name=/dev/md0|while read line; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;) +eval $(udevadm info --query=env --name=/dev/md0|while read line || [ -n "$line" ]; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;) { echo "dracut-root-block-created"; echo "ID_FS_UUID=$ID_FS_UUID"; } >/dev/sda1 poweroff -f diff --git a/test/TEST-10-RAID/test-init.sh b/test/TEST-10-RAID/test-init.sh index 4b4977a0..c7c114e7 100755 --- a/test/TEST-10-RAID/test-init.sh +++ b/test/TEST-10-RAID/test-init.sh @@ -1,7 +1,7 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) command -v plymouth >/dev/null && plymouth --quit exec >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sda1 diff --git a/test/TEST-11-LVM/test-init.sh b/test/TEST-11-LVM/test-init.sh index db3c52a3..61a95435 100755 --- a/test/TEST-11-LVM/test-init.sh +++ b/test/TEST-11-LVM/test-init.sh @@ -1,7 +1,7 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sda1 diff --git a/test/TEST-12-RAID-DEG/create-root.sh b/test/TEST-12-RAID-DEG/create-root.sh index e989f67a..7b9a1717 100755 --- a/test/TEST-12-RAID-DEG/create-root.sh +++ b/test/TEST-12-RAID-DEG/create-root.sh @@ -42,5 +42,5 @@ udevadm settle mdadm -W /dev/md0 || : mdadm --detail --export /dev/md0 |grep -F MD_UUID > /tmp/mduuid . /tmp/mduuid -eval $(udevadm info --query=env --name=/dev/md0|while read line; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;) +eval $(udevadm info --query=env --name=/dev/md0|while read line || [ -n "$line" ]; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;) { echo "dracut-root-block-created"; echo MD_UUID=$MD_UUID; echo "ID_FS_UUID=$ID_FS_UUID";} > /dev/sda1 diff --git a/test/TEST-12-RAID-DEG/test-init.sh b/test/TEST-12-RAID-DEG/test-init.sh index 4b4977a0..c7c114e7 100755 --- a/test/TEST-12-RAID-DEG/test-init.sh +++ b/test/TEST-12-RAID-DEG/test-init.sh @@ -1,7 +1,7 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) command -v plymouth >/dev/null && plymouth --quit exec >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sda1 diff --git a/test/TEST-14-IMSM/test-init.sh b/test/TEST-14-IMSM/test-init.sh index 932bd26d..ba63245b 100755 --- a/test/TEST-14-IMSM/test-init.sh +++ b/test/TEST-14-IMSM/test-init.sh @@ -1,7 +1,7 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sda diff --git a/test/TEST-16-DMSQUASH/test-init.sh b/test/TEST-16-DMSQUASH/test-init.sh index 55a53212..cdbd4dd0 100755 --- a/test/TEST-16-DMSQUASH/test-init.sh +++ b/test/TEST-16-DMSQUASH/test-init.sh @@ -1,7 +1,7 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sda diff --git a/test/TEST-17-LVM-THIN/test-init.sh b/test/TEST-17-LVM-THIN/test-init.sh index db3c52a3..61a95435 100755 --- a/test/TEST-17-LVM-THIN/test-init.sh +++ b/test/TEST-17-LVM-THIN/test-init.sh @@ -1,7 +1,7 @@ #!/bin/sh export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) plymouth --quit exec >/dev/console 2>&1 echo "dracut-root-block-success" >/dev/sda1 diff --git a/test/TEST-20-NFS/client-init.sh b/test/TEST-20-NFS/client-init.sh index a1c45909..2311981d 100755 --- a/test/TEST-20-NFS/client-init.sh +++ b/test/TEST-20-NFS/client-init.sh @@ -3,7 +3,7 @@ export PATH=/sbin:/bin:/usr/sbin:/usr/bin exec >/dev/console 2>&1 export TERM=linux export PS1='initramfs-test:\w\$ ' -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) strstr() { [ "${1##*"$2"*}" != "$1" ]; } stty sane @@ -15,7 +15,7 @@ fi echo "made it to the rootfs! Powering down." -while read dev fs fstype opts rest; do +while read dev fs fstype opts rest || [ -n "$dev" ]; do [ "$fstype" != "nfs" -a "$fstype" != "nfs4" ] && continue echo "nfs-OK $dev $fstype $opts" > /dev/sda break diff --git a/test/TEST-30-ISCSI/client-init.sh b/test/TEST-30-ISCSI/client-init.sh index b3e2ee15..2e422cd5 100755 --- a/test/TEST-30-ISCSI/client-init.sh +++ b/test/TEST-30-ISCSI/client-init.sh @@ -2,12 +2,12 @@ export PATH=/sbin:/bin:/usr/sbin:/usr/bin exec >/dev/console 2>&1 strstr() { [ "${1##*"$2"*}" != "$1" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) export TERM=linux export PS1='initramfs-test:\w\$ ' stty sane echo "made it to the rootfs! Powering down." -while read dev fs fstype opts rest; do +while read dev fs fstype opts rest || [ -n "$dev" ]; do [ "$fstype" != "ext3" ] && continue echo "iscsi-OK $dev $fstype $opts" > /dev/sda break diff --git a/test/TEST-40-NBD/client-init.sh b/test/TEST-40-NBD/client-init.sh index fcc28c0e..2b42e21b 100755 --- a/test/TEST-40-NBD/client-init.sh +++ b/test/TEST-40-NBD/client-init.sh @@ -2,7 +2,7 @@ >/dev/watchdog export PATH=/sbin:/bin:/usr/sbin:/usr/bin exec >/dev/console 2>&1 -while read dev fs fstype opts rest; do +while read dev fs fstype opts rest || [ -n "$dev" ]; do [ "$dev" = "rootfs" ] && continue [ "$fs" != "/" ] && continue echo "nbd-OK $fstype $opts" >/dev/sda diff --git a/test/TEST-40-NBD/create-root.sh b/test/TEST-40-NBD/create-root.sh index cb27a604..391279e4 100755 --- a/test/TEST-40-NBD/create-root.sh +++ b/test/TEST-40-NBD/create-root.sh @@ -25,6 +25,6 @@ udevadm settle cryptsetup luksClose /dev/mapper/dracut_crypt_test udevadm settle sleep 1 -eval $(udevadm info --query=env --name=/dev/sdb|while read line; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;) +eval $(udevadm info --query=env --name=/dev/sdb|while read line || [ -n "$line" ]; do [ "$line" != "${line#*ID_FS_UUID*}" ] && echo $line; done;) { echo "dracut-root-block-created"; echo "ID_FS_UUID=$ID_FS_UUID"; } >/dev/sda poweroff -f diff --git a/test/TEST-50-MULTINIC/client-init.sh b/test/TEST-50-MULTINIC/client-init.sh index 3f3e0792..e6157af2 100755 --- a/test/TEST-50-MULTINIC/client-init.sh +++ b/test/TEST-50-MULTINIC/client-init.sh @@ -4,7 +4,7 @@ set -x export PATH=/sbin:/bin:/usr/sbin:/usr/bin strstr() { [ "${1##*"$2"*}" != "$1" ]; } strglobin() { [ -n "$1" -a -z "${1##*$2*}" ]; } -CMDLINE=$(while read line; do echo $line;done < /proc/cmdline) +CMDLINE=$(while read line || [ -n "$line" ]; do echo $line;done < /proc/cmdline) export TERM=linux export PS1='initramfs-test:\w\$ ' stty sane