3
# If not on a tty, then get rid of possibly disrupting stderr output
10
usplash="`pidof usplash -o $$`"
13
# We get some variables from cryptsetup:
14
# $cryptsource the device node, like "/dev/sda3"
15
# $crypttarget the device mapper name, like "sda3_crypt".
17
prompt="Enter passphrase to unlock"
18
if [ -n "$crypttarget" ]; then
19
prompt="$prompt the disk $crypttarget"
21
if [ -n "$cryptsource" ]; then
22
prompt="$prompt ($cryptsource)"
25
splash_input_password(){
26
test -p /dev/.initramfs/usplash_outfifo || return 1
27
/sbin/usplash_write "INPUTQUIET $1" || return 1
28
cat /dev/.initramfs/usplash_outfifo 2> /dev/null || return 1
31
# Usplash keeps waiting for input even if some other plugin provided
32
# the password, so we must kill it
33
trap "kill -TERM $usplash; sleep 2; kill -KILL $usplash;
34
kill -TERM $$" TERM HUP
36
password="`splash_input_password \"$prompt: \" password`"
40
/sbin/usplash_write "TIMEOUT 15"