<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/src/engine-gpg.c, branch ben/xml</title>
<subtitle>GnuPG Made Easy.</subtitle>
<id>http://git.bktus.com/gpgfrontend/gpgme/atom?h=ben%2Fxml</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/gpgme/atom?h=ben%2Fxml'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/'/>
<updated>2015-08-25T17:11:30Z</updated>
<entry>
<title>Relax ttyname_r error checks</title>
<updated>2015-08-25T17:11:30Z</updated>
<author>
<name>Daiki Ueno</name>
<email>ueno@gnu.org</email>
</author>
<published>2015-07-27T07:19:52Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=028a0ef3336c5180797fb247448683195376c007'/>
<id>urn:sha1:028a0ef3336c5180797fb247448683195376c007</id>
<content type='text'>
* src/engine-assuan.c (llass_new): Don't treat ttyname_r error as
fatal.
* src/engine-g13.c (g13_new): Likewise.
* src/engine-gpg.c (gpg_new): Likewise.
* src/engine-gpgsm.c (gpgsm_new): Likewise.
* src/engine-uiserver.c (uiserver_new): Likewise.

--
Even though isatty() returns 1, ttyname_r() may fail in many ways, e.g.,
when /dev/pts is not accessible under chroot.  Since all our uses of
ttyname_r() require that the function works, we can treat the failure as
if isatty() fails.

Signed-off-by: Daiki Ueno &lt;ueno@gnu.org&gt;
</content>
</entry>
<entry>
<title>Add an export secret key feature.</title>
<updated>2015-08-24T10:41:24Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2015-08-24T10:41:24Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=2b632bbb78eee2b94c122f66d171a7c80e9c4fb0'/>
<id>urn:sha1:2b632bbb78eee2b94c122f66d171a7c80e9c4fb0</id>
<content type='text'>
* src/gpgme.h.in (GPGME_EXPORT_MODE_SECRET): New.
(GPGME_EXPORT_MODE_RAW): New.
(GPGME_EXPORT_MODE_PKCS12): New.
* src/export.c (export_start, export_ext_start): Allow new flags.
* src/engine-gpg.c (export_common): Support secret key export.
* src/engine-gpgsm.c (gpgsm_export, gpgsm_export_ext): Ditto.

* src/gpgme-tool.c (cmd_export): Add options --secret, --raw,
and --pkcs12.
* tests/run-export.c (main): Likewise.
--

Note that exporting secret X.509 keys requires GnuPG 2.1.8.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Also check the return code in gpg_sign().</title>
<updated>2015-08-12T10:46:43Z</updated>
<author>
<name>Ben Kibbey</name>
<email>bjk@luxsci.net</email>
</author>
<published>2015-08-12T10:46:43Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=e07d38f5f9f3b94e403f1265ff7fd3d7009dd557'/>
<id>urn:sha1:e07d38f5f9f3b94e403f1265ff7fd3d7009dd557</id>
<content type='text'>
* src/engine-gpg.c (gpg_sign): Check return value from start().
</content>
</entry>
<entry>
<title>Check the return value when starting gpg.</title>
<updated>2015-08-11T01:23:02Z</updated>
<author>
<name>Ben Kibbey</name>
<email>bjk@luxsci.net</email>
</author>
<published>2015-08-11T01:23:02Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=8f28e3caf95d7bc99e9271bfc2b44080166af31f'/>
<id>urn:sha1:8f28e3caf95d7bc99e9271bfc2b44080166af31f</id>
<content type='text'>
* src/engine-gpg.c (gpg_decrypt, gpg_delete, gpg_passwd): Check return
value of start().
</content>
</entry>
<entry>
<title>Add offline mode support for CMS keylisting</title>
<updated>2015-07-31T13:18:27Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2015-07-02T08:19:04Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=08086dd6901740e155e4361212b4e9cff8a47296'/>
<id>urn:sha1:08086dd6901740e155e4361212b4e9cff8a47296</id>
<content type='text'>
* doc/gpgme.texi: Document offline mode.
* src/context.h (gpgme_context): Add offline.
* src/engine-backend.h (keylist, keylist_ext): Add engine_flags.
* src/engine.c, src/engine.h (_gpgme_engine_op_keylist): Ditto.
  (_gpgme_engine_op_keylist_ext): Ditto.
* src/engine.h (GPGME_ENGINE_FLAG_OFFLINE): New.
* src/engine-gpg.c (gpg_keylist, gpg_keylist_ext): Ditto.
* src/engine-gpgsm.c (gpgsm_keylist): Handle engine_flags.
  (gpgsm_keylist_ext): Ditto.
* src/gpgme.c (gpgme_set_offline, gpgme_get_offline): New.
* src/gpgme.def (gpgme_set_offline, gpgme_get_offline): New.
* src/gpgme.h.in (gpgme_set_offline, gpgme_get_offline): New.
* src/libgpgme.vers (gpgme_set_offline, gpgme_get_offline): New.
* src/keylist.c (gpgme_op_keylist_start): Set offline flag.
  (gpgme_op_keylist_ext_start): Ditto.
* tests/run-keylist.c (show_usage, main): Add offline argument.

--
The offline engine option was introduced with gpgsm 2.1.6
it is mainly useful for a full keylisting that includes
the certificate validation but does not depend on external
information that could take an indefinite amount of time to
collect.

Signed-off-by: Andre Heinecke &lt;aheinecke@intevation.de&gt;
</content>
</entry>
<entry>
<title>Fix segv for userids with a backslash.</title>
<updated>2015-06-05T12:25:59Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2015-06-05T12:25:59Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=0d28a696163677d6b34a802b6beddecd805d0fc7'/>
<id>urn:sha1:0d28a696163677d6b34a802b6beddecd805d0fc7</id>
<content type='text'>
* src/engine-gpg.c (gpg_keylist_preprocess): Increment SRC for a
backslash.
--

This bug is not exploitable because this bug fills up .data with
backslashes and thus causes the segv.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Fix potential crash in trace macro.</title>
<updated>2015-03-16T12:40:34Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2015-03-16T12:40:34Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=8cfcdfe5564f87362e5ec1bfdca5c14aed9c45f0'/>
<id>urn:sha1:8cfcdfe5564f87362e5ec1bfdca5c14aed9c45f0</id>
<content type='text'>
* src/signers.c (gpgme_signers_add): Avoid deref of a NULL KEY in the
trace macro.
* src/engine-spawn.c (engspawn_release): Remove always true condition.
* src/engine-gpg.c (gpg_release): Ditto.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Use --no-sk-comments, not --no-sk-comment.</title>
<updated>2014-10-02T13:20:35Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2014-09-29T21:48:39Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=b3309f997c541d7150827a659bffc38bc9f685fe'/>
<id>urn:sha1:b3309f997c541d7150827a659bffc38bc9f685fe</id>
<content type='text'>
--
The --no-sk-comments flag is (or should be) a no-op in modern versions
of gnupg, but gpgme should still use its full form rather than the
(slightly) abbreviated --no-sk-comment
</content>
</entry>
<entry>
<title>Handle modern keyserver output which may emit the fingerprint.</title>
<updated>2014-08-12T16:47:39Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-08-12T08:36:30Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=3450bff52baef2c14118958cf79ead46940d58f0'/>
<id>urn:sha1:3450bff52baef2c14118958cf79ead46940d58f0</id>
<content type='text'>
* src/engine-gpg.c (read_colon_line): Split preprocessed lines.
(gpg_keylist_preprocess): Limit keyid field and print fingerprint.
</content>
</entry>
<entry>
<title>Add new keylist mode GPGME_KEYLIST_MODE_WITH_SECRET.</title>
<updated>2014-06-04T07:57:54Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-06-04T07:57:54Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=4dc9af24156b4fd52c7b76e7522b9b7a64e5386a'/>
<id>urn:sha1:4dc9af24156b4fd52c7b76e7522b9b7a64e5386a</id>
<content type='text'>
* src/gpgme.h.in (GPGME_KEYLIST_MODE_WITH_SECRET): New.
* src/engine-gpg.c (gpg_keylist_build_options): Handle new mode.
* src/engine-gpgsm.c (gpgsm_keylist, gpgsm_keylist_ext): Ditto.
* src/keylist.c (parse_sec_field15): Add arg key and take care of
--with-secret output.

* src/gpgme-tool.c (gt_get_keylist_mode, cmd_keylist_mode): Add
"with_secret".  Print card info and and secret flag for subkeys.
--

Note: This mode may only be used with GnuPG &gt;= 2.1.
</content>
</entry>
</feed>
