Add new 'default' command to manual-test script to set default-key name. Usefull with backup

pull/107/head
Charles-Edouard de la Vergne 2 months ago
parent a63596b00f
commit f8bdb5dd8f
No known key found for this signature in database
GPG Key ID: F12296941B7BB9C6

@ -24,8 +24,8 @@ help() {
echo echo
echo "Options:" echo "Options:"
echo echo
echo " -c <init|reset|card|encrypt|decrypt|sign|verify> : Requested command" echo " -c <init|reset|card|encrypt|decrypt|sign|verify|default> : Requested command"
echo " -e : Expert mode mode" echo " -e : Expert mode"
echo " -v : Verbose mode" echo " -v : Verbose mode"
echo " -h : Displays this help" echo " -h : Displays this help"
echo echo
@ -42,6 +42,30 @@ reset() {
killall scdaemon gpg-agent 2>/dev/null killall scdaemon gpg-agent 2>/dev/null
} }
#===============================================================================
#
# default - Set default key in conf file
#
#===============================================================================
default() {
dir=$(basename "${gnupg_home_dir}")
if [[ ! -d "${dir}" ]]; then
mkdir "${dir}"
chmod 700 "${dir}"
fi
recipient=$(gpg --homedir "${gnupg_home_dir}" --card-status | grep "General key info" | awk '{print $NF}')
if [[ ${recipient} =~ "none" ]]; then
read -r -p "Enter default key name: " recipient
fi
{
echo "default-key ${recipient}"
echo "default-recipient ${recipient}"
} > "${dir}/gpg.conf"
}
#=============================================================================== #===============================================================================
# #
# init - Init the gnupg config, start from an empty keyring # init - Init the gnupg config, start from an empty keyring
@ -93,19 +117,15 @@ card() {
# #
#=============================================================================== #===============================================================================
encrypt() { encrypt() {
local recipient=""
local verbose_mode="" local verbose_mode=""
reset reset
rm -fr foo* rm -fr foo*
echo CLEAR > foo.txt echo CLEAR > foo.txt
[[ ${VERBOSE} == true ]] && verbose_mode="--verbose" [[ ${VERBOSE} == true ]] && verbose_mode="--verbose"
recipient=$(gpg --homedir "${gnupg_home_dir}" --card-status | grep "General key info" | awk '{print $NF}') gpg --homedir "${gnupg_home_dir}" ${verbose_mode} --encrypt foo.txt
echo "Encrypt with recipient '${recipient}'"
gpg --homedir "${gnupg_home_dir}" ${verbose_mode} --encrypt --recipient "${recipient}" foo.txt
} }
#=============================================================================== #===============================================================================
@ -123,8 +143,7 @@ decrypt() {
gpg --homedir "${gnupg_home_dir}" ${verbose_mode} --decrypt foo.txt.gpg > foo_dec.txt gpg --homedir "${gnupg_home_dir}" ${verbose_mode} --decrypt foo.txt.gpg > foo_dec.txt
# Check with original clear file # Check with original clear file
diff foo.txt foo_dec.txt >/dev/null if diff foo.txt foo_dec.txt >/dev/null; then
if [[ $? -eq 0 ]]; then
echo "Success !" echo "Success !"
else else
echo "Decryption error!" echo "Decryption error!"
@ -180,7 +199,7 @@ while getopts ":c:evh" opt; do
c) c)
case ${OPTARG} in case ${OPTARG} in
init|reset|card|encrypt|decrypt|sign|verify) init|reset|card|encrypt|decrypt|sign|verify|default)
CMD=${OPTARG} CMD=${OPTARG}
;; ;;
*) *)

Loading…
Cancel
Save