diff options
author | Marcus Brinkmann <[email protected]> | 2017-08-11 17:13:44 +0000 |
---|---|---|
committer | Marcus Brinkmann <[email protected]> | 2017-08-11 17:13:44 +0000 |
commit | a0cc6e01a8900b34cf231d8b5335ef3f85d01fdf (patch) | |
tree | 047fb190d1210a568692163ce2bc3de6e90ee045 /doc | |
parent | doc: Clarify import keys operation. (diff) | |
download | gpgme-a0cc6e01a8900b34cf231d8b5335ef3f85d01fdf.tar.gz gpgme-a0cc6e01a8900b34cf231d8b5335ef3f85d01fdf.zip |
g10: Add new delete operations that allow more flags.
* NEWS: Document new interfaces.
* doc/gpgme.texi: Document new interfaces.
* src/gpgme.h.in (GPGME_DELETE_ALLOW_SECRET, GPGME_DELETE_FORCE,
gpgme_op_delete_ext_start, gpgme_op_delete_ext): New.
* src/delete.c (delete_start): Change allow_secret argument to flags.
(gpgme_op_delete_ext, gpgme_op_delete_ext_start): New functions.
* src/engine-backend.h (delete): Change allow_secret argument to flags.
* src/engine.c (_gpgme_engine_op_delete): Likewise.
* src/engine.h (_gpgme_engine_op_delete): Likewise (for prototype).
* src/engine-gpgsm.c (gpgsm_delete): Likewise.
* src/engine-gpg.c (gpg_delete): Likewise. Implement GPGME_DELETE_FORCE.
* src/gpgme.def (gpgme_op_delete_ext, gpgme_op_delete_ext_start): New.
* src/libgpgme.vers (gpgme_op_delete_ext, gpgme_op_delete_ext_start): New.
Signed-off-by: Marcus Brinkmann <[email protected]>
GnuPG-bug-id: 2916
Diffstat (limited to 'doc')
-rw-r--r-- | doc/gpgme.texi | 35 |
1 files changed, 28 insertions, 7 deletions
diff --git a/doc/gpgme.texi b/doc/gpgme.texi index bf846293..78859cd1 100644 --- a/doc/gpgme.texi +++ b/doc/gpgme.texi @@ -4600,11 +4600,20 @@ operation is started on the context. @cindex key, delete @cindex key ring, delete from -@deftypefun gpgme_error_t gpgme_op_delete (@w{gpgme_ctx_t @var{ctx}}, @w{const gpgme_key_t @var{key}}, @w{int @var{allow_secret}}) -The function @code{gpgme_op_delete} deletes the key @var{key} from the -key ring of the crypto engine used by @var{ctx}. If -@var{allow_secret} is @code{0}, only public keys are deleted, -otherwise secret keys are deleted as well, if that is supported. +@deftypefun gpgme_error_t gpgme_op_delete_ext (@w{gpgme_ctx_t @var{ctx}}, @w{const gpgme_key_t @var{key}}, @w{unsigned int @var{flags}}) +The function @code{gpgme_op_delete_ext} deletes the key @var{key} from +the key ring of the crypto engine used by @var{ctx}. + +@var{flags} can be set to the bit-wise OR of the following flags: + +@table @code +@item GPGME_DELETE_ALLOW_SECRET +If not set, only public keys are deleted. If set, secret keys are +deleted as well, if that is supported. + +@item GPGME_DELETE_FORCE +If set, the user is not asked to confirm the deletion. +@end table The function returns the error code @code{GPG_ERR_NO_ERROR} if the key was deleted successfully, @code{GPG_ERR_INV_VALUE} if @var{ctx} or @@ -4615,8 +4624,8 @@ unambiguously, and @code{GPG_ERR_CONFLICT} if the secret key for @var{key} is available, but @var{allow_secret} is zero. @end deftypefun -@deftypefun gpgme_error_t gpgme_op_delete_start (@w{gpgme_ctx_t @var{ctx}}, @w{const gpgme_key_t @var{key}}, @w{int @var{allow_secret}}) -The function @code{gpgme_op_delete_start} initiates a +@deftypefun gpgme_error_t gpgme_op_delete_ext_start (@w{gpgme_ctx_t @var{ctx}}, @w{const gpgme_key_t @var{key}}, @w{unsigned int @var{flags}}) +The function @code{gpgme_op_delete_ext_start} initiates a @code{gpgme_op_delete} operation. It can be completed by calling @code{gpgme_wait} on the context. @xref{Waiting For Completion}. @@ -4625,6 +4634,18 @@ operation was started successfully, and @code{GPG_ERR_INV_VALUE} if @var{ctx} or @var{key} is not a valid pointer. @end deftypefun +The following functions allow only to use one particular flag. + +@deftypefun gpgme_error_t gpgme_op_delete (@w{gpgme_ctx_t @var{ctx}}, @w{const gpgme_key_t @var{key}}, @w{int @var{allow_secret}}) +Similar to @code{gpgme_op_delete_ext}, but only the flag +@code{GPGME_DELETE_ALLOW_SECRET} can be provided. +@end deftypefun + +@deftypefun gpgme_error_t gpgme_op_delete_start (@w{gpgme_ctx_t @var{ctx}}, @w{const gpgme_key_t @var{key}}, @w{int @var{allow_secret}}) +Similar to @code{gpgme_op_delete_ext_start}, but only the flag +@code{GPGME_DELETE_ALLOW_SECRET} can be provided. +@end deftypefun + @node Changing Passphrases @subsection Changing Passphrases |