mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
633ea8531e
This adds scdaemon "OPTION pin-prompt" and "OPTION pin-admin-prompt" along with special escapes to replace in the prompt string to inform the user of a signature count and admin PIN attempts remaining. It also adds another "standard" pinentry escape "|I|" to ignore the default pinentry prompt from gpg-agent and use the supplied 'info' parameter unmodified (cannot be used with other pinentry flags). * agent/divert-scd.c (getpin_cb): Add |I| pinentry flag to ignore the default prompt and use the 'info' parameter as the entire prompt. * scd/app-common.h (PIN_PROMPT_NONE, PIN_SIGN_PROMPT, PIN_ADMIN_PROMPT): New enumeration. (set_pin_prompt): New application callback to set a user-defined pinentry prompt. * scd/app-openpgp.c (verify_a_chv): Expand a user-defined pinentry prompt. (build_enter_admin_pin_prompt): Ditto. (do_change_pin): Ditto. (do_set_pin_prompt): New. * scd/app.c (expand_pin_prompt): New. (app_set_pin_prompt): Ditto. * scd/command.c (set_pinentry_prompt): New. (option_handler): Add option 'pin-prompt' and 'pin-admin-prompt'. (open_card): Set the user-defined pinentry prompts after selecting an application.