gpgme/src
Justus Winter de708e5934
core: Fix expiration time handling when creating keys.
* NEWS: Update.
* doc/gpgme.texi (gpgme_op_createkey): Clarify the meaning of the
'expire' parameter.
(GPGME_CREATE_NOEXPIRE): Document new flag.
(gpgme_op_createsubkey): Clarify the meaning of the 'expire'
parameter.
* src/engine-gpg.c (gpg_add_algo_usage_expire): Fix handling of the
expiration time.
* src/gpgme.h.in (GPGME_CREATE_NOEXPIRE): New macro.
--

Previously, the documentation stated that the expiration time was an
absolute timestamp.  However, this value was passed using the
'seconds=N' syntax to GnuPG which specifies the expiration time in
seconds relative to the creation time.  Fix the documentation.

Furthermore, the documentation stated that using 0 results in keys
that do not expire.  This was communicated to GnuPG by using the
implicit default.  However, as of GnuPG 2.1.17, the default was
changed to create keys that expire within a reasonable timespan.

Fix this discrepancy by aligning the behavior with recent GnuPG
versions: 0 means use a reasonable default, and introduce a flag that
can be used to create keys that do not expire.  Communicate this
explicitly to GnuPG.

Signed-off-by: Justus Winter <justus@g10code.com>
2017-02-15 16:45:45 +01:00
..
.gitignore .gitignore: flesh out rules and add subdirectory-.gitignores. 2012-04-20 16:05:11 +02:00
argparse.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
argparse.h doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
assuan-support.c w32: Silence some warnings about unused parameters. 2016-09-22 12:58:23 +02:00
ath.c core: Use gpgrt locking for thread safeness 2016-11-10 13:33:13 +01:00
ath.h core: Use gpgrt locking for thread safeness 2016-11-10 13:33:13 +01:00
b64dec.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
ChangeLog-2011 Generate the ChangeLog from commit logs. 2011-12-02 11:36:37 +01:00
context.h core: Add new context flag "redraw". 2017-01-31 09:44:29 +01:00
conversion.c core: New helper function _gpgme_strconcat. 2016-09-22 12:42:10 +02:00
data-compat.c core: Un-deprecate gpgme_data_rewind. 2017-02-02 09:53:48 +01:00
data-fd.c Make definition of off_t robust against misbehaving w32 toolchains. 2013-05-16 17:48:50 +02:00
data-identify.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
data-mem.c Add gpgme_pubkey_algo_string 2015-08-30 19:04:44 +02:00
data-stream.c Make definition of off_t robust against misbehaving w32 toolchains. 2013-05-16 17:48:50 +02:00
data-user.c Make definition of off_t robust against misbehaving w32 toolchains. 2013-05-16 17:48:50 +02:00
data.c core: Fix error types. 2017-02-15 16:34:37 +01:00
data.h core: Add gpgme_data_set_flag to add more meta data to data objects. 2016-08-12 15:21:42 +02:00
debug.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
debug.h Fix compiler warnings about unused value in TRACE macros. 2015-06-08 11:08:08 +02:00
decrypt-verify.c core: Implement context flag "override-session-key". 2016-11-15 10:34:13 +01:00
decrypt.c core: Implement context flag "override-session-key". 2016-11-15 10:34:13 +01:00
delete.c core: Mark unused function args. 2016-09-13 20:53:49 +02:00
dirinfo.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
edit.c core: New function gpgme_op_interact, deprecate gpgme_op_edit. 2016-09-15 11:39:43 +02:00
encrypt-sign.c core: Fix passphrase cb for mixed sym encrypt 2016-09-06 16:28:45 +02:00
encrypt.c core: Fix passphrase cb for mixed sym encrypt 2016-09-06 16:28:45 +02:00
engine-assuan.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
engine-backend.h doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
engine-g13.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
engine-gpg.c core: Fix expiration time handling when creating keys. 2017-02-15 16:45:45 +01:00
engine-gpgconf.c Fix changing options with gpgconf. 2017-01-16 12:48:56 +01:00
engine-gpgsm.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
engine-spawn.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
engine-uiserver.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
engine.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
engine.h core: Implement context flag "override-session-key". 2016-11-15 10:34:13 +01:00
error.c core: Fix error types. 2017-02-15 16:34:37 +01:00
export.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
genkey.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
get-env.c Use gpg_error_from_syserror instead of directly accessing errno. 2013-02-06 17:35:40 +01:00
getauditlog.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
gpgconf.c core: Add gpgme_op_query_swdb and helper. 2016-11-03 17:32:30 +01:00
gpgme-config.in core: Use gpgrt locking for thread safeness 2016-11-10 13:33:13 +01:00
gpgme-tool.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
gpgme-w32spawn.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
gpgme.c core: Add new context flag "redraw". 2017-01-31 09:44:29 +01:00
gpgme.def core: Implement context flag "override-session-key". 2016-11-15 10:34:13 +01:00
gpgme.h.in core: Fix expiration time handling when creating keys. 2017-02-15 16:45:45 +01:00
gpgme.m4 build: Implement SYSROOT feature. 2014-10-02 15:57:50 +02:00
import.c Use gpg_error_from_syserror instead of directly accessing errno. 2013-02-06 17:35:40 +01:00
isascii.c 008-11-03 Marcus Brinkmann <marcus@g10code.com> 2008-11-03 17:24:09 +00:00
key.c core: Cleanup gpgme_key_unref frees 2017-02-01 18:06:54 +01:00
keylist.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
keysign.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
libgpgme.vers core: Implement context flag "override-session-key". 2016-11-15 10:34:13 +01:00
Makefile.am doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
mbox-util.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
mbox-util.h doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
op-support.c core: Add new context flag "redraw". 2017-01-31 09:44:29 +01:00
opassuan.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
ops.h core: Change the way TOFU information are represented. 2016-08-23 15:24:10 +02:00
parsetlv.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
parsetlv.h doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
passphrase.c api: Add new function gpgme_set_ctx_flag. 2016-05-19 17:04:54 +02:00
passwd.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
posix-io.c core: Optimize fork/exec for *BSD and Solaris. 2017-02-03 13:56:23 +01:00
posix-util.c core: Mark unused function args. 2016-09-13 20:53:49 +02:00
priv-io.h w32: Get IOSPAWN flag back in sync with spawn helper. 2014-06-26 10:42:56 +02:00
progress.c core: Add new context flag "redraw". 2017-01-31 09:44:29 +01:00
putc_unlocked.c Remove all trailing whitespace from source files 2012-09-25 15:29:49 +02:00
queryswdb.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
sema.h core: Use gpgrt locking for thread safeness 2016-11-10 13:33:13 +01:00
setenv.c More include guards. 2010-11-03 09:56:27 +00:00
sig-notation.c Use gpg_error_from_syserror instead of directly accessing errno. 2013-02-06 17:35:40 +01:00
sign.c api: Add new function gpgme_set_ctx_flag. 2016-05-19 17:04:54 +02:00
signers.c Fix potential crash in trace macro. 2015-03-16 13:40:34 +01:00
spawn.c Actually implement flags for gpgme_op_spawn. 2014-04-10 14:17:19 +02:00
status-table.c core: Map GPGME_STATUS_EOF to the empty string. 2016-09-16 16:00:27 +02:00
stpcpy.c 008-11-03 Marcus Brinkmann <marcus@g10code.com> 2008-11-03 17:24:09 +00:00
sys-util.h doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
tofupolicy.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
trust-item.c Use gpg_error_from_syserror instead of directly accessing errno. 2013-02-06 17:35:40 +01:00
trustlist.c core: Mark unused function args. 2016-09-13 20:53:49 +02:00
ttyname_r.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
util.h core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
verify.c core: Minor cleanup of commit 195c735 2017-02-03 13:08:39 +01:00
version.c core: Use gpgrt locking for thread safeness 2016-11-10 13:33:13 +01:00
versioninfo.rc.in Release 1.7.0 2016-09-21 09:18:01 +02:00
vfs-create.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
vfs-mount.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
w32-ce.c doc: Replace http: by https: in core source files. 2016-11-16 13:27:00 +01:00
w32-ce.h Remove all trailing whitespace from source files 2012-09-25 15:29:49 +02:00
w32-glib-io.c Fix typos found by codespell. 2015-12-02 11:28:07 +01:00
w32-io.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
w32-util.c core: Replace all calls to *sprintf by gpgrt_*sprintf. 2017-02-02 12:35:59 +01:00
wait-global.c Fix typos found by codespell. 2015-12-02 11:28:07 +01:00
wait-private.c Fix typos found by codespell. 2015-12-02 11:28:07 +01:00
wait-user.c core: Mark unused function args. 2016-09-13 20:53:49 +02:00
wait.c Use gpg_error_from_syserror instead of directly accessing errno. 2013-02-06 17:35:40 +01:00
wait.h Remove all trailing whitespace from source files 2012-09-25 15:29:49 +02:00