#!/bin/bash # This program is a custom mock pinentry program # It uses whatever password is found in the /tmp directory # If the password is empty, replies CANCEL causing an error to similate invalid # credentials echo "OK Pleased to meet you" while read -r line; do if [[ $line =~ GETPIN ]]; then password="$(cat /tmp/mock-password 2>/dev/null)" if [ -n "$password" ]; then echo -n "D " echo "$password" echo "OK"; else echo "CANCEL"; fi else echo "OK"; fi done