<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/doc/gpgme.texi, branch bjk/master</title>
<subtitle>GnuPG Made Easy.</subtitle>
<id>http://git.bktus.com/gpgfrontend/gpgme/atom?h=bjk%2Fmaster</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/gpgme/atom?h=bjk%2Fmaster'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/'/>
<updated>2014-10-16T01:34:10Z</updated>
<entry>
<title>Add gpgme_set_global_malloc_hooks().</title>
<updated>2014-10-16T01:34:10Z</updated>
<author>
<name>Ben Kibbey</name>
<email>bjk@luxsci.net</email>
</author>
<published>2014-10-10T13:02:09Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=aea2c168fc9c12148181dbcc33d7085aad8e6d90'/>
<id>urn:sha1:aea2c168fc9c12148181dbcc33d7085aad8e6d90</id>
<content type='text'>
* configure.ac: Remove check for vasprintf().
* doc/gpgme.texi: Add documentation.
* src/gpgme.h.in (gpgme_malloc_hooks,gpgme_malloc_hooks_t): New.
* src/gpgme.h.in (gpgme_set_global_malloc_hooks): New prototype.
* src/mem.c, src/mem.h: New.
* src/gpgme.c (gpgme_set_global_malloc_hooks): New.
* src/gpgme.def, src/libgpgme.vers: Add gpgme_set_global_malloc_hooks.
* src/vasprintf.c (vasprintf): Rename to _gpgme_vasprintf().
* src/vasprintf.c (asprintf): Rename to _gpgme_asprintf().
* src/Makefile.am: Add mem.c, mem.h and vasprintf.c to main_sources.
* src/assuan-support.c, src/ath-pthread.c, src/conversion.c,
src/data-compat.c, src/data-identify.c, src/data-mem.c, src/data.c,
src/debug.c, src/decrypt.c, src/dirinfo.c, src/encrypt.c,
src/engine-assuan.c, src/engine-g13.c, src/engine-gpg.c,
src/engine-gpgconf.c, src/engine-gpgsm.c, src/engine-spawn.c,
src/engine-uiserver.c, src/engine.c, src/export.c, src/genkey.c,
src/get-env.c, src/gpgme-w32spawn.c, src/gpgme.c, src/import.c,
src/key.c, src/keylist.c, src/op-support.c, src/passphrase.c,
src/posix-io.c, src/posix-util.c, src/progress.c, src/setenv.c,
src/sig-notation.c, src/sign.c, src/signers.c, src/trust-item.c,
src/trustlist.c, src/util.h, src/verify.c, src/version.c,
src/vfs-create.c, src/vfs-mount.c, src/w32-ce.c, src/w32-ce.h,
src/w32-glib-io.c, src/w32-io.c, src/w32-sema.c, src/w32-util.c,
src/wait-global.c, src/wait.c:
Change allocation functions: free() to _gpgme_free(), malloc() to
_gpgme_malloc(), calloc() to _gpgme_calloc(), realloc() to
_gpgme_realloc() and strdup() to _gpgme_strdup().

--
Mostly borrowed from libassuan for custom memory handling. This changes
vasprintf.c to implement _gpgme_asprintf() and _gpgme_vasprintf() and
will always use the built-in vasprintf() even when provided by the OS.
</content>
</entry>
<entry>
<title>build: Implement SYSROOT feature.</title>
<updated>2014-10-02T13:57:50Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-10-02T13:48:53Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=4027a0a89724df3aeef8a964c529548d724b6a5a'/>
<id>urn:sha1:4027a0a89724df3aeef8a964c529548d724b6a5a</id>
<content type='text'>
* configure.ac: Document SYSROOT.
* m4/gpg-error.m4: Update from libgpg-error master.
* src/gpgme.m4: Implement SYSROOT stuff.
</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>
<entry>
<title>Add field CURVE to the key info.</title>
<updated>2014-05-08T18:39:15Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-05-08T18:39:15Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=88f15336ec0eadde68ff2618349efb9006b8e801'/>
<id>urn:sha1:88f15336ec0eadde68ff2618349efb9006b8e801</id>
<content type='text'>
* src/gpgme.h.in (struct _gpgme_subkey): Add field CURVE.
* src/key.c (gpgme_key_unref): Free CURVE.
* src/keylist.c (keylist_colon_handler): Set CURVE.

* src/gpgme.c (gpgme_release): For failsafe reasons reset engine and
engine info after freeing.
--

The engine hack is useful in case the other release functions
accidently call engine release.
</content>
</entry>
<entry>
<title>Map public key algos returned by gpg to gpgme values.</title>
<updated>2014-05-08T12:11:58Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-05-08T12:03:14Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=d5fb92cdaed21eea2f1a921e4f11df72635a8462'/>
<id>urn:sha1:d5fb92cdaed21eea2f1a921e4f11df72635a8462</id>
<content type='text'>
* src/conversion.c (_gpgme_map_pk_algo): New.
* src/decrypt.c (parse_enc_to): Add arg PROTOCOL and map pubkey algo.
(_gpgme_decrypt_status_handler): Map pubkey algo.
* src/keylist.c (keylist_colon_handler): Map pubkey algo.
* src/sign.c (parse_sig_created): Add arg PROTOCOL and map pubkey
algo.
* src/verify.c (parse_new_sig): Ditto.
(parse_valid_sig): Ditto.

* src/gpgme.h.in (GPGME_PK_ECC): New.
(GPGME_MD_SHA224): New.
* src/gpgme.c (gpgme_pubkey_algo_name): Add GPGME_PK_ECC case.
(gpgme_hash_algo_name): Add GPGME_MD_SHA224.
--

This affects only the not yet released ECC code of GnuPG 2.1.
</content>
</entry>
<entry>
<title>Add GPGME_ENCRYPT_NO_COMPRESS flag.</title>
<updated>2014-05-08T09:31:30Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-05-08T09:31:30Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=991cde9e79fec70aad093ded383c5574d30f9388'/>
<id>urn:sha1:991cde9e79fec70aad093ded383c5574d30f9388</id>
<content type='text'>
* src/gpgme.h.in (GPGME_ENCRYPT_NO_COMPRESS): New.
* src/engine-gpg.c (gpg_encrypt, gpg_encrypt_sign): Implement it.
* src/gpgme-tool.c (_cmd_sign_encrypt): Add option --no-compress.
</content>
</entry>
<entry>
<title>Actually implement flags for gpgme_op_spawn.</title>
<updated>2014-04-10T12:17:19Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-04-10T12:17:19Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=d3bd8fff863f62b6d0e228aea754efbbde861e9a'/>
<id>urn:sha1:d3bd8fff863f62b6d0e228aea754efbbde861e9a</id>
<content type='text'>
* src/spawn.c (gpgme_op_spawn_start, gpgme_op_spawn): Pass FLAGS dow
to spawn_start and add FLAGS args along the call path.
* src/engine-spawn.c (engspawn_start): Hack to automagically provide
argv[0].
</content>
</entry>
<entry>
<title>Add GPGME_PROTOCOL_SPAWN and gpgme_op_spawn.</title>
<updated>2014-04-10T11:01:00Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-04-10T11:01:00Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=4f2d652e60700e03809307a10015ff9003ac3579'/>
<id>urn:sha1:4f2d652e60700e03809307a10015ff9003ac3579</id>
<content type='text'>
* src/gpgme.h.in (GPGME_PROTOCOL_SPAWN): New.
(GPGME_SPAWN_DETACHED, GPGME_SPAWN_ALLOW_SET_FG): New.
* src/gpgme.c (gpgme_set_protocol): Add new protocol.
(gpgme_get_protocol_name): Ditto.
* src/spawn.c: New.
* src/libgpgme.vers, src/gpgme.def: Add new public functions.
* src/engine-spawn.c: New.
* src/Makefile.am: Add new files.
* src/engine-backend.h (struct engine_ops): Add OPSPAWN.
* src/engine.c (engine_ops): Add _gpgme_engine_ops_spawn.
(gpgme_get_engine_info): Add Spawn to the list of protocols.
(_gpgme_engine_op_spawn): New.

* src/gpgme-tool.c (gt_protocol_from_name): Add new protocol.
(gt_spawn, cmd_spawn): New.
</content>
</entry>
<entry>
<title>Add gpgme_get_dirinfo.</title>
<updated>2014-04-10T09:48:20Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2014-04-10T09:47:19Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=77931a9a1468b0cfbaafd4153867d90764a6d258'/>
<id>urn:sha1:77931a9a1468b0cfbaafd4153867d90764a6d258</id>
<content type='text'>
* src/dirinfo.c (gpgme_get_dirinfo): New.
* tests/t-engine-info.c (main): Print results from that function.
</content>
</entry>
<entry>
<title>doc: Fix documentation of struct data types</title>
<updated>2014-03-05T07:16:20Z</updated>
<author>
<name>Daiki Ueno</name>
<email>ueno@gnu.org</email>
</author>
<published>2014-03-05T05:52:49Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=40938feb3f3393b0cdc6ec61ca2e77ff0b82c69a'/>
<id>urn:sha1:40938feb3f3393b0cdc6ec61ca2e77ff0b82c69a</id>
<content type='text'>
* gpgme.texi (Key Management): Document is_cardkey and card_number
members of gpgme_subkey_t.
(Decrypt): Remove description of the non-existent wrong_key_usage
member of gpgme_recipient_t.
(Verify): Document pka_address member of gpgme_signature_t.
(Creating a Signature): Add missing member names in
gpgme_new_signature_t.
(Registering I/O Callbacks): Fix reference of gpgme_io_cbs struct.
</content>
</entry>
</feed>
