gnupg/agent
Werner Koch 434a641d40
agent: Add "ephemeral" Assuan option.
* agent/agent.h (struct ephemeral_private_key_s): New.
(struct server_control_s): Add ephemeral_mode and ephemeral_keys.
(GENKEY_FLAG_NO_PROTECTION, GENKEY_FLAG_PRESET): New.
* agent/genkey.c (clear_ephemeral_keys): New.
(store_key): Add arg ctrl and implement ephemeral_mode.  Change all
callers.
(agent_genkey): Replace args no_protection and preset by a generic new
flags arg.
* agent/findkey.c (wipe_and_fclose): New.
(agent_write_private_key): Add arg ctrl and implement ephemeral_mode.
Change all callers.
(agent_update_private_key): Ditto
(read_key_file): Ditto.
(agent_key_available): Ditto.
* agent/command-ssh.c (card_key_available): Do not update display s/n
in ephemeral mode.  This is however enver triggred.
* agent/gpg-agent.c (agent_deinit_default_ctrl): Cleanup ephemeral
keys.
* agent/command.c (cmd_genkey): Use the new flags instead of separate
vars.
(cmd_readkey): Create a shadow key only in non-ephemeral_mode.
(cmd_getinfo): Add sub-command "ephemeral".
(option_handler): Add option "ephemeral".
--

The idea here that a session can be switched in an ephemeral mode
which does not store or read keys from disk but keeps them local to
the session.

GnuPG-bug-id: 6944
2024-01-22 16:49:54 +01:00
..
ChangeLog-2011 Fix typos 2015-10-28 10:20:17 +01:00
Makefile.am w32: Add missing manifests and set a requestedExecutionLevel. 2023-05-24 12:06:37 +02:00
agent.h agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
all-tests.scm tests: Support semihosted environment. 2022-12-01 13:59:06 +09:00
cache.c agent: Fix SEGV when debuging for cache enabled. 2020-10-09 13:57:29 +09:00
call-daemon.c agent,w32: Fix resource leak for a process. 2023-05-25 11:15:16 +09:00
call-pinentry.c scd:openpgp: Return better error codes for the Reset Code. 2023-10-06 12:15:10 +02:00
call-scd.c agent: Handle USAGE information in KEYINFO. 2022-05-26 14:01:03 +09:00
call-tpm2d.c agent: always use hexgrip when storing key password 2022-01-24 22:22:05 +01:00
command-ssh.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
command.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
cvt-openpgp.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
cvt-openpgp.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
divert-scd.c agent: Move confirmation handling into findkey.c. 2022-05-20 13:43:08 +09:00
divert-tpm2.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
findkey.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
genkey.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
gpg-agent-w32info.rc w32: Add missing manifests and set a requestedExecutionLevel. 2023-05-24 12:06:37 +02:00
gpg-agent.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
gpg-agent.w32-manifest.in w32: Add missing supportedOS Ids for Windows-10 2023-05-24 14:16:10 +02:00
keyformat.txt doc: Document Backup-info in keyformat.txt 2024-01-22 10:16:03 +01:00
learncard.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
pkdecrypt.c agent: Show "no secret key" instead of "card removed". 2023-03-01 16:49:40 +01:00
pksign.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
preset-passphrase.c agent: New option --restricted for PRESET_PASSPHRASE. 2023-03-27 11:47:28 +02:00
protect-tool.c agent: Add "ephemeral" Assuan option. 2024-01-22 16:49:54 +01:00
protect.c agent: Make --disable-extended-key-format a dummy option. 2023-03-13 08:53:50 +01:00
sexp-secret.c agent: Avoid uninitialized buffer. 2021-11-12 15:36:02 +09:00
t-protect.c agent: Make --disable-extended-key-format a dummy option. 2023-03-13 08:53:50 +01:00
trans.c agent: Replace most assert by log_assert. 2019-05-14 10:31:46 +02:00
trustlist.c agent: Add trustlist flag "de-vs". 2023-04-03 14:10:33 +02:00
w32main.c Spelling cleanup. 2020-02-18 18:07:46 -05:00
w32main.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00