gnupg/common
Werner Koch ce5a7fb72b
scd: Use a scdaemon internal key to protect the PIN cache IPC.
* agent/call-scd.c (handle_pincache_put): Do not decrypt.
(handle_pincache_get): New.
(inq_needpin): Call it.
* scd/command.c (set_key_for_pincache): New.
(pincache_put): Restructure and set key.
(pincache_get): Ditto.
--

This change does away with encrypting and decrypting the cached PIN in
the agent.  There is no need for this we can simply cache the
cryptogram and let scdaemon decrypt after retrieving it from the
agent.  This way we do not need to share a key between gpg-agent and
scdaemon and further the cached content is invalid after the scdaemon
process has been replaced.

Signed-off-by: Werner Koch <wk@gnupg.org>
2020-01-09 12:00:50 +01:00
..
ChangeLog-2011 Fix typos 2015-10-28 10:20:17 +01:00
ChangeLog-2011.include Spelling fixes in docs and comments. 2017-04-28 10:06:33 +09:00
ChangeLog.jnlib common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
Makefile.am common: Fix AWK portability. 2019-04-16 13:24:10 +09:00
README common: Update README. 2016-03-02 14:27:30 +01:00
agent-opt.c agent: New OPTION pretend-request-origin 2018-03-23 08:37:14 +01:00
all-tests.scm tests: Make it possible to run all tests using our infrastructure. 2017-05-11 18:12:37 +02:00
argparse.c all: fix spelling and typos 2018-10-24 15:56:18 -04:00
argparse.h Change license of argparse.c back to LGPLv2.1 2018-03-21 09:15:13 +01:00
asshelp.c Merge branch 'switch-to-gpgk' into master 2019-09-27 15:44:23 +02:00
asshelp.h tools: New option --keyboxd for gpg-connect-agent. 2019-08-06 14:57:07 +02:00
asshelp2.c common: Change yet unused status_printf function. 2019-08-02 13:10:29 +02:00
audit.c Spelling fixes in docs and comments. 2017-04-28 10:06:33 +09:00
audit.h headers: fix spelling 2018-10-25 16:53:05 -04:00
b64dec.c g10, sm, dirmngr, common: Add comment for fall through. 2017-05-10 11:13:12 +09:00
b64enc.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
call-gpg.c Spelling fixes in docs and comments. 2017-04-28 10:06:33 +09:00
call-gpg.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
ccparray.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
ccparray.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
common-defs.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
compliance.c gpg: Remove PGP6 compliance mode. 2018-05-29 13:01:12 +02:00
compliance.h gpg: Remove PGP6 compliance mode. 2018-05-29 13:01:12 +02:00
convert.c scd: Use a scdaemon internal key to protect the PIN cache IPC. 2020-01-09 12:00:50 +01:00
dotlock.c doc: Typ fix in comment 2019-12-23 12:40:43 +01:00
dotlock.h Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
dynload.h Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
exaudit.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
exechelp-posix.c doc: Update copyright notices for common/exechelp*. 2017-11-29 11:32:42 +01:00
exechelp-w32.c common,w32: Breakaway detached childs when in job 2019-04-29 08:54:39 +02:00
exechelp-w32ce.c doc: Update copyright notices for common/exechelp*. 2017-11-29 11:32:42 +01:00
exechelp.h doc: Update copyright notices for common/exechelp*. 2017-11-29 11:32:42 +01:00
exectool.c common: Add kludge to allow silencing gnupg_exec_tool_stream. 2019-01-30 14:38:37 +01:00
exectool.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
exstatus.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
fwddecl.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
gc-opt-flags.h gpg: Add option --dirmngr-program. 2014-03-12 18:35:36 +01:00
get-passphrase.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
get-passphrase.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
gettime.c common: Accept the Z-suffix for yymmddThhmmssZ format. 2017-11-01 18:35:29 +01:00
gettime.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
gnupg.ico w32: Add icons and version information. 2013-05-07 21:35:48 +02:00
gpgrlhelp.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
helpfile.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
homedir.c tools: New option --keyboxd for gpg-connect-agent. 2019-08-06 14:57:07 +02:00
host2net.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
i18n.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
i18n.h Fix typos found using codespell. 2015-11-17 12:50:22 +01:00
init.c Some preparations to eventuallt use gpgrt_argparse. 2018-06-12 16:11:19 +02:00
init.h Spelling fixes in docs and comments. 2017-04-28 10:06:33 +09:00
iobuf.c common: Allow a readlimit for iobuf_esopen. 2019-09-10 15:45:58 +02:00
iobuf.h common: Allow a readlimit for iobuf_esopen. 2019-09-10 15:45:58 +02:00
isascii.c common: Change license of isascii.c to all-premissive, 2015-12-14 16:21:19 +01:00
keyserver.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
ksba-io-support.c common: Rename remaining symbols in ksba-io-support. 2017-02-16 17:21:05 +01:00
ksba-io-support.h common: Rename remaining symbols in ksba-io-support. 2017-02-16 17:21:05 +01:00
localename.c common: Fix warning for portability. 2017-03-07 10:42:46 +09:00
logging.h Require libgpg-error 1.29 and remove internal logging functions. 2018-06-12 13:46:00 +02:00
mapstrings.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
mbox-util.c common: Prepare for parsing mail sub-addresses. 2018-11-12 07:44:33 +01:00
mbox-util.h common: Prepare for parsing mail sub-addresses. 2018-11-12 07:44:33 +01:00
membuf.c Clean up word replication. 2017-02-21 13:11:46 -05:00
membuf.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
miscellaneous.c common: New function decode_c_string. 2019-01-30 08:28:56 +01:00
mischelp.c common/mischelp: use platform memory zeroing function for wipememory 2018-12-01 13:43:09 +02:00
mischelp.h common/mischelp: use platform memory zeroing function for wipememory 2018-12-01 13:43:09 +02:00
mkdir_p.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
mkdir_p.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
mkerrors all: fix more spelling errors 2018-10-25 16:53:05 -04:00
mkerrtok all: fix more spelling errors 2018-10-25 16:53:05 -04:00
mkstrtable.awk common: Fix AWK portability. 2019-04-16 13:24:10 +09:00
name-value.c common: Fix line break handling, finding a space. 2019-08-06 13:14:58 +09:00
name-value.h common: New functions nvc_delete_named and nvc_get_string. 2019-05-07 11:09:09 +02:00
openpgp-oid.c common: New helper functions for OpenPGP curve OIDs. 2019-01-29 18:19:05 +01:00
openpgp-s2k.c Fix a reference in comment. 2019-07-12 12:11:26 +09:00
openpgpdefs.h gpg: Prepare parser for the new attestation certificates. 2019-09-05 21:27:13 +02:00
percent.c common: Extend function percent_data_escape. 2019-01-24 10:02:52 +01:00
pkscreening.c gpg,sm: New option --with-key-screening. 2017-10-17 21:10:19 +02:00
pkscreening.h gpg,sm: New option --with-key-screening. 2017-10-17 21:10:19 +02:00
recsel.c Spelling fixes in docs and comments. 2017-04-28 10:06:33 +09:00
recsel.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
server-help.c common: New functions get_option_value and ascii_strupr. 2019-02-08 11:13:33 +01:00
server-help.h common: New functions get_option_value and ascii_strupr. 2019-02-08 11:13:33 +01:00
session-env.c Clean up word replication. 2017-02-21 13:11:46 -05:00
session-env.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
sexp-parse.h headers: fix spelling 2018-10-25 16:53:05 -04:00
sexputil.c common: Extend function pubkey_algo_string. 2019-04-02 18:50:55 +02:00
shareddefs.h agent: New OPTION pretend-request-origin 2018-03-23 08:37:14 +01:00
signal.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
simple-pwquery.c all: fix spelling and typos 2018-10-24 15:56:18 -04:00
simple-pwquery.h Spelling fixes in docs and comments. 2017-04-28 10:06:33 +09:00
ssh-utils.c Fix use of strncpy, which is actually good to use memcpy. 2018-09-06 11:41:13 +09:00
ssh-utils.h common: Support different digest algorithms for ssh fingerprints. 2017-05-24 17:01:48 +02:00
status.c common: Add generic status print function. 2019-01-22 09:02:17 +01:00
status.h common: Add generic status print function. 2019-01-22 09:02:17 +01:00
stringhelp.c common: New functions get_option_value and ascii_strupr. 2019-02-08 11:13:33 +01:00
stringhelp.h common: New functions get_option_value and ascii_strupr. 2019-02-08 11:13:33 +01:00
strlist.c Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
strlist.h Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
sysutils.c common,w32: Fix cast from gnupg_fd_t to call _open_osfhandle. 2019-07-24 14:27:47 +09:00
sysutils.h common: New functions gnupg_daemon_rootdir and gnupg_chdir. 2017-07-25 12:43:37 +02:00
t-b64.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-ccparray.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-convert.c common: New function hex2fixedbuf. 2019-10-01 10:32:31 +02:00
t-dotlock.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-exechelp.c all: fix spelling and typos 2018-10-24 15:56:18 -04:00
t-exectool.c tests: Avoid skipping exectool tests. 2016-12-20 18:39:30 +01:00
t-gettime.c tests: Fix t-gettime for a time_t of 64 and a long of 32 bit. 2017-01-12 10:39:19 +01:00
t-helpfile.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-iobuf.c Replace use of variable-length-arrays. 2017-01-02 13:29:18 +01:00
t-mapstrings.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-mbox-util.c tests: Add two user-id parsing test cases. 2019-09-17 16:19:28 +02:00
t-name-value.c common: New functions nvc_delete_named and nvc_get_string. 2019-05-07 11:09:09 +02:00
t-openpgp-oid.c common: New helper functions for OpenPGP curve OIDs. 2019-01-29 18:19:05 +01:00
t-percent.c common: Extend function percent_data_escape. 2019-01-24 10:02:52 +01:00
t-recsel.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-session-env.c Spelling fixes in docs and comments. 2017-04-28 10:06:33 +09:00
t-sexputil.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-ssh-utils.c common: Correctly render SHA256-based ssh fingerprints. 2017-05-24 17:07:13 +02:00
t-stringhelp.c common: New function split_fields_colon. 2017-07-17 15:53:16 +02:00
t-strlist.c Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
t-support.c Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
t-support.h Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
t-sysutils.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
t-timestuff.c Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
t-w32-reg.c Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
t-zb32.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
tlv.c Silence two -Wlogical-op warnings. 2017-01-05 20:43:40 +01:00
tlv.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
ttyio.c common: Minor rework of tty_get. 2019-03-07 14:11:46 +01:00
ttyio.h common: Remove unused function tty_print_string. 2017-01-17 10:19:06 +01:00
types.h Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
userids.c kbx: Redefine the UBID which is now the primary fingerprint. 2019-11-28 11:16:13 +01:00
userids.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
utf8conv.c Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
utf8conv.h Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
util.h kbx: Redefine the UBID which is now the primary fingerprint. 2019-11-28 11:16:13 +01:00
utilproto.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
w32-reg.c Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
w32help.h Clarify text of LGPLv2+/GPLv2+ licensed files. 2017-02-24 13:48:28 +01:00
w32info-rc.h.in Release 2.2.5 2018-02-22 15:32:36 +01:00
xasprintf.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
xreadline.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
yesno.c Clean up word replication. 2017-02-21 13:11:46 -05:00
zb32.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
zb32.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00

README

Common functionality used by all modules of GnuPG.