<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/src/gpgme.h.in, branch gpgme-1.17.0</title>
<subtitle>GnuPG Made Easy.</subtitle>
<id>http://git.bktus.com/gpgfrontend/gpgme/atom?h=gpgme-1.17.0</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/gpgme/atom?h=gpgme-1.17.0'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/'/>
<updated>2022-02-03T14:56:30Z</updated>
<entry>
<title>core: New function gpgme_op_receive_keys</title>
<updated>2022-02-03T14:56:30Z</updated>
<author>
<name>Ingo Klöcker</name>
<email>dev@ingo-kloecker.de</email>
</author>
<published>2022-01-31T14:59:55Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=3c2cff74b535422532e1256ee8177fa9c03eaf18'/>
<id>urn:sha1:3c2cff74b535422532e1256ee8177fa9c03eaf18</id>
<content type='text'>
* src/gpgme.h.in (gpgme_op_receive_keys_start, gpgme_op_receive_keys):
New.
* src/gpgme.def, src/libgpgme.vers: Add them.
* src/engine-backend.h (struct engine_ops): Add arg keyids to field
'import'.
* src/engine.h, src/engine.c (_gpgme_engine_op_import): Add arg keyids.
* src/engine.c (_gpgme_engine_op_import): Forward new arg keyids.
* src/import.c: (_gpgme_op_import_start, _gpgme_op_import_keys_start):
Pass NULL to new arg of _gpgme_op_import_start.
(_gpgme_op_receive_keys_start, gpgme_op_receive_keys_start,
gpgme_op_receive_keys): New.
* src/engine-gpg.c (gpg_import): Add arg keyids. Extend check for
valid arguments. Build command line if keyids are given.
* src/engine-gpgsm.c (gpgsm_import): Add arg keyids. Return error if
keyids is not NULL.

tests/run-receive-keys.c: New.
tests/Makefile.am (noinst_PROGRAMS): Add new test runner.
--

The new function allows importing keys given by their key ids or
fingerprints from a keyserver (like gpg's --recv-keys command).

GnuPG-bug-id: 5808
</content>
</entry>
<entry>
<title>core: New export mode to export secret subkeys.</title>
<updated>2022-01-04T08:23:40Z</updated>
<author>
<name>Ingo Klöcker</name>
<email>dev@ingo-kloecker.de</email>
</author>
<published>2022-01-03T15:25:40Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=0e19c4879193ed7fa61ad5d488f237b2b5b5d1d7'/>
<id>urn:sha1:0e19c4879193ed7fa61ad5d488f237b2b5b5d1d7</id>
<content type='text'>
* src/gpgme.h.in (GPGME_EXPORT_MODE_SECRET_SUBKEY): New.
* src/export.c (check_mode): Allow new mode and check for invalid
combinations.
(export_keys_start): Return error if new mode flag is set.
* src/engine-gpg.c (export_common): Implement.
* src/gpgme-tool.c (cmd_export): New option --secret-subkey.
* tests/run-export.c (main): New option --secret-subkey.
--

This adds support for exporting secret subkeys (via gpg's
--export-secret-subkeys) to gpgme_op_export[_ext][_start].
The flag is not supported by gpgme_op_export_keys[_start] because
there is no way to specify which subkey(s) to export with these
functions.

GnuPG-bug-id: 5757
</content>
</entry>
<entry>
<title>core: Make sure to stay ABI compatible.</title>
<updated>2021-05-12T06:48:26Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2021-05-12T06:38:14Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=88db69e1a964c9a36989e36fe5d972548432fb5c'/>
<id>urn:sha1:88db69e1a964c9a36989e36fe5d972548432fb5c</id>
<content type='text'>
* src/gpgme.h.in (struct _gpgme_key_sig): Move trust_scope to the end
of the struct.
--

Fixes-commit: 276187f6b62a73e92b1c20f589510f80ab9e88d2

Note that we assume that splitting a reserved 28 bit field into 3
fields does not change the ABI.
</content>
</entry>
<entry>
<title>core: Extend gpgme_key_sig_t with trust signature members.</title>
<updated>2021-05-05T17:23:48Z</updated>
<author>
<name>Ingo Klöcker</name>
<email>dev@ingo-kloecker.de</email>
</author>
<published>2021-05-04T16:35:29Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=276187f6b62a73e92b1c20f589510f80ab9e88d2'/>
<id>urn:sha1:276187f6b62a73e92b1c20f589510f80ab9e88d2</id>
<content type='text'>
* src/gpgme.h.in (struct _gpgme_key_sig): Add fields 'trust_depth',
'trust_value', and 'trust_scope'.
* src/key.c (gpgme_key_unref): Free trust_scope.
* src/keylist.c (keylist_colon_handler): Set the fields.
* tests/run-keylist.c (main): Print the fields.
--

The trust signature values are part of gpg's output since the year 2003.
This now adds support to gpgme.

GnuPG-bug-id: 5245, 5419
</content>
</entry>
<entry>
<title>core: New flag GPGME_KEYSIGN_FORCE.</title>
<updated>2021-03-11T10:49:07Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2021-03-11T10:49:07Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=0821e2b1495e8944a5a1b5ba20ad5f403dde0dd0'/>
<id>urn:sha1:0821e2b1495e8944a5a1b5ba20ad5f403dde0dd0</id>
<content type='text'>
* src/gpgme.h.in (GPGME_KEYSIGN_FORCE): New.
* src/engine-gpg.c (gpg_keysign): Implement.

* tests/run-keysign.c (show_usage): Add option --force
--

GnuPG-bug-id: 4584
</content>
</entry>
<entry>
<title>core: Remove experimental feature GPGME_EXPORT_MODE_NOUID.</title>
<updated>2021-02-01T15:48:30Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2021-02-01T15:47:46Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=c8fd8870b3bf089f99156448b7d1e59c1150f994'/>
<id>urn:sha1:c8fd8870b3bf089f99156448b7d1e59c1150f994</id>
<content type='text'>
* src/export.c (export_start): Remove GPGME_EXPORT_MODE_NOUID check.
* src/engine-gpg.c (export_common): Ditto.
--

Note that this constant was never announed and used only for internal
tests.  It made it into some release only by accident.

The constants is kept in gpgme.h to not break any code but it is
non-fucntionals.  We do not consider this an ABI break.

GnuPG-bug-id: 5284
</content>
</entry>
<entry>
<title>Parse STATUS_CANCELED_BY_USER.</title>
<updated>2020-11-04T01:47:44Z</updated>
<author>
<name>Ben Kibbey</name>
<email>bjk@luxsci.net</email>
</author>
<published>2020-11-03T03:33:29Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=35ca460019ea29ae646d08c954d4d4bf2dc1e8e1'/>
<id>urn:sha1:35ca460019ea29ae646d08c954d4d4bf2dc1e8e1</id>
<content type='text'>
* src/gpgme.h.in (GPGME_STATUS_CANCELED_BY_USER): New.
* src/status-table.c (status_table_s): Add "CANCELED_BY_USER".
* src/passphrase.c (_gpgme_passphrase_status_handler): Return
GPG_ERR_CANCELED during GPGME_STATUS_CANCELED_BY_USER.

Signed-off-by: Ben Kibbey &lt;bjk@luxsci.net&gt;
</content>
</entry>
<entry>
<title>core: New function gpgme_op_revsig.</title>
<updated>2020-10-29T11:57:10Z</updated>
<author>
<name>Ingo Klöcker</name>
<email>dev@ingo-kloecker.de</email>
</author>
<published>2020-10-27T14:33:51Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=f3407d0ee4e34ed33be18de5f886a4da2affbf9f'/>
<id>urn:sha1:f3407d0ee4e34ed33be18de5f886a4da2affbf9f</id>
<content type='text'>
* src/gpgme.h.in (gpgme_op_revsig_start, gpgme_op_revsig): New.
(GPGME_REVSIG_LFSEP): New.
* src/context.h (ctx_op_data_id_t): Add OPDATA_REVSIG.
* src/revsig.c: New.
* src/Makefile.am (main_sources): Add revsig.
* src/libgpgme.vers, src/gpgme.def: Add gpgme_op_revsig and
gpgme_op_revsig_start.
* src/engine.h, src/engine.c: (_gpgme_engine_op_revsig): New.
* src/engine-backend.h (engine_ops): Add 'revsig' and adjust all
engine initializers.
* src/engine-gpg.c (gpg_revsig): New.
(_gpgme_engine_ops_gpg): Set revsig to gpg_revsig.
* doc/gpgme.texi: Document new functions.
* tests/run-keysign.c: Add option --revoke.
--

This extends GPGME to support the --quick-revoke-sig command
added by GnuPG 2.2.24. This allows revoking key signatures.

GnuPG-bug-id: 5094
</content>
</entry>
<entry>
<title>core: New function gpgme_op_setexpire.</title>
<updated>2020-08-04T14:51:56Z</updated>
<author>
<name>Ingo Klöcker</name>
<email>dev@ingo-kloecker.de</email>
</author>
<published>2020-08-04T12:32:31Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=db82e99a8a40c57a237dad030928d0fcf6b03ad7'/>
<id>urn:sha1:db82e99a8a40c57a237dad030928d0fcf6b03ad7</id>
<content type='text'>
* src/gpgme.h.in (gpgme_op_setexpire_start, gpgme_op_setexpire): New.
* src/libgpgme.vers, src/gpgme.def: Add new functions.
* src/genkey.c (setexpire): New.
(gpgme_op_setexpire_start, gpgme_op_setexpire): New.
* src/engine.h, src/engine.c: (_gpgme_engine_op_setexpire): New.
* src/engine-backend.h (engine_ops): Add 'setexpire' and adjust all
engine initializers.
* src/engine-gpg.c (gpg_setexpire): New.
(_gpgme_engine_ops_gpg): Set setexpire to gpg_setexpire.
* doc/gpgme.texi: Document new functions.
* tests/run-genkey.c: Add option --setexpire.
--

This extends GPGME to support the --quick-set-expire command
added by GnuPG 2.1.22. This allows changing subkeys expiry
date without going through the editinteractor interface.

Co-authored-by: Andre Heinecke &lt;aheinecke@gnupg.org&gt;
GnuPG-bug-id: 4999
</content>
</entry>
<entry>
<title>core: New export mode to export as OpenSSH public key.</title>
<updated>2020-07-16T10:00:46Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2020-07-16T10:00:46Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=7f9e0ca57b29cc96bd1ca717d891c11db7435c5a'/>
<id>urn:sha1:7f9e0ca57b29cc96bd1ca717d891c11db7435c5a</id>
<content type='text'>
* src/gpgme.h.in (GPGME_EXPORT_MODE_SSH): New.
* src/export.c (export_ext_start): Allow for new mode.
* src/engine-gpg.c (export_common): Implement.
* tests/run-export.c (status_cb): New.
(main): New options --status and --ssh.
--

GnuPG-bug-id: 4310
Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
</feed>
