zfskeys: allow prompt to entered during boot up

If the ZFS key is setup in prompt mode, use zfs to prompt to load the key
during boot to unlock it.

Reviewed by:	jhb
Differential Revision:	https://reviews.freebsd.org/D36081
This commit is contained in:
Doug Ambrisko 2024-09-12 08:43:03 -07:00
parent 3c95262007
commit 408087f128

View File

@ -45,7 +45,15 @@ unlock_fs()
local kl="$2"
local k="${kl##file://}"
if [ "$k" ] && [ -f "$k" ] && [ -s "$k" ] && [ -r "$k" ]; then
if [ "$kl" == "prompt" ]
then
echo "Key prompt for $fs."
if zfs load-key -L "$kl" "$fs" < /dev/tty > /dev/tty 2>/dev/tty ; then
echo "Key loaded for $fs."
else
echo "Key failed to load for $fs."
fi
elif [ "$k" ] && [ -f "$k" ] && [ -s "$k" ] && [ -r "$k" ]; then
if [ "$(zfs get -Ho value keystatus "$fs")" = 'available' ]; then
echo "Key already loaded for $fs."
elif keytest=$(zfs load-key -n -L "$kl" "$fs" 2>&1); then