diff options
author | Werner Koch <wk@gnupg.org> | 2020-01-13 16:27:12 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2020-01-13 16:27:12 +0100 |
commit | 2e86cca7f4181310bebfd795c059369ba03a8d8b (patch) | |
tree | e854be013f1c6f8693734ae1ce530e46775491e9 /scd/command.c | |
parent | agent: Replace free by xfree in recently added code. (diff) | |
download | gnupg2-2e86cca7f4181310bebfd795c059369ba03a8d8b.tar.xz gnupg2-2e86cca7f4181310bebfd795c059369ba03a8d8b.zip |
agent: Avoid multiple calls to scd for KEYINFO.
* agent/command.c (struct server_local_s): Add last_card_keyinfo.
(eventcounter): Add maybe_key_change.
(cmd_genkey, cmd_scd, cmd_import_key, cmd_delete_key): Bump new
counter.
(cmd_keyinfo): Cache the keyinfo from the card.
(start_command_handler): Release the cache.
--
This cache speeds up processing of commands like "gpg -K" because
scdaemon does not need to be asked for each key as long as nothing
changed with the card.
We should have a better notification service from scdaemon to make
sure that we get only the relevant events. What we do right now is a
bit course but sufficient.
Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'scd/command.c')
0 files changed, 0 insertions, 0 deletions