#!/bin/bash

exec {OUTPUT_PIPE}<> <(:)

DESC="${1:-"Please enter your authentication passphrase:"}"

CMD=$(cat <<-EOF
	SETDESC $DESC
	SETPROMPT
	GETPIN
EOF
)

{
    while read -r out <&$OUTPUT_PIPE; do
        if [[ "$out" = "D "* ]]; then
            echo "${out#"D "}"
            break
        fi
    done
} &

pinentry-curses -T "${GPG_TTY}" -C "en_US.UTF-8" -M "en_US.UTF-8" -g <<<"$CMD" >&$OUTPUT_PIPE

# vim: ft=sh
