summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bsdconfig/share/media/usb.subr
diff options
context:
space:
mode:
authordteske <dteske@FreeBSD.org>2014-05-17 03:28:43 +0000
committerdteske <dteske@FreeBSD.org>2014-05-17 03:28:43 +0000
commit5dd59bc6ac2020fbc6c987fd0b4fb2bb70daa35b (patch)
treeae02a3cfcc3e67aa5b92565199400cd2cfc2879a /usr.sbin/bsdconfig/share/media/usb.subr
parent0f7f48b5f92ced3835af73951a1c1d6a463829e4 (diff)
downloadFreeBSD-src-5dd59bc6ac2020fbc6c987fd0b4fb2bb70daa35b.zip
FreeBSD-src-5dd59bc6ac2020fbc6c987fd0b4fb2bb70daa35b.tar.gz
MFC r264840: Implement GEOM based media device classification.
Diffstat (limited to 'usr.sbin/bsdconfig/share/media/usb.subr')
-rw-r--r--usr.sbin/bsdconfig/share/media/usb.subr28
1 files changed, 12 insertions, 16 deletions
diff --git a/usr.sbin/bsdconfig/share/media/usb.subr b/usr.sbin/bsdconfig/share/media/usb.subr
index 39384fa..5ee9bc0 100644
--- a/usr.sbin/bsdconfig/share/media/usb.subr
+++ b/usr.sbin/bsdconfig/share/media/usb.subr
@@ -62,26 +62,20 @@ f_media_set_usb()
if [ ${ndevs:=0} -eq 0 ]; then
f_show_msg "$msg_no_usb_devices_found"
return $FAILURE
- elif [ $ndevs -gt 1 ]; then
+ elif [ $ndevs -eq 1 ]; then
+ f_struct_copy $devs device_media
+ else
+ local dev
local title="$msg_choose_a_usb_drive"
local prompt="$msg_please_select_a_usb_drive"
- local hline=""
+ local hline=
- local dev retval
dev=$( f_device_menu \
"$title" "$prompt" "$hline" $DEVICE_TYPE_USB \
- 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD )
- retval=$?
- [ "$dev" ] || return $FAILURE
-
- f_device_find "$dev" $DEVICE_TYPE_USB devs
- [ "$devs" ] || return $FAILURE
- dev="${devs%%[$IFS]*}"
+ 2>&1 >&$DIALOG_TERMINAL_PASSTHRU_FD ) ||
+ return $FAILURE
- f_struct_copy device_$dev device_media
- [ $retval -eq $SUCCESS ] || return $FAILURE
- else
- f_struct_copy device_$devs device_media
+ f_struct_copy "$dev" device_media
fi
f_struct device_media &&
@@ -106,7 +100,7 @@ f_media_init_usb()
local funcname=f_media_init_usb
local dev="$1" devname err
- device_$dev get devname devname || return $FAILURE
+ $dev get devname devname || return $FAILURE
f_dprintf "Init routine called for USB device. devname=[%s]" \
"$devname"
@@ -143,9 +137,11 @@ f_media_init_usb()
f_media_get_usb()
{
local dev="$1" file="$2" probe_type="$3"
+ local name
+ $dev get name name
f_dprintf "f_media_get_usb: dev=[%s] file=[%s] probe_type=%s" \
- "$dev" "$file" "$probe_type"
+ "$name" "$file" "$probe_type"
f_media_generic_get "$MOUNTPOINT" "$file" "$probe_type"
}
OpenPOWER on IntegriCloud