mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
agent: Allow to use SETHASH for arbitrary data.
* agent/agent.h (struct server_control_s): Add field digest.data. * agent/gpg-agent.c (agent_deinit_default_ctrl): Free that field. * agent/command.c (reset_notify): Ditto. (start_command_handler): ditto. (cmd_sethash): Add new option --inquire. * agent/call-scd.c (agent_card_pksign): For now return an error if inquire mode was used. * agent/command-ssh.c (ssh_handler_sign_request): Make sure digest.data is cleared. * agent/divert-scd.c (divert_pksign): Implement inquire mode. * agent/pksign.c (agent_pksign_do): Ditto. -- This is required to support EdDSA according to RFC8410. GnuPG-bug-id: 4888
This commit is contained in:
parent
b1694987bb
commit
b18fb0264a
7 changed files with 100 additions and 28 deletions
|
@ -245,9 +245,12 @@ struct server_control_s
|
|||
|
||||
/* Information on the currently used digest (for signing commands). */
|
||||
struct {
|
||||
char *data; /* NULL or malloced data of length VALUELEN. If
|
||||
this is set The other fields are ignored. Used
|
||||
for PureEdDSA. */
|
||||
int valuelen;
|
||||
int algo;
|
||||
unsigned char value[MAX_DIGEST_LEN];
|
||||
int valuelen;
|
||||
int raw_value: 1;
|
||||
} digest;
|
||||
unsigned char keygrip[20];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue