summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/busybox/files/mdev/usbdisk_link')
-rw-r--r--sys-apps/busybox/files/mdev/usbdisk_link36
1 files changed, 20 insertions, 16 deletions
diff --git a/sys-apps/busybox/files/mdev/usbdisk_link b/sys-apps/busybox/files/mdev/usbdisk_link
index 6bb069243f4c..e42cc8bc9085 100644
--- a/sys-apps/busybox/files/mdev/usbdisk_link
+++ b/sys-apps/busybox/files/mdev/usbdisk_link
@@ -4,31 +4,35 @@
current=$(readlink usbdisk)
-if [ "$current" = "$MDEV" ] && [ "$ACTION" = "remove" ]; then
+if [ "${current}" = "${MDEV}" ] && [ "${ACTION}" = "remove" ]; then
rm -f usbdisk usba1
fi
-[ -n "$current" ] && exit
+[ -n "${current}" ] && exit
-if [ -e /sys/block/$MDEV ]; then
- SYSDEV=$(readlink -f /sys/block/$MDEV/device)
+if [ -e /sys/block/"${MDEV}" ]; then
+ SYSDEV=$(readlink -f /sys/block/"${MDEV}"/device)
# if /sys device path contains '/usb[0-9]' then we assume its usb
# also, if it's a usb without partitions we require FAT
- if [ "${SYSDEV##*/usb[0-9]}" != "$SYSDEV" ]; then
+ if [ "${SYSDEV##*/usb[0-9]}" != "${SYSDEV}" ]; then
# do not create link if there is not FAT
- dd if=/dev/$MDEV bs=512 count=1 2>/dev/null | strings | grep FAT >/dev/null || exit 0
+ dd if=/dev/"${MDEV}" bs=512 count=1 2>/dev/null | strings | grep FAT >/dev/null || exit 0
- ln -sf $MDEV usbdisk
+ ln -sf "${MDEV}" usbdisk
# keep this for compat. people have it in fstab
- ln -sf $MDEV usba1
+ ln -sf "${MDEV}" usba1
fi
-elif [ -e /sys/block/*/$MDEV ] ; then
- PARENT=$(dirname /sys/block/*/$MDEV)
- SYSDEV=$(readlink -f $PARENT/device)
- if [ "${SYSDEV##*/usb[0-9]}" != "$SYSDEV" ]; then
- ln -sf $MDEV usbdisk
- # keep this for compat. people have it in fstab
- ln -sf $MDEV usba1
- fi
+else
+ for i in /sys/block/*/"${MDEV}"; do
+ if [ -e "$i" ]; then
+ PARENT=$(dirname "$i")
+ SYSDEV=$(readlink -f "${PARENT}"/device)
+ if [ "${SYSDEV##*/usb[0-9]}" != "${SYSDEV}" ]; then
+ ln -sf "${MDEV}" usbdisk
+ # keep this for compat. people have it in fstab
+ ln -sf "${MDEV}" usba1
+ fi
+ fi
+ done
fi