[neon/forks/gpgme]: Summary of bulk changes made

KDE Git Services - Bulk Change null at kde.org
Mon Jun 24 02:08:42 BST 2024


Git repository change summary for neon/forks/gpgme
Pushed by carlosdem into branch 'Neon/release_jammy'.
Changed from 0000000000000000000000000000000000000000 to a3893341aeaa7095f3d81dadf4c25ce3bab829b5
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit a300f43aab50d8384c95b1fb3fee4d5e297c2b48 by Repo Admin on 27/10/2000 at 14:55..
New repository initialized by cvs2svn.
https://invent.kde.org/neon/forks/gpgme/-/commit/a300f43aab50d8384c95b1fb3fee4d5e297c2b48

Git commit 77fa0ec399821d49e6d4eac94b3cdb89fb351f28 by Werner Koch on 27/10/2000 at 14:55..
Starting project 'GnuPG Made Easy'
https://invent.kde.org/neon/forks/gpgme/-/commit/77fa0ec399821d49e6d4eac94b3cdb89fb351f28

Git commit 30ee22c7d2481dc6859db83ce089aaa1fbfd1448 by Werner Koch on 27/10/2000 at 17:26..
First prototypes
https://invent.kde.org/neon/forks/gpgme/-/commit/30ee22c7d2481dc6859db83ce089aaa1fbfd1448

Git commit 957169e5d4d910de1ca836eddf901008eded8d7f by Werner Koch on 27/10/2000 at 17:46..
*** empty log message ***
https://invent.kde.org/neon/forks/gpgme/-/commit/957169e5d4d910de1ca836eddf901008eded8d7f

Git commit 2f79a2c522057f0fff01e9beedf67f60570fba77 by Werner Koch on 27/10/2000 at 18:03..
*** empty log message ***
https://invent.kde.org/neon/forks/gpgme/-/commit/2f79a2c522057f0fff01e9beedf67f60570fba77

Git commit b9bf49968bf7318fb627a6e0d298b1efdad120a6 by Werner Koch on 07/11/2000 at 13:32..
Just a backup for now
https://invent.kde.org/neon/forks/gpgme/-/commit/b9bf49968bf7318fb627a6e0d298b1efdad120a6

Git commit 36966ea498fe145a81f284e21a66be54af4d30ad by Werner Koch on 09/11/2000 at 16:35..
Add verify function
https://invent.kde.org/neon/forks/gpgme/-/commit/36966ea498fe145a81f284e21a66be54af4d30ad

Git commit cbb513962a8440292746be6bcf451fb207f6b7b4 by Werner Koch on 10/11/2000 at 17:50..
Started with --list-key
https://invent.kde.org/neon/forks/gpgme/-/commit/cbb513962a8440292746be6bcf451fb207f6b7b4

Git commit f14941f072e35f2cd04a5733435bb0eeb8b7399f by Werner Koch on 10/11/2000 at 20:56..
keylist does now return objects.
https://invent.kde.org/neon/forks/gpgme/-/commit/f14941f072e35f2cd04a5733435bb0eeb8b7399f

Git commit e047a8a26334e1bedb308faaf31cade7fb6b5059 by Werner Koch on 13/11/2000 at 13:25..
Reanmed public functions
https://invent.kde.org/neon/forks/gpgme/-/commit/e047a8a26334e1bedb308faaf31cade7fb6b5059

Git commit 529b82f63861ed82630ab5253ee892c2c32d944d by Werner Koch on 15/11/2000 at 21:36..
Notation stuff added
https://invent.kde.org/neon/forks/gpgme/-/commit/529b82f63861ed82630ab5253ee892c2c32d944d

Git commit 7f8c3532e793512b52e1c07149668ec7c6d87a65 by Werner Koch on 16/11/2000 at 13:15..
Added decryption
https://invent.kde.org/neon/forks/gpgme/-/commit/7f8c3532e793512b52e1c07149668ec7c6d87a65

Git commit 3868237d9556dd984dca4acbb360244f1cfbe1f9 by Werner Koch on 16/11/2000 at 14:53..
Added sign functionality
https://invent.kde.org/neon/forks/gpgme/-/commit/3868237d9556dd984dca4acbb360244f1cfbe1f9

Git commit 08eaf1cea1da709b746f7b3f1b61415143188b05 by Werner Koch on 16/11/2000 at 17:26..
Released 0.0.0
https://invent.kde.org/neon/forks/gpgme/-/commit/08eaf1cea1da709b746f7b3f1b61415143188b05

Git commit fabce92fe3c2fc0a902db0f89d791bedb1c38c43 by Werner Koch on 17/11/2000 at 21:20..
configuration changes
https://invent.kde.org/neon/forks/gpgme/-/commit/fabce92fe3c2fc0a902db0f89d791bedb1c38c43

Git commit f9a167c516c8bf5f9dfc076fa51eb60dc96c86fb by Werner Koch on 20/11/2000 at 20:17..
Does some basic tasks.
https://invent.kde.org/neon/forks/gpgme/-/commit/f9a167c516c8bf5f9dfc076fa51eb60dc96c86fb

Git commit 6bf05e9c061796863724279637696becc382b8fd by Werner Koch on 22/11/2000 at 17:10..
Added some comments and prepared for W32 support
https://invent.kde.org/neon/forks/gpgme/-/commit/6bf05e9c061796863724279637696becc382b8fd

Git commit b7a7d9b9cc78e28718b73238e6b59f4f1eaa9971 by Werner Koch on 23/11/2000 at 15:28..
Now we are able to compile the W32 stuff - don't now whether it works; I have
no Windoze box here.
https://invent.kde.org/neon/forks/gpgme/-/commit/b7a7d9b9cc78e28718b73238e6b59f4f1eaa9971

Git commit 874f12ea700cc5f7dd256856a78701c8b19e415d by Werner Koch on 06/12/2000 at 12:17..
Okay, it runs at least on Windows 95
https://invent.kde.org/neon/forks/gpgme/-/commit/874f12ea700cc5f7dd256856a78701c8b19e415d

Git commit edcc338a593d703335a98f39a44ff26307927458 by Werner Koch on 12/12/2000 at 13:31..
Add a passphrase callback and minor changes to the interface
https://invent.kde.org/neon/forks/gpgme/-/commit/edcc338a593d703335a98f39a44ff26307927458

Git commit 715cf2aed334c99edad44af8f0507b080056f6ce by Werner Koch on 14/12/2000 at 14:45..
Add key import and export facility
https://invent.kde.org/neon/forks/gpgme/-/commit/715cf2aed334c99edad44af8f0507b080056f6ce

Git commit a92ecd447027258e2674719bc868cb064a747f94 by Werner Koch on 18/12/2000 at 20:54..
Add key generation
https://invent.kde.org/neon/forks/gpgme/-/commit/a92ecd447027258e2674719bc868cb064a747f94

Git commit 6b4ca13dd4b1d4ba5b3dca84257fda2fcac3d4b3 by Werner Koch on 19/12/2000 at 10:07..
Add progress CB and subkey listing
https://invent.kde.org/neon/forks/gpgme/-/commit/6b4ca13dd4b1d4ba5b3dca84257fda2fcac3d4b3

Git commit b08b3dd7e6853bee6f9ee5b791d693b98c6eb39b by Werner Koch on 19/12/2000 at 10:09..
Add missing jnlib directory
https://invent.kde.org/neon/forks/gpgme/-/commit/b08b3dd7e6853bee6f9ee5b791d693b98c6eb39b

Git commit c74adbc096171ceac522a6f8383194d70cc76865 by Werner Koch on 29/12/2000 at 10:34..
Add 2 missing files and other changes
https://invent.kde.org/neon/forks/gpgme/-/commit/c74adbc096171ceac522a6f8383194d70cc76865

Git commit d6cd1f97cab9cbb08560825444c1f848ac45f840 by Werner Koch on 08/01/2001 at 20:40..
More changes and and some new functions
https://invent.kde.org/neon/forks/gpgme/-/commit/d6cd1f97cab9cbb08560825444c1f848ac45f840

Git commit 96f67a5fdc92571b42febd8db833b5379dedb29d by Werner Koch on 11/01/2001 at 11:56..
Release 0.1.4
https://invent.kde.org/neon/forks/gpgme/-/commit/96f67a5fdc92571b42febd8db833b5379dedb29d

Git commit 38b1b13114c715f87cf9b165828279189087a2fd by Werner Koch on 18/01/2001 at 09:11..
Does now compile under MingW32/CPD 0.3
https://invent.kde.org/neon/forks/gpgme/-/commit/38b1b13114c715f87cf9b165828279189087a2fd

Git commit f408930cc067ae3150a679bc890d0559c0bc8df5 by Werner Koch on 18/01/2001 at 10:47..
Nicer W32 installation support
https://invent.kde.org/neon/forks/gpgme/-/commit/f408930cc067ae3150a679bc890d0559c0bc8df5

Git commit f2be4142516bcd9536884bb0e40e8bf561352bd4 by Werner Koch on 22/01/2001 at 20:22..
Some new but untested functions
https://invent.kde.org/neon/forks/gpgme/-/commit/f2be4142516bcd9536884bb0e40e8bf561352bd4

Git commit e318473836e3a3231fe0213d9e6b0a47ac816171 by Werner Koch on 30/01/2001 at 11:01..
Add better debug printing.  Use reader threads for W32
https://invent.kde.org/neon/forks/gpgme/-/commit/e318473836e3a3231fe0213d9e6b0a47ac816171

Git commit 2e693f612d874133666f93f3ec0572d9a31eb96b by Werner Koch on 30/01/2001 at 11:10..
Add missing demo keys
https://invent.kde.org/neon/forks/gpgme/-/commit/2e693f612d874133666f93f3ec0572d9a31eb96b

Git commit ca34d81b5932fd017baa83927cd09fc98f9b14b8 by Werner Koch on 30/01/2001 at 11:24..
W32 fix
https://invent.kde.org/neon/forks/gpgme/-/commit/ca34d81b5932fd017baa83927cd09fc98f9b14b8

Git commit 83dd53ffe186129b29ebcb4293c42226fc9710f4 by Werner Koch on 30/01/2001 at 12:06..
Ugly kludge to avoid blocking in W32's _gpgme_io_write
https://invent.kde.org/neon/forks/gpgme/-/commit/83dd53ffe186129b29ebcb4293c42226fc9710f4

Git commit b88be99c6d0fddeceed0e46a7c8387768fac3ae9 by Werner Koch on 30/01/2001 at 14:18..
Maybe the signers code does work now
https://invent.kde.org/neon/forks/gpgme/-/commit/b88be99c6d0fddeceed0e46a7c8387768fac3ae9

Git commit 75cd8aeaa82bcf37f55bd301bcf091cfb663e977 by Werner Koch on 30/01/2001 at 14:46..
Removed files which are build by scripts
https://invent.kde.org/neon/forks/gpgme/-/commit/75cd8aeaa82bcf37f55bd301bcf091cfb663e977

Git commit 9db5d05376cc23a8bfecd31aaef61e716363b3ad by Werner Koch on 30/01/2001 at 16:00..
Lookup the path in the Registry
https://invent.kde.org/neon/forks/gpgme/-/commit/9db5d05376cc23a8bfecd31aaef61e716363b3ad

Git commit 3a8df5d4692351ae0c37a0a36bd93e3d8e50119e by Werner Koch on 30/01/2001 at 17:11..
slash/backslash conversion
https://invent.kde.org/neon/forks/gpgme/-/commit/3a8df5d4692351ae0c37a0a36bd93e3d8e50119e

Git commit 6e9b15d7ed5ee3d5340f2d9bb2886caeac1883ae by Werner Koch on 30/01/2001 at 17:36..
Fixed version string and W32 spawn function
https://invent.kde.org/neon/forks/gpgme/-/commit/6e9b15d7ed5ee3d5340f2d9bb2886caeac1883ae

Git commit 1316aed172b1b4e2921533b64cfa74eafd663c12 by Werner Koch on 30/01/2001 at 18:03..
Made gpgme_cancel work - at least a little bit.
https://invent.kde.org/neon/forks/gpgme/-/commit/1316aed172b1b4e2921533b64cfa74eafd663c12

Git commit 1648829c39f793a22b3fd896fbf63ff7bc1e4f67 by Werner Koch on 31/01/2001 at 12:39..
Fixed W32 bugs and one major bug which swallowed up some output.
https://invent.kde.org/neon/forks/gpgme/-/commit/1648829c39f793a22b3fd896fbf63ff7bc1e4f67

Git commit 6bbbad60f26b977fee2dcb77e415d0b26f33965d by Werner Koch on 01/02/2001 at 09:25..
Possible fix for NT and segv fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/6bbbad60f26b977fee2dcb77e415d0b26f33965d

Git commit 06dae7fcf3dd7c4209b52520d5c14d04b1ff3214 by Werner Koch on 12/02/2001 at 15:23..
Multiple signatures can now be verified.
https://invent.kde.org/neon/forks/gpgme/-/commit/06dae7fcf3dd7c4209b52520d5c14d04b1ff3214

Git commit a3b341ff4575a8ba6397ddd8ebc12ed1ba33df52 by Werner Koch on 13/02/2001 at 12:46..
Add some debugging code
https://invent.kde.org/neon/forks/gpgme/-/commit/a3b341ff4575a8ba6397ddd8ebc12ed1ba33df52

Git commit 962bb6af1088a8d4c256f4ba55a4ccdce424b78c by Werner Koch on 13/02/2001 at 15:00..
reap off gpg processes
https://invent.kde.org/neon/forks/gpgme/-/commit/962bb6af1088a8d4c256f4ba55a4ccdce424b78c

Git commit 04e0ea083aae051509b1fbd102dd3c4f236d8e11 by Werner Koch on 14/02/2001 at 19:42..
W32 fixes
https://invent.kde.org/neon/forks/gpgme/-/commit/04e0ea083aae051509b1fbd102dd3c4f236d8e11

Git commit 7bd07d62f3d89c037f255478327a577a737f01b5 by Werner Koch on 19/02/2001 at 17:22..
FD are now released and a major bug has been fixed.
The W32 version does not compile at the meoment.
https://invent.kde.org/neon/forks/gpgme/-/commit/7bd07d62f3d89c037f255478327a577a737f01b5

Git commit 72af6e53496ef39e302784828384de8a42839f6d by Werner Koch on 20/02/2001 at 13:31..
Reworked the process code.
https://invent.kde.org/neon/forks/gpgme/-/commit/72af6e53496ef39e302784828384de8a42839f6d

Git commit be28316c352241a4becba6e2a4f661ba5ce0f57a by Werner Koch on 28/02/2001 at 10:18..
Use a writer thread under W32 (arggg)
https://invent.kde.org/neon/forks/gpgme/-/commit/be28316c352241a4becba6e2a4f661ba5ce0f57a

Git commit ca12983e7c751204ac90f2ea828fe9f321dce73c by Werner Koch on 13/03/2001 at 20:17..
Add a few key flags - needs the lates CVS gpg
https://invent.kde.org/neon/forks/gpgme/-/commit/ca12983e7c751204ac90f2ea828fe9f321dce73c

Git commit 10b3a86f83cfcfdeb492cf94b7464071932108fc by Werner Koch on 14/03/2001 at 13:51..
Fixed syntax error
https://invent.kde.org/neon/forks/gpgme/-/commit/10b3a86f83cfcfdeb492cf94b7464071932108fc

Git commit 5b561c2f11249624dd7fac5dcbd3ed4b69512a48 by Werner Koch on 15/03/2001 at 13:09..
Give access to key capabilities
https://invent.kde.org/neon/forks/gpgme/-/commit/5b561c2f11249624dd7fac5dcbd3ed4b69512a48

Git commit bf6779bf7408dcfa67cc5cdd78590c31878b0035 by Werner Koch on 02/04/2001 at 08:40..
Release 0.2.1
https://invent.kde.org/neon/forks/gpgme/-/commit/bf6779bf7408dcfa67cc5cdd78590c31878b0035

Git commit 1b8715e9e5a0f718e899c551b0fe50b557e3dce2 by AnonCVS on 12/04/2001 at 11:21..
test
https://invent.kde.org/neon/forks/gpgme/-/commit/1b8715e9e5a0f718e899c551b0fe50b557e3dce2

Git commit ba1a1ec381da0985ff1c7e8ecba97ef5722105cc by Werner Koch on 12/04/2001 at 13:38..
Reverted change
https://invent.kde.org/neon/forks/gpgme/-/commit/ba1a1ec381da0985ff1c7e8ecba97ef5722105cc

Git commit 1a3db20121fb7914fd4dc2c13681b4322e86c497 by Werner Koch on 19/04/2001 at 12:18..
Adjusted for changes --fixed-list-mode in 1.0.4h
https://invent.kde.org/neon/forks/gpgme/-/commit/1a3db20121fb7914fd4dc2c13681b4322e86c497

Git commit 4c76d6dce1113750f220e9730b83efc7329668bb by Werner Koch on 28/05/2001 at 17:35..
Changes by Jose and Tommy.
https://invent.kde.org/neon/forks/gpgme/-/commit/4c76d6dce1113750f220e9730b83efc7329668bb

Git commit c3850ce3323b33b8ef348aa097918577b2507fb2 by Werner Koch on 12/06/2001 at 07:37..
Ready to release 0.2.2
https://invent.kde.org/neon/forks/gpgme/-/commit/c3850ce3323b33b8ef348aa097918577b2507fb2

Git commit c898d18ad8c653657cf45238f46df47aacdc0993 by Werner Koch on 16/06/2001 at 11:08..
Timos fixes
https://invent.kde.org/neon/forks/gpgme/-/commit/c898d18ad8c653657cf45238f46df47aacdc0993

Git commit 8c4d2ca60968377bbfa587ec0dd7bfd17e5baae8 by Werner Koch on 30/07/2001 at 17:46..
Encryption basically works.
Removed system specific files becuase they are now part of Mingw32/CPD
https://invent.kde.org/neon/forks/gpgme/-/commit/8c4d2ca60968377bbfa587ec0dd7bfd17e5baae8

Git commit 6ccc42c489bc12d3639bfecd7cfd766fa96eacaf by Werner Koch on 31/07/2001 at 09:44..
Does not manage lifetime
https://invent.kde.org/neon/forks/gpgme/-/commit/6ccc42c489bc12d3639bfecd7cfd766fa96eacaf

Git commit 7442e8df460dcd41fcf68bbaff86984558620b77 by Werner Koch on 31/07/2001 at 12:25..
Added 2 examples
https://invent.kde.org/neon/forks/gpgme/-/commit/7442e8df460dcd41fcf68bbaff86984558620b77

Git commit ec8c9d9494494656b2618ecfc43ec485dc931ec4 by Werner Koch on 31/07/2001 at 15:21..
A couple of minor changes and a short README for Gpgcom
https://invent.kde.org/neon/forks/gpgme/-/commit/ec8c9d9494494656b2618ecfc43ec485dc931ec4

Git commit 15a2926eb96fc83f9da64fc9188f5203d2ec7ddd by Werner Koch on 01/08/2001 at 10:31..
missing file
https://invent.kde.org/neon/forks/gpgme/-/commit/15a2926eb96fc83f9da64fc9188f5203d2ec7ddd

Git commit a3675dd4af3964bae37eb85093df253c0a50e85f by Werner Koch on 01/08/2001 at 13:37..
one more file
https://invent.kde.org/neon/forks/gpgme/-/commit/a3675dd4af3964bae37eb85093df253c0a50e85f

Git commit 6c7ce7551dbcee46d4b69ea6e71934d36a006bd9 by Werner Koch on 28/08/2001 at 11:11..
Typo fixes and new gpgme_get_op_info
https://invent.kde.org/neon/forks/gpgme/-/commit/6c7ce7551dbcee46d4b69ea6e71934d36a006bd9

Git commit 5ad992b6aa0faa7ec1e7a65b84dc0aa321b381f6 by Werner Koch on 29/08/2001 at 10:46..
Fixed long standing listing bug.
https://invent.kde.org/neon/forks/gpgme/-/commit/5ad992b6aa0faa7ec1e7a65b84dc0aa321b381f6

Git commit 5b3d8162b493332971c00b21aa0ac67faa4ff85f by Werner Koch on 03/09/2001 at 18:41..
Some changes
https://invent.kde.org/neon/forks/gpgme/-/commit/5b3d8162b493332971c00b21aa0ac67faa4ff85f

Git commit 92ca22fe6ba84dc5492a186207bb46be03f0bab2 by Werner Koch on 07/09/2001 at 12:47..
added new status messages
https://invent.kde.org/neon/forks/gpgme/-/commit/92ca22fe6ba84dc5492a186207bb46be03f0bab2

Git commit 0bc8c1c7e19af5446edbf6175718975699fda85f by Werner Koch on 17/09/2001 at 08:25..
Added more doc entries and prepared for 0.2.3
https://invent.kde.org/neon/forks/gpgme/-/commit/0bc8c1c7e19af5446edbf6175718975699fda85f

Git commit b4eddd304269da30d29fc1a272237e706773ea2e by Werner Koch on 17/09/2001 at 10:36..
Fixed a keylisting bug
https://invent.kde.org/neon/forks/gpgme/-/commit/b4eddd304269da30d29fc1a272237e706773ea2e

Git commit ab7fa2c4602184cbbebd442f41f53645b592a682 by Werner Koch on 17/09/2001 at 10:40..
oops - have to thank someone else
https://invent.kde.org/neon/forks/gpgme/-/commit/ab7fa2c4602184cbbebd442f41f53645b592a682

Git commit 9e7db481a6446a64c115d8e938887a1ff0262c42 by Werner Koch on 15/10/2001 at 12:19..
New API to switch to S/MIME.  There is no code yet behind it.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e7db481a6446a64c115d8e938887a1ff0262c42

Git commit 96a64f6b80d9a47b30d93136c8a49a9fdcc5283e by Marcus Brinkmann on 17/10/2001 at 19:13..
2001-10-17  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_set_protocol): Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/96a64f6b80d9a47b30d93136c8a49a9fdcc5283e

Git commit f83651e0a586f462cac19fd981f6579d082ce999 by Marcus Brinkmann on 17/10/2001 at 19:17..
2001-10-16  Marcus Brinkmann  <marcus at g10code.de>

	* t-version.c: New file.
	* t-data.c: Likewise.
	* t-data-1.txt: Likewise.
	* t-data-2.txt: Likewise.
	* Makefile.am (TESTS): Add t-version, t-data.
https://invent.kde.org/neon/forks/gpgme/-/commit/f83651e0a586f462cac19fd981f6579d082ce999

Git commit ddcf6a97ee8fa9f64b38ec78339bef932e92dd10 by Marcus Brinkmann on 22/10/2001 at 12:24..
Fix version number dependency.
https://invent.kde.org/neon/forks/gpgme/-/commit/ddcf6a97ee8fa9f64b38ec78339bef932e92dd10

Git commit 901bb49285a23f6b3cfb6597dc9d4d300f905430 by Marcus Brinkmann on 22/10/2001 at 12:50..
2001-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (INCLUDES): Remove spurious duplicate to silence
	automake.
https://invent.kde.org/neon/forks/gpgme/-/commit/901bb49285a23f6b3cfb6597dc9d4d300f905430

Git commit 2e9b689299ae08be2c02b64f63ed99b1f3fe03b2 by Marcus Brinkmann on 22/10/2001 at 14:18..
2001-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* data.c (_gpgme_data_append): Check if LENGTH is smaller than
	ALLOC_CHUNK, not DH->length.
https://invent.kde.org/neon/forks/gpgme/-/commit/2e9b689299ae08be2c02b64f63ed99b1f3fe03b2

Git commit d4fb115bda4a870ad0b28c6fec34814ff07ad115 by Marcus Brinkmann on 22/10/2001 at 14:19..
2001-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* t-data.c (write_test): New function.
	(main): Invoke write_test for all rounds except TEST_OUT_CB.
https://invent.kde.org/neon/forks/gpgme/-/commit/d4fb115bda4a870ad0b28c6fec34814ff07ad115

Git commit 4691a5e940541b3fe8c78102e96caa9c8ae398e4 by Marcus Brinkmann on 22/10/2001 at 15:39..
2001-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (TEST_ENVIRONMENT): Set environment to $(srcdir),
	not current directory.
https://invent.kde.org/neon/forks/gpgme/-/commit/4691a5e940541b3fe8c78102e96caa9c8ae398e4

Git commit 44ba56ca730b13d8573fb16da0aa5a68cff0008c by Marcus Brinkmann on 22/10/2001 at 15:39..
2001-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* autogen.sh: Invoke automake with `-a' (add missing files).
	Do not invoke configure.
https://invent.kde.org/neon/forks/gpgme/-/commit/44ba56ca730b13d8573fb16da0aa5a68cff0008c

Git commit 3b4136abcd16ba7311aa3607ef5757c18c0eda38 by Marcus Brinkmann on 22/10/2001 at 15:44..
FIx last change (grr, didn't want to check in the version I checked in).
https://invent.kde.org/neon/forks/gpgme/-/commit/3b4136abcd16ba7311aa3607ef5757c18c0eda38

Git commit cb90fee79de06339389d4ea8f661316872385fdc by Marcus Brinkmann on 22/10/2001 at 17:31..
2001-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (TEST_ENVIRONMENT): Revert last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/cb90fee79de06339389d4ea8f661316872385fdc

Git commit 8b12f7c763dd3a18476f61976b7cee1d6b4aad09 by Werner Koch on 23/10/2001 at 10:56..
Merged with old ChnageLog which accidently was not in the CVS
https://invent.kde.org/neon/forks/gpgme/-/commit/8b12f7c763dd3a18476f61976b7cee1d6b4aad09

Git commit 4a8042beae8a5fe0575bd6df161a216e1e5fc4e8 by Werner Koch on 23/10/2001 at 11:04..
Added these small tools
https://invent.kde.org/neon/forks/gpgme/-/commit/4a8042beae8a5fe0575bd6df161a216e1e5fc4e8

Git commit c3e7053489df648dfccf9bb4146c374aa229b483 by Marcus Brinkmann on 29/10/2001 at 00:08..
gpgme/
2001-10-29  Marcus Brinkmann  <marcus at g10code.de>

	* context.h: New member signers_len.  * signers.c
	(gpgme_signers_clear): Require that signers are non-NULL with
	assertion.  Use signers_len to determine how much keys to release.
	Add documentation.
	(gpgme_signers_add): Use signers_len to determine if the buffer is
	large enough.  Use xtryrealloc rather than xtrymalloc and copying.
	Add documentation.
	(gpgme_signers_enum): Use signers_len to determine if key is
	available.  Add documentation.

tests/
2001-10-29  Marcus Brinkmann  <marcus at g10code.de>

	* t-signers.c: New file.
	* Makefile.am (TESTS): Add t-signers.
https://invent.kde.org/neon/forks/gpgme/-/commit/c3e7053489df648dfccf9bb4146c374aa229b483

Git commit deaea7bdec904701dd2e0a260737c4bae103afd2 by Marcus Brinkmann on 29/10/2001 at 00:08..
Fix formatting.
https://invent.kde.org/neon/forks/gpgme/-/commit/deaea7bdec904701dd2e0a260737c4bae103afd2

Git commit 7e53360206097d14a330835b894b156cfff60d92 by Marcus Brinkmann on 02/11/2001 at 15:23..
2001-11-01  Marcus Brinkmann  <marcus at g10code.de>

	* logging.c (log_printf): Do not initialize ARG_PTR with 0, we
	don't know the correct type.  Instead, run va_start and va_end
	unconditionally.
	Reported by Jose Carlos Garcia Sogo <jsogo at debian.org>.
https://invent.kde.org/neon/forks/gpgme/-/commit/7e53360206097d14a330835b894b156cfff60d92

Git commit 1ecdde3ced1e584039ae5bc0c03b0641b3e6ef7d by Marcus Brinkmann on 02/11/2001 at 15:51..
gpgme/
2001-11-02  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (pipemode_copy): Change type of NBYTES to size_t.

	* key.c: Include string.h.
	* data.c: Likewise.
	* recipient.c: Likewise.

tests/
2001-11-02  Marcus Brinkmann  <marcus at g10code.de>

	* t-data.c: Include stddef.h.
	(read_once_test): Change type of READ to size_t.
	(read_test): Likewise.
	(write_test): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ecdde3ced1e584039ae5bc0c03b0641b3e6ef7d

Git commit 49a25a82e25dfa9cba3c56522bf905353591635a by Marcus Brinkmann on 11/11/2001 at 18:54..
2001-11-11  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_release): Release GPG->cmd.cb_data.
	Release all members of the list GPG->arglist.
	Reported by Michael Schmidt <mschmidt at cs.uni-sb.de>.
https://invent.kde.org/neon/forks/gpgme/-/commit/49a25a82e25dfa9cba3c56522bf905353591635a

Git commit 9144124a610015d3ef17e59828cdcca84d18ab39 by Marcus Brinkmann on 15/11/2001 at 21:32..
2001-11-15  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (_gpgme_release_verify_result): Rename RES to RESULT.
	Rename R2 to NEXT_RESULT.
	(intersect_stati): Rename RES to RESULT.
	(gpgme_get_sig_status): Likewise.  Do not check return_type, but
	the member verify of result.
	(gpgme_get_sig_key): Likewise.

	* sign.c (_gpgme_release_sign_result): Rename RES to RESULT.  If
	RESULT is zero, return.
	(sign_status_handler, command_handler): Do not check return_type,
	but the member sign of result.
	(gpgme_op_sign): Likewise.  Drop assertion.

	* encrypt.c (_gpgme_release_encrypt_result): Rename RES to RESULT.
	If RESULT is zero, return.
	(encrypt_status_handler): Do not check return_type, but the member
	encrypt of result.
	(gpgme_op_encrypt): Likewise.  Drop assertion.

	* decrypt.c (_gpgme_release_decrypt_result): Rename RES to RESULT.
	(create_result_struct): Do not set result_type.
	(command_handler, decrypt_status_handler): Do not check
	return_type, but the member decrypt of result.
	(gpgme_op_decrypt): Likewise.  Drop assertion.

	* context.h (enum ResultType): Removed.
	(struct gpgme_context_s): Remove member result_type.
	(struct result): Replaces union result.
	* gpgme.c: Include string.h.
	(_gpgme_release_result): Release all members of c->result, which
	is now a struct.  Zero out all members of the struct afterwards.
https://invent.kde.org/neon/forks/gpgme/-/commit/9144124a610015d3ef17e59828cdcca84d18ab39

Git commit 4374f7c57f4f9790c023d1ab892a28f6578d6ae7 by Marcus Brinkmann on 15/11/2001 at 21:57..
2001-11-15  Marcus Brinkmann  <marcus at g10code.de>

	* decrypt.c (command_handler): Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/4374f7c57f4f9790c023d1ab892a28f6578d6ae7

Git commit 550bc31b44b631368af398fb083f55bc2ffdae6b by Marcus Brinkmann on 16/11/2001 at 00:20..
2001-11-16  Marcus Brinkmann  <marcus at g10code.de>

	* passphrase.c: New file.
	* Makefile.am (libgpgme_la_SOURCES): Add passphrase.c.
	* ops.h (_gpgme_passphrase_result): Add prototypes from
	passphrase.c.
	* types.h: Likewise.
	* context.h: Add member passphrase to result.
	* gpgme.c (_gpgme_release_result): Release passphrase member.

	* decrypt.c: Some formatting and variable name changes (like
	CTX instead C).
	(struct decrypt_result_s): Remove members now found in
	passphrase result.
	(_gpgme_release_decrypt_result): Don't release removed members.
	(decrypt_status_handler): Call _gpgme_passphrase_status_handler,
	and don't handle the cases catched there.
	(command_handler): Removed.
	(gpgme_op_decrypt_start): Don't set command handler, but invoke
	_gpgme_passphrase_start which does it.
	(gpgme_op_decrypt): Invoke _gpgme_passphrase_result and drop the
	cases covered by it.

	* sign.c Some formatting and variable name changes (like
	CTX instead C).
	(struct sign_result_s): Remove members now found in
	passphrase result.
	(_gpgme_release_sign_result): Don't release removed members.
	(sign_status_handler): Call _gpgme_passphrase_status_handler,
	and don't handle the cases catched there.
	(command_handler): Removed.
	(gpgme_op_sign_start): Don't set command handler, but invoke
	_gpgme_passphrase_start which does it.
	(gpgme_op_sign): Invoke _gpgme_passphrase_result and drop the
	cases covered by it.
https://invent.kde.org/neon/forks/gpgme/-/commit/550bc31b44b631368af398fb083f55bc2ffdae6b

Git commit d65c4b72d98de7bbac98e3058d2a0ab113cc8836 by Marcus Brinkmann on 16/11/2001 at 01:37..
gpgme/
2001-11-16  Marcus Brinkmann  <marcus at g10code.de>

	* decrypt-verify.c: New file.
	* Makefile.am (libgpgme_la_SOURCES): Add decrypt-verify.c.
	* types.h: Add decrypt-verify types.
	* ops.h: Likewise.
	* context.h: Add result type for decrypt-verify.
	* gpgme.h: Add decrypt-verify prototypes.

	* decrypt.c (decrypt_status_handler): Renamed to ...
	(_gpgme_decrypt_status_handler): ... this.  Make non-static.
	(_gpgme_decrypt_start): New function, derived from
	gpgme_op_decrypt_start.
	(gpgme_op_decrypt_start): Reimplement in terms of
	_gpgme_decrypt_start.
	(_gpgme_decrypt_result): New function to retrieve error value.
	(gpgme_op_decrypt): Use _gpgme_decrypt_result.
	* ops.h: Add prototypes for new functions.

	* verify.c (verify_status_handler): Renamed to ...
	(_gpgme_verify_status_handler): ... this.  Make non-static.
	(gpgme_op_verify_start): Use new function name.
	(intersect_stati): Renamed to ...
	(_gpgme_intersect_stati): ... this.  Make non-static.
	(gpgme_op_verify): Use new name.
	* ops.h: Add prototypes for new functions.

tests/
2001-11-16  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (TESTS): Add t-decrypt-verify.
	* t-decrypt-verify.c: New file.
	* cipher-2.asc: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/d65c4b72d98de7bbac98e3058d2a0ab113cc8836

Git commit 3d97e032f8227db62140600e480db84ac352838c by Marcus Brinkmann on 16/11/2001 at 01:44..
* TODO: Remove obsolete items, categorize another.

	* NEWS: Add new feature decrypt-verify.
https://invent.kde.org/neon/forks/gpgme/-/commit/3d97e032f8227db62140600e480db84ac352838c

Git commit 590bd5a7d88cb8aa21bae45789fb321136e4820a by Marcus Brinkmann on 16/11/2001 at 12:13..
Fix small error.
https://invent.kde.org/neon/forks/gpgme/-/commit/590bd5a7d88cb8aa21bae45789fb321136e4820a

Git commit 1a9da605ad2f801324342b68b49aa8aebefc2c27 by Marcus Brinkmann on 18/11/2001 at 03:31..
2001-11-18  Marcus Brinkmann  <marcus at g10code.de>

	* configure.in: Renamed to ...
	* configure.ac: ... this.  Update to autoconf 2.52.  Lots of small
	changes in the transition.  Support --with-gpg=PATH and
	--with-gpgsm=PATH options.  Check if test suites can be run.
	* acconfig.h: Add GPGSM_PATH.
	* Makefile.am: New variable `tests', set to `tests' if
	RUN_GPG_TESTS.
	(SUBDIRS): Replace string `tests' with variable `tests'.

gpgme/
2001-11-18  Marcus Brinkmann  <marcus at g10code.de>

	* configure.in: Renamed to ...
	* configure.ac: ... this.  Update to autoconf 2.52.  Lots of small
	changes in the transition.  Support --with-gpg=PATH and
	--with-gpgsm=PATH options.  Check if test suites can be run.
	* acconfig.h: Add GPGSM_PATH.
	* Makefile.am: New variable `tests', set to `tests' if
	RUN_GPG_TESTS.
	(SUBDIRS): Replace string `tests' with variable `tests'.
https://invent.kde.org/neon/forks/gpgme/-/commit/1a9da605ad2f801324342b68b49aa8aebefc2c27

Git commit bf2b24ae113d2a6565db58e27e9560a0e91c039b by Marcus Brinkmann on 20/11/2001 at 04:02..
2001-11-20  Marcus Brinkmann  <marcus at g10code.de>

	* version.c: Remove global variables lineno and
	tmp_engine_version.
	(version_handler): Removed.
	(_gpgme_get_program_version): New function.
	(get_engine_info): Don't use context and version_handler,
	but _gpgme_get_program_version.
	* ops.h (_gpgme_get_program_version): Add prototype for
	_gpgme_get_program_version (we expect to use it elsewhere soon).
https://invent.kde.org/neon/forks/gpgme/-/commit/bf2b24ae113d2a6565db58e27e9560a0e91c039b

Git commit a1acb1d69a583b0b595e7c766123f8e547f061a8 by Marcus Brinkmann on 20/11/2001 at 04:02..
2001-11-20  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (NEED_GPGSM_VERSION): New variable.  Treat it
	similarly to NEED_GPGSM_VERSION.
	* acconfig.h: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/a1acb1d69a583b0b595e7c766123f8e547f061a8

Git commit a441158cc77391ba8857928f01fd20ac1569ad85 by Marcus Brinkmann on 20/11/2001 at 05:27..
2001-11-20  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (SUBDIRS): Support building the assuan library
	(currently if GPGSM_PATH is set)..
	* configure.ac: Support building the assuan library.
	* assuan: New directory, populated with the Assuan library
	(copied from the newpg repository).

gpgme/
2001-11-20  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_INCLUDES): Remove obsolete directive.
	(AM_CPPFLAGS): New directive [BUILD_ASSUAN].
	(libgpgme_la_LIBADD): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/a441158cc77391ba8857928f01fd20ac1569ad85

Git commit ad428df905444b0a269057d89640d0511e8bdf4f by Marcus Brinkmann on 20/11/2001 at 06:01..
2001-11-20  Marcus Brinkmann  <marcus at g10code.de>

	* types.h: Add types EngineObject and GpgsmObject.

	* Makefile.am (libgpgme_la_SOURCES): Add engine-gpgsm.h,
	engine-gpgsm.c, engine.h and engine.c.
	* engine.h: New file.
	* engine.c: Likewise.
	* engine-gpgsm.h: Likewise.
	* engine-gpgsm.c: Likewise.

	* rungpg.c (_gpgme_gpg_get_version): New function.
	(_gpgme_gpg_check_version): Likewise.
	* rungpg.h: Add prototypes for _gpgme_gpg_get_version and
	_gpgme_gpg_check_version.

	* version.c (compare_versions): Rename to ...
	(_gpgme_compare_versions): ... this.  Make non-static.
	(gpgme_check_version): Use _gpgme_compare_versions rather than
	compare_versions.
	(gpgme_check_engine): Likewise.
	* ops.h (_gpgme_get_program_version): Add prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/ad428df905444b0a269057d89640d0511e8bdf4f

Git commit 4d3ab72fe5d24f2ee4c1d56ed7d58ac915a6c4f8 by Marcus Brinkmann on 20/11/2001 at 06:03..
remove some CVS conflict cruft
https://invent.kde.org/neon/forks/gpgme/-/commit/4d3ab72fe5d24f2ee4c1d56ed7d58ac915a6c4f8

Git commit 38c00b4b323eaccf130e6d06cce5a55c1201584f by Marcus Brinkmann on 20/11/2001 at 06:04..
2001-11-20  Marcus Brinkmann  <marcus at g10code.de>

	* types.h: Add types EngineObject and GpgsmObject.

	* Makefile.am (libgpgme_la_SOURCES): Add engine-gpgsm.h,
	engine-gpgsm.c, engine.h and engine.c.
	* engine.h: New file.
	* engine.c: Likewise.
	* engine-gpgsm.h: Likewise.
	* engine-gpgsm.c: Likewise.

	* rungpg.c (_gpgme_gpg_get_version): New function.
	(_gpgme_gpg_check_version): Likewise.
	* rungpg.h: Add prototypes for _gpgme_gpg_get_version and
	_gpgme_gpg_check_version.

	* version.c (compare_versions): Rename to ...
	(_gpgme_compare_versions): ... this.  Make non-static.
	(gpgme_check_version): Use _gpgme_compare_versions rather than
	compare_versions.
	(gpgme_check_engine): Likewise.
	* ops.h (_gpgme_get_program_version): Add prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/38c00b4b323eaccf130e6d06cce5a55c1201584f

Git commit da95ecfc2c8d9340371c77b7f0c35736b110c839 by Marcus Brinkmann on 21/11/2001 at 03:40..
2001-11-21  Marcus Brinkmann  <marcus at g10code.de>

	* context.h: Do not include rungpg.h, but engine.h.
	(struct gpgme_context_s): Replace member gpg with engine.
	* gpgme.c (gpgme_release): Release engine, not gpg.

	* recipient.c (_gpgme_append_gpg_args_from_recifgpients): Function
	moved ...
	* rungpg.c (_gpgme_append_gpg_args_from_recipients): ... here.
	Make static, change order of arguments, and return an error value.
	* ops.h (_gpgme_append_gpg_args_from_recipients): Removed prototype.

	* rungpg.h (_gpgme_gpg_op_verify): Add prototype.
	(_gpgme_gpg_op_encrypt): Likewise.
	(_gpgme_gpg_op_decrypt): Likewise.
	(_gpgme_gpg_op_delete): Likewise.
	(_gpgme_gpg_op_export): Likewise.
	(_gpgme_gpg_op_genkey): Likewise.
	(_gpgme_gpg_op_import): Likewise.
	(_gpgme_gpg_op_keylist): Likewise.
	(_gpgme_gpg_op_sign): Likewise.
	(_gpgme_gpg_op_trustlist): Likewise.
	* rungpg.c (_gpgme_gpg_op_verify): New function.
	(_gpgme_gpg_op_encrypt): Likewise.
	(_gpgme_gpg_op_decrypt): Likewise.
	(_gpgme_gpg_op_delete): Likewise.
	(_gpgme_gpg_op_export): Likewise.
	(_gpgme_gpg_op_genkey): Likewise.
	(_gpgme_gpg_op_import): Likewise.
	(_gpgme_gpg_op_keylist): Likewise.
	(_gpgme_gpg_op_sign): Likewise.
	(_gpgme_gpg_op_trustlist): Likewise.

	* engine.h (_gpgme_engine_set_status_handler): Add prototype.
	(_gpgme_engine_set_command_handler): Likewise.
	(_gpgme_engine_set_colon_line_handler): Likewise.
	(_gpgme_engine_op_decrypt): Likewise.
	(_gpgme_engine_op_delete): Likewise.
	(_gpgme_engine_op_encrypt): Likewise.
	(_gpgme_engine_op_export): Likewise.
	(_gpgme_engine_op_genkey): Likewise.
	(_gpgme_engine_op_import): Likewise.
	(_gpgme_engine_op_keylist): Likewise.
	(_gpgme_engine_op_sign): Likewise.
	(_gpgme_engine_op_trustlist): Likewise.
	(_gpgme_engine_op_verify): Likewise.
	(_gpgme_engine_start): Likewise.
	* engine.c (_gpgme_engine_set_status_handler): New function.
	(_gpgme_engine_set_command_handler): Likewise.
	(_gpgme_engine_set_colon_line_handler): Likewise.
	(_gpgme_engine_op_decrypt): Likewise.
	(_gpgme_engine_op_delete): Likewise.
	(_gpgme_engine_op_encrypt): Likewise.
	(_gpgme_engine_op_export): Likewise.
	(_gpgme_engine_op_genkey): Likewise.
	(_gpgme_engine_op_import): Likewise.
	(_gpgme_engine_op_keylist): Likewise.
	(_gpgme_engine_op_sign): Likewise.
	(_gpgme_engine_op_trustlist): Likewise.
	(_gpgme_engine_op_verify): Likewise.
	(_gpgme_engine_start): Likewise.

	* verify.c (gpgme_op_verify_start): Reimplement in terms of above
	functions.
	* encrypt.c (gpgme_op_encrypt_start): Likewise.
	* decrypt.c (_gpgme_decrypt_start): Likewise.
	* passphrase.c (_gpgme_passphrase_start): Likewise.
	* keylist.c (gpgme_op_keylist_start): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/da95ecfc2c8d9340371c77b7f0c35736b110c839

Git commit 3f713d2e64a34cee958aec42b0c7bef50cb255b2 by Marcus Brinkmann on 21/11/2001 at 03:43..
add some more items
https://invent.kde.org/neon/forks/gpgme/-/commit/3f713d2e64a34cee958aec42b0c7bef50cb255b2

Git commit f1805f43bd254d61814f783049cc84d6e1921e66 by Marcus Brinkmann on 21/11/2001 at 03:45..
correct history, har har
https://invent.kde.org/neon/forks/gpgme/-/commit/f1805f43bd254d61814f783049cc84d6e1921e66

Git commit e44f5be9275227022003b181cbb077753c853462 by Werner Koch on 21/11/2001 at 09:21..
Added gpgmeplug/ for experiments
https://invent.kde.org/neon/forks/gpgme/-/commit/e44f5be9275227022003b181cbb077753c853462

Git commit 18432f56be1e3cc0cf9472bdd8dc94fcf81fe24c by Karl-Heinz Zimmer on 21/11/2001 at 09:42..
GPGME Plug-In initial checkin.  Saving/restoring of configuration is working.
https://invent.kde.org/neon/forks/gpgme/-/commit/18432f56be1e3cc0cf9472bdd8dc94fcf81fe24c

Git commit 4e1814223bbe996203f643aae214a921a9d1e21f by Karl-Heinz Zimmer on 21/11/2001 at 10:55..
configure struct updated according to modified cryptplug.h
https://invent.kde.org/neon/forks/gpgme/-/commit/4e1814223bbe996203f643aae214a921a9d1e21f

Git commit 168f43d4ec80279f50cba5fd90369be0b8e42274 by Karl-Heinz Zimmer on 21/11/2001 at 14:18..
(security checkin) currently working on signing messages
https://invent.kde.org/neon/forks/gpgme/-/commit/168f43d4ec80279f50cba5fd90369be0b8e42274

Git commit a73c8142af51ca41d966d299ffd02c51f6e894e3 by Karl-Heinz Zimmer on 21/11/2001 at 16:57..
finished implementation of DirectoryServices storing/retrieving
https://invent.kde.org/neon/forks/gpgme/-/commit/a73c8142af51ca41d966d299ffd02c51f6e894e3

Git commit 9cbf7e459c41b381a64624ffe9f4bc334d87ea6c by Marcus Brinkmann on 21/11/2001 at 20:54..
2001-11-21  Marcus Brinkmann  <marcus at g10code.de>

	* autogen.sh: Tighten version dependencies.
https://invent.kde.org/neon/forks/gpgme/-/commit/9cbf7e459c41b381a64624ffe9f4bc334d87ea6c

Git commit adfc1ccd5d974ca9973c32fac5a42e403c42de4e by Marcus Brinkmann on 21/11/2001 at 21:08..
2001-11-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgmeplug.c: Include config.h only if [HAVE_CONFIG_H].  Do not
	include util.h.
	(deinitialize): Use free, not _gpgme_free.
	(setDirectoryServers): Use calloc, not xtrycalloc.  Use free, not
	_gpgme_free.  Use malloc instead xtrymalloc.
	(appendDirectoryServer): Use realloc, not xtryrealloc.
https://invent.kde.org/neon/forks/gpgme/-/commit/adfc1ccd5d974ca9973c32fac5a42e403c42de4e

Git commit 42bdc1177dff1837da034e0cb322ad43449f0d02 by Marcus Brinkmann on 21/11/2001 at 21:09..
.
https://invent.kde.org/neon/forks/gpgme/-/commit/42bdc1177dff1837da034e0cb322ad43449f0d02

Git commit 75e7fc2e245aabf7c67d2374a51b60c96b0303f9 by Marcus Brinkmann on 21/11/2001 at 21:31..
2001-11-21  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (gpgmeplug): New variable, set to gpgmeplug if
	[BUILD_GPGMEPLUG].
	* configure.ac (AC_CONFIG_FILES): Add gpgmeplug/Makefile.
	Support --enable-gpgmeplug.
https://invent.kde.org/neon/forks/gpgme/-/commit/75e7fc2e245aabf7c67d2374a51b60c96b0303f9

Git commit bef5ad4860cc8cd11f1fb41c722f8fe652fff3af by Marcus Brinkmann on 21/11/2001 at 21:32..
cosmetic change
https://invent.kde.org/neon/forks/gpgme/-/commit/bef5ad4860cc8cd11f1fb41c722f8fe652fff3af

Git commit a80e3d381c1629adaa219fac4fc14e4c940fde7c by Karl-Heinz Zimmer on 21/11/2001 at 23:20..
change Makefile to create shared lib
https://invent.kde.org/neon/forks/gpgme/-/commit/a80e3d381c1629adaa219fac4fc14e4c940fde7c

Git commit 98872718669b1958dda7894419130f0d9e1996e6 by Karl-Heinz Zimmer on 21/11/2001 at 23:23..
create signature (and write it to stdout for testing)
https://invent.kde.org/neon/forks/gpgme/-/commit/98872718669b1958dda7894419130f0d9e1996e6

Git commit 9c6a652d83854952793e3dced7208f4a254915cc by Karl-Heinz Zimmer on 21/11/2001 at 23:34..
corrected includes
https://invent.kde.org/neon/forks/gpgme/-/commit/9c6a652d83854952793e3dced7208f4a254915cc

Git commit 790a8e192f54e811f83d5b817463890528efda7a by Marcus Brinkmann on 22/11/2001 at 03:01..
2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/: New directory.
	* Makefile.am, t-verify.c, t-encrypt.c, t-signers.c, t-trustlist.c,
	t-sign.c, t-keylist.c, t-import.c, t-genkey.c, t-export.c,
	t-decrypt-verify.c, t-decrypt.c, t-version.c, t-data.c, mkdemodirs.
	cipher-1.asc, cipher-2.asc, geheim.txt, pubdemo.asc, pubkey-1.asc,
	secdemo.asc, seckey-1.asc): Move to sub directory gpg/.

	* gpg/Makefile.am (INCLUDES): Include gpgme/, not include/ and
	intl/.
	(LDD): Correct relative path to gpgme library.
	(TESTS): Remove t-version and t-data.
	* gpg/t-verify.c, gpg/t-encrypt.c, gpg/t-signers.c, gpg/t-trustlist.c,
	gpg/t-sign.c, gpg/t-keylist.c, gpg/t-import.c, gpg/t-genkey.c,
	gpg/t-export.c, gpg/t-decrypt-verify.c, gpg/t-decrypt.c,
	t-version.c, t-data.c): Include gpgme.h, not "../gpgme/gpgme.h".

	* Makefile.am: New file.
	* gpgsm/: New directory.
	* gpgsm/Makefile.am: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/790a8e192f54e811f83d5b817463890528efda7a

Git commit 862ef3cf1c3393f02c78f9c4509f647526bf0438 by Marcus Brinkmann on 22/11/2001 at 03:07..
2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_CONFIG_FILES): Add tests/gpg/Makefile and
	tests/gpgsm/Makefile.
https://invent.kde.org/neon/forks/gpgme/-/commit/862ef3cf1c3393f02c78f9c4509f647526bf0438

Git commit 3f1c299866acecd3e56dc7a7fdb58817b4420ba4 by Marcus Brinkmann on 22/11/2001 at 03:08..
* assuan-connect.c (assuan_get_pid): New function.
	* assuan.h: Prototype.  Include sys/types.h for pid_t,
	and stdio.h for FILE *.
https://invent.kde.org/neon/forks/gpgme/-/commit/3f1c299866acecd3e56dc7a7fdb58817b4420ba4

Git commit 679d5c2b49fc26eb343de2958a0d7fe10a424fff by Marcus Brinkmann on 22/11/2001 at 03:08..
2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_inbound_handler, write_mem_data, write_cb_data,
	gpg_outbound_handler): Moved to ...
	* data.c (_gpgme_data_inbound_handler, write_mem_data,
	write_cb_data, _gpgme_data_outbound_handler): ... here.  Make the
	_gpgme_* ones non-static.
	* data.c: Include io.h.

	* ops.h (_gpgme_data_inbound_handler): New prototype.
	(_gpgme_data_outbound_handler): Likewise.
	(_gpgme_gpg_spawn): Use these new functions.

	* engine-gpgsm.h (_gpgme_gpgsm_op_decrypt, _gpgme_gpgsm_op_delete,
	_gpgme_gpgsm_op_encrypt, _gpgme_gpgsm_op_export,
	_gpgme_gpgsm_op_genkey, _gpgme_gpgsm_op_import,
	_gpgme_gpgsm_op_keylist, _gpgme_gpgsm_op_sign,
	_gpgme_gpgsm_op_trustlist, _gpgme_gpgsm_op_verify,
	_gpgme_gpgsm_start, _gpgme_gpgsm_set_status_handler): New prototype.
	Include <rungpg.h> for status handler function.

	* engine-gpgsm.c (struct gpgsm_object_s): New members input_fd,
	input_data, output_fd, output_data, message_fd, message_data, command
	and status.
	(_gpgme_gpgsm_new): Open input, output and message pipes before
	connecting to the client.  Close server's ends afterwards.
	(_gpgme_gpgsm_release): Close open file descriptors.  Remove
	server process from wait queue.
	(_gpgme_gpgsm_op_verify, _gpgme_gpgsm_start,
	_gpgme_gpgsm_set_status_handler, gpgms_status_handler): New function.

	* engine.c (_gpgme_engine_start): Implement for GPGME_PROTOCOL_CMS.
	(_gpgme_engine_set_status_handler): Likewise.
	(_gpgme_engine_op_verify): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/679d5c2b49fc26eb343de2958a0d7fe10a424fff

Git commit 66f4b09b45914a57e938c76748e6fa419dfff2a0 by Karl-Heinz Zimmer on 22/11/2001 at 09:36..
Now send the signature back to the calling function (instead of just printing it to stdout)
https://invent.kde.org/neon/forks/gpgme/-/commit/66f4b09b45914a57e938c76748e6fa419dfff2a0

Git commit 9ece643cba56a03cf70932545d97cc8fca7a9f9c by Werner Koch on 22/11/2001 at 10:29..
* engine-gpgsm.c: Include more headers so that NULL and mk_error
is defined even with an undefined GPGSM_PATH.
https://invent.kde.org/neon/forks/gpgme/-/commit/9ece643cba56a03cf70932545d97cc8fca7a9f9c

Git commit c23a9b5e74f85fb77b126f15a33bd9f29829957a by Marcus Brinkmann on 22/11/2001 at 13:47..
2001-11-22  Marcus Brinkmann  <marcus at gnu.org>

	* engine-gpgsm.c: Shuffle around header inclusion a bit, to still
	keep them seperate.
	(_gpgme_set_status_handler) [!ENABLE_GPGSM]: New function.
https://invent.kde.org/neon/forks/gpgme/-/commit/c23a9b5e74f85fb77b126f15a33bd9f29829957a

Git commit 6290f74605a06f78eee18fd630ffc9f7d55bcb46 by Marcus Brinkmann on 22/11/2001 at 15:22..
2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_decrypt): New function.
	(_gpgme_gpgsm_op_import): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/6290f74605a06f78eee18fd630ffc9f7d55bcb46

Git commit c703e0c27e4cc5f5a20700583c8665e23512e864 by Karl-Heinz Zimmer on 22/11/2001 at 17:32..
removed stupid C bug (malloc of strlen(..) instead of 1+strlen)
https://invent.kde.org/neon/forks/gpgme/-/commit/c703e0c27e4cc5f5a20700583c8665e23512e864

Git commit 8993173dfbe433113380783ca286aa825d0bbf0f by Marcus Brinkmann on 22/11/2001 at 18:48..
2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_set_protocol): New prototype.

2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgsmplug_la_LIBADD): New variable.
	(libgpgsmplug_la_LDFLAGS): Likewise.
	(libgpgsmplug_la_SOURCES): Likewise.
	(lib_LTLIBRARIES): Add libgpgsmplug.la.
	(INCLUDES): Include the local gpgme.h.

	* gpgmeplug.c (signMessage): Set protocol.
	(GPGMEPLUG_PROTOCOL) [!GPGMEPLUG_PROTOCOL]: Set
	GPGMEPLUG_PROTOCOL.
	* gpgsmplug.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/8993173dfbe433113380783ca286aa825d0bbf0f

Git commit 884de0606b851c25190fc7e27ee8de1defcf6a16 by Marcus Brinkmann on 22/11/2001 at 20:48..
2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* engine.c (_gpgme_engine_op_decrypt): Implement CMS case.
	(_gpgme_engine_op_delete): Likewise.
	(_gpgme_engine_op_encrypt): Likewise.
	(_gpgme_engine_op_export): Likewise.
	(_gpgme_engine_op_genkey): Likewise.
	(_gpgme_engine_op_keylist): Likewise.
	(_gpgme_engine_op_sign): Likewise.
	(_gpgme_engine_op_trustlist): Likewise.

	* engine-gpgsm.c (_gpgme_gpgsm_op_encrypt): New function.
	(gpgsm_assuan_simple_command): Likewise.
	(gpgsm_set_recipients): Likewise.
	(gpgsm_set_fd): Reimplement using gpgsm_assuan_simple_command.
	(_gpgme_gpgsm_op_delete): New function.
	(_gpgme_gpgsm_op_export): Likewise.
	(_gpgme_gpgsm_op_genkey): Likewise.
	(_gpgme_gpgsm_op_sign): Likewise.
	(_gpgme_gpgsm_op_keylist): Likewise.
	(_gpgme_gpgsm_op_trustlist): Likewise.
	(_gpgme_gpgsm_release): Release command.
	(_gpgme_gpgsm_op_decrypt): Allocate command.
	(_gpgme_gpgsm_op_import): Likewise.
	(gpgsm_status_handler): Also treat `ERR' strings as EOF.
https://invent.kde.org/neon/forks/gpgme/-/commit/884de0606b851c25190fc7e27ee8de1defcf6a16

Git commit d1ded512c46755e3e487395aa183988c05dcfd20 by Marcus Brinkmann on 22/11/2001 at 21:27..
2001-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c: Include stdlib.h and string.h.  Also include,
	for now, rungpg.h and status-table.h.
	(gpgsm_status_handler): Implement more of the status handler.
https://invent.kde.org/neon/forks/gpgme/-/commit/d1ded512c46755e3e487395aa183988c05dcfd20

Git commit 662f9b185b976413be8ecd77749b7e45a05c5087 by Marcus Brinkmann on 23/11/2001 at 00:48..
2001-11-23  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_new): Set CLOEXEC flag for parent
	ends of the pipe.
https://invent.kde.org/neon/forks/gpgme/-/commit/662f9b185b976413be8ecd77749b7e45a05c5087

Git commit 09b1be833942aad8bd82aaa316c0a27a91192e2e by Marcus Brinkmann on 23/11/2001 at 01:12..
Explain more of the build system.
https://invent.kde.org/neon/forks/gpgme/-/commit/09b1be833942aad8bd82aaa316c0a27a91192e2e

Git commit 64da5fc8450a931a0c79a30e41b6f3229f55b000 by Karl-Heinz Zimmer on 23/11/2001 at 02:08..
signing of mail bodies is working now - buuuuut: I changed the behaviour of the 'signMessage()' function, it now returns *only* the signature part (with a trailing zero).  This is neccessary to avoid confugion at the KMail side: otherwise KMail might try to convert the whole MIME block into quoted printable - of course this is only allowed for the body part but not for the signature part.
https://invent.kde.org/neon/forks/gpgme/-/commit/64da5fc8450a931a0c79a30e41b6f3229f55b000

Git commit 8c3726d6349408ec50448ee9b19f5d1c3333696f by Marcus Brinkmann on 23/11/2001 at 11:52..
2001-11-23  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_sign): Implement it according to
	the current protocol definition.
https://invent.kde.org/neon/forks/gpgme/-/commit/8c3726d6349408ec50448ee9b19f5d1c3333696f

Git commit 83855db1964bbc018561f9433b924ccc9cbcc3da by Karl-Heinz Zimmer on 24/11/2001 at 10:51..
signing now returns only the SIGNATURE - not the original text - since building of the S/MIME object is done in the calling program (the MUA...)
https://invent.kde.org/neon/forks/gpgme/-/commit/83855db1964bbc018561f9433b924ccc9cbcc3da

Git commit 46bb2a4470fbd1d3dc35ac56e54b8f4132ef078a by Marcus Brinkmann on 24/11/2001 at 17:11..
2001-11-24  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgsmplug_la_SOURCES): Fix source file.
https://invent.kde.org/neon/forks/gpgme/-/commit/46bb2a4470fbd1d3dc35ac56e54b8f4132ef078a

Git commit a22eef99a2593ec5f0d7143bc901dc805983865e by Marcus Brinkmann on 24/11/2001 at 19:31..
2001-11-24  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_status_handler): Don't break if bsearch fails.
	Deal with assuan read line returning more than one line (for now).
https://invent.kde.org/neon/forks/gpgme/-/commit/a22eef99a2593ec5f0d7143bc901dc805983865e

Git commit dc8410cbcf316179b1ed7b0a524ed699296f4907 by Werner Koch on 24/11/2001 at 21:22..
Updated from canonical source location in GnuPG.
https://invent.kde.org/neon/forks/gpgme/-/commit/dc8410cbcf316179b1ed7b0a524ed699296f4907

Git commit 4e56c2dddd904390b991b5d4a62d0dacbfbd638b by Werner Koch on 24/11/2001 at 21:27..
Guess what.
https://invent.kde.org/neon/forks/gpgme/-/commit/4e56c2dddd904390b991b5d4a62d0dacbfbd638b

Git commit 49b7969a491f798607f5abc14b716246c5bf3021 by Karl-Heinz Zimmer on 25/11/2001 at 03:37..
adjusted 'encryptMessage' parameters: now also the addressee is given
https://invent.kde.org/neon/forks/gpgme/-/commit/49b7969a491f798607f5abc14b716246c5bf3021

Git commit 14aa91a95bca134761d2cf68dfdaf52e32676367 by Karl-Heinz Zimmer on 25/11/2001 at 05:07..
Now gpgmeplug.c can also create encrypted and signed+encrypted S/MIME mails.
https://invent.kde.org/neon/forks/gpgme/-/commit/14aa91a95bca134761d2cf68dfdaf52e32676367

Git commit 9e24b664755cc9b0b54802e31ef39531c63aca31 by Karl-Heinz Zimmer on 25/11/2001 at 15:23..
[Kalle] signature verification and decoding of encrypted mails
https://invent.kde.org/neon/forks/gpgme/-/commit/9e24b664755cc9b0b54802e31ef39531c63aca31

Git commit aa51d5af330775f543086181a8c745c26758a2d8 by Karl-Heinz Zimmer on 25/11/2001 at 20:31..
changed specification of SignatureMetaData struct
https://invent.kde.org/neon/forks/gpgme/-/commit/aa51d5af330775f543086181a8c745c26758a2d8

Git commit a0f861940edf4472b6953adf0561c395e709f8ed by Matthias Kalle Dalheimer on 25/11/2001 at 21:53..
Filling the SignatureMetaData struct (the crucial code is #ifdef'd out for safety's sake)
Changes to SignatureMetaData
Added SignatureMetaDataExtendedInfo
https://invent.kde.org/neon/forks/gpgme/-/commit/a0f861940edf4472b6953adf0561c395e709f8ed

Git commit a8c76a0f835da1b652cc60e73e3b3e2d301e631b by Marcus Brinkmann on 26/11/2001 at 11:41..
2001-11-26  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_sign): Fix stupid typo.
2001-11-23  Marcus Brinkmann  <marcus at g10code.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/a8c76a0f835da1b652cc60e73e3b3e2d301e631b

Git commit 86490c114bf1f80d191721ec09e4c994683ee461 by Karl-Heinz Zimmer on 26/11/2001 at 15:54..
enabled fetching meta data after checking of signature(s)
https://invent.kde.org/neon/forks/gpgme/-/commit/86490c114bf1f80d191721ec09e4c994683ee461

Git commit 4dcc18b102fc85fe2e121161b197250dca60cf92 by Matthias Kalle Dalheimer on 26/11/2001 at 16:43..
Check for out-of-memory in signature verification
https://invent.kde.org/neon/forks/gpgme/-/commit/4dcc18b102fc85fe2e121161b197250dca60cf92

Git commit ee33d9f14635f57ac3dcb712dd16ea7d72abae74 by Karl-Heinz Zimmer on 29/11/2001 at 12:29..
added error detection to signing and encrypting methodes: this has to be improved furtheron
https://invent.kde.org/neon/forks/gpgme/-/commit/ee33d9f14635f57ac3dcb712dd16ea7d72abae74

Git commit e0da4fbd31c24131cba1a2b22a3a3eaf1636a6e8 by Marcus Brinkmann on 05/12/2001 at 13:21..
2001-11-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgmeplug.c (checkMessageSignature): Add call to gpgme_set_protocol.
https://invent.kde.org/neon/forks/gpgme/-/commit/e0da4fbd31c24131cba1a2b22a3a3eaf1636a6e8

Git commit e9ece11e837aff9bbff27cdb43069a6a6f2cd236 by Marcus Brinkmann on 05/12/2001 at 13:23..
2001-12-05  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (gpgme_op_keylist_next): Set pending to 0 if EOF
	occurs.
https://invent.kde.org/neon/forks/gpgme/-/commit/e9ece11e837aff9bbff27cdb43069a6a6f2cd236

Git commit ba1e19e10b98d511a76a080004c8dcd0c7be1006 by Marcus Brinkmann on 05/12/2001 at 19:50..
Add .cvsignore files.  Suggested by Jan-Oliver Wagner <jan at intevation.de>.
https://invent.kde.org/neon/forks/gpgme/-/commit/ba1e19e10b98d511a76a080004c8dcd0c7be1006

Git commit 62d0374e72a9ac5532cb8cdee8a53688637eb9c7 by Marcus Brinkmann on 05/12/2001 at 20:37..
2001-12-05  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_set_fd): Accept one more argument OPT.
	(_gpgme_gpgsm_op_encrypt): Pass armor argument to gpgsm_set_fd for
	output descriptor.
	(_gpgme_gpgsm_op_sign): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/62d0374e72a9ac5532cb8cdee8a53688637eb9c7

Git commit 8cd3d96f2ded518f251bea551b5dad73e4d4cb96 by Marcus Brinkmann on 05/12/2001 at 20:38..
2001-12-05  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_status_handler): Make it work with current
	version of assuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/8cd3d96f2ded518f251bea551b5dad73e4d4cb96

Git commit 08debc7ab2f75ec5c1f976adb211b97c8193cd48 by Karl-Heinz Zimmer on 06/12/2001 at 16:59..
Corrected code status error from previous wrong CVS comits
https://invent.kde.org/neon/forks/gpgme/-/commit/08debc7ab2f75ec5c1f976adb211b97c8193cd48

Git commit bc11308fa37e1ae313c475a32726347912971812 by Karl-Heinz Zimmer on 06/12/2001 at 17:19..
Corrected (for a second time) code status error from previous wrong CVS comits
https://invent.kde.org/neon/forks/gpgme/-/commit/bc11308fa37e1ae313c475a32726347912971812

Git commit 70720764e1899586a91592d22950322e8aa0166a by Werner Koch on 13/12/2001 at 13:24..
*** empty log message ***
https://invent.kde.org/neon/forks/gpgme/-/commit/70720764e1899586a91592d22950322e8aa0166a

Git commit 3de2384ea5ae8b542c0d6654ceca3b8f473d2f9f by Werner Koch on 13/12/2001 at 15:04..
Updated Assuan to the current version
https://invent.kde.org/neon/forks/gpgme/-/commit/3de2384ea5ae8b542c0d6654ceca3b8f473d2f9f

Git commit 0b11af59c7ce6664bcbdc43f65e3d33fe1a6142b by Werner Koch on 13/12/2001 at 15:05..
* engine-gpgsm.c (_gpgme_gpgsm_op_keylist): Allow NULL for
pattern.
(gpgsm_assuan_simple_command): Removed underscore from
assuan_write_line.
(_gpgme_gpgsm_start): Ditto.
* keylist.c (keylist_colon_handler): Handle "crt" records
* key.h (gpgme_key_s): Add an x509 flag.
* key.c (parse_x509_user_id): New.
(_gpgme_key_append_name): Handle x.509 names.

However, it does not yet work.
https://invent.kde.org/neon/forks/gpgme/-/commit/0b11af59c7ce6664bcbdc43f65e3d33fe1a6142b

Git commit 4922297af1c515d6fea54aa30e1bfc7c2b44da26 by Werner Koch on 13/12/2001 at 15:06..
Set protocol to CMS to test gpgsm
https://invent.kde.org/neon/forks/gpgme/-/commit/4922297af1c515d6fea54aa30e1bfc7c2b44da26

Git commit 9f8429172287ab903ca5c6c65aeca636568a2f4b by Werner Koch on 13/12/2001 at 15:07..
.cvsigore updated - I still not tyhing they should go innto the cvs
https://invent.kde.org/neon/forks/gpgme/-/commit/9f8429172287ab903ca5c6c65aeca636568a2f4b

Git commit cfcac3496a4bbb2d8389ad870e296273e934865b by Karl-Heinz Zimmer on 13/12/2001 at 15:13..
improce memory handling
https://invent.kde.org/neon/forks/gpgme/-/commit/cfcac3496a4bbb2d8389ad870e296273e934865b

Git commit b41d06c0a1fdfbf42c12ad7e32a9ee4ba553f7e2 by Werner Koch on 13/12/2001 at 17:37..
* assuan-handler.c (assuan_get_active_fds): Fixed silly bug,
pretty obvious that nobody ever tested this function.
https://invent.kde.org/neon/forks/gpgme/-/commit/b41d06c0a1fdfbf42c12ad7e32a9ee4ba553f7e2

Git commit 3634edf055e58458e2169c8fabd3e3a709724342 by Werner Koch on 13/12/2001 at 17:37..
* engine-gpgsm.c (_gpgme_gpgsm_set_colon_line_handler): New.
(gpgsm_status_handler): Pass datalines to a colon handler
* engine.c (_gpgme_engine_set_colon_line_handler): Set the colon
handler for gpgsm.

* engine-gpgsm.c (_gpgme_gpgsm_op_keylist): Allow NULL for
pattern.
(gpgsm_assuan_simple_command): Removed underscore from
assuan_write_line.
(_gpgme_gpgsm_start): Ditto.
(gpgsm_assuan_simple_command): Replaced interal Assuan read
function by the new assuan_read_line.  Removed the use of the
internal header.
(gpgsm_status_handler): Ditto. Use the new assuan_pending_line.
(_gpgme_gpgsm_start): Use the documented way to get an fd from
assuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/3634edf055e58458e2169c8fabd3e3a709724342

Git commit 05394e788ea2ce9565cd677c18fbbbc19b15a6cc by Marcus Brinkmann on 13/12/2001 at 20:13..
2001-12-13  Marcus Brinkmann  <marcus at gnu.org>

	* assuan-buffer.c (assuan_read_line): Fix order of execution to
	get correct return values.
https://invent.kde.org/neon/forks/gpgme/-/commit/05394e788ea2ce9565cd677c18fbbbc19b15a6cc

Git commit 0dba5161e234d8d2e45571b2eaaa45b31b0abd8c by Marcus Brinkmann on 13/12/2001 at 21:38..
2001-12-13  Marcus Brinkmann  <marcus at gnu.org>

	* assuan-connect.c (assuan_pipe_connect): Remove code that closes
	all the little file descriptors we set up.
https://invent.kde.org/neon/forks/gpgme/-/commit/0dba5161e234d8d2e45571b2eaaa45b31b0abd8c

Git commit 831692ebf73a39dc0fa6ffe631ec92f9cfff88d8 by Marcus Brinkmann on 13/12/2001 at 21:51..
2001-12-13  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/cert_dfn_pca01.der: New file.
	* gpgsm/cert_dfn_pca15.der: Likewise.
	* gpgsm/cert_g10code_test1.der: Likewise.
	* gpgsm/t-import.c: Likewise.
	* gpgsm/Makefile.am (EXTRADIST): Add new files.
	(TESTS): Add t-import.
https://invent.kde.org/neon/forks/gpgme/-/commit/831692ebf73a39dc0fa6ffe631ec92f9cfff88d8

Git commit 4a55249ee60f9f94da1e4b92824ef7427154745c by Marcus Brinkmann on 13/12/2001 at 22:02..
2001-12-13  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (close_notify_handler): New function.
	(_gpgme_gpgsm_new): Manage the file descriptors a
	bit differently.  Do not set close-on-exec flags.
	(_gpgme_gpgsm_op_decrypt): Do not set message_fd
	to -1, this is done by the close handler.
	(_gpgme_gpgsm_op_encrypt): Likewise.
	(_gpgme_gpgsm_op_import): Likewise (also for output_fd).
	(_gpgme_gpgsm_op_keylist): Likewise (also for input_fd and output_fd).
	(_gpgme_gpgsm_op_sign): Likewise.
	(_gpgme_gpgsm_op_verify): Likewise, but for output_fd.

	* posix-io.c (_gpgme_io_pipe): Set the close-on-exec flag for the
	non-inherited file descriptor index of the pipe.
https://invent.kde.org/neon/forks/gpgme/-/commit/4a55249ee60f9f94da1e4b92824ef7427154745c

Git commit 77a72c0d5e8552f25bc70d0ddd2b7e84143fefc6 by Marcus Brinkmann on 13/12/2001 at 22:12..
2001-12-13  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_encrypt): Do not add `armor'
	option to `ENCRYPT'.
	* engine-gpgsm.c (gpgsm_set_recipients): Free LINE when returning
	successfully.
https://invent.kde.org/neon/forks/gpgme/-/commit/77a72c0d5e8552f25bc70d0ddd2b7e84143fefc6

Git commit f2232e8bc2b7e5b117a5e5b17ead672df95b481e by Marcus Brinkmann on 13/12/2001 at 22:36..
2001-12-13  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_spawn): Do not add the fds to the child
	list that are not dup'ed, for those the close-on-exec flag is set
	now.
	* version.c (_gpgme_get_program_version): Remove first entry in
	CFD, as the close-on-exec flag is now set for this fd.
https://invent.kde.org/neon/forks/gpgme/-/commit/f2232e8bc2b7e5b117a5e5b17ead672df95b481e

Git commit 341835864e02daf759dde007b66eda2711f9cf66 by Marcus Brinkmann on 13/12/2001 at 23:12..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-defs.h (LINELENGTH): Define as ASSUAN_LINELENGTH.
	assuan.h: Define ASSUAN_LINELENGTH.
https://invent.kde.org/neon/forks/gpgme/-/commit/341835864e02daf759dde007b66eda2711f9cf66

Git commit 0c05b3d8bd2dc4f8fa69c34cf3a766e909f28141 by Marcus Brinkmann on 14/12/2001 at 00:29..
Revert last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/0c05b3d8bd2dc4f8fa69c34cf3a766e909f28141

Git commit 0913218bcc1e170c0ad7843a4c93060f6c7422d0 by Marcus Brinkmann on 14/12/2001 at 00:49..
gpgme/
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (struct gpgsm_object_s): New member colon.attic.
	(_gpgme_gpgsm_new): Initialize some more members.
	(_gpgme_gpgsm_release): Free the colon line handler's attic line.
	(gpgsm_status_handler): Rework the inline-data processing.

tests/
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c: New file.
	* gpgsm/Makefile.am (TESTS): Add t-keylist.
https://invent.kde.org/neon/forks/gpgme/-/commit/0913218bcc1e170c0ad7843a4c93060f6c7422d0

Git commit c6cf950f9e05d3b37faf8606ea6105ddb17486a7 by Marcus Brinkmann on 14/12/2001 at 01:22..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-buffer.c (_assuan_read_line): New variable ATTICLEN, use
	it to save the number of bytes left over after the complete line.
	Rediddle the code a bit to make it more clear what happens.
https://invent.kde.org/neon/forks/gpgme/-/commit/c6cf950f9e05d3b37faf8606ea6105ddb17486a7

Git commit 3c1ee806486a1a09914f6d061e99ace4e01884c3 by Marcus Brinkmann on 14/12/2001 at 01:27..
Change history, doubleplusgood.
https://invent.kde.org/neon/forks/gpgme/-/commit/3c1ee806486a1a09914f6d061e99ace4e01884c3

Git commit f1cca1847cfbd923ae15a8c823a940343409030e by Marcus Brinkmann on 14/12/2001 at 01:39..
Add items about all the new software included.
https://invent.kde.org/neon/forks/gpgme/-/commit/f1cca1847cfbd923ae15a8c823a940343409030e

Git commit 22bdb71f6a351e599016940247cda4d3c440d122 by Marcus Brinkmann on 14/12/2001 at 14:43..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_status_handler): Freeze the output file
	handler when ending this operation, otherwise the wait function
	will sit on it.
https://invent.kde.org/neon/forks/gpgme/-/commit/22bdb71f6a351e599016940247cda4d3c440d122

Git commit a54c0a05b5ba239e06444e55b2a4c2bd87c761ce by Marcus Brinkmann on 14/12/2001 at 15:35..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (GPG): Substitute this variable.
	(GPGSM): Likewise.

tests/
CVS2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (GPG): Set to @GPG_PATH at .
	(./pubring.gpg): Use $(GPG) instead gpg.
	(./secring.gpg): Likewise.

	* gpgsm/t-import.c (main): Remove third test case.
	* gpgsm/Makefile.am (GPGSM): Set to @GPGSM at .
	(all-local): New target.
	(./pubcerts.kbx): Likewise.
	* gpgsm/t-encrypt.c: New file.
	* gpgsm/Makefile.am (TESTS): Add t-encrypt.
https://invent.kde.org/neon/forks/gpgme/-/commit/a54c0a05b5ba239e06444e55b2a4c2bd87c761ce

Git commit 9a9eb1dcec7c13aa64481a8ec2fdf108504af2a3 by Marcus Brinkmann on 14/12/2001 at 16:08..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-verify.c: New file.
	* gpgsm/Makefile.am (TESTS): Add t-verify.
https://invent.kde.org/neon/forks/gpgme/-/commit/9a9eb1dcec7c13aa64481a8ec2fdf108504af2a3

Git commit 27b771dbd6b0855ca517c48d47f564eb146e4a6b by Marcus Brinkmann on 14/12/2001 at 19:29..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-decrypt.c: New file.
	* gpgsm/567064FE6D14A17B2D811ABB407728BC558AA455: Likewise.
	* gpgsm/Makefile.am (TESTS): Add t-decrypt.
	(key_id): New variable.
	(all-local): New target ./private-keys-v1.d/$(key_id) added.
	(./private-keys-v1.d/$(key_id)): New target.
https://invent.kde.org/neon/forks/gpgme/-/commit/27b771dbd6b0855ca517c48d47f564eb146e4a6b

Git commit 63ac7b34b425bf9b0c01f1db1922f7f1d7750caf by Marcus Brinkmann on 14/12/2001 at 20:20..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c: Revert last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/63ac7b34b425bf9b0c01f1db1922f7f1d7750caf

Git commit 35e79617a764214b5af40e01ad78f57f9b80dd82 by Marcus Brinkmann on 14/12/2001 at 20:23..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-sign.c: New file.
	* gpgsm/Makefile.am (TESTS): Add t-sign.
https://invent.kde.org/neon/forks/gpgme/-/commit/35e79617a764214b5af40e01ad78f57f9b80dd82

Git commit 6493b000420b6e50ca4f3e4a8e81d233c55c78c2 by Marcus Brinkmann on 14/12/2001 at 22:02..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_verify): Put TEXT into
	message_data, not SIG.
https://invent.kde.org/neon/forks/gpgme/-/commit/6493b000420b6e50ca4f3e4a8e81d233c55c78c2

Git commit 017c62f46455c2acc50a244b1c6eb9c2a3d610e6 by Marcus Brinkmann on 14/12/2001 at 22:03..
Small code cleanup.
https://invent.kde.org/neon/forks/gpgme/-/commit/017c62f46455c2acc50a244b1c6eb9c2a3d610e6

Git commit 21b09f74e66699c8fca06b785f546671af996509 by Marcus Brinkmann on 14/12/2001 at 22:32..
2001-12-14  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_verify): Put TEXT into
	message_data, not SIG.
	(_gpgme_gpgsm_op_sign): Use `--detached', not `--detach'.

	* sign.c (sign_status_handler): Call
	_gpgme_passphrase_status_handler early.

2001-12-14  Marcus Brinkmann  <marcus at g10code.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/21b09f74e66699c8fca06b785f546671af996509

Git commit 5e667d3c1d8b2db765867320c2fd74dd0d91431b by Marcus Brinkmann on 15/12/2001 at 14:13..
2001-12-15  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c (check_two_contexts): Set protocols.
https://invent.kde.org/neon/forks/gpgme/-/commit/5e667d3c1d8b2db765867320c2fd74dd0d91431b

Git commit 2a866e025cea9376e8e8018844c7cd56adcf5f39 by Marcus Brinkmann on 16/12/2001 at 18:38..
2001-12-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile: Rename `pubcerts.kbx' to `pubring.kbx'.
https://invent.kde.org/neon/forks/gpgme/-/commit/2a866e025cea9376e8e8018844c7cd56adcf5f39

Git commit d1384aabc54ff0a6b3fa03d96a466e024a21253f by Marcus Brinkmann on 17/12/2001 at 17:08..
2001-12-17  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_set_colon_line_handler): New
	function [!ENABLE_GPGSM].
https://invent.kde.org/neon/forks/gpgme/-/commit/d1384aabc54ff0a6b3fa03d96a466e024a21253f

Git commit ac53a44dfa0ccd89a11de5c75faf517efcb85f7e by Werner Koch on 18/12/2001 at 18:46..
* acinclude.m4 (GNUPG_FIX_HDR_VERSION): Fixed for new automake.
https://invent.kde.org/neon/forks/gpgme/-/commit/ac53a44dfa0ccd89a11de5c75faf517efcb85f7e

Git commit 247eecaab9d36e3f0a25b5462747d4b96c486640 by Marcus Brinkmann on 18/12/2001 at 19:54..
2001-12-18  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (_gpgme_key_append_name): Append, not prepend, the uid.
	Initialize the next field of the uid structure.
	(gpgme_key_get_as_xml): Do not list last uid first.
https://invent.kde.org/neon/forks/gpgme/-/commit/247eecaab9d36e3f0a25b5462747d4b96c486640

Git commit a39980abe7b0589eb03c0f55782dd31b15ea2b98 by Karl-Heinz Zimmer on 18/12/2001 at 20:13..
added debug message to encrypt() function
https://invent.kde.org/neon/forks/gpgme/-/commit/a39980abe7b0589eb03c0f55782dd31b15ea2b98

Git commit 6d7f9eb4ff066e1bda93ea9f828e029d5c55bb5f by Marcus Brinkmann on 18/12/2001 at 21:02..
2001-12-18  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (struct reap_s, reap_list, reap_list_lock): Moved to ...
	* engine.c (struct reap_s, reap_list, reap_list_lock): ... here.
	Include `time.h', `sys/types.h', `assert.h', and `sema.h'.

	* rungpg.c (_gpgme_engine_add_child_to_reap_list): New function.
	(do_reaping, _gpgme_gpg_housecleaning): Moved to ...
	* engine.c (do_reaping, _gpgme_engine_housecleaning): ... here.
	* rungpg.c (_gpgme_gpg_release): Replace code that is now in its
	own function by call to _gpgme_engine_add_child_to_reap_list().

	* wait.c: Include `engine.h'.
	(run_idle): Call _gpgme_engine_housecleaning(), not
	_gpgme_gpg_housecleaning().
https://invent.kde.org/neon/forks/gpgme/-/commit/6d7f9eb4ff066e1bda93ea9f828e029d5c55bb5f

Git commit 44023ddfb2f536732c28f9abfe5e20fe9bf092b0 by Karl-Heinz Zimmer on 18/12/2001 at 21:11..
corrected specification of Aegypten test key in encrypt() function
https://invent.kde.org/neon/forks/gpgme/-/commit/44023ddfb2f536732c28f9abfe5e20fe9bf092b0

Git commit a3d0634e976984e781c989d44a218e661a39c874 by Marcus Brinkmann on 18/12/2001 at 22:21..
2001-12-18  Marcus Brinkmann  <marcus at g10code.de>

	* version.c (gpgme_get_engine_info): Reimplemented.
	(gpgme_check_engine): Reimplemented.
	(_gpgme_compare_versions): Return NULL if MY_VERSION is NULL.

	* engine.c: Include `io.h'.
	(gpgme_engine_get_info): New function.
	* engine.h (gpgme_engine_check_version, _gpgme_engine_get_info):
	Add prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/a3d0634e976984e781c989d44a218e661a39c874

Git commit 985334f7ed10f4bebad6e92f44d69a6f65b3cdc8 by Marcus Brinkmann on 18/12/2001 at 22:22..
More about the new version.
https://invent.kde.org/neon/forks/gpgme/-/commit/985334f7ed10f4bebad6e92f44d69a6f65b3cdc8

Git commit 7ce2fb718abc8228a4e18669ed78798e9dbe1bb7 by Marcus Brinkmann on 18/12/2001 at 22:54..
2001-12-18  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (gpgme_op_keylist_end): New function.
	* gpgme.h (gpgme_op_keylist_end): New prototype.

	* engine.h (gpgme_engine_check_version): Move prototype to ...
	* gpgme.h (gpgme_engine_check_version): ... here.

	* genkey.c (gpgme_op_genkey_start): Remove unused variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ce2fb718abc8228a4e18669ed78798e9dbe1bb7

Git commit 98faded2e38b9fb2e58a3164ecd32249e93f4ac3 by Marcus Brinkmann on 18/12/2001 at 23:32..
2001-12-18  Marcus Brinkmann  <marcus at g10code.de>

	* autogen.sh (libtool_vers): Bump to 1.4.

	* configure.ac (LIBGPGME_LT_CURRENT): Increment.
	(LIBGPGME_LT_AGE): Likewise.
	Improve comment.
	Fix wrong comment character.
https://invent.kde.org/neon/forks/gpgme/-/commit/98faded2e38b9fb2e58a3164ecd32249e93f4ac3

Git commit 34e14106a36ca0d14e82508d1bf454009248d82c by Marcus Brinkmann on 18/12/2001 at 23:33..
Change history.
https://invent.kde.org/neon/forks/gpgme/-/commit/34e14106a36ca0d14e82508d1bf454009248d82c

Git commit 5f7ccb193a245e199b00f72a0cfeb9e67da3f465 by Marcus Brinkmann on 18/12/2001 at 23:46..
New item about make clean.
https://invent.kde.org/neon/forks/gpgme/-/commit/5f7ccb193a245e199b00f72a0cfeb9e67da3f465

Git commit 2ad095959825ed0977df0dbe84943eb5b664eb1c by Marcus Brinkmann on 18/12/2001 at 23:46..
2001-12-19  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile.am (EXTRA_DIST): Add $(key_id).
https://invent.kde.org/neon/forks/gpgme/-/commit/2ad095959825ed0977df0dbe84943eb5b664eb1c

Git commit a9507b563867a93595269eeb4ac61b729886afe1 by Marcus Brinkmann on 18/12/2001 at 23:50..
Update the file (but not yet sent to the GNU people).
https://invent.kde.org/neon/forks/gpgme/-/commit/a9507b563867a93595269eeb4ac61b729886afe1

Git commit d5e1994ee413b3768754192770cfa8ac05401eea by Marcus Brinkmann on 18/12/2001 at 23:51..
Final polish.
https://invent.kde.org/neon/forks/gpgme/-/commit/d5e1994ee413b3768754192770cfa8ac05401eea

Git commit 102009c336bc526270092aad9abb72e136c7df6a by Marcus Brinkmann on 19/12/2001 at 00:23..
Update from newpg.
https://invent.kde.org/neon/forks/gpgme/-/commit/102009c336bc526270092aad9abb72e136c7df6a

Git commit a29999710382590734269869b3d075c2a0277bf5 by Marcus Brinkmann on 19/12/2001 at 00:24..
2001-12-19  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_new): New variable CHILD_FDS.
	Fill it with the servers fds, and pass it to assuan_pipe_connect.
https://invent.kde.org/neon/forks/gpgme/-/commit/a29999710382590734269869b3d075c2a0277bf5

Git commit c298758eff40bbf6d01e57dd50a4d2ff9f4d9159 by Marcus Brinkmann on 19/12/2001 at 00:28..
2001-12-19  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgmeplug_la_SOURCES): Remove gpgme.h.
	(libgpgsmplug_la_SOURCES): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/c298758eff40bbf6d01e57dd50a4d2ff9f4d9159

Git commit abd820c4a925c90c0488133e00749d52bb95afbc by Marcus Brinkmann on 19/12/2001 at 00:47..
2001-12-19  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (EXTRA_DIST): Add missing line continuation.
https://invent.kde.org/neon/forks/gpgme/-/commit/abd820c4a925c90c0488133e00749d52bb95afbc

Git commit fe22c97e8d525411cdca7ed5887632b4d54f3b38 by Marcus Brinkmann on 19/12/2001 at 01:09..
2001-12-19  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (lib_LTLIBRARIES): Rename to ...
	(noinst_LTLIBRARIES): ... this target.
https://invent.kde.org/neon/forks/gpgme/-/commit/fe22c97e8d525411cdca7ed5887632b4d54f3b38

Git commit 09a4b95c74cc508cc41003a23f3b388e33227918 by Marcus Brinkmann on 19/12/2001 at 01:11..
Add info about noinst of gpgmeplug.
https://invent.kde.org/neon/forks/gpgme/-/commit/09a4b95c74cc508cc41003a23f3b388e33227918

Git commit a3fcd4e06c56d41ad687426074c7fda145e318a7 by Werner Koch on 19/12/2001 at 12:44..
updated .cvsignore files
https://invent.kde.org/neon/forks/gpgme/-/commit/a3fcd4e06c56d41ad687426074c7fda145e318a7

Git commit f8a16cb2289c1fdd38982530e70926f5d3022c12 by Werner Koch on 19/12/2001 at 12:59..
* configure.ac (VERSION,PACKAGE): Defined and subst.  Used for
AM_INIT_AUTOMAKE and moved all version number more to the top.
https://invent.kde.org/neon/forks/gpgme/-/commit/f8a16cb2289c1fdd38982530e70926f5d3022c12

Git commit 8ec53dc804622d4cdb20ef59671edba0041f6bd6 by Werner Koch on 19/12/2001 at 13:00..
Learn more about the trash I have on my machine.
https://invent.kde.org/neon/forks/gpgme/-/commit/8ec53dc804622d4cdb20ef59671edba0041f6bd6

Git commit bb902af3a3a1bb0f8499b3a4171669d6c8fdbeb1 by Werner Koch on 19/12/2001 at 13:01..
configure has fixed the version number, better checkin so that we are
sure that everyone uses the right version even if configure is not run.
https://invent.kde.org/neon/forks/gpgme/-/commit/bb902af3a3a1bb0f8499b3a4171669d6c8fdbeb1

Git commit 530bad57ce221395ece7f5680ab081b687dbd78b by Marcus Brinkmann on 19/12/2001 at 17:26..
Revert cruft from last check in.
https://invent.kde.org/neon/forks/gpgme/-/commit/530bad57ce221395ece7f5680ab081b687dbd78b

Git commit a087259977a62d47505762a2086944a60cc1cc59 by Marcus Brinkmann on 19/12/2001 at 17:46..
gpgme/
2001-12-19  Marcus Brinkmann  <marcus at g10code.de>

	* engine.c: Include `string.h'.  Reported by St�phane Corth�sy.

	* version.c (get_engine_info): Remove prototype.

tests/
2001-12-19  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-decrypt-verify.c: Don't include `mcheck.h'.  Reported by
	St�phane Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/a087259977a62d47505762a2086944a60cc1cc59

Git commit d088ff5626d63d50d1a41b77d27aadd85458e1d0 by Marcus Brinkmann on 21/12/2001 at 01:41..
2001-12-21  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_new): Replace General_Error with
	Pipe_Error where appropriate.
https://invent.kde.org/neon/forks/gpgme/-/commit/d088ff5626d63d50d1a41b77d27aadd85458e1d0

Git commit 4ee79f2416d02ec61ee11759e4dc7414bfae94d5 by Karl-Heinz Zimmer on 23/12/2001 at 22:37..
Adjust and complete the documentation of the new "StructuringInfo" struct and the corresponding free_StructuringInfo() function and - for plugin developers - the corresponding init_StructuringInfo() function
https://invent.kde.org/neon/forks/gpgme/-/commit/4ee79f2416d02ec61ee11759e4dc7414bfae94d5

Git commit 9b1da5342bf0270d1c4ade15d03bb0d16d155d26 by Karl-Heinz Zimmer on 23/12/2001 at 22:47..
now including stdlib.h into the header file to avoid compile time warnings of unknown function free()
https://invent.kde.org/neon/forks/gpgme/-/commit/9b1da5342bf0270d1c4ade15d03bb0d16d155d26

Git commit 95bed553e46d53c89b3e5fdb6e2e7b5bd35e4b60 by Karl-Heinz Zimmer on 24/12/2001 at 00:09..
finished interface of StructuringInfo struct and added implementation of setting it's parameters in our cryptplug signMessage and
encryptmessage functions (setting of parameters in gpgsmplug.c is still missing)
https://invent.kde.org/neon/forks/gpgme/-/commit/95bed553e46d53c89b3e5fdb6e2e7b5bd35e4b60

Git commit e6c1c2828f9dbd89057048e611817ada3607f133 by Karl-Heinz Zimmer on 24/12/2001 at 00:26..
Added specification of strings and bool values for S/MIME signing and encrypting. (note: this new StructuringInfo feature is ignored by KMail at the moment, this is an urgent ToDo item since the KMail sources are _not_ able to use the cryptplug with the changes made today)
https://invent.kde.org/neon/forks/gpgme/-/commit/e6c1c2828f9dbd89057048e611817ada3607f133

Git commit 1e9cbbef87b457457e3f909a285a414a670f1e7e by Karl-Heinz Zimmer on 14/01/2002 at 20:33..
fixed bug in function "storeNewCharPtr()"
https://invent.kde.org/neon/forks/gpgme/-/commit/1e9cbbef87b457457e3f909a285a414a670f1e7e

Git commit 395a2d7944126874c119e065ee4cbfc85d97eefb by Karl-Heinz Zimmer on 15/01/2002 at 08:03..
bug found: no more crashing when calling signing/encoding functions :-)
https://invent.kde.org/neon/forks/gpgme/-/commit/395a2d7944126874c119e065ee4cbfc85d97eefb

Git commit af5bfdd49ef57839940c31966d46fc8578792711 by Marcus Brinkmann on 15/01/2002 at 19:53..
2002-01-15  Marcus Brinkmann  <marcus at g10code.de>

	* gpgmeplug.c: Renamed to ...
	* gpgme-openpgp.c: ... this.  New file.
	* gpgsmplug.c: Renamed to ...
	* gpgme-smime.c: ... this.  new file.
	* Makefile.am: Rewritten to use libtool's module functionality.
https://invent.kde.org/neon/forks/gpgme/-/commit/af5bfdd49ef57839940c31966d46fc8578792711

Git commit 6d275b5d072783864ec3a83cfedb9e86929b2ec1 by Marcus Brinkmann on 15/01/2002 at 19:55..
Added copyright statement for 2002.
https://invent.kde.org/neon/forks/gpgme/-/commit/6d275b5d072783864ec3a83cfedb9e86929b2ec1

Git commit d83e746a0707d5e587e4b09a8ccf12390aa58203 by Marcus Brinkmann on 15/01/2002 at 19:58..
2002-01-13  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c: Various source clean ups, like renaming C to CTX where
	appropriate.
	(gpgme_new): Clear R_CTX before starting the work.
	(my_isdigit): Removed.
	(my_isxdigit): Likewise.

	* data.c: Various source clean ups.
	(gpgme_data_new_from_mem): Check BUFFER after clearing R_DH.
	(gpgme_data_new_with_read_cb): Similar for READ_CB.
	(gpgme_data_new_from_file): Loop over fread while EINTR.
	(gpgme_data_new_from_filepart): Rediddled a bit.  Allow LENGTH to
	be zero.  Loop over fread while EINTR.

	(my_isdigit): Removed.
	(my_isxdigit): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/d83e746a0707d5e587e4b09a8ccf12390aa58203

Git commit 6b1277eae1f66dbb76441cf21507f336552b4fcc by Marcus Brinkmann on 15/01/2002 at 19:59..
New items about various things.
https://invent.kde.org/neon/forks/gpgme/-/commit/6b1277eae1f66dbb76441cf21507f336552b4fcc

Git commit d7c03146742a4de6b5ceb8f4cdce548486036edf by Marcus Brinkmann on 16/01/2002 at 00:41..
2002-01-16  Marcus Brinkmann  <marcus at g10code.de>

	* ChangeLog: New file.
	* gpgme.texi: Likewise.
	* gpl.texi: Likewise.
	* fdl.texi: Likewise.
	* Makefile.am (info_TEXINFOS): New variable.
	(gpgme_TEXINFOS): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/d7c03146742a4de6b5ceb8f4cdce548486036edf

Git commit f3d11ead88f2d02f2bea45eb5310940616e929d7 by Marcus Brinkmann on 16/01/2002 at 00:44..
2002-01-15  Marcus Brinkmann  <marcus at g10code.de>

	* trustlist.c: Various source clean ups.
	(my_isdigit): Removed.
	(gpgme_op_trustlist_end): New function.
https://invent.kde.org/neon/forks/gpgme/-/commit/f3d11ead88f2d02f2bea45eb5310940616e929d7

Git commit d159345f6688831e5612f51e634858988de94f0d by Marcus Brinkmann on 16/01/2002 at 00:44..
* There is a Texinfo manual documenting the API.

 * New interface gpgme_op_trustlist_end() to match
   gpgme_op_keylist_end.
https://invent.kde.org/neon/forks/gpgme/-/commit/d159345f6688831e5612f51e634858988de94f0d

Git commit 6badc536958095b5f09c103fad3added8b43d36b by Marcus Brinkmann on 16/01/2002 at 00:45..
Add information about --enable-maintainer-mode, which is required to built
the documentation from CVS.
https://invent.kde.org/neon/forks/gpgme/-/commit/6badc536958095b5f09c103fad3added8b43d36b

Git commit 2bd5bd9bd041544aad1cd9e4f8c6207e3b2d588f by Marcus Brinkmann on 16/01/2002 at 00:46..
Update all these funny copright notices.
https://invent.kde.org/neon/forks/gpgme/-/commit/2bd5bd9bd041544aad1cd9e4f8c6207e3b2d588f

Git commit 738a0dacf4f75155481a1391289a6ddd76976527 by Marcus Brinkmann on 16/01/2002 at 00:52..
2002-01-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Convert embarassing cruft to the real thing.
https://invent.kde.org/neon/forks/gpgme/-/commit/738a0dacf4f75155481a1391289a6ddd76976527

Git commit 7b09b1e3bcab8f628f2acca86079d7fe4466537c by Marcus Brinkmann on 16/01/2002 at 00:54..
2002-01-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Top): Complete detailmenu.
https://invent.kde.org/neon/forks/gpgme/-/commit/7b09b1e3bcab8f628f2acca86079d7fe4466537c

Git commit ca28bb4f8208b8e1ddf614435d8ec39ec1ad6f79 by Marcus Brinkmann on 16/01/2002 at 02:17..
2002-01-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: g10Code -> g10 Code

	* gpgme.texi (Top): Complete detailmenu.

	* gpgme.texi: Convert embarassing cruft to the real thing.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca28bb4f8208b8e1ddf614435d8ec39ec1ad6f79

Git commit f9dbfb9069abe49029edf9fa919f6c5406fa39b6 by Marcus Brinkmann on 16/01/2002 at 17:48..
2002-01-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-openpgp.c: New file.
	* Makefile.am (gpgme_openpgp_la_SOURCES): Replace gpgmeplug.c with
	gpgme-openpgp.c.
https://invent.kde.org/neon/forks/gpgme/-/commit/f9dbfb9069abe49029edf9fa919f6c5406fa39b6

Git commit 705ff0ac995366331139c7f874bdc22833f47b7d by Marcus Brinkmann on 22/01/2002 at 14:23..
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Generating keys): New subsection.
	(Exporting keys): Likewise.
	(Importing keys): Likewise.
	(Deleting keys): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/705ff0ac995366331139c7f874bdc22833f47b7d

Git commit 8ea8c8832d860f9bb629fd69a946e3db4bbc43f8 by Marcus Brinkmann on 22/01/2002 at 14:24..
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* export.c: Cleanup.
https://invent.kde.org/neon/forks/gpgme/-/commit/8ea8c8832d860f9bb629fd69a946e3db4bbc43f8

Git commit 76209ac6bbe4d51b4a473d503b49a1fa163eb8bf by Marcus Brinkmann on 22/01/2002 at 14:24..
Some more items.
https://invent.kde.org/neon/forks/gpgme/-/commit/76209ac6bbe4d51b4a473d503b49a1fa163eb8bf

Git commit abe732ef1c5add78d9f2877cd56985461c0fec88 by Marcus Brinkmann on 22/01/2002 at 14:25..
Fix copyright year.
https://invent.kde.org/neon/forks/gpgme/-/commit/abe732ef1c5add78d9f2877cd56985461c0fec88

Git commit 6f7d1bc7704fb043439ecaf4fe14261eb56c10ab by Marcus Brinkmann on 22/01/2002 at 15:11..
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* wait.c (_gpgme_wait_on_condition): If the process finished,
	reset the pending flag.  Also if the operation was cancelled.

	(struct proc_s): Rename READY to DONE.
	(wait_item_s): Likewise.
	(set_process_ready): Rename to ...
	(set_process_done): ... this.
	(_gpgme_remove_proc_from_wait_queue): Call set_process_done
	instead set_process_ready.
	(_gpgme_wait_on_condition): Likewise.
	(do_select): Rename READY to DONE.

	* verify.c (gpgme_op_verify): Do not set pending to zero here.
	* sign.c (gpgme_op_sign): Likewise.
	* import.c (gpgme_op_import): Likewise.
	* genkey.c (gpgme_op_genkey): Likewise.
	* export.c (gpgme_op_export): Likewise.
	* encrypt.c (gpgme_op_encrypt): Likewise.
	* delete.c (gpgme_op_delete): Likewise.
	* decrypt-verify.c (gpgme_op_decrypt_verify): Likewise.
	* decrypt.c (gpgme_op_decrypt): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f7d1bc7704fb043439ecaf4fe14261eb56c10ab

Git commit 8270a38b054b228d939c6822ca79f8ba3d57b4e4 by Marcus Brinkmann on 22/01/2002 at 15:21..
doc/
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Creating data buffers): Change
	gpgme_data_new_from_filepart's LENGTH type from off_t to size_t.

gpgme/
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* data.c (gpgme_data_new_from_filepart): Change type of LENGTH
	from off_t to size_t.
	* gpgme.h: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/8270a38b054b228d939c6822ca79f8ba3d57b4e4

Git commit 1e1fb4724cb224ef5fb4e56edb4ba9ff2deceb0f by Marcus Brinkmann on 22/01/2002 at 15:32..
doc/
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Passphrase callback): Change GpgmePassphraseCb's
	R_HD type from void* to void**.

gpgme/
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GpgmePassphraseCb): Change type of R_HD from void* to
	void**.

tests/
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-signers.c (passphrase_cb): Change type of r_hd to void**.
	* gpg/t-sign.c (passphrase_cb): Likewise.
	* gpg/t-decrypt-verify.c (passphrase_cb): Likewise.
	* gpg/t-decrypt.c (passphrase_cb): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/1e1fb4724cb224ef5fb4e56edb4ba9ff2deceb0f

Git commit e70c1842351c98ff59b48d9282ea2a008e961586 by Marcus Brinkmann on 22/01/2002 at 15:34..
Remove obsolete item.
https://invent.kde.org/neon/forks/gpgme/-/commit/e70c1842351c98ff59b48d9282ea2a008e961586

Git commit b863cea7d70e32d0b0bcd84f87f5350818722242 by Marcus Brinkmann on 22/01/2002 at 16:29..
Update to current version in newpg module.
https://invent.kde.org/neon/forks/gpgme/-/commit/b863cea7d70e32d0b0bcd84f87f5350818722242

Git commit 4da57b04cbe754b3b0862b660064799bf329e2dd by Marcus Brinkmann on 22/01/2002 at 16:34..
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (HAVE_JNLIB_LOGGING): Define always for assuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/4da57b04cbe754b3b0862b660064799bf329e2dd

Git commit 498ba7818c52711146f7be8c7e250335f1ed5fe3 by Marcus Brinkmann on 22/01/2002 at 16:36..
2002-01-22  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_release): Call assuan_disconnect,
	not assuan_pipe_disconnect.

	* Makefile.am (libgpgme_la_LIBADD): Change to link assuan and
	jnlib (needed by assuan) statically into libgpgme.  Linking a
	static library into a shared library this way is not portable.
https://invent.kde.org/neon/forks/gpgme/-/commit/498ba7818c52711146f7be8c7e250335f1ed5fe3

Git commit 14fe2162770f4dac4b3f67c9b250e7648bd4fcdb by Marcus Brinkmann on 22/01/2002 at 16:55..
Some small updates.
https://invent.kde.org/neon/forks/gpgme/-/commit/14fe2162770f4dac4b3f67c9b250e7648bd4fcdb

Git commit a5329adab7ace94ca36275191f98165bb41d6aec by Marcus Brinkmann on 22/01/2002 at 18:14..
Delete obsolete item.
https://invent.kde.org/neon/forks/gpgme/-/commit/a5329adab7ace94ca36275191f98165bb41d6aec

Git commit 1c0317ca79087255414330537e4b1a749ee1286b by Werner Koch on 29/01/2002 at 10:04..
* engine-gpgsm.c (_gpgme_gpgsm_op_keylist): Implement secret only mode.

* keylist.c (keylist_colon_handler): Add support for the new "crs"
record type.
https://invent.kde.org/neon/forks/gpgme/-/commit/1c0317ca79087255414330537e4b1a749ee1286b

Git commit 1513ffd32300c81c2d920afb0e17533fc67b6e61 by Marcus Brinkmann on 29/01/2002 at 22:58..
doc/
2002-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Run Control): New section.
	(Verify): Docuent gpgme_get_notation.
	(More Information): New section describing gpgme_get_op_info.

gpgme/
2002-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Add new type GpgmeIdleFunc.  Change type of
	gpgme_register_idle to return and accept this type.
	* wait.c (gpgme_register_idle): Fix type.
	Save and return old value of idle_function.
https://invent.kde.org/neon/forks/gpgme/-/commit/1513ffd32300c81c2d920afb0e17533fc67b6e61

Git commit 89dd219f8d279cd469b51b2b4e987443d62a53cc by Marcus Brinkmann on 29/01/2002 at 22:59..
Add copyright year.
https://invent.kde.org/neon/forks/gpgme/-/commit/89dd219f8d279cd469b51b2b4e987443d62a53cc

Git commit 785991aa9ac6c2c7ba994fcb69f988ad21016df2 by Marcus Brinkmann on 30/01/2002 at 01:17..
doc/
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Add all the gpgme_op_*_start functions.
	Fill the concept index with many, many entries.

gpgme/
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Add lots of comment and fix the formatting.  Add
	gpgme_trustlist_end prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/785991aa9ac6c2c7ba994fcb69f988ad21016df2

Git commit 843c3f4b7825ef482b0f88a2010eb48fc46c9129 by Marcus Brinkmann on 30/01/2002 at 01:21..
Add more about status handler.
https://invent.kde.org/neon/forks/gpgme/-/commit/843c3f4b7825ef482b0f88a2010eb48fc46c9129

Git commit 648db717445ce93ffe264d04fb1edbecda287869 by Marcus Brinkmann on 30/01/2002 at 01:43..
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Some spell checking.
https://invent.kde.org/neon/forks/gpgme/-/commit/648db717445ce93ffe264d04fb1edbecda287869

Git commit 1677f80d7e0e6991d40978a1131bfba6fb919bf4 by Marcus Brinkmann on 30/01/2002 at 01:47..
Be a bit clearer.
https://invent.kde.org/neon/forks/gpgme/-/commit/1677f80d7e0e6991d40978a1131bfba6fb919bf4

Git commit 088c044792fd352b0dcb00bb31cc40aec38d3ebf by Marcus Brinkmann on 30/01/2002 at 21:52..
doc/
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Importing Keys): Add reference to gpgme_get_op_info.

gpgme/
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* import.c (struct import_result_s): New structure.
	(_gpgme_release_import_result): New function.
	(append_xml_impinfo): Likewise.
	(import_status_handler): Implement.
	* gpgme.c (_gpgme_release_result): Add call to
	_gpgme_release_import_result.
	* ops.h (_gpgme_release_impoer_result): Add prototype.
	* types.h (ImportResult): New type.
	* context.h (gpgme_context_s): Add ImportResult to member result.

	* encrypt.c (gpgme_op_encrypt): Code clean up.

tests/
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-import.c (print_op_info): New function.
	(main): Use it.
https://invent.kde.org/neon/forks/gpgme/-/commit/088c044792fd352b0dcb00bb31cc40aec38d3ebf

Git commit 9f622905cc70ac2c1e1732e4a6940179c9be0deb by Marcus Brinkmann on 30/01/2002 at 22:45..
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (_gpgme_release_result): Call
	_gpgme_release_delete_result.
	* ops.h (_gpgme_release_delete_result): Add prototype.
	* types.h (DeleteResult): New type.
	* context.h (gpgme_context_s): Add DeleteResult to member result.

	* delete.c (enum delete_problem): New type.
	(struct delete_result_s): New structure.
	(_gpgme_release_delete_result): New function.
	(delete_status_handler): Implement more status codes.
	(gpgme_op_delete): Return error on failure.

	* import.c (MAX_IMPORTED_FIELDS): Bump up to 14.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f622905cc70ac2c1e1732e4a6940179c9be0deb

Git commit ca5e3a09e3e18419beaefd3d8536e83da45ae215 by Marcus Brinkmann on 30/01/2002 at 22:48..
2002-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Deleting Keys): Document new error values.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca5e3a09e3e18419beaefd3d8536e83da45ae215

Git commit 129da707d1464633595151e70b3982cc3bbe5496 by Marcus Brinkmann on 31/01/2002 at 00:31..
doc/
2002-01-31  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Generating Keys): Document error at creation
	failure.

gpgme/
2002-01-31  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.h: Add STATUS_KEY_CREATED.

	* progress.c: New file.
	* Makefile.am (libgpgme_la_SOURCES): Add progress.c.

	* genkey.c (genkey_status_handler): Use
	_gpgme_progress_status_handler.  Add check for status.
	(struct genkey_result_s): New structure.
	(_gpgme_release_genkey_result): New function.
	(gpgme_op_genkey): Check for error.
	* gpgme.c (_gpgme_release_result): Call
	_gpgme_release_genkey_result.
	* ops.h (_gpgme_release_genkey_result): Add prototype.
	* types.h (GenKeyResult): New type.
	* context.h (gpgme_context_s): Add GenKeyResult to member result.
https://invent.kde.org/neon/forks/gpgme/-/commit/129da707d1464633595151e70b3982cc3bbe5496

Git commit ebd6ac7b7d6f2cccb7e5846acb7cea9fadcecfad by Marcus Brinkmann on 31/01/2002 at 15:27..
Really add this file.
https://invent.kde.org/neon/forks/gpgme/-/commit/ebd6ac7b7d6f2cccb7e5846acb7cea9fadcecfad

Git commit 3139e2b91a1f80ac0b80d99dff9030a6aff29d8f by Marcus Brinkmann on 01/02/2002 at 18:10..
2002-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_status_handler): At error, terminate the
	connection to the server.
https://invent.kde.org/neon/forks/gpgme/-/commit/3139e2b91a1f80ac0b80d99dff9030a6aff29d8f

Git commit c38622cebf72d2ba6dc54acb4e753db494fbfade by Marcus Brinkmann on 01/02/2002 at 19:54..
Update to latest version.
https://invent.kde.org/neon/forks/gpgme/-/commit/c38622cebf72d2ba6dc54acb4e753db494fbfade

Git commit f40bc63ac9a6b5b394728720ea7879a0d24a48bb by Marcus Brinkmann on 01/02/2002 at 20:28..
2002-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (EXTRA_gpgme_openpgp_la_SOURCES): New variable.
	(EXTRA_gpgme_smime_la_SOURCES): Likewise.

	* gpgmeplug.c (passphrase_cb): Fix type of third argument.
https://invent.kde.org/neon/forks/gpgme/-/commit/f40bc63ac9a6b5b394728720ea7879a0d24a48bb

Git commit 92bbc396167f443426133e3d3ed50f8a2b8c8729 by Marcus Brinkmann on 01/02/2002 at 20:28..
2002-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (MOSTLYCLEANFILES): New variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/92bbc396167f443426133e3d3ed50f8a2b8c8729

Git commit 1f5180f4b0deb966bbba52d61f9235f788cd7b64 by Marcus Brinkmann on 02/02/2002 at 03:52..
2002-02-02  Marcus Brinkmann  <marcus at g10code.de>

	This patch has gotten a bit large... mmh.  The main thing that
	happens here is that error values are now not determined in the
	operation function after gpgme_wait completed, but in the status
	handler when EOF is received.  It should always be the case that
	either an error is flagged or EOF is received, so that after a
	gpgme_wait you should never have the situation that no error is
	flagged and EOF is not received.  One problem is that the engine
	status handlers don't have access to the context, a horrible
	kludge works around this for now.  All errors that happen during a
	pending operation should be catched and reported in ctx->error,
	including out-of-core and cancellation.  This rounds up neatly a
	couple of loose ends, and makes it possible to pass up any errors
	in the communication with the backend as well.  As a bonus, there
	will be a function to access gpgme->wait, so that the operations
	can truly be implemented with their _start function.

	* engine-gpgsm.c (gpgsm_status_handler): Horrible kludge to report
	error back to the context.
	* rungpg.c (gpg_status_handler): Same horrible kludge applied here.

	* engine-gpgsm.c (gpgsm_assuan_simple_command): Add error checking.

	* wait.c (_gpgme_wait_on_condition): If canceled, set CTX->error
	to a value indication that.

	* verify.c (add_notation): Set error, not out_of_core.
	(finish_sig): Likewise.
	(gpgme_op_verify_start): Don't clear out_of_core.
	(_gpgme_verify_status_handler): At EOF, clean up the notation data.
	(gpgme_op_verify): And don't do it here.

	* trustlist.c (trustlist_status_handler): Check error, not out_of_core.
	(gpgme_op_trustlist_start): Don't clear out_of_core.
	(gpgme_op_trustlist_next): Check error, not out_of_core.
	(gpgme_op_trustlist_end): Likewise.

	* ops.h (test_and_allocate_result): New macro.
	(_gpgme_passphrase_result): Remove prototype.
	* delete.c (gpgme_op_delete): Return error from context.
	(delete_status_handler): Use macro test_and_allocate_result.
	Perform error checking at EOF.
	(gpgme_op_delete_start): Release result.
	* passphrase.c (_gpgme_passphrase_status_handler): Use macro
	test_and_allocate_result, and perform error checking here.
	(_gpgme_passphrase_result): Function removed.
	* sign.c (gpgme_op_sign_start): Do not set out_of_core to zero.
	(gpgme_op_sign): Just return the error value from the context.
	(sign_status_handler): Only progress if no error is set yet.  If
	we process an EOF, set the resulting error value (if any).
	* decrypt.c (_gpgme_decrypt_result): Function removed.
	(create_result_struct): Function removed.
	(_gpgme_decrypt_status_handler): Use macro test_and_allocate_result,
	caclulate error on EOF, do not progress with errors.
	(_gpgme_decrypt_start): Do not set out_of_core to zero.
	(gpgme_op_decrypt): Just return the error value from the context.
	* encrypt.c (encrypt_status_handler): Perform the error checking
	here.
	(gpgme_op_encrypt_start): Do not clear out_of_core.
	* export.c (export_status_handler): Return if error is set in context.
	(gpgme_op_export_start): Release result.
	(gpgme_op_export): Return error from context.
	* decrypt-verify.c (gpgme_op_decrypt_verify): Return the error in
	the context.
	* genkey.c (genkey_status_handler): Use macro
	test_and_allocate_result.  Perform error checking at EOF.
	(gpgme_op_genkey): Just return the error from context.
	* import.c (gpgme_op_import): Return the error from context.
	(import_status_handler): Use macro test_and_allocate_result.
	* keylist.c (gpgme_op_keylist_start): Do not clear out_of_core.
	(gpgme_op_keylist_next): Return error of context.
	(keylist_colon_handler): Set error instead out_of_code.
	(finish_key): Likewise.

	* context.h: Remove member out_of_core, add member error.
	* gpgme.c (_gpgme_release_result): Clear error flag.

	* engine.h (_gpgme_engine_get_error): New prototype.
	* engine.c (_gpgme_engine_get_error): New function.
	* engine-gpgsm.c (_gpgme_gpgsm_get_error): New function.

	* engine-gpgsm.c (map_assuan_error): New function.
	(gpgsm_assuan_simple_command): Change return type to GpgmeError,
	use the new function to map error values.
	(gpgsm_set_fd): Change return type tp GpgmeError.
	(_gpgme_gpgsm_op_decrypt): Change type of ERR to GpgmeError.
	(gpgsm_set_recipients): Likewise.  Change type of return value
	equivalently.  Adjust error values.
	(_gpgme_gpgsm_op_import): Likewise.
	(_gpgme_gpgsm_op_sign): Likewise.
	(struct gpgsm_object_s): New member error.
	(gpgsm_status_handler): Set error if error occurs.  Determine
	error number from ERR line received.  If assuan_read_line fails,
	terminate the connection.
https://invent.kde.org/neon/forks/gpgme/-/commit/1f5180f4b0deb966bbba52d61f9235f788cd7b64

Git commit 4fa30089501b479a5e57086c8ce3de7c90c5dff1 by Marcus Brinkmann on 06/02/2002 at 00:08..
doc/
2002-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Listing Mode): Update documentation.

gpgme/
2002-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_set_keylist_mode): Possibly return an error
	value.
	(gpgme_get_keylist_mode): New function.
	(gpgme_new): Set the default for keylist_mode member of CTX.

	* gpgme.h (gpgme_set_keylist_mode): Fix prototype.
	(gpgme_get_keylist_mode): New prototype.
	(GPGME_KEYLIST_MODE_LOCAL): New macro.
	(GPGME_KEYLIST_MODE_EXTERN): Likewise..
https://invent.kde.org/neon/forks/gpgme/-/commit/4fa30089501b479a5e57086c8ce3de7c90c5dff1

Git commit 69ab559a7b7ea9f05b68911d17bb33b7f85c033c by Marcus Brinkmann on 06/02/2002 at 01:20..
doc/
2002-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Waiting For Completion): Adjust doc to changes in
	the code.

gpgme/
2002-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* wait.c (gpgme_wait): Add new argument STATUS, in which the
	status of the returned context is returned.
	(_gpgme_wait_on_condition): Rework the function a bit, to make it
	aware of cancelled processes, and to allow to use gpgme_wait with
	CTX being NULL (as documented in the source).
	(struct proc_s): New member REPORTED.
	* gpgme.h: Fix prototype.
	* verify.c (gpgme_op_verify): Fix use of gpgme_wait.
	* sign.c (gpgme_op_sign):
	* import.c (gpgme_op_import):
	* genkey.c (gpgme_op_genkey):
	* export.c (gpgme_op_export):
	* encrypt.c (gpgme_op_encrypt):
	* delete.c (gpgme_op_delete):
	* decrypt-verify.c (gpgme_op_decrypt_verify):
https://invent.kde.org/neon/forks/gpgme/-/commit/69ab559a7b7ea9f05b68911d17bb33b7f85c033c

Git commit 4d40fcd82e51f040d7e6933639f591040c92d3d8 by Marcus Brinkmann on 06/02/2002 at 01:21..
Fill in some missing repetitive "Likewise." explanations.
https://invent.kde.org/neon/forks/gpgme/-/commit/4d40fcd82e51f040d7e6933639f591040c92d3d8

Git commit a758f4c7185ff8e12d3a66d9f230fb82cfaa9e8a by Marcus Brinkmann on 06/02/2002 at 01:30..
Update some items.
https://invent.kde.org/neon/forks/gpgme/-/commit/a758f4c7185ff8e12d3a66d9f230fb82cfaa9e8a

Git commit 2cb125ccf6f2e62df57f8f8b43872411dfad550c by Marcus Brinkmann on 06/02/2002 at 01:34..
2002-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_op_keylist): Remove handling of keylist
	mode (for now).
https://invent.kde.org/neon/forks/gpgme/-/commit/2cb125ccf6f2e62df57f8f8b43872411dfad550c

Git commit 0bd08bafd9732d9bc16d4de2d7b0dd00b079df3d by Marcus Brinkmann on 06/02/2002 at 01:40..
Some minor source code cleanup.
https://invent.kde.org/neon/forks/gpgme/-/commit/0bd08bafd9732d9bc16d4de2d7b0dd00b079df3d

Git commit 92d18cde9ee8ef1de1806f5a3863210a281f4afc by Marcus Brinkmann on 06/02/2002 at 01:41..
Add 2002 as copyright year for files changed recently without updating the
year.
https://invent.kde.org/neon/forks/gpgme/-/commit/92d18cde9ee8ef1de1806f5a3863210a281f4afc

Git commit 6f2245b35dfb5f468245057f33ba194fc2839be5 by Marcus Brinkmann on 08/02/2002 at 22:36..
2002-02-08  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile.am (key_id): Update value.
	(all-local): Add .key to keyid filename.
	(./private-keys-v1.d/$(key_id)): Renamed to ...
	(./private-keys-v1.d/$(key_id).key): ... this.
	(all-local): Add ./gpgsm.conf, ./trustlist.txt.
	(./gpgsm.conf, ./trustlist.txt): New target.
	* gpgsm/567064FE6D14A17B2D811ABB407728BC558AA455: Renamed to ...
	* gpgsm/32100C27173EF6E9C4E9A25D3D69F86D37A4F939: ... this.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f2245b35dfb5f468245057f33ba194fc2839be5

Git commit f0a45d0c20abe8bda33e275277da6d3cea434f49 by Marcus Brinkmann on 08/02/2002 at 22:43..
2002-02-08  Marcus Brinkmann  <marcus at g10code.de>

	* genkey.c (gpgme_op_genkey_start): Allow PUBKEY and SECKEY to be
	set, and pass them down to the crypto engine.
	* engine-gpgsm.h (_gpgme_gpgsm_start): New arguments PUBKEY and SECKEY.
	* engine.h: Likewise.
	* rungpg.h (_gpgme_gpg_spawn): Likewise.
	* engine.c (_gpgme_engine_op_genkey): Likewise.  Use those
	arguments.
	* rungpg.c (_gpgme_gpg_op_genkey): Likewise.  Complain if those
	arguments are set.
	* engine-gpgsm.c (_gpgme_gpgsm_op_genkey): Likewise.  Implement
	function.

	* engine-gpgsm.c (_gpgme_gpgsm_op_keylist): Beautify comment.
https://invent.kde.org/neon/forks/gpgme/-/commit/f0a45d0c20abe8bda33e275277da6d3cea434f49

Git commit 82b7dc1d294c43f50515fac448aa44dcf716baf2 by Marcus Brinkmann on 09/02/2002 at 00:06..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* genkey.c (gpgme_op_genkey_start): Fix logic in validity check.
	(gpgme_op_genkey_start): Skip newlines after opening tag.

	* engine-gpgsm.c (_gpgme_gpgsm_start): Remove cruft.
https://invent.kde.org/neon/forks/gpgme/-/commit/82b7dc1d294c43f50515fac448aa44dcf716baf2

Git commit 4286ebe12275e2eddf125bb8e91297fa7c5f88ea by Marcus Brinkmann on 09/02/2002 at 00:07..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-genkey.c: New file (not added to Makefile.am because of
	gpg-agent bug).
https://invent.kde.org/neon/forks/gpgme/-/commit/4286ebe12275e2eddf125bb8e91297fa7c5f88ea

Git commit b6a71ec888a50f7811c49a0bf976a9906b38569c by Marcus Brinkmann on 09/02/2002 at 00:20..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Detailed Results): Remove literal tags.
	(Generating Keys): Update documentation.
https://invent.kde.org/neon/forks/gpgme/-/commit/b6a71ec888a50f7811c49a0bf976a9906b38569c

Git commit bccaa95b2722eca22721cbc759a9cbf3ae116306 by Marcus Brinkmann on 09/02/2002 at 00:26..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* Released 0.3.1.

	* configure.ac (LIBGPGME_LT_CURRENT): Bump it up to 6!
	(NEED_GPGSM_VERSION): Bump it up to 0.3.0!
https://invent.kde.org/neon/forks/gpgme/-/commit/bccaa95b2722eca22721cbc759a9cbf3ae116306

Git commit d85fac92fddb9fd32741953324a2237f14cbdcfa by Marcus Brinkmann on 09/02/2002 at 00:35..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Generating Keys): Fix syntax error.
https://invent.kde.org/neon/forks/gpgme/-/commit/d85fac92fddb9fd32741953324a2237f14cbdcfa

Git commit 69bafd50b5981590779d5de2510fbbecb1f65a11 by Marcus Brinkmann on 09/02/2002 at 00:58..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_assuan_simple_command): Return 0 if we
	reach the end of the function.
https://invent.kde.org/neon/forks/gpgme/-/commit/69bafd50b5981590779d5de2510fbbecb1f65a11

Git commit b7ac6614ddf75f836635060ecab87b9b3a28f2fb by Marcus Brinkmann on 09/02/2002 at 00:58..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile.am (./private-keys-v1.d/$(key_id).key): Fix rule.
https://invent.kde.org/neon/forks/gpgme/-/commit/b7ac6614ddf75f836635060ecab87b9b3a28f2fb

Git commit 3cd7f60612a352aa3f863095b19c2e496f6210e1 by Marcus Brinkmann on 09/02/2002 at 00:59..
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_INIT): Bump version to 0.3.1
https://invent.kde.org/neon/forks/gpgme/-/commit/3cd7f60612a352aa3f863095b19c2e496f6210e1

Git commit 55cd54f02b0781cdf74485abf7a107ce7720d229 by Marcus Brinkmann on 09/02/2002 at 01:04..
Update as edited by configure.
https://invent.kde.org/neon/forks/gpgme/-/commit/55cd54f02b0781cdf74485abf7a107ce7720d229

Git commit a77a47722b0b56067dd727594208c03691719234 by Marcus Brinkmann on 09/02/2002 at 21:41..
Revert last change to this file.
https://invent.kde.org/neon/forks/gpgme/-/commit/a77a47722b0b56067dd727594208c03691719234

Git commit cfa8bcd1749638550108f8fe0318c5ca11b2c865 by Marcus Brinkmann on 10/02/2002 at 13:31..
2002-02-10  Marcus Brinkmann  <marcus at g10code.de>

	* Released 0.3.2.

	* configure.ac (AC_INIT): Bump version to 0.3.2.
	* jnlib/libjnlibconfig.h: Revert to older version that doesn't
	expect libgcrypt.  Reported by Jose Carlos Garcia Sogo
	<jsogo at debian.org>.
2002-02-09  Marcus Brinkmann  <marcus at g10code.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/cfa8bcd1749638550108f8fe0318c5ca11b2c865

Git commit 7ee386958f087a2970e710ab6ce5e31f38d71095 by Marcus Brinkmann on 12/02/2002 at 17:57..
Reverting last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ee386958f087a2970e710ab6ce5e31f38d71095

Git commit 10750fcfd9e27be2158e5f7de002f4425c74b987 by Marcus Brinkmann on 12/02/2002 at 22:08..
2002-02-12  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_INIT): Bump version to 0.3.3.
	* jnlib/Makefile.am: Rever to older version that includes xmalloc
	but not dotlock and some other files.  Reported by St�phane
	Corth�sy.

tests/
2002-02-12  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (CLEANFILES): New target.
	(distclean-local): Rename to ...
	(clean-local): ... this.
https://invent.kde.org/neon/forks/gpgme/-/commit/10750fcfd9e27be2158e5f7de002f4425c74b987

Git commit d8119956bbc6479ab0c26e341d577faf30236e67 by Werner Koch on 13/02/2002 at 14:59..
* configure.ac (vasprintf,fopencookie): Add checks.
https://invent.kde.org/neon/forks/gpgme/-/commit/d8119956bbc6479ab0c26e341d577faf30236e67

Git commit 822e098fed14693690ad64b21255f937771d1524 by Werner Koch on 13/02/2002 at 14:59..
* vasprintf.c, fopencookie.c: Add replacement functions.
* util.h: Add prototypes for them.
https://invent.kde.org/neon/forks/gpgme/-/commit/822e098fed14693690ad64b21255f937771d1524

Git commit accc40c84a9d00ff4e577c4ef348fb78ad137add by Werner Koch on 13/02/2002 at 15:02..
* gpgsm/Makefile.am (private-keys-v1.d): Don't
fail when the directory already exists.
https://invent.kde.org/neon/forks/gpgme/-/commit/accc40c84a9d00ff4e577c4ef348fb78ad137add

Git commit 948ee49ff7f62579d3a08eba849f71529f08805d by Werner Koch on 13/02/2002 at 15:05..
Write a fake gpg-agent so that we can supply known passphrases to
gpgsm and setup the configuration files to use the agent.  Without
this we are testing a currently running gpg-agent which is not a
clever idea.
https://invent.kde.org/neon/forks/gpgme/-/commit/948ee49ff7f62579d3a08eba849f71529f08805d

Git commit 89114b8162af6db6b1433c0d8b2391386d5bec24 by Steffen Hansen on 13/02/2002 at 19:23..
Removed temporary passphrase callback
https://invent.kde.org/neon/forks/gpgme/-/commit/89114b8162af6db6b1433c0d8b2391386d5bec24

Git commit 9eb5c192b3a13a7b32fe95c8d5f7aaead78274f6 by Werner Koch on 14/02/2002 at 12:43..
* keylist.c (gpgme_op_keylist_start): Do not use a verbose listing.
https://invent.kde.org/neon/forks/gpgme/-/commit/9eb5c192b3a13a7b32fe95c8d5f7aaead78274f6

Git commit cebb31b4dc502f6d09e1d86dcea0922410d9831f by Karl-Heinz Zimmer on 18/02/2002 at 16:45..
fixed wrong GPGMEPLUG_SIGN_CTYPE_CODE parameter for S/MIME
https://invent.kde.org/neon/forks/gpgme/-/commit/cebb31b4dc502f6d09e1d86dcea0922410d9831f

Git commit 98bee1303f7208f5b5a9c99f914d4e564a8c2215 by Marcus Brinkmann on 25/02/2002 at 18:31..
doc/
2002-02-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Creating a Signature): Add a note about
	certifications to include.
	(Included Certifications): New section.

gpgme/
2002-02-25  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (struct gpgme_context_s): New member include_certs.
	* gpgme.h (gpgme_set_include_certs): Add prototype.
	(gpgme_get_include_certs): Likewise.
	* gpgme.c (gpgme_set_include_certs): New function.
	(gpgme_get_include_certs): Likewise.
	(gpgme_new): Set include_certs to 1 (the default).
	* engine.c (_gpgme_engine_op_sign): Accept new argument include_certs,
	and pass it to _gpgme_gpgsm_op_sign.
	* engine.h (_gpgme_engine_op_sign): Likewise for prototype.
	* engine-gpgsm.c (_gpgme_gpgsm_op_sign): Accept new argument
	include_certs and handle it.
	* engine-gpgsm.h (_gpgme_gpgsm_start): Add new argument include_certs.
	* sign.c (gpgme_op_sign_start): Add new argument to
	_gpgme_engine_op_sign call.
https://invent.kde.org/neon/forks/gpgme/-/commit/98bee1303f7208f5b5a9c99f914d4e564a8c2215

Git commit 5547faf658f4dd4589694826883c60b82000fb72 by Marcus Brinkmann on 25/02/2002 at 18:34..
Fix typo.
https://invent.kde.org/neon/forks/gpgme/-/commit/5547faf658f4dd4589694826883c60b82000fb72

Git commit d75d6fb26208d3f135a99126c70f20396c6e458c by Marcus Brinkmann on 25/02/2002 at 19:08..
2002-02-25  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (_gpgme_verify_status_handler): Parse the args line to
	see if the problem is due to a missing key, and report that back
	to the user.
https://invent.kde.org/neon/forks/gpgme/-/commit/d75d6fb26208d3f135a99126c70f20396c6e458c

Git commit c22974f99f1d91d49f365a375befc4b87ccfc63f by Marcus Brinkmann on 26/02/2002 at 00:08..
doc/
2002-02-26  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Encrypting a Plaintext): Document
	gpgme_op_encrypt_sign and gpgme_op_encrypt_sign_start.

gpgme/
2002-02-25  Marcus Brinkmann  <marcus at g10code.de>

	* engine.c (_gpgme_engine_op_encrypt_sign): New function.
	* engine.h (_gpgme_engine_op_encrypt_sign): New prototype.
	* rungpg.c (_gpgme_append_gpg_args_from_signers): New function.
	(_gpgme_gpg_op_sign): Use that new function.
	(_gpgme_gpg_op_encrypt_sign): New function.
	* rungpg.h (_gpgme_gpg_op_encrypt_sign): New prototype.
	* gpgme.h (gpgme_op_encrypt_sign_start): New prototype.
	(gpgme_op_encrypt_sign): Likewise.
	* Makefile.am (libgpgme_la_SOURCES): Add encrypt-sign.c.
	* ops.h (_gpgme_encrypt_status_handler): Add prototype.
	(_gpgme_sign_status_handler): Add prototype.
	* sign.c (sign_status_handler): Rename to ...
	(_gpgme_sign_status_handler): ... this and make non-static.
	* encrypt.c (encrypt_status_handler): Rename to ...
	(_gpgme_encrypt_status_handler): ... this and make non-static.
	* encrypt.c (gpgme_op_encrypt_start): Use new status handler name.
	* sign.c (gpgme_op_sign_start): Likewise.

tests/
2002-02-26  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-encrypt-sign.c: New file.
	* gpg/Makefile.am (TESTS): Add t-encrypt-sign.
https://invent.kde.org/neon/forks/gpgme/-/commit/c22974f99f1d91d49f365a375befc4b87ccfc63f

Git commit 82b1feb99234b5d17e1464300715af2f282570bd by Karl-Heinz Zimmer on 26/02/2002 at 01:01..
now signMessage() calls the gpgme_set_include_certs() function before each call of gpgme_op_sign
https://invent.kde.org/neon/forks/gpgme/-/commit/82b1feb99234b5d17e1464300715af2f282570bd

Git commit 00d2d15d81094af7f3c5980eeb31f6b1eb14ce65 by Marcus Brinkmann on 26/02/2002 at 22:41..
2002-02-26  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (_gpgme_verify_status_handler): Fix the last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/00d2d15d81094af7f3c5980eeb31f6b1eb14ce65

Git commit 85c7100872319b1a755d0bdafc61c9ebb6f5a0aa by Marcus Brinkmann on 26/02/2002 at 23:19..
2002-02-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgmeplug.c (signMessage): Fix code syntax.
https://invent.kde.org/neon/forks/gpgme/-/commit/85c7100872319b1a755d0bdafc61c9ebb6f5a0aa

Git commit 31b2a458ff66a70fffe587448d60044b7127b795 by Marcus Brinkmann on 26/02/2002 at 23:39..
doc/
2002-02-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Encrypting a Plaintext): Document
	GPGME_Invalid_Recipients.
	(Error Values): Likewise.

gpgme/
2002-02-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Add new error code GPGME_Invalid_Recipient.
	* encrypt.c (struct encrypt_result_s): New member invalid_recipients,
	rename no_recipients to no_valid_recipients.
	(_gpgme_encrypt_status_handler): Include error for invalid
	recipients.
	* engine-gpgsm.c (gpgsm_set_recipients): Change type of first
	argument to GpgsmObject.  Use that to report back the status about
	the recipients.
https://invent.kde.org/neon/forks/gpgme/-/commit/31b2a458ff66a70fffe587448d60044b7127b795

Git commit da2cd9aa44fbe2ecdcf0c93d97e6cc5133ea6694 by Marcus Brinkmann on 27/02/2002 at 00:59..
doc/
2002-02-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Listing Keys): Document gpgme_op_keylist_ext_start.

gpgme/
2002-02-27  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.h (_gpgme_gpg_op_keylist_ext): New prototype.
	* rungpg.c (_gpgme_gpg_op_keylist_ext): New function.
	* engine-gpgsm.h (_gpgme_gpgsm_op_keylist_ext): New prototype.
	* engine-gpgsm.c (_gpgme_gpgsm_op_keylist_ext): New function.
	* engine.h (_gpgme_engine_op_keylist_ext): New prototype.
	* engine.c (_gpgme_engine_op_keylist_ext): New function.
	* keylist.c (gpgme_op_keylist_ext_start): New function.
https://invent.kde.org/neon/forks/gpgme/-/commit/da2cd9aa44fbe2ecdcf0c93d97e6cc5133ea6694

Git commit 44edbc7d417fff36971cbdda4c4bc39e80d3a283 by Matthias Kalle Dalheimer on 27/02/2002 at 20:59..
select the signature algorithm - dummy in gpgme.c
https://invent.kde.org/neon/forks/gpgme/-/commit/44edbc7d417fff36971cbdda4c4bc39e80d3a283

Git commit fccdbcf2113152763388648430e364afa2cd375c by Werner Koch on 28/02/2002 at 07:29..
Removed the gpgme_set_signature_algorithm stuff.  We can't add a
function to our API without discussion the consequences of.  By design
the signature algorithm is a property of the signer's key and can't be
set arbitrary.  The library is named GnuPG Made Easy so we should not
burden the user with an API to select stuff which can only be done by
the backend.  Changes in gpgme require support by the backend.  If we
have the requirement to implement it, it will be done as a global
configuration option for signers or as meta-data asscociated with a
certificates for recipients. I habe not found this as a requirement of
the Aegypten project.
https://invent.kde.org/neon/forks/gpgme/-/commit/fccdbcf2113152763388648430e364afa2cd375c

Git commit df8e9fa1e0733199d705e93cd10bea61fc7884f6 by Matthias Kalle Dalheimer on 28/02/2002 at 07:49..
Marked up where g10 needs to implement the selection of the signature algorithm
https://invent.kde.org/neon/forks/gpgme/-/commit/df8e9fa1e0733199d705e93cd10bea61fc7884f6

Git commit 573daabba9c739b10d93bf3f960efb001390b0da by Matthias Kalle Dalheimer on 28/02/2002 at 09:14..
Implemented warning when the certificates used for signing are about to
expire
https://invent.kde.org/neon/forks/gpgme/-/commit/573daabba9c739b10d93bf3f960efb001390b0da

Git commit cb18fe8dd6bbc5c282ebf483287834bc28dab708 by Matthias Kalle Dalheimer on 28/02/2002 at 09:16..
*** empty log message ***
https://invent.kde.org/neon/forks/gpgme/-/commit/cb18fe8dd6bbc5c282ebf483287834bc28dab708

Git commit 0857c5cfdd6ec39f39f035bce5237c0d0e43c380 by Werner Koch on 28/02/2002 at 09:53..
* key.h (subkey_s): New member expires_at.
* keylist.c (keylist_colon_handler): Set it here
* key.c (gpgme_key_get_as_xml,gpgme_key_get_ulong_attr): Return it.
https://invent.kde.org/neon/forks/gpgme/-/commit/0857c5cfdd6ec39f39f035bce5237c0d0e43c380

Git commit 8b21fdb6b869d47152ce538c602f9c56a302c80d by Matthias Kalle Dalheimer on 28/02/2002 at 12:09..
Support for checking whether the signer's email address is contained in
his certificate.
https://invent.kde.org/neon/forks/gpgme/-/commit/8b21fdb6b869d47152ce538c602f9c56a302c80d

Git commit bf3eccd56409e48694a7d1a166af473a70c94cb9 by Matthias Kalle Dalheimer on 01/03/2002 at 16:55..
Support for asking the for the PIN a certain number of times.
https://invent.kde.org/neon/forks/gpgme/-/commit/bf3eccd56409e48694a7d1a166af473a70c94cb9

Git commit cea9be523e9d0c3253a5f6d6d45afa5b3260cd8f by Matthias Kalle Dalheimer on 01/03/2002 at 17:54..
Support for warning when a CRL expires
https://invent.kde.org/neon/forks/gpgme/-/commit/cea9be523e9d0c3253a5f6d6d45afa5b3260cd8f

Git commit a38a8c4daaa04e8ee81baba94158572e13348381 by Marcus Brinkmann on 03/03/2002 at 14:50..
2002-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_keylist_ext) [!ENABLE_GPGSM]:
	Add stub function.
https://invent.kde.org/neon/forks/gpgme/-/commit/a38a8c4daaa04e8ee81baba94158572e13348381

Git commit 7d0eebf41a7374a3dc66c9fc138e5470bea0af42 by Marcus Brinkmann on 03/03/2002 at 16:46..
doc/
2002-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Document verification of normal and
	cleartext signatures.

gpgme/
2002-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_op_verify): If TEXT is of mode
	GPGME_DATA_MODE_IN, construct a command line that stores the
	plaintext in TEXT.
	* verify.c (gpgme_op_verify_start): Accept TEXT being
	uninitialized, and in this case interpret SIG as a normal or
	cleartext signature and TEXT as a return data object.
	* engine-gpgsm.c (_gpgme_gpgsm_op_verify): Likewise.

tests/
2002-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-verify.c (main): Add a few more sanity checks, and a check
	for normal signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/7d0eebf41a7374a3dc66c9fc138e5470bea0af42

Git commit 3c9959368e0099af4ef8c27953d7fc3c3d4cea29 by Marcus Brinkmann on 03/03/2002 at 17:37..
doc/
2002-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Information About Keys): Document GPGME_ATTR_EXPIRE.

gpgme/
2002-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* passphrase.c (_gpgme_passphrase_status_handler): Also set the
	error No_Passphrase if only a bad passphrase was provided.
https://invent.kde.org/neon/forks/gpgme/-/commit/3c9959368e0099af4ef8c27953d7fc3c3d4cea29

Git commit 2ea755aaf40e15efd870f38c9356aa06b68577c3 by Marcus Brinkmann on 03/03/2002 at 19:40..
2002-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_INIT): Change version number to snapshot CVS
	version.
https://invent.kde.org/neon/forks/gpgme/-/commit/2ea755aaf40e15efd870f38c9356aa06b68577c3

Git commit bcd5749348b2ff1b45c43c7f28192eb67602d967 by Werner Koch on 04/03/2002 at 11:16..
* gpg/Makefile.am (DISTCLEANFILES): Added.
* configure.ac: Bumbed LT version numbers to (7,1,0), requires
gpgsm 0.3.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/bcd5749348b2ff1b45c43c7f28192eb67602d967

Git commit 6616ce295f98ccd3e3d9176fa5c513415a795a16 by Werner Koch on 04/03/2002 at 11:39..
* configure.ac: Bumbed version to 0.3.4-cvs to continue development.
https://invent.kde.org/neon/forks/gpgme/-/commit/6616ce295f98ccd3e3d9176fa5c513415a795a16

Git commit b0bfb987af1c7e88a2aede7377e49e1e935a88fb by Marcus Brinkmann on 05/03/2002 at 20:22..
2002-03-05  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (CLEANFILES): Remove random_seed, which is now
	in DISTCLEANFILES.
https://invent.kde.org/neon/forks/gpgme/-/commit/b0bfb987af1c7e88a2aede7377e49e1e935a88fb

Git commit 704a1b05b324ca30ed9dd0dbbbfc849f8f56b914 by Karl-Heinz Zimmer on 05/03/2002 at 21:23..
Changed interface: additionally we now pass the following parameters into the checkMessageSignature function: bool signatureIsBinary - telling us whether the signature is armored ASCII or binary data, int signatureLen - holding the TRUE length of the signature if (and only if) this is binary data
https://invent.kde.org/neon/forks/gpgme/-/commit/704a1b05b324ca30ed9dd0dbbbfc849f8f56b914

Git commit 7c308977d0531a2063de41a2b3cb56ac4ccdaf9c by Marcus Brinkmann on 06/03/2002 at 00:33..
2002-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Error Strings): Add example.
	* gpgme.texi (Listing Keys): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/7c308977d0531a2063de41a2b3cb56ac4ccdaf9c

Git commit 748aa18dc6ca9cb25e534fcf2028fb61fde98318 by Marcus Brinkmann on 06/03/2002 at 01:40..
doc/
2002-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Encrypting a Plaintext): Document symmetric
	encryption.

gpgme/
2002-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* encrypt.c (_gpgme_encrypt_sym_status_handler): New function.
	(gpgme_op_encrypt_start): New variable SYMMETRIC, set it if RECP
	is null, and if it is set, use _gpgme_encrypt_sym_status_handler
	as status handler and run _gpgme_passphrase_start.
	* rungpg.c (_gpgme_gpg_op_encrypt): If RECP is zero, do symmetric
	encryption.
	* engine-gpgsm.c (_gpgme_gpgsm_op_encrypt): If RECP is zero,
	return error value.

	* rungpg.c (_gpgme_gpg_op_verify): Add "--" argument.

tests/
2002-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-encrypt-sym.c: New file.
	* gpg/Makefile.am (TESTS): Add t-encrypt-sym.
https://invent.kde.org/neon/forks/gpgme/-/commit/748aa18dc6ca9cb25e534fcf2028fb61fde98318

Git commit 12edab6492f8f0e99acbfdbcd14a3be9b57adb8c by Marcus Brinkmann on 06/03/2002 at 15:35..
Adjust requirement for GpgSM version according to configure.ac.
https://invent.kde.org/neon/forks/gpgme/-/commit/12edab6492f8f0e99acbfdbcd14a3be9b57adb8c

Git commit b1970a759ea6d91c7ffbd92d75769047b16df43c by Werner Koch on 06/03/2002 at 17:23..
* gpgmeplug.c (signMessage): Fixed offbyone.  Don't include the
EOS character into the signature.
(checkMessageSignature): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/b1970a759ea6d91c7ffbd92d75769047b16df43c

Git commit abd320021169986df50c8f6f21192c3bd665c058 by Steffen Hansen on 07/03/2002 at 14:10..
encryptMessage() now accepts a comma separated list of addressees
https://invent.kde.org/neon/forks/gpgme/-/commit/abd320021169986df50c8f6f21192c3bd665c058

Git commit a86b6932a93c4796174702b048f6f4129e11d36c by Werner Koch on 07/03/2002 at 19:49..
* gpgme.h (gpgme_op_keylist_ext_start): Add prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/a86b6932a93c4796174702b048f6f4129e11d36c

Git commit 06cc124c5c644916fe5dc46af31a4bec96a740a9 by Matthias Kalle Dalheimer on 07/03/2002 at 21:18..
Support for various warnings about expiring encryption certificates.
Support for checking encryption certificate paths.

Needs GPGME support.
https://invent.kde.org/neon/forks/gpgme/-/commit/06cc124c5c644916fe5dc46af31a4bec96a740a9

Git commit af75bafc1b0b63e48468186991a2a7c920d3b256 by Steffen Hansen on 08/03/2002 at 00:51..
A little better address-parsing. Not real rfc822 yet, but at least it fetches
the address between < and > now if they are present.
https://invent.kde.org/neon/forks/gpgme/-/commit/af75bafc1b0b63e48468186991a2a7c920d3b256

Git commit ed9f9969e378fd2d15a875a5e100b87bddd1a75a by Karl-Heinz Zimmer on 08/03/2002 at 15:44..
New feature: Ask user which certificate is to be taken when more than one found by the crypto plug-in for a single recipient. - NOTE: This code is not working correctly (yet) so we allways get some *all* keys that are stored by gpg instead of the right key information.
https://invent.kde.org/neon/forks/gpgme/-/commit/ed9f9969e378fd2d15a875a5e100b87bddd1a75a

Git commit 3ec1930ae3b1b47afe53729fa3eaacdeb8361bf0 by Karl-Heinz Zimmer on 08/03/2002 at 18:13..
Bugfix: forgot to initialize the list of certificates in findCertificates() before adding the found entries
https://invent.kde.org/neon/forks/gpgme/-/commit/3ec1930ae3b1b47afe53729fa3eaacdeb8361bf0

Git commit 9c94500486f12b20595f01927ba1c477fc58ffe0 by Karl-Heinz Zimmer on 09/03/2002 at 16:46..
bugfix in findCertificates function
https://invent.kde.org/neon/forks/gpgme/-/commit/9c94500486f12b20595f01927ba1c477fc58ffe0

Git commit d901ebf3b91a81043f6a68ff5e43b82ea3b50f29 by Werner Koch on 10/03/2002 at 18:35..
Minor doc fixes
https://invent.kde.org/neon/forks/gpgme/-/commit/d901ebf3b91a81043f6a68ff5e43b82ea3b50f29

Git commit cb95583ffe818e08fd73918215f34f5fbfeb1396 by Werner Koch on 10/03/2002 at 18:41..
removed all the .cvsignre files - they should be local
https://invent.kde.org/neon/forks/gpgme/-/commit/cb95583ffe818e08fd73918215f34f5fbfeb1396

Git commit 5a24e01ee863f219449548a08e7609a3a2b244ec by Marcus Brinkmann on 18/03/2002 at 00:01..
2002-03-17  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Detailed Results): Fix syntax error in last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a24e01ee863f219449548a08e7609a3a2b244ec

Git commit 6cee0a4f3f060029531d7feaf7fe76f5c9d4196c by Marcus Brinkmann on 18/03/2002 at 00:04..
2002-03-17  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add automake conditional HAVE_DOSISH_SYSTEM.

gpgme/
2002-03-18  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (system_components): New variable, set depending on
	HAVE_DOSISH_SYSTEM.
	(libgpgme_la_SOURCES): Use system_components.  Remove `syshdr.h'.
	* syshdr.h: File removed.

	* posix-io.c: Remove !HAVE_DOSISH_SYSTEM safeguard.  Clean up source.
	* posix-sema.c: Likewise.
	* posix-util.c: Likewise.

	* w32-io.c: Remove HAVE_DOSISH_SYSTEM safeguard.
	* w32-sema.c: Likewise.
	* w32-util.c: Likewise.

	* posix-io.c: Include `unistd.h', do not include `syshdr.h'.
	* posix-sema.c: Likewise.
	* w32-io.c: Include `io.h', do not include `syshdr.h'
	* w32-sema.c: Likewise.
	* w32-util.c: Likewise.
	* data.c: Do not include `syshdr.h'.
	* wait.c: Likewise.
	* wait.h: Code cleanup.

	* mutex.h: New file.
	* posix-sema.c: Implement.
https://invent.kde.org/neon/forks/gpgme/-/commit/6cee0a4f3f060029531d7feaf7fe76f5c9d4196c

Git commit 770116c84f69105daeedd2cbad2af18b59fcce20 by Matthias Kalle Dalheimer on 21/03/2002 at 13:14..
More feature selectors
Plugin says which features it supports
https://invent.kde.org/neon/forks/gpgme/-/commit/770116c84f69105daeedd2cbad2af18b59fcce20

Git commit 30cacfe62cfe2229a42a5dbc8d4ea6b05e3f3753 by Werner Koch on 21/03/2002 at 19:48..
* util.h (struct) [!HAVE_FOPENCOOKIE]: Make sure off_t and ssize_t
are defined.
https://invent.kde.org/neon/forks/gpgme/-/commit/30cacfe62cfe2229a42a5dbc8d4ea6b05e3f3753

Git commit 70251d0f5fd18a1b4330b1af3d6a2a8219bc23c7 by Karl-Heinz Zimmer on 21/03/2002 at 21:48..
changed code according to our hack before CeBIT, we are giving *binary* data to the decryptMessage() and to the checkMessageSignature() methode instead of passing base64 encoded data to them
https://invent.kde.org/neon/forks/gpgme/-/commit/70251d0f5fd18a1b4330b1af3d6a2a8219bc23c7

Git commit cf04fed2deb7b222d32c1fbe1acf6a0c4bd243b0 by Karl-Heinz Zimmer on 22/03/2002 at 10:40..
interface change: signMessage() and encryptMessage() now return an additional 'cipherLen' parameter to enable us to handle binary cipher data
https://invent.kde.org/neon/forks/gpgme/-/commit/cf04fed2deb7b222d32c1fbe1acf6a0c4bd243b0

Git commit a88628979f473971d84e47292bf20b9a28d0a9be by Karl-Heinz Zimmer on 22/03/2002 at 17:06..
bugfix on new binary-encrypting/signing code
https://invent.kde.org/neon/forks/gpgme/-/commit/a88628979f473971d84e47292bf20b9a28d0a9be

Git commit a5914229c4df07d29046700b1109957ee768b490 by Werner Koch on 23/03/2002 at 11:35..
* gpgmeplug.c: Converted it to real C; i.e. use standard comments -
we are doing ISO C 90.  Transalted a few German remarks and
commented on some things.
https://invent.kde.org/neon/forks/gpgme/-/commit/a5914229c4df07d29046700b1109957ee768b490

Git commit dd2cb388a99054a6c72ef9cbc19fbd74cf1bc6a4 by Werner Koch on 26/03/2002 at 10:15..
* Makefile.am (libgpgme_la_SOURCES): Add mutex.h
https://invent.kde.org/neon/forks/gpgme/-/commit/dd2cb388a99054a6c72ef9cbc19fbd74cf1bc6a4

Git commit aa20d6a45a1adb03c0529ce8a2ad80d0f4dd1e4f by Werner Koch on 28/03/2002 at 17:43..
* gpgme.h (GpgmeAttr): Add values for issuer and chaining.
* key.h (gpgme_key_s): Add issuer and chaining elements for X509.
* keylist.c (keylist_colon_handler): Store them.
* key.c	(gpgme_key_release): Free them.
(gpgme_key_get_as_xml,gpgme_key_get_string_attr): Print them.
https://invent.kde.org/neon/forks/gpgme/-/commit/aa20d6a45a1adb03c0529ce8a2ad80d0f4dd1e4f

Git commit bf58937986d23ff78a9384de3849ea2173cf78c9 by Werner Koch on 01/04/2002 at 08:40..
Released 0.3.5
https://invent.kde.org/neon/forks/gpgme/-/commit/bf58937986d23ff78a9384de3849ea2173cf78c9

Git commit d31ded86997b3a08aab958b58563d7fd6c01e2c5 by Werner Koch on 01/04/2002 at 08:51..
*** empty log message ***
https://invent.kde.org/neon/forks/gpgme/-/commit/d31ded86997b3a08aab958b58563d7fd6c01e2c5

Git commit 02a9610df24d6275350b6de74c39519051bef5e9 by Karl-Heinz Zimmer on 02/04/2002 at 11:52..
now using gpgme_recipients_add_name instead of gpgme_recipients_add_name_with_validity, see Werner's comment to bug #950 as of Fri, Mar 22 2002 17.15.26
https://invent.kde.org/neon/forks/gpgme/-/commit/02a9610df24d6275350b6de74c39519051bef5e9

Git commit 8f2ab926573493f32eb128b90397c93f07a96714 by Karl-Heinz Zimmer on 03/04/2002 at 14:30..
[bug #997] changed 'micalg=pgp-sha1' into 'micalg=sha1' for S/MIME mails
https://invent.kde.org/neon/forks/gpgme/-/commit/8f2ab926573493f32eb128b90397c93f07a96714

Git commit 9f4af70d4bc2b83f681c2ba76a2847792e667275 by Marcus Brinkmann on 04/04/2002 at 22:22..
2002-04-05  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c (main): Use gpgme_engine_check_version instead
	gpgme_check_engine.
	* gpgsm/t-encrypt.c (main): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f4af70d4bc2b83f681c2ba76a2847792e667275

Git commit d30f21c528abd52f170668678aa3f8294f4aa273 by Marcus Brinkmann on 04/04/2002 at 23:01..
2002-04-05  Marcus Brinkmann  <marcus at g10code,de>

	* gpgsm/Makefile.am (./trustlist.txt): Put more into this file to
	prevent use of gpg-agent.
	(./gpg-agent.conf): Remove target.
	(all-local): Remove ./gpg-agent.conf.
https://invent.kde.org/neon/forks/gpgme/-/commit/d30f21c528abd52f170668678aa3f8294f4aa273

Git commit 990e6924d130bacc0574e29b1a222e3232d4e5b7 by Marcus Brinkmann on 04/04/2002 at 23:31..
2002-04-05  Marcus Brinkmann  <marcus at g10code.de>

	* acconfig.h: File removed.
	* configure.ac (NEED_GPG_VERSION): Add description.
	(NEED_GPGSM_VERSION): Likewise.
	(HAVE_DOSISH_SYSTEM): Likewise.
	(HAVE_DRIVE_LETTERS): Likewise.
	(GPG_PATH): Likewise.
	(GPGSM_PATH): Likewise.
	* acinclude.m4 (GNUPG_CHECK_TYPEDEF): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/990e6924d130bacc0574e29b1a222e3232d4e5b7

Git commit 7cb3972a1a9a4ac9f044d08e771483dd646c6e37 by Marcus Brinkmann on 16/04/2002 at 12:24..
2002-04-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Creating a Signature): Fix function name.  Reported
	by Wichert Ackerman <wichert at debian.org>.

2002-03-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (direntry): End index entry with a full stop.
	Patch submitted by Jose Carlos Garcia Sogo <jsogo at debian.org>.
https://invent.kde.org/neon/forks/gpgme/-/commit/7cb3972a1a9a4ac9f044d08e771483dd646c6e37

Git commit 0fc18236a296b29ac8e4e35e3ba08be8ba1a3558 by Matthias Kalle Dalheimer on 17/04/2002 at 14:16..
Implemented requesting certs
https://invent.kde.org/neon/forks/gpgme/-/commit/0fc18236a296b29ac8e4e35e3ba08be8ba1a3558

Git commit 76cc7612bdb680590b35d07a62fefe7bd0e99a6e by Karl-Heinz Zimmer on 17/04/2002 at 15:00..
report both the error-Id and the error-text to the calling program when signing or encrypting of mails could not be done
https://invent.kde.org/neon/forks/gpgme/-/commit/76cc7612bdb680590b35d07a62fefe7bd0e99a6e

Git commit 9da6baf11f6c041bc0b6f023eebbc18cc3f750a3 by Matthias Kalle Dalheimer on 18/04/2002 at 07:38..
Additional parameter for returning the cert length
https://invent.kde.org/neon/forks/gpgme/-/commit/9da6baf11f6c041bc0b6f023eebbc18cc3f750a3

Git commit 2ee47693c0152193fb7751c250f5de11d6b0a37f by Matthias Kalle Dalheimer on 18/04/2002 at 19:26..
More fixes for certificate generation
https://invent.kde.org/neon/forks/gpgme/-/commit/2ee47693c0152193fb7751c250f5de11d6b0a37f

Git commit 025866092e14bb4ed68fe23140bf62dcce770cc5 by Marcus Brinkmann on 22/04/2002 at 21:58..
doc/
2002-04-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Passphrase Callback): Fix small typo.  Document the
	new function gpgme_get_passphrase_cb.
	(Progress Meter Callback): Document the new function
	gpgme_get_progress_cb.

gpgme/
2002-04-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_get_passphrase_cb): New function.
	(gpgme_get_progress_cb): New function.
	* gpgme.h: Add new prototypes for gpgme_get_passphrase_cb and
	gpgme_get_progress_cb.
https://invent.kde.org/neon/forks/gpgme/-/commit/025866092e14bb4ed68fe23140bf62dcce770cc5

Git commit 09635ef2e606ac5c4da7a5f640ebb19e922aed89 by Marcus Brinkmann on 22/04/2002 at 22:06..
doc/
2002-04-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Passphrase Callback): Document that either return
	argument can be NULL.
	(Progress Meter Callback): Likewise.

gpgme/
2002-04-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_get_progress_cb): Allow either return parameter
	to be NULL.
	(gpgme_get_passphrase_cb): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/09635ef2e606ac5c4da7a5f640ebb19e922aed89

Git commit 43da549e6adf42daab629fde94e8cf0e82aa55c5 by Werner Koch on 23/04/2002 at 09:06..
* key.c (gpgme_key_get_ulong_attr): Swapped use of can_encrypt and
can_certify to return the requested values.
https://invent.kde.org/neon/forks/gpgme/-/commit/43da549e6adf42daab629fde94e8cf0e82aa55c5

Git commit a559c32a55e3077ee42f82d8794e6383adbb1e41 by Marcus Brinkmann on 24/04/2002 at 01:55..
Update assuan and jnlib to 20020424 from newpg.
https://invent.kde.org/neon/forks/gpgme/-/commit/a559c32a55e3077ee42f82d8794e6383adbb1e41

Git commit a07ede17a274999f5501a631a5d8f0892bb85dc6 by Marcus Brinkmann on 24/04/2002 at 02:21..
2002-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (map_assuan_error): Add new error codes.
https://invent.kde.org/neon/forks/gpgme/-/commit/a07ede17a274999f5501a631a5d8f0892bb85dc6

Git commit f5e05f759f7b61e43ce6354e5a2c030f360575e4 by Marcus Brinkmann on 24/04/2002 at 22:46..
2002-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_new): Set the display, ttyname,
	ttytype, lc_ctype and lc_messages options in the server.
https://invent.kde.org/neon/forks/gpgme/-/commit/f5e05f759f7b61e43ce6354e5a2c030f360575e4

Git commit 9b28b6b2097c34464944b704c10eb3e3e7944569 by Marcus Brinkmann on 25/04/2002 at 00:36..
2002-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_release): Call gpgme_data_release on
	GPG->cmd.cb_data, not xfree.
https://invent.kde.org/neon/forks/gpgme/-/commit/9b28b6b2097c34464944b704c10eb3e3e7944569

Git commit ffc9f4493280cd1f232901318357c19ff9e9469f by Werner Koch on 26/04/2002 at 12:38..
* Makefile.am: Create libtool libraries.

* Makefile.am (libgpgme_la_LIBADD): Use libtool libraries.

* Makefile.am: Create libtool libraries
https://invent.kde.org/neon/forks/gpgme/-/commit/ffc9f4493280cd1f232901318357c19ff9e9469f

Git commit 996d48a95e3d54de5f2e1e539e211cb76620801b by Karl-Heinz Zimmer on 27/04/2002 at 05:32..
allow checking of Opaque Signed message data
https://invent.kde.org/neon/forks/gpgme/-/commit/996d48a95e3d54de5f2e1e539e211cb76620801b

Git commit 40717c31840f35656700be5a469b7504060a33d5 by Marcus Brinkmann on 27/04/2002 at 12:11..
2002-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_verify): Close the output
	descriptor only when we don't need it anymore.  Close the message
	descriptor if we don't need it.
https://invent.kde.org/neon/forks/gpgme/-/commit/40717c31840f35656700be5a469b7504060a33d5

Git commit 1ac21c55c879b687a5d2148597a497353ef983ac by Werner Koch on 27/04/2002 at 12:16..
* gpgme.h (GpgmeData_Encoding): New.
* data.c (gpgme_data_get_encoding,gpgme_data_set_encoding): New.
* engine-gpgsm.c (map_input_enc): New. Use it in all local
functions where the INPUT command gets send.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ac21c55c879b687a5d2148597a497353ef983ac

Git commit 6c4d6748f6a44a6bde1e6751e491e119ce8915f0 by Werner Koch on 27/04/2002 at 12:17..
* gpgme.texi (Manipulating Data Buffers): New type GpgmeDataEncoding.
https://invent.kde.org/neon/forks/gpgme/-/commit/6c4d6748f6a44a6bde1e6751e491e119ce8915f0

Git commit f14bf86feef1b06a34a29e1a96c4cb341e38659c by Werner Koch on 03/05/2002 at 14:06..
* verify.c (_gpgme_verify_status_handler): Handle TRUST_* status
lines so that a claim can be made without looking up the key.
(gpgme_get_sig_string_attr): New.
(gpgme_get_sig_ulong_attr): New.

* gpgme.h (GpgmeAttr): Added GPGME_ATTR_SIG_STATUS.

* rungpg.h: Add new status codes from gpg 1.0.7 and formatted the
list to align with the status.h file from gnupg.

* gpgme.h (GpgmeSigStat): Add _GOOD_EXP and _GOOD_EXPKEY.
* verify.c (_gpgme_verify_status_handler, finish_sig): Handle
these new status codes.  Store the expiration time
https://invent.kde.org/neon/forks/gpgme/-/commit/f14bf86feef1b06a34a29e1a96c4cb341e38659c

Git commit fb23b0382dee9fc250d28c5f56a8f3fba5155db0 by Werner Koch on 03/05/2002 at 14:07..
* gpg/t-verify.c (validity_string): New.
(print_sig_stat): Print expire time and validity.
(status_string): Add new exipred stati.
https://invent.kde.org/neon/forks/gpgme/-/commit/fb23b0382dee9fc250d28c5f56a8f3fba5155db0

Git commit 0d3ffd103d24f878887802742d10beba4b53b479 by Werner Koch on 03/05/2002 at 18:19..
* assuan-pipe-connect.c (assuan_pipe_connect2): New to extend
assuan_pipe_connect with some flags.  Implemented a bitbucket for
stderr.
https://invent.kde.org/neon/forks/gpgme/-/commit/0d3ffd103d24f878887802742d10beba4b53b479

Git commit 506ae142900ffb7aaf745ce79e6e9465fda4630b by Werner Koch on 03/05/2002 at 18:20..
* engine-gpgsm.c (_gpgme_gpgsm_new): Redirect any gpgsm error
output to /dev/null.

* verify.c (gpgme_get_sig_key): Set the protocol of the listctx.
* gpgme.c (gpgme_get_protocol): New.

* data.c (gpgme_data_write): Changed type of BUFFER to void*.
(gpgme_data_read): Ditto.

* verify.c (_gpgme_verify_status_handler): Handle TRUST_* status
lines so that a claim can be made without looking up the key.
(gpgme_get_sig_string_attr): New.
(gpgme_get_sig_ulong_attr): New.

* gpgme.h (GpgmeAttr): Added GPGME_ATTR_SIG_STATUS.

* gpgme.h (GpgmeSigStat): Add _GOOD_EXP and _GOOD_EXPKEY.
* verify.c (_gpgme_verify_status_handler, finish_sig): Handle
these new status codes.  Store the expiration time
https://invent.kde.org/neon/forks/gpgme/-/commit/506ae142900ffb7aaf745ce79e6e9465fda4630b

Git commit afd58b644c9cb9d4342ee8decc32f058c7b2425e by Werner Koch on 03/05/2002 at 18:20..
* gpgme.texi (Manipulating Data Buffers): Changed some data types
to void*.
(Protocol Selection): Added gpgme_get_protocol.
(Verify): Updated to include the new attribute fucntions and
status codes.
https://invent.kde.org/neon/forks/gpgme/-/commit/afd58b644c9cb9d4342ee8decc32f058c7b2425e

Git commit 203a4778b60ac3bf4fc369bc8107f382eb5e99cf by Werner Koch on 03/05/2002 at 19:49..
released 0.3.6
https://invent.kde.org/neon/forks/gpgme/-/commit/203a4778b60ac3bf4fc369bc8107f382eb5e99cf

Git commit 11797714d04abef9819001d998ac7285915c05fe by Werner Koch on 03/05/2002 at 20:08..
Bumbed version number to *-cvs
https://invent.kde.org/neon/forks/gpgme/-/commit/11797714d04abef9819001d998ac7285915c05fe

Git commit 00567dc8e360a50902a80f31aae2c680caeebf6c by Karl-Heinz Zimmer on 07/05/2002 at 10:40..
Bugfix don't use binary signatures for OpenPGP
https://invent.kde.org/neon/forks/gpgme/-/commit/00567dc8e360a50902a80f31aae2c680caeebf6c

Git commit 39a679ed750419fba616f06379de522871f46e9c by Marcus Brinkmann on 08/05/2002 at 03:06..
2002-05-08  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-verify.c (validity_string): New.
	(print_sig_stat): Print expire time and validity.
	(status_string): Add new exipred stati.
https://invent.kde.org/neon/forks/gpgme/-/commit/39a679ed750419fba616f06379de522871f46e9c

Git commit 5d03d9b7ebbe811623b4066ea5e5fe3bf5d6f746 by Marcus Brinkmann on 08/05/2002 at 03:57..
2002-05-08  Marcus Brinkmann  <marcus at g10code.de>

	* debug.h: New file.
	* Makefile.am (libgpgme_la_SOURCES): Add debug.h.
	* util.h: Removed all prototypes and declarations related to
	debugging.  Include "debug.h".

	* debug.c (debug_level): Comment variable and remove superfluous
	zero initializer.
	(errfp): Likewise.
	(_gpgme_debug_enabled): Function removed.
	(struct debug_control_s): Definition removed.
	(_gpgme_debug_level): Function removed.
	(_gpgme_debug_begin): Rewritten to use vasprintf.  Accept a
	pritnf-style format specification and a variable number of
	arguments.
	(_gpgme_debug_add): Rewritten using vasprintf.  Expect that format
	starts out with "%s" for simplicity.
	(_gpgme_debug_end): Rewritten using vasprintf.  Do not accept a
	TEXT argument anymore.

	* posix-io.c (_gpgme_io_select): Use new level argument for
	DEBUG_BEGIN instead explicit if construct.

	* debug.c (debug_init): Remove superfluous zero initializer,
	remove volatile flag of INITIALIZED.  Do not use the
	double-checked locking algorithm, it is fundamentally flawed and
	will empty your fridge (on a more serious note, despite the
	volatile flag it doesn't give you the guarantee you would expect,
	for example on a DEC Alpha or an SMP machine.  The volatile only
	serializes accesses to the volatile variable, but not to the other
	variables).
https://invent.kde.org/neon/forks/gpgme/-/commit/5d03d9b7ebbe811623b4066ea5e5fe3bf5d6f746

Git commit 51e6cf89edbcdb4dd39e83f467da695ebdecb228 by Marcus Brinkmann on 08/05/2002 at 04:04..
2002-05-08  Marcus Brinkmann  <marcus at g10code.de>

	* debug.h: New file.
	* Makefile.am (libgpgme_la_SOURCES): Add debug.h.
	* util.h: Removed all prototypes and declarations related to
	debugging.  Include "debug.h".

	* debug.c (debug_level): Comment variable and remove superfluous
	zero initializer.
	(errfp): Likewise.
	(_gpgme_debug_enabled): Function removed.
	(struct debug_control_s): Definition removed.
	(_gpgme_debug_level): Function removed.
	(_gpgme_debug_begin): Rewritten to use vasprintf.  Accept a
	pritnf-style format specification and a variable number of
	arguments.
	(_gpgme_debug_add): Rewritten using vasprintf.  Expect that format
	starts out with "%s" for simplicity.
	(_gpgme_debug_end): Rewritten using vasprintf.  Do not accept a
	TEXT argument anymore.

	* posix-io.c (_gpgme_io_select): Use new level argument for
	DEBUG_BEGIN instead explicit if construct.

	* debug.c (debug_init): Remove superfluous zero initializer,
	remove volatile flag of INITIALIZED.  Do not use the
	double-checked locking algorithm, it is fundamentally flawed and
	will empty your fridge (on a more serious note, despite the
	volatile flag it doesn't give you the guarantee you would expect,
	for example on a DEC Alpha or an SMP machine.  The volatile only
	serializes accesses to the volatile variable, but not to the other
	variables).
https://invent.kde.org/neon/forks/gpgme/-/commit/51e6cf89edbcdb4dd39e83f467da695ebdecb228

Git commit dca63d93c51bd34d29166c87bf65f26cd5772775 by Marcus Brinkmann on 08/05/2002 at 04:22..
Add some items and comments.
https://invent.kde.org/neon/forks/gpgme/-/commit/dca63d93c51bd34d29166c87bf65f26cd5772775

Git commit ff28fd3b541eec6a77c35c9af57ac38052dbd1bc by Karl-Heinz Zimmer on 08/05/2002 at 12:05..
Include the protocol parameter of multipart/.. content-type messages into double quotes to fullify requirements of the german government (see BSI document Technische Grundlagen - Tailoring MTTv2, page 60)
https://invent.kde.org/neon/forks/gpgme/-/commit/ff28fd3b541eec6a77c35c9af57ac38052dbd1bc

Git commit d27e6506b128f1ee1baeafec801b6abccd6e4170 by Karl-Heinz Zimmer on 08/05/2002 at 12:14..
revoce the previous commit, this was done erroneously
https://invent.kde.org/neon/forks/gpgme/-/commit/d27e6506b128f1ee1baeafec801b6abccd6e4170

Git commit 4e0d4d7cf3e630fbde187c506799048a3f359fc1 by Marcus Brinkmann on 09/05/2002 at 03:38..
doc/
2002-05-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Overview): Replace note about thread-safeness.
	(Multi Threading): New section.

gpgme/
2002-05-08  Marcus Brinkmann  <marcus at g10code.de>

	* w32-util.c: New static variable GET_PATH_LOCK.
	(_gpgme_get_gpg_path): Remove superfluous NULL initializer.
	Take lock while determining path.
	(_gpgme_get_gpgsm_path): Likewise.
	* version.c (do_subsystem_inits): Set DONE to 1 after
	initialization.
	(gpgme_get_engine_info): New variable ENGINE_INFO_LOCK.  Take lock
	while determining engine info.
	* rungpg.c (_gpgme_gpg_get_version): New variable
	GPG_VERSION_LOCK.  Take the lock while determining the program
	version.
	* posix-io.c: Include "sema.h".
	(_gpgme_io_spawn): New variable FIXED_SIGNALS_LOCK.  Take the lock
	while fixing the signals.
	(_gpgme_io_select): Make READFDS and WRITEFDS non-static.
	* key.c: Include "sema.h".  New globals KEY_CACHE_LOCK and
	KEY_REF_LOCK.
	(capabilities_to_string): Make STRINGS very const.
	(_gpgme_key_cache_add): Lock the key cache.
	(_gpgme_key_cache_get): Likewise.
	(gpgme_key_ref, gpgme_key_release): Lock the key_ref_lock.
	* import.c (append_xml_impinfo): Make IMPORTED_FIELDS and
	IMPORT_RES_FIELDS very const.  Make FIELD and FIELD_NAME a litle
	const.
	* engine.c (_gpgme_engine_get_info): New variable
	ENGINE_INFO_LOCK.  Take lock while determining engine info.
	* engine-gpgsm.c: Include "sema.h".
	(_gpgme_gpgsm_get_version): New variable GPGSM_VERSION_LOCK.  Take
	lock while getting program version.
https://invent.kde.org/neon/forks/gpgme/-/commit/4e0d4d7cf3e630fbde187c506799048a3f359fc1

Git commit d9e73425b9845936b225e28047c57546e56eb1d8 by Marcus Brinkmann on 09/05/2002 at 03:39..
2002-05-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Multi Threading): Escape { and }.
https://invent.kde.org/neon/forks/gpgme/-/commit/d9e73425b9845936b225e28047c57546e56eb1d8

Git commit be5f522140b34b93f9a7a77c6442d59fd70fdec3 by Marcus Brinkmann on 09/05/2002 at 06:49..
Bump version numbers in requirements.
https://invent.kde.org/neon/forks/gpgme/-/commit/be5f522140b34b93f9a7a77c6442d59fd70fdec3

Git commit 0ab2c2918ae175e18ee707dcfa82a7358193fc29 by Marcus Brinkmann on 09/05/2002 at 06:49..
2002-05-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Using Automake): New section.
https://invent.kde.org/neon/forks/gpgme/-/commit/0ab2c2918ae175e18ee707dcfa82a7358193fc29

Git commit fe2e3af237479a6c96237fd316cfcbdfeeba24cf by Werner Koch on 10/05/2002 at 10:42..
* key.h (gpgme_key_s): Add OTRUST.
* keylist.c (set_ownertrust): New.
(keylist_colon_handler): Get the ownertrust value
* key.c (gpgme_key_get_string_attr,gpgme_key_get_ulong_attr):
Return that value.
https://invent.kde.org/neon/forks/gpgme/-/commit/fe2e3af237479a6c96237fd316cfcbdfeeba24cf

Git commit 1721e91c886dd270033d2dd9b3339666fe8613ba by Werner Koch on 21/05/2002 at 15:14..
* engine-gpgsm.c (_gpgme_gpgsm_op_keylist)
(_gpgme_gpgsm_op_keylist_ext):  Pass the keylist mode to gpgsm.

* configure.ac (NEED_GPGSM_VERSION): We need gpgsm 0.3.7.
https://invent.kde.org/neon/forks/gpgme/-/commit/1721e91c886dd270033d2dd9b3339666fe8613ba

Git commit cec2c916bba92a3f42c0419f71eb16eea72683b1 by Marcus Brinkmann on 22/05/2002 at 01:22..
2002-05-22  Marcus Brinkmann  <marcus at gnu.org>

	* engine-gpgsm.c (_gpgme_gpgsm_op_keylist_ext): Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/cec2c916bba92a3f42c0419f71eb16eea72683b1

Git commit 4f3be85e5a5c140c638838ea4025f7c49523539a by Werner Koch on 22/05/2002 at 06:35..
* engine-gpgsm.c (_gpgme_gpgsm_op_keylist_ext): Aehmm, added
missing variable definition.  Oohh - Marcus was faster.
https://invent.kde.org/neon/forks/gpgme/-/commit/4f3be85e5a5c140c638838ea4025f7c49523539a

Git commit ac8f6d2c8a51317bbf17baf5589fc91a5748823b by Marcus Brinkmann on 26/05/2002 at 19:51..
2002-05-26  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (all-local): Remove dependency on ./secring.gpg.
	(./secring.gpg): Remove target, and move all rules for this target
	to ...
	(./pubring.gpg): ... here.  This was necessary because GnuPG 1.0.7
	does create an empty secring.gpg file when importing public keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/ac8f6d2c8a51317bbf17baf5589fc91a5748823b

Git commit 3d05bb406b27227e734dfaa3b6f4373086c54cc1 by Marcus Brinkmann on 26/05/2002 at 20:12..
2002-05-26  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Some typographical correctons throughout.
https://invent.kde.org/neon/forks/gpgme/-/commit/3d05bb406b27227e734dfaa3b6f4373086c54cc1

Git commit 068ef9f0f3b83105b62e306c14c94a0f133514e8 by Steffen Hansen on 30/05/2002 at 06:24..
* cryptplug.h, gpgmeplug.c: Added certificate info listing functions.
Not yet complete.
Converted more C99 style comments to "classic" style.
https://invent.kde.org/neon/forks/gpgme/-/commit/068ef9f0f3b83105b62e306c14c94a0f133514e8

Git commit e282d784139ee065bfb5c7d2a302c8d3d1ef7628 by Werner Koch on 30/05/2002 at 09:06..
* key.c (gpgme_key_get_string_attr): Return NULL when asking for
an issuer with IDX > 0.  We don't support altIssuerNames for now.
https://invent.kde.org/neon/forks/gpgme/-/commit/e282d784139ee065bfb5c7d2a302c8d3d1ef7628

Git commit fda851bfd98f2d70e68e8b1526c0df6520a23524 by Steffen Hansen on 30/05/2002 at 17:19..
small fix
https://invent.kde.org/neon/forks/gpgme/-/commit/fda851bfd98f2d70e68e8b1526c0df6520a23524

Git commit 5afd7bbcc09e499fb4a49ee8e33f8d022d2bdf88 by Karl-Heinz Zimmer on 31/05/2002 at 09:28..
more error handling
https://invent.kde.org/neon/forks/gpgme/-/commit/5afd7bbcc09e499fb4a49ee8e33f8d022d2bdf88

Git commit e74de5d91a52e119b754e1d8df60623ff7407523 by Karl-Heinz Zimmer on 31/05/2002 at 11:08..
Matze's patch for showing colored bars at S/MIME messages as well as at OpenPGP messages.
https://invent.kde.org/neon/forks/gpgme/-/commit/e74de5d91a52e119b754e1d8df60623ff7407523

Git commit 3fa6cef5caedf6e95f4e70a508ca2c70eca9a3ea by Karl-Heinz Zimmer on 31/05/2002 at 12:00..
Bugfix: use fingerprint as found in "fpr" only if no key was found by gpgme_get_sig_key()
https://invent.kde.org/neon/forks/gpgme/-/commit/3fa6cef5caedf6e95f4e70a508ca2c70eca9a3ea

Git commit 0848c32e0f0886096a0bf95bd4e165d91f617c5a by Steffen Hansen on 31/05/2002 at 15:34..
more cert info
https://invent.kde.org/neon/forks/gpgme/-/commit/0848c32e0f0886096a0bf95bd4e165d91f617c5a

Git commit 1ab6177e27ef129a8c52746fe1a761fbd5074e42 by Karl-Heinz Zimmer on 01/06/2002 at 15:35..
sync our cryptplug.h with the version in KDE/libkdenetwork/ that was corrected my Marc Mutz.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ab6177e27ef129a8c52746fe1a761fbd5074e42

Git commit ae0d104de2fd61408387f098d6fba96b274f29d0 by Marcus Brinkmann on 02/06/2002 at 19:19..
2002-06-02  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add checks for Pth and pthreads.
	* acinclude.m4: Add slightly hacked check for pth (seems to be an
	autoconf version problem).

gpgme/
2002-06-02  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (ath_components): New variable.
	(ath_components_pthread): Likewise.
	(ath_components_pth): Likewise.
	(system_components): Add ath_componentes.

	* ath.h: New file.
	* ath.c: Likewise.
	* ath-pthread.c: Likewise.
	* ath-pth.c: Likewise.
	* posix-sema.c (_gpgme_sema_cs_enter): Rework to use the ATH
	interface.
	* mutex.h: Remove file.
https://invent.kde.org/neon/forks/gpgme/-/commit/ae0d104de2fd61408387f098d6fba96b274f29d0

Git commit b024a61d89777a83908fbdd4111f7f40f3912b4d by Marcus Brinkmann on 02/06/2002 at 20:43..
2002-06-02  Marcus Brinkmann  <marcus at g10code.de>

	* acinclude.m4: Fix Pth check so that it doesn't error out if pth
	is not found.

gpgme/
2002-06-02  Marcus Brinkmann  <marcus at g10code.de>

	* ath.h: Enable the _gpgme_ prefix.  Fix all those prefix macros.
	* posix-sema.c: Use that prefix here.
	* posix-io.c: Include "ath.h".
	(_gpgme_io_read): Use _gpgme_ath_read instead read.
	(_gpgme_io_write): Use _gpgme_ath_write instead write.
	(_gpgme_io_waitpid): Use _gpgme_ath_waitpid instead waitpid.
	(_gpgme_io_select): Use _gpgme_ath_select instead select.
https://invent.kde.org/neon/forks/gpgme/-/commit/b024a61d89777a83908fbdd4111f7f40f3912b4d

Git commit 7892a2a64f46bb4dbbd85d6f70769c1db4bae6ce by Marcus Brinkmann on 02/06/2002 at 23:09..
2002-06-03  Marcus Brinkmann  <marcus at g10code.de>

	* key.c: Include <ctype.h>.
	(_gpgme_key_append_name): Skip one more char when
	processing escaped char.  Submitted by Marc Mutz <mutz at kde.org>.
	Handle hexadecimal encodings.  Also reported by Marc.  Thanks!
https://invent.kde.org/neon/forks/gpgme/-/commit/7892a2a64f46bb4dbbd85d6f70769c1db4bae6ce

Git commit 4816ac107a18414a857d680e8f5f31fa66750826 by Marcus Brinkmann on 04/06/2002 at 10:40..
2002-06-04  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_SOURCES): Remove mutex.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/4816ac107a18414a857d680e8f5f31fa66750826

Git commit 4df073b733f684f22a3bdc926d095a1782208032 by Marcus Brinkmann on 04/06/2002 at 10:56..
2002-06-04  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (DISTCLEANFILES): New variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/4df073b733f684f22a3bdc926d095a1782208032

Git commit e202b91008e15e3e7ebd2e3858d4c634a1265050 by Marcus Brinkmann on 04/06/2002 at 12:12..
2002-06-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Multi Threading): Document new autodetection.
https://invent.kde.org/neon/forks/gpgme/-/commit/e202b91008e15e3e7ebd2e3858d4c634a1265050

Git commit 9a262e6ed85d3106bb8cf9daa1287f67dae735a4 by Marcus Brinkmann on 04/06/2002 at 12:19..
Updates.
https://invent.kde.org/neon/forks/gpgme/-/commit/9a262e6ed85d3106bb8cf9daa1287f67dae735a4

Git commit fbdf591fcc3754d79b494bde6824e4e9626e0926 by Marcus Brinkmann on 04/06/2002 at 12:20..
2002-06-04  Marcus Brinkmann  <marcus at g10code.de>

	Released 0.3.7.

	* configure.ac (AC_INIT): Set version to 0.3.7.
	(LIBGPGME_LT_REVISION): Add one.

	* README: Document version requirement correctly.
https://invent.kde.org/neon/forks/gpgme/-/commit/fbdf591fcc3754d79b494bde6824e4e9626e0926

Git commit 37d626bdf308397896c0c5e560cb9259f85872ba by Marcus Brinkmann on 04/06/2002 at 12:28..
Prepare everything for CVS hackery.
https://invent.kde.org/neon/forks/gpgme/-/commit/37d626bdf308397896c0c5e560cb9259f85872ba

Git commit 9a3eae2c5e8a82c1efc5287d4498e12768fb7a94 by Werner Koch on 04/06/2002 at 14:01..
* gpgsm/t-encrypt.c (main): Add a simple option parser and allow
to specify an encryption key.
https://invent.kde.org/neon/forks/gpgme/-/commit/9a3eae2c5e8a82c1efc5287d4498e12768fb7a94

Git commit 7b8ab474d31273d0542a5fabe6031a0936f67920 by Steffen Hansen on 10/06/2002 at 11:24..
more cert. info features
https://invent.kde.org/neon/forks/gpgme/-/commit/7b8ab474d31273d0542a5fabe6031a0936f67920

Git commit 5b75138331e529186a0e43855c756c1f432578fa by Marcus Brinkmann on 10/06/2002 at 14:13..
2002-06-10  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_start): Move the code that sets the
	close notification for the status fd to ...
	(_gpgme_gpgsm_new): ... here.
	* wait.h: Include "sema.h".  Remove prototypes of
	_gpgme_remove_proc_from_wait_queue and
	_gpgme_register_pipe_handler.  Add prototypes of
	_gpgme_fd_table_init, _gpgme_fd_table_deinit, _gpgme_fd_table_put,
	_gpgme_add_io_cb, _gpgme_remove_io_cb, _gpgme_wait_event_cb and
	_gpgme_wait_one..
	* wait.c: Remove global variables PROC_QUEUE, PROC_QUEUE_LOCK,
	FD_TABLE_SIZE, FD_TABLE, FD_TABLE_LOCK.  New global variables
	FDT_GLOBAL, CTX_DONE_LIST, CTX_DONE_LIST_SIZE,
	CTX_DONE_LIST_LENGTH and CTX_DONE_LIST_LOCK.  Remove struct
	proc_s.  Replace struct wait_item_s.
	(_gpgme_fd_table_init): New function.
	(_gpgme_fd_table_deinit): Likewise.
	(_gpgme_fd_table_put): Likewise.
	(set_process_done): Remove function.
	(do_select): Take argument FDT.  Use that to decide which fds to
	select on.
	(_gpgme_remove_proc_from_wait_queue): Remove function.
	(_gpgme_wait_event_cb): New function.
	(_gpgme_wait_one): Likewise.
	(_gpgme_register_pipe_hanldler): Remove function.
	(_gpgme_add_io_cb): New function.
	(_gpgme_remove_io_cb): Likewise.
	(_gpgme_freeze_fd): Remove function.
	(_gpgme_thaw_fd): Remove function.
	* rungpg.c (struct fd_data_map_s): Add new member TAG.
	(struct gpg_object_s): Likewise for STATUS and COLON.  Add member
	IDX to CMD.  Add new member IO_CBS.
	(close_notify_handler): New variables POSSIBLY_DONE and NOT_DONE.
	For each I/O callback, check if it should be unregistered.  If all
	callbacks have been unregistered, trigger GPGME_EVENT_DONE.
	Remove member RUNNING.
	(_gpgme_gpg_new): Initialize new members.
	(_gpgme_gpg_release): Check PID not RUNNING.  Don't call
	_gpgme_remove_proc_from_wait_queue.  Close GPG->CMD.FD if set.
	(build_argv): Store away the index instead the file descriptor for
	CMD.
	(_gpgme_gpg_add_io_cb): New function.
	(_gpgme_gpg_spawn): Use _gpgme_gpg_add_io_cb to register IO
	callbacks.
	(gpg_status_handler): Change return type to void, remove PID
	argument, close filedescriptor if EOF or error occurs.
	(read_status): Use _gpgme_gpg_add_io_cb instead _gpgme_thaw_fd.
	Use IO_CBS->remove instead _gpgme_freeze_fd.
	(gpg_colon_line_handler): Change return type to void, remove PID
	argument, close filedescriptor if EOF or error occurs.
	(command_cb): Use IO_CBS->remove instead _gpgme_freeze_fd.
	(_gpgme_gpg_set_io_cbs): New function.
	* rungpg.h (_gpgme_gpg_set_io_cbs): Prototype for
	_gpgme_gpg_set_io_cbs.
	* gpgme.h (GpgmeIOCb): New type.
	(GpgmeRegisterIOCb): Likewise.
	(GpgmeRemoveIOCb): Likewise.
	(GpgmeEventIO): Likewise.
	(GpgmeEventIOCb): Likewise.
	(struct GpgmeIOCbs): New structure to hold I/O callbacks.
	(gpgme_set_op_io_cbs): New prototype.
	(gpgme_get_op_io_cbs): Likewise.
	* ops.h: New prototype for _gpgme_op_event_cb.  Remove prototypes
	for _gpgme_freeze_fd and _gpgme_thaw_fd.  Remove PID argument from
	_gpgme_data_inbound_handler and _gpgme_data_outbound_handler
	prototype.  Add prototype for _gpgme_op_reset.
	Add synchronous argument to _gpgme_decrypt_start prototype.
	* io.h: Beautification.
	* gpgme.c: Include "wait.h".
	(gpgme_new): Initialize FDT.
	(gpgme_set_io_cbs): New function.
	(gpgme_get_io_cbs): Likewise.
	(_gpgme_op_event_cb): Likewise.
	* data.c (_gpgme_data_inbound_handler): Change return type to
	void.  Drop PID argument.  Close FD on error and EOF.
	(write_mem_data): Don't close FD here ...
	(write_cb_data): ... or here ...
	(_gpgme_data_outbound_handler): ... but here.  Change return type
	to void.  Drop PID argument.
	* context.h: Include "wait.h".
	(struct gpgme_context_s): New members FDT and IO_CBS.
	* op-support.c: New file.
	* Makefile.am (libgpgme_la_SOURCES): Add op-support.c.
	* ops.h: Add prototype for _gpgme_op_reset().
	* decrypt.c (_gpgme_decrypt_start): New argument SYNCHRONOUS.  Use
	_gpgme_op_reset.
	(gpgme_op_decrypt_start): Add synchronous argument.
	(gpgme_op_decrypt): Likewise.  Use _gpgme_wait_one instead
	gpgme_wait.
	* delete.c (gpgme_op_delete_start): Rename to ...
	(_gpgme_op_delete_start): ... this.  New argument SYNCHRONOUS.
	Use _gpgme_op_reset.  Make function static.
	(gpgme_op_delete_start): Just a wrapper around
	_gpgme_op_delete_start now.
	(gpgme_op_delete): Add synchronous argument.  Use _gpgme_wait_one
	instead gpgme_wait.
	* encrypt.c: Include "wait.h".
	(ggpgme_op_encrypt_start): Rename to ...
	(_gpgme_op_encrypt_start): ... this.  New argument SYNCHRONOUS.
	Use _gpgme_op_reset.  Make function static.
	(gpgme_op_encrypt_start): Just a wrapper around
	_gpgme_op_encrypt_start now.
	(gpgme_op_encrypt): Add synchronous argument.  Use _gpgme_wait_one
	instead gpgme_wait.
	* encrypt_sign.c (gpgme_op_encrypt_sign_start): Rename to ...
	(_gpgme_op_encrypt_sign_start): ... this.  New argument
	SYNCHRONOUS.  Use _gpgme_op_reset.  Make function static.
	(gpgme_op_encrypt_sign_start): Just a wrapper around
	_gpgme_op_encrypt_sign_start now.
	(gpgme_op_encrypt_sign): Add synchronous argument.  Use
	_gpgme_wait_one instead gpgme_wait.
	* export.c (gpgme_op_export_start): Rename to ...
	(_gpgme_op_export_start): ... this.  New argument SYNCHRONOUS.
	Use _gpgme_op_reset.  Make function static.
	(gpgme_op_export_start): Just a wrapper around
	_gpgme_op_export_start now.
	(gpgme_op_export): Add synchronous argument.  Use _gpgme_wait_one
	instead gpgme_wait.
	* genkey.c (gpgme_op_genkey_start): Rename to ...
	(_gpgme_op_genkey_start): ... this.  New argument SYNCHRONOUS.
	Use _gpgme_op_reset.  Make function static.
	(gpgme_op_genkey_start): Just a wrapper around
	_gpgme_op_genkey_start now.
	(gpgme_op_genkey): Add synchronous argument.  Use _gpgme_wait_one
	instead gpgme_wait.
	* import.c (gpgme_op_import_start): Rename to ...
	(_gpgme_op_import_start): ... this.  New argument SYNCHRONOUS.
	Use _gpgme_op_reset.  Make function static.
	(gpgme_op_import_start): Just a wrapper around
	_gpgme_op_import_start now.
	(gpgme_op_import): Add synchronous argument.  Use _gpgme_wait_one
	instead gpgme_wait.
	* keylist.c (gpgme_op_keylist_start): Use _gpgme_op_reset.
	(gpgme_op_keylist_ext_start): Likewise.
	* sign.c (gpgme_op_sign_start): Rename to ...
	(_gpgme_op_sign_start): ... this.  New argument SYNCHRONOUS.  Use
	_gpgme_op_reset.  Make function static.
	(gpgme_op_sign_start): Just a wrapper around _gpgme_op_sign_start
	now.
	(gpgme_op_sign): Add synchronous argument.  Use _gpgme_wait_one
	instead gpgme_wait.
	* trustlist.c (gpgme_op_trustlist_start): Use _gpgme_op_reset.
	* verify.c (gpgme_op_verify_start): Rename to ...
	(_gpgme_op_verify_start): ... this.  New argument SYNCHRONOUS.
	Use _gpgme_op_reset.  Make function static.
	(gpgme_op_verify_start): Just a wrapper around
	_gpgme_op_verify_start now.
	(gpgme_op_verify): Add synchronous argument.  Use _gpgme_wait_one
	instead gpgme_wait.
	* engine-gpgsm.c (iocb_data_t): New type.
	(struct gpgsm_object_s): New member status_cb.  Replace input_fd
	and input_data with input_cb.  Replace output_fd and output_data
	with output_cb.  Replace message_fd and message_data with
	message_cb.  New member io_cbs.
	(_gpgme_gpgsm_new): Initialize all new members (and drop the old
	ones).
	(close_notify_handler): New variable POSSIBLY_DONE.  For each I/O
	callback, check if it should be unregistered.  If all callbacks
	have been unregistered, trigger GPGME_EVENT_DONE.
	(_gpgme_gpgsm_release): Remove variable PID.  Use new variable
	names to close the file descriptors.
	(_gpgme_gpgsm_op_decrypt): Use new variable names,
	(_gpgme_gpgsm_op_encrypt): Likewise.
	(_gpgme_gpgsm_op_genkey): Likewise.
	(_gpgme_gpgsm_op_import): Likewise.
	(_gpgme_gpgsm_op_keylist): Likewise.
	(_gpgme_gpgsm_op_keylist_ext): Likewise.
	(_gpgme_gpgsm_op_sign): Likewise.
	(_gpgme_gpgsm_op_verify): Likewise.
	(gpgsm_status_handler): Drop argument PID.  Change return type to
	void.  Close status pipe before returning because of EOF or error.
	(_gpgme_gpgsm_add_io_cb): New function.
	(_gpgme_gpgsm_start): Use _gpgme_gpgsm_add_io_cb to register
	callback function.
	(_gpgme_gpgsm_set_io_cbs): New function.
	* engine-gpgsm.h: New prototype for _gpgme_gpgsm_set_io_cbs.
	* engine.c (_gpgme_engine_set_io_cbs): New function.
	* engine.h: New prototype for _gpgme_engine_set_io_cbs.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b75138331e529186a0e43855c756c1f432578fa

Git commit 2879352eb5632f1bd12cfe59851d2317866091ba by Steffen Hansen on 10/06/2002 at 16:36..
typecast to make khz happy
https://invent.kde.org/neon/forks/gpgme/-/commit/2879352eb5632f1bd12cfe59851d2317866091ba

Git commit 15188d9a79623ef16b582e1920e94e37665c0870 by Steffen Hansen on 10/06/2002 at 17:53..
reorder issuer DN also
https://invent.kde.org/neon/forks/gpgme/-/commit/15188d9a79623ef16b582e1920e94e37665c0870

Git commit 8ac95a977290ea119de1b57c7361f722aaf78bd2 by Steffen Hansen on 10/06/2002 at 18:37..
support for listing of external certs (untested)
https://invent.kde.org/neon/forks/gpgme/-/commit/8ac95a977290ea119de1b57c7361f722aaf78bd2

Git commit 6b8917205149d90b69080aaa8a97b109b72041df by Werner Koch on 11/06/2002 at 15:33..
* gpgme.h: Add GPGME_ATTR_SIG_SUMMARY and the GPGME_SIGSUM_
constants.
* verify.c (calc_sig_summary): New.
(gpgme_get_sig_ulong_attr): And use it here.
https://invent.kde.org/neon/forks/gpgme/-/commit/6b8917205149d90b69080aaa8a97b109b72041df

Git commit 14f16305b0818b3c3e573976d5d83d6ba6b86682 by Marcus Brinkmann on 11/06/2002 at 18:12..
2002-06-11  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_release): Close status_cb.fd.
	(_gpgme_gpgsm_new): Duplicate status file descriptor, so we can
	use our own close notification mechanism without interfering with
	assuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/14f16305b0818b3c3e573976d5d83d6ba6b86682

Git commit e7dc76582622fdaa43dc369c84b2dae2128647a8 by Karl-Heinz Zimmer on 12/06/2002 at 11:05..
Add Plugin configuration option to allow for sending of *opaque* signed messages.  Unfortunately this is necessary for communication with some MS Outlook clients, e.g. TrustedMime is not able to understand Multipart/Signed messages.  <sigh>       NOTE: This breaks compabilitity with kdenetwork, so make sure to update the KDE sources as well...
https://invent.kde.org/neon/forks/gpgme/-/commit/e7dc76582622fdaa43dc369c84b2dae2128647a8

Git commit 61c97e9fa9c939a76c6fc6be0dc4462cb62f01c5 by Werner Koch on 12/06/2002 at 14:34..
tests/
* gpgsm/t-keylist.c (doit): Print operation info if available.
gpgme/
* keylist.c (struct keylist_result_s): New.
(_gpgme_release_keylist_result): Release it here
(keylist_status_handler): Handle truncated.
(append_xml_keylistinfo): New.
* gpgme.c (_gpgme_release_result): and use it here.
* types.h: Declare the new type here.
* context.h (struct gpgme_context_s): Use it here.
https://invent.kde.org/neon/forks/gpgme/-/commit/61c97e9fa9c939a76c6fc6be0dc4462cb62f01c5

Git commit 1bd00d0a184c2b86ec8f6181cdc2ef455d1a01e7 by Steffen Hansen on 13/06/2002 at 01:56..
bugfix + change to the nextCertificate() function prototype
https://invent.kde.org/neon/forks/gpgme/-/commit/1bd00d0a184c2b86ec8f6181cdc2ef455d1a01e7

Git commit 276e401c427dc0700c2cc9ecd8017cc052e54cfd by Werner Koch on 13/06/2002 at 08:45..
* verify.c (gpgme_op_verify): Make sure that we never access an
unitialized result structure.
https://invent.kde.org/neon/forks/gpgme/-/commit/276e401c427dc0700c2cc9ecd8017cc052e54cfd

Git commit f54a11ad1469cf45b09cdfd7baf08c9db3ecd2dd by Marcus Brinkmann on 14/06/2002 at 19:40..
Add items about I/O callbacks.
https://invent.kde.org/neon/forks/gpgme/-/commit/f54a11ad1469cf45b09cdfd7baf08c9db3ecd2dd

Git commit d89d383d5424c05d1c74128b7d2374d6556635bd by Marcus Brinkmann on 14/06/2002 at 19:41..
Update list.
https://invent.kde.org/neon/forks/gpgme/-/commit/d89d383d5424c05d1c74128b7d2374d6556635bd

Git commit 2fe7046d157edc8d9e335faf2ba6a0e7cc2cf6d9 by Marcus Brinkmann on 14/06/2002 at 20:05..
Cosmetic fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/2fe7046d157edc8d9e335faf2ba6a0e7cc2cf6d9

Git commit ccde48c08d118182c5760d7f4c02e157b28420cc by Marcus Brinkmann on 14/06/2002 at 20:06..
2002-06-14  Marcus Brinkmann  <marcus at g10code.de>

	* wait.c (do_select): Return -1 on error, and 0 if nothing to run.
	(_gpgme_wait_one): Only set HANG to zero if do_select returned an
	error, or there are no more file descriptors to wait on.
	(_gpgme_wait_on_condition): Ignore return value from do_select for
	now.
https://invent.kde.org/neon/forks/gpgme/-/commit/ccde48c08d118182c5760d7f4c02e157b28420cc

Git commit 6798c68f2f1e3c64008ef3eec98fd3fab9bf4004 by Karl-Heinz Zimmer on 19/06/2002 at 10:22..
Use gpgme_get_sig_ulong_attr(.., GPGME_ATTR_SIG_SUMMARY ) function to return extended signature status information from the CryptPlug to the calling process after trying to verify a signature.
https://invent.kde.org/neon/forks/gpgme/-/commit/6798c68f2f1e3c64008ef3eec98fd3fab9bf4004

Git commit c445a85ff255ca85912c2731e731e1e13dc3d58d by Karl-Heinz Zimmer on 19/06/2002 at 12:56..
Bugfix #949: (a) call gpgme_check_version(NULL) during initialization and (b) provide additional function libVersion(void) to retrieve the library version used - this function has been added to the CryptPlug API as new *MUST* function for all implementations.
https://invent.kde.org/neon/forks/gpgme/-/commit/c445a85ff255ca85912c2731e731e1e13dc3d58d

Git commit 7a0eb84f8089e7876566643b0a7b820f14b53f3a by Steffen Hansen on 20/06/2002 at 00:44..
Show DN part names (CN=blah,O=blah...)
https://invent.kde.org/neon/forks/gpgme/-/commit/7a0eb84f8089e7876566643b0a7b820f14b53f3a

Git commit af2050538e35553fbd7d3861d19861a649581c62 by Karl-Heinz Zimmer on 20/06/2002 at 05:05..
added some entries to DN normalization function
https://invent.kde.org/neon/forks/gpgme/-/commit/af2050538e35553fbd7d3861d19861a649581c62

Git commit 45d99504f5d92ce06e517436aa95b78e9a5a1a79 by Werner Koch on 20/06/2002 at 12:13..
* verify.c (calc_sig_summary): Set bad policy for wrong key usage.
(skip_token): New.
(_gpgme_verify_status_handler): Watch out for wrong key usage.
(gpgme_get_sig_string_attr): Hack to return info on the key
usage.  Does now make use of the former RESERVED argument which
has been renamed to WHATIDX.
(gpgme_get_sig_ulong_attr): Renamed RESERVED to WHATIDX.

* gpgme.texi (Verify): Explain the new whatidx variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/45d99504f5d92ce06e517436aa95b78e9a5a1a79

Git commit 1211f36b15db05947d6a6627fa68979b800b35f9 by Werner Koch on 20/06/2002 at 13:45..
* rungpg.c (build_argv): Ignore GPG_AGENT_INFO if set but empty.
https://invent.kde.org/neon/forks/gpgme/-/commit/1211f36b15db05947d6a6627fa68979b800b35f9

Git commit e6dc9fd6c4d00455975fc4bb6d98f31b3c36b517 by Werner Koch on 20/06/2002 at 13:47..
* gpgsm/t-sign.c (main): Also test a normal signature.

* gpg/Makefile (TESTS_ENVIRONMENT): Set GPG_AGENT_INFO empty.
* gpg/t-signers.c, gpg/t-sign.c, gpg/t-encrypt-sym.c
* gpg/t-encrypt-sign.c, gpg/t-decrypt.c
* gpg/t-decrypt-verify.c (main): Changed the GPG_AGENT_INFO check to
match the one in ../../gpgme/rungpg.c.
https://invent.kde.org/neon/forks/gpgme/-/commit/e6dc9fd6c4d00455975fc4bb6d98f31b3c36b517

Git commit 5e136683405d8524ff41bc9237692d6534d71ca0 by Werner Koch on 20/06/2002 at 16:48..
* gpgmeplug.c (reorder_dn): Added missing stdpart list terminator.

BTW, why did you change the sequence of the parts.  According to the
specs there is no standard but our implementation has to make sure
that it uses the same sequence everywhere.  Adding the extra parts is
useless because they are not defined in rfc2253 and thus can't occur.
https://invent.kde.org/neon/forks/gpgme/-/commit/5e136683405d8524ff41bc9237692d6534d71ca0

Git commit a8f087da34e9bb4005b67c4e8710a5b6839ec932 by Marcus Brinkmann on 21/06/2002 at 15:28..
2002-06-21  Marcus Brinkmann  <marcus at g10code.de>

	* wait.c (_gpgme_remove_io_cb): Unlock FDT->lock.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8f087da34e9bb4005b67c4e8710a5b6839ec932

Git commit 2ded628d4d1178bece830192a2cd4461f18dc5b7 by Marcus Brinkmann on 21/06/2002 at 19:16..
2002-06-21  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_assuan_simple_command): Return ERR.
	(parse_status): New function.
	(gpgsm_status_handler): Use parse_status.
	(gpgsm_assuan_simple_command): Accept new arguments STATUS_FNC and
	STATUS_FNC_VALUE and process status messages.
	(gpgsm_set_recipients): Pass new arugments to gpgsm_assuan_simple_command.
	(gpgsm_set_fd): Likewise.
	(_gpgme_gpgsm_op_keylist): Likewise.
	(_gpgme_gpgsm_op_keylist_ext): Likewise.
	(_gpgme_gpgsm_op_sign): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/2ded628d4d1178bece830192a2cd4461f18dc5b7

Git commit b24b335b3b3d80b47cb243206d4755b5751e0ec7 by Karl-Heinz Zimmer on 24/06/2002 at 20:25..
Use fine DN parts reordering from within findCertificates() as well.
https://invent.kde.org/neon/forks/gpgme/-/commit/b24b335b3b3d80b47cb243206d4755b5751e0ec7

Git commit 969ceb2e6ec51c6d32c629205ceb978290ef6e61 by Karl-Heinz Zimmer on 24/06/2002 at 21:01..
Disable debug output
https://invent.kde.org/neon/forks/gpgme/-/commit/969ceb2e6ec51c6d32c629205ceb978290ef6e61

Git commit ea042a1fa9a2909a32ced5b0773216e745fcf927 by Marcus Brinkmann on 25/06/2002 at 11:14..
2002-06-25  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_export): Implement.
https://invent.kde.org/neon/forks/gpgme/-/commit/ea042a1fa9a2909a32ced5b0773216e745fcf927

Git commit 3ea78f5a20fe80bd819fb643053a190ce42ff58a by Marcus Brinkmann on 25/06/2002 at 12:10..
2002-06-25  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_export): Only export the keys
	listed in RECP.
	* export.c (gpgme_op_export): If no data was returned, return
	GPGME_No_Recipients.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ea78f5a20fe80bd819fb643053a190ce42ff58a

Git commit 7a32c607e3f899bd964fc5f5b0eff217301fe5a3 by Marcus Brinkmann on 25/06/2002 at 12:12..
2002-06-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile.am (TESTS): Add t-export.
	gpgsm/t-export.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/7a32c607e3f899bd964fc5f5b0eff217301fe5a3

Git commit da40b7130f3622b8ab654ab04ba8644f9ae0b6d8 by Karl-Heinz Zimmer on 25/06/2002 at 15:05..
Have additional secretOnly parameter at the findCertificates() function to allow for searching only secret keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/da40b7130f3622b8ab654ab04ba8644f9ae0b6d8

Git commit 3debbf008e716a981a44c2f9024623a6064618b3 by Steffen Hansen on 25/06/2002 at 17:42..
importCertificate( const char* fpr )
https://invent.kde.org/neon/forks/gpgme/-/commit/3debbf008e716a981a44c2f9024623a6064618b3

Git commit f93de9387042c016147f7f789bfe380afdc3ed94 by Werner Koch on 25/06/2002 at 18:32..
* configure.ac: Bumbed LT version to 9/3/0.
(NEED_GPGSM_VERSION): Need 0.3.8 due to fixed export command.
https://invent.kde.org/neon/forks/gpgme/-/commit/f93de9387042c016147f7f789bfe380afdc3ed94

Git commit 5df644f5ccccee03aee8fd14112adb66af8e64cc by Werner Koch on 25/06/2002 at 18:50..
* engine-gpgsm.c (_gpgme_gpgsm_set_io_cbs) [ENABLE_GPGSM]: Fixed
function arguments.
https://invent.kde.org/neon/forks/gpgme/-/commit/5df644f5ccccee03aee8fd14112adb66af8e64cc

Git commit 692d0e43f4297d2d2c0035167807cf6af71f44b9 by Werner Koch on 25/06/2002 at 19:04..
* gpgsm/Makefile.am (DISTCLEANFILES): new.
https://invent.kde.org/neon/forks/gpgme/-/commit/692d0e43f4297d2d2c0035167807cf6af71f44b9

Git commit e37e5beb4617e3c9083bf812666f3e30226c3b7c by Werner Koch on 25/06/2002 at 19:22..
Prepared for further development.
https://invent.kde.org/neon/forks/gpgme/-/commit/e37e5beb4617e3c9083bf812666f3e30226c3b7c

Git commit 4783cc23da1f7b2a473aa3272a2e0b70d1eef46b by Steffen Hansen on 25/06/2002 at 20:24..
cert export/import bugfix
https://invent.kde.org/neon/forks/gpgme/-/commit/4783cc23da1f7b2a473aa3272a2e0b70d1eef46b

Git commit 0a4a00821d3e97d4decfc2d0052bf43470a0c4be by Karl-Heinz Zimmer on 26/06/2002 at 00:05..
Oh pazzo mio!  I forgot to *use* the nice dn string actually.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a4a00821d3e97d4decfc2d0052bf43470a0c4be

Git commit f97a834df6f0f1eec907dbcc6f9cf59c14838b0d by Karl-Heinz Zimmer on 26/06/2002 at 04:44..
IMPORTANT BUGFIX: Avoid random crashes in findCertificates.   (This also fixes bug #1088.)
https://invent.kde.org/neon/forks/gpgme/-/commit/f97a834df6f0f1eec907dbcc6f9cf59c14838b0d

Git commit 73f47e40b1429a4683e7c0e2e795ac8563d84edf by Karl-Heinz Zimmer on 26/06/2002 at 08:04..
Make the signatureCertificateDaysLeftToExpiry() work as expected.
https://invent.kde.org/neon/forks/gpgme/-/commit/73f47e40b1429a4683e7c0e2e795ac8563d84edf

Git commit 06cd423a8b14ae91d5b0b248a90516c92db4d54e by Werner Koch on 26/06/2002 at 12:49..
* gpgsm/t-import.c (print_op_info): New.
(main): Print operation info.

* engine-gpgsm.c (map_assuan_error): Map No_Data_Available to EOF.

* import.c (append_xml_impinfo): Kludge to print fingerprint
instead of keyid for use with gpgsm.
(import_status_handler): Set a flag to know whether any import
occured.
(gpgme_op_import): Reurn -1 if no certificate ewas imported.

* gpgme.texi (Importing Keys): Document the return value -1 of
gpgme_op_import.
https://invent.kde.org/neon/forks/gpgme/-/commit/06cd423a8b14ae91d5b0b248a90516c92db4d54e

Git commit 71266fd6ea666db91de1a3e234d8ee00b0c4532d by Karl-Heinz Zimmer on 26/06/2002 at 15:16..
Bugfix: enable function receiverCertificateDaysLeftToExpiry().
https://invent.kde.org/neon/forks/gpgme/-/commit/71266fd6ea666db91de1a3e234d8ee00b0c4532d

Git commit 095eef179277e6bec2baf597652be35d6142d1f4 by Karl-Heinz Zimmer on 27/06/2002 at 08:21..
Missing implementation bug fixed: Return both error id and error plain text from decryptMessage().
https://invent.kde.org/neon/forks/gpgme/-/commit/095eef179277e6bec2baf597652be35d6142d1f4

Git commit bb19f16ec4861af434be89a8c2fdb42ad53ac758 by Steffen Hansen on 27/06/2002 at 13:15..
handle truncated data
https://invent.kde.org/neon/forks/gpgme/-/commit/bb19f16ec4861af434be89a8c2fdb42ad53ac758

Git commit 2ea796a1a0a1b613bfbef31a87596eee957de035 by Steffen Hansen on 27/06/2002 at 16:26..
use gpgme_op_keylist_ext_start
https://invent.kde.org/neon/forks/gpgme/-/commit/2ea796a1a0a1b613bfbef31a87596eee957de035

Git commit e0d89a9a15888564f71d46968cadef7ce5d9173f by Marcus Brinkmann on 27/06/2002 at 16:34..
doc/
2002-06-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Information About Keys): Fix documentation for IDX.
	(Information About Trust Items): Likewise.

gpgme/
2002-06-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Fix documentation of key attribute retrieval functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/e0d89a9a15888564f71d46968cadef7ce5d9173f

Git commit 3ccd2790b329087073bac2e9bbc6fa9355825d42 by Marcus Brinkmann on 28/06/2002 at 01:11..
2002-06-28  Marcus Brinkmann  <marcus at g10code.de>

	* ops.h (_gpgme_wait_on_condition): Remove HANG argument from
	prototype and change return type to GpgmeError.
	(_gpgme_wait_one): New prototype.
	* wait.c (gpgme_wait): Replace with the meat from
	_gpgme_wait_on_condition here, and remove the support for
	conditions.
	(_gpgme_wait_on_condition): Remove HANG argument from prototype
	and change return type to GpgmeError.  Replace with meat from
	_gpgme_wait_one and add support for conditions.
	(_gpgme_wait_one): Just call _gpgme_wait_on_condition without
	condition.
	* keylist.c (gpgme_op_keylist_ext_start): Always use our own FD
	table (eg use synchronous mode).
	(gpgme_op_keylist_next): Remove HANG argument from
	_gpgme_wait_on_condition.  Check its return value.
	* trustlist.c (gpgme_op_trustlist_start): Always use our own FD
	table (eg use synchronous mode).
	(gpgme_op_trustlist_next): Remove HANG argument from
	_gpgme_wait_on_condition.  Check its return value.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ccd2790b329087073bac2e9bbc6fa9355825d42

Git commit 92386f4dd17c44a27be8551312e25662395f70b4 by Marcus Brinkmann on 28/06/2002 at 01:14..
2002-06-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Multi Threading): Remove item about the need to
	synchronize anything against gpgme_wait (except gpgme_wait
	itself).
https://invent.kde.org/neon/forks/gpgme/-/commit/92386f4dd17c44a27be8551312e25662395f70b4

Git commit 406ec045632b43c2503ec19a5ebced9ff0ceace9 by Marcus Brinkmann on 28/06/2002 at 12:02..
2002-06-28  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (gpgme_op_keylist_ext_start): Always use our own FD
	table (eg use synchronous mode).
https://invent.kde.org/neon/forks/gpgme/-/commit/406ec045632b43c2503ec19a5ebced9ff0ceace9

Git commit 4114f4400d8330bc4a90d094a75a418f4a9d00a1 by Karl-Heinz Zimmer on 28/06/2002 at 14:12..
internal AEgypten bugfix #1131: get full list of emails stored in certificated used for signing a received message
https://invent.kde.org/neon/forks/gpgme/-/commit/4114f4400d8330bc4a90d094a75a418f4a9d00a1

Git commit e866179ce688d8f2df9c6ade0dd22a6e81210098 by Bernhard Reiter on 28/06/2002 at 14:51..
* gpgmeplug.c: new macro days_to_seconds().
	this also fixes the dividing factor.
	(signatureCertificateDaysLeftToExpiry)
        (preceiverCertificateDaysLeftToExpiry): using the new macro

	(caCertificateDaysLeftToExpiry)
	(rootCertificateDaysLeftToExpiry): using new macro in deactivated code.
https://invent.kde.org/neon/forks/gpgme/-/commit/e866179ce688d8f2df9c6ade0dd22a6e81210098

Git commit ee970fa57d2fbcbebbae7ada2f33042ba81ae98b by Werner Koch on 28/06/2002 at 18:30..
* gpgmeplug.c (xmalloc): New.
(safe_malloc): Removed this macro and replaced it at all places
without return values checks by xmalloc.
(xstrdup): New. Replaces funny named macro with different
semantics.  Changed all callers to the new semantic.
(findCertificates): Don't free duplicate free the FPR array
values.  Removed the unneeded initialization.  Replaces the
gcc-ish use dynamic allocation of automatic variables by repalce
maxCerts with a macro MAXCERTS.  Made some comments Real C (tm).
(startListCertificates): Removed uneeded cast from xmalloc.
https://invent.kde.org/neon/forks/gpgme/-/commit/ee970fa57d2fbcbebbae7ada2f33042ba81ae98b

Git commit 054b78bdc062cb09bccdc0e4e465fc15af88f072 by Karl-Heinz Zimmer on 28/06/2002 at 19:37..
Removed silly "free( dn )" statement forgotten during my last changes in findCertificates().
https://invent.kde.org/neon/forks/gpgme/-/commit/054b78bdc062cb09bccdc0e4e465fc15af88f072

Git commit 68f5d46094789b29eacf1b10c559b52cf2dd515e by Karl-Heinz Zimmer on 28/06/2002 at 19:40..
Make it compile. :-(
https://invent.kde.org/neon/forks/gpgme/-/commit/68f5d46094789b29eacf1b10c559b52cf2dd515e

Git commit 0fff553077f081a848a9fde151042797d097264f by Karl-Heinz Zimmer on 28/06/2002 at 19:50..
replace many comment lines by just one single comment
https://invent.kde.org/neon/forks/gpgme/-/commit/0fff553077f081a848a9fde151042797d097264f

Git commit d73a0f3c410b22352b7d271a5be63c5623f829b7 by Werner Koch on 01/07/2002 at 11:36..
* gpgmeplug.c (findCertificates): Reintroduced a free which must
have been removed after my last fix.  This avoids a memory leak
when a fingerprint was not found.  Removed the double loop
increment in the code to release the arrays.
https://invent.kde.org/neon/forks/gpgme/-/commit/d73a0f3c410b22352b7d271a5be63c5623f829b7

Git commit a4b45557eadadff1abe1fad613bf1c1ff4db5a26 by Karl-Heinz Zimmer on 01/07/2002 at 12:08..
avoid another memory leak in checkMessageSignature()
https://invent.kde.org/neon/forks/gpgme/-/commit/a4b45557eadadff1abe1fad613bf1c1ff4db5a26

Git commit 7a826e3f35716936e97fa0d8391692651a544d18 by Steffen Hansen on 01/07/2002 at 12:52..
Fixed memory corruption bug
https://invent.kde.org/neon/forks/gpgme/-/commit/7a826e3f35716936e97fa0d8391692651a544d18

Git commit 3f7e65f9a9d1c4b3a6ec639c814018620474c88a by Werner Koch on 01/07/2002 at 13:01..
* gpgmeplug.c (findCertificates): Reintroduced a free which must
have been removed after my last fix.  This avoids a memory leak
when a fingerprint was not found.  Removed the double loop
increment in the code to release the arrays.
(make_fingerprint): Removed superfluous check on retrun value of
xmalloc.
(safe_free): Removed.  Changed all callers to use a regular free
and at appropriate palces set the free pointer to NULL.  That
safe_free stuff seems to have been copied verbatim from some
Mutt example code I posted.
(storeNewCharPtr): Use xmalloc instead of an unchecked
malloc. Removed superfluous string termination.
(parseAddress): Use xmalloc instead of an unchecked malloc.
(nextAddress): Ditto.
* gpgmeplug.c:  Moved a few helper functions more to the top.
Fixed comment syntax.  Merged a copyright notice somewhere in the
middle of the file with the one at the top.
https://invent.kde.org/neon/forks/gpgme/-/commit/3f7e65f9a9d1c4b3a6ec639c814018620474c88a

Git commit ca43df065f8f1605b2ac32fa8635c25082f27bcf by Werner Koch on 01/07/2002 at 13:09..
(xstrdup): Oops, obviously I calculated the length wrong when
coded this.  Tsss, wrote xstrdup some hundreds times but missed it
this time.  Thanks to Steffen Hansen for noticing it.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca43df065f8f1605b2ac32fa8635c25082f27bcf

Git commit 1caf8a12aba79960a48c929a18bed30bc3a64522 by Werner Koch on 02/07/2002 at 08:53..
typo fix in comment.
https://invent.kde.org/neon/forks/gpgme/-/commit/1caf8a12aba79960a48c929a18bed30bc3a64522

Git commit 458a1337947ace3c352d333886b2bfe2db9d9246 by Werner Koch on 02/07/2002 at 09:07..
auto updated version number.
https://invent.kde.org/neon/forks/gpgme/-/commit/458a1337947ace3c352d333886b2bfe2db9d9246

Git commit abf4c3bb50e757a522055e3072bf283cd5e1c18a by Werner Koch on 02/07/2002 at 09:08..
* configure.ac: Bumbed version number to 0.3.9; add a comment on
when to change it.

* gpgme.spec.in: New. Contributed by Wojciech Polak.
* Makefile.am (dist-hook): New.

* AUTHORS: Added Wojciech and bug reporting addresses.
https://invent.kde.org/neon/forks/gpgme/-/commit/abf4c3bb50e757a522055e3072bf283cd5e1c18a

Git commit 59c6205c7874b913625b8077a58955e372f66102 by Karl-Heinz Zimmer on 02/07/2002 at 16:32..
make sure key used for signing _can_ sign
https://invent.kde.org/neon/forks/gpgme/-/commit/59c6205c7874b913625b8077a58955e372f66102

Git commit 0cf2a8a51aa0a31704983c7712ef018d13823971 by Marcus Brinkmann on 02/07/2002 at 20:43..
Fix news item.
https://invent.kde.org/neon/forks/gpgme/-/commit/0cf2a8a51aa0a31704983c7712ef018d13823971

Git commit b92c8f057ce62a6676955dccdbae2aa8d083d0ee by Marcus Brinkmann on 03/07/2002 at 01:57..
2002-07-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_set_io_cbs): Deal with CTX being NULL.

	* gpgme.c (_gpgme_op_event_cb_user): New function.
	* op-support.c (_gpgme_op_reset): Support a new mode of operation
	for private or user event loop.  Use new user event callback
	wrapper.
	* trustlist.c (gpgme_op_trustlist_start): Use this new mode.
	* keylist.c (gpgme_op_keylist_start): Likewise.

	* rungpg.c (_gpgme_gpg_io_event): New function.
	* rungpg.h (_gpgme_gpg_io_event): New prototype.
	* engine-gpgsm.c (_gpgme_gpg_io_event): New function.
	* engine-gpgsm.h (_gpgme_gpgsm_io_event): New prototype.
	* engine.c (_gpgme_engine_io_event): New function.
	* engine.h (_gpgme_engine_io_event): New prototype.
	* keylist.c (finish_key): Call _gpgme_engine_io_event, and move
	the real work for the default IO callback routines to ...
	(_gpgme_op_keylist_event_cb): ... here.  New function.
	* trustlist.c (trustlist_colon_handler): Signal
	GPGME_EVENT_NEXT_TRUSTITEM.  Move queue manipulation to ...
	(_gpgme_op_trustlist_event_cb): ... here.  New function.
	* gpgme.c (_gpgme_op_event_cb): Call _gpgme_op_keylist_event_cb
	and _gpgme_op_trustlist_event_cb when appropriate.
	* ops.h (_gpgme_op_keylist_event_cb): New prototype.
	(_gpgme_op_trustlist_event_cb): Likewise.
	* op-support.c (_gpgme_op_reset): Add comment why we don't use the
	user provided event handler directly.
	* gpgme.h (GpgmeRegisterIOCb): Return GpgmeError value, and TAG in
	a pointer argument.
	* wait.c (_gpgme_add_io_cb): Likewise.
	* wait.h (_gpgme_add_io_cb): Likewise for prototype.
	* rungpg.c (_gpgme_gpg_add_io_cb): Call IO_CBS->add with new
	argument.  Fix up error handling.
	* engine-gpgsm.c (_gpgme_gpgsm_add_io_cb): Call IO_CBS->add with
	new argument, fix up error handling.
https://invent.kde.org/neon/forks/gpgme/-/commit/b92c8f057ce62a6676955dccdbae2aa8d083d0ee

Git commit d7b78c09876c861a0269ab0653f0bf569aade52c by Marcus Brinkmann on 03/07/2002 at 02:18..
2002-07-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-eventloop.c: New file.
	* gpg/Makefile (TESTS): Add t-eventloop.
https://invent.kde.org/neon/forks/gpgme/-/commit/d7b78c09876c861a0269ab0653f0bf569aade52c

Git commit ea0acccf2b68b4b1e55c615c2e8d8e46194e5b83 by Marcus Brinkmann on 03/07/2002 at 02:22..
2002-07-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Run Control): Update this section.
	(Waiting For Completion): Likewise for this subsection.
	(Cancelling an Operation): Likewise for this subsection.
	(Using External Event Loops): New subsection with several
	subsubsections.
https://invent.kde.org/neon/forks/gpgme/-/commit/ea0acccf2b68b4b1e55c615c2e8d8e46194e5b83

Git commit 992c88991d2d97327626a95c712477254450b75c by Werner Koch on 03/07/2002 at 11:04..
* gpgmeplug.c (nextCertificate): Actually free the entire array
and don't loop over tmp_dn and double free the first item.
Spotted by Bernhard Herzog.
https://invent.kde.org/neon/forks/gpgme/-/commit/992c88991d2d97327626a95c712477254450b75c

Git commit e3e127d4a8cf5b1d6b8593ffd73fe93b1c66df9d by Karl-Heinz Zimmer on 03/07/2002 at 15:43..
fixing bug #1154
https://invent.kde.org/neon/forks/gpgme/-/commit/e3e127d4a8cf5b1d6b8593ffd73fe93b1c66df9d

Git commit 07f4264a5e687ed0175780ecc8bf9636a0f1dbfd by Karl-Heinz Zimmer on 04/07/2002 at 00:02..
CRASH prevention fix: Memory was overwritten if there were more than 1 email address in a signature certificate found in checkMessageSignature() function.
https://invent.kde.org/neon/forks/gpgme/-/commit/07f4264a5e687ed0175780ecc8bf9636a0f1dbfd

Git commit 4ef64980fb74c82d923d9be595608cfad6d040d4 by Marcus Brinkmann on 25/07/2002 at 15:33..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* wait.c (fdt_global): Make static.  Reported by St�phane
	Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/4ef64980fb74c82d923d9be595608cfad6d040d4

Git commit b4d77023691be863c4e2d31cf9d4cc19b80672b3 by Marcus Brinkmann on 25/07/2002 at 15:45..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_op_keylist_ext): Skip empty string
	patterns.  Reported by St�phane Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/b4d77023691be863c4e2d31cf9d4cc19b80672b3

Git commit fd6d91581b39b2a458280b5ddf5ef1c0acc76a4c by Marcus Brinkmann on 25/07/2002 at 15:50..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Information About Keys): Document (badly) the new
	key attributes.
https://invent.kde.org/neon/forks/gpgme/-/commit/fd6d91581b39b2a458280b5ddf5ef1c0acc76a4c

Git commit 46f61064e6013adec9b5caac453e5acbef4a34e3 by Marcus Brinkmann on 25/07/2002 at 15:52..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Manipulating Data Buffers): Mention that backend
	tries to detect encoding automatically.
https://invent.kde.org/neon/forks/gpgme/-/commit/46f61064e6013adec9b5caac453e5acbef4a34e3

Git commit eecc18a7366262ea488b09253561380b8f4aeb26 by Marcus Brinkmann on 25/07/2002 at 16:01..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (gpgme_key_get_as_xml): Add OTRUST attribute.  Requested
	by St�phane Corth�sy.
	(gpgme_key_get_string_attr): Add GPGME_ATTR_SIG_SUMMARY case to
	silence gcc warning.
https://invent.kde.org/neon/forks/gpgme/-/commit/eecc18a7366262ea488b09253561380b8f4aeb26

Git commit 8359ecc707b0a864383c6fa7435257f019a63a7e by Marcus Brinkmann on 25/07/2002 at 16:08..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_new): Always set utf8 as charset.
https://invent.kde.org/neon/forks/gpgme/-/commit/8359ecc707b0a864383c6fa7435257f019a63a7e

Git commit b295bab058477187423d62a38b18e2833aaef0cc by Marcus Brinkmann on 25/07/2002 at 17:51..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_LDADD): Add @LIBOBJS@ for vasprintf and
	fopencookie.
	* vasprintf.c: Update to more recent libiberty version.
	* debug.h: Replace #elsif with #elif.

	Submitted by St�phane Corth�sy:
	* util.h (vasprintf): Correct prototype.
	* encrypt-sign.c: Include <stddef.h>.
	(encrypt_sign_status_handler): Change type of ENCRYPT_INFO_LEN to
	size_t.
	* ath-pthread.c: Include <stdlib.h>, not <malloc.h>.
	* ath-pth.c: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/b295bab058477187423d62a38b18e2833aaef0cc

Git commit 8270052e0f4a74977c82f1046acc590586286d95 by Marcus Brinkmann on 25/07/2002 at 18:15..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-encrypt-sym.c (main): Change type of I to size_t and
	rename to LEN.
	* gpg/t-verify.c (main): Likewise.  Submitted by St�phane
	Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/8270052e0f4a74977c82f1046acc590586286d95

Git commit 25009b24cfb61b6b738276379114723c944d2734 by Marcus Brinkmann on 25/07/2002 at 18:15..
Update version requirement.
https://invent.kde.org/neon/forks/gpgme/-/commit/25009b24cfb61b6b738276379114723c944d2734

Git commit 4508ffbfb5541b6fbab2bdaf653eae68e84722a4 by Marcus Brinkmann on 25/07/2002 at 18:20..
Update version information.
https://invent.kde.org/neon/forks/gpgme/-/commit/4508ffbfb5541b6fbab2bdaf653eae68e84722a4

Git commit 1ffa0534eabcbb70891221967b514be598a499cb by Marcus Brinkmann on 25/07/2002 at 18:44..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_delete): Implement this.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ffa0534eabcbb70891221967b514be598a499cb

Git commit ab0e8fb5e4e5474f340852e67277565b980fc243 by Marcus Brinkmann on 25/07/2002 at 18:50..
2002-07-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Deleting Keys): Say that secret keys might not be
	deleted.
https://invent.kde.org/neon/forks/gpgme/-/commit/ab0e8fb5e4e5474f340852e67277565b980fc243

Git commit 1aef493b8dd5131701bfca2649bf0e3d88f8be32 by Marcus Brinkmann on 27/07/2002 at 14:24..
2002-07-27  Marcus Brinkmann  <marcus at g10code.de>

	* delete.c (delete_problem): New case ambigious specification.
	(delete_status_handler): Handle new case (poorly).
https://invent.kde.org/neon/forks/gpgme/-/commit/1aef493b8dd5131701bfca2649bf0e3d88f8be32

Git commit a1f15581e95817708dd8d12e9dcb5820cc06c35f by Marcus Brinkmann on 27/07/2002 at 20:21..
Update the file.
https://invent.kde.org/neon/forks/gpgme/-/commit/a1f15581e95817708dd8d12e9dcb5820cc06c35f

Git commit f12433c1e476f52c92496a885c1ffcd10fa2a322 by Marcus Brinkmann on 28/07/2002 at 18:41..
2002-07-28  Marcus Brinkmann  <marcus at g10code.de>

	* data.c (gpgme_data_read): For GPGME_DATA_TYPE_NONE, return EOF
	instead an error.

	The following changes make it possible to flush an inbound data
	pipe before invoking a command handler:

	* posix-io.c (_gpgme_io_select): Accept new argument NONBLOCK to
	_gpgme_io_select.  Set timeout of 0 if this is set.
	* w32-io.c (_gpgme_io_select): Likewise.
	* io.h: Add new argument NONBLOCK to _gpgme_io_select prototype.
	* wait.c (do_select): Add new argument to _gpgme_io_select
	invocation.
	* rungpg.h (_gpgme_gpg_set_command_handler): Add new argument
	linked_data to prototype.
	* engine.h (_gpgme_engine_set_command_handler): Likewise.
	* engine.c (_gpgme_engine_set_command_handler): Likewise.
	* passphrase.c (_gpgme_passphrase_start): Pass NULL as linked_data
	argument to _gpgme_engine_set_command_handler.
	* rungpg.c (struct gpg_object_s): New members linked_data and
	linked_idx in CMD.
	(_gpgme_gpg_new): Initialize those new members.
	(_gpgme_gpg_set_command_handler): Accept new argument linked_data.
	(build_argv): Handle linked_data in the same hack as cb_data.
	(read_status): If linked_data is in use, flush the pipe before
	activating the command handler.
	* gpgme.h: Add prototypes for gpgme_op_edit_start and
	gpgme_op_edit.

	The next changes export the status codes to the user:

	* decrypt.c (_gpgme_decrypt_status_handler): Likewise, also prefix
	all STATUS_ with GPGME_.
	* delete.c (delete_status_handler): Likewise.
	* decrypt-verify.c (decrypt_verify_status_handler): Likewise.
	* encrypt.c (_gpgme_encrypt_status_handler): Likewise.
	(_gpgme_encrypt_sym_status_handler): Likewise.
	* encrypt-sign.c (encrypt_sign_status_handler): Likewise.
	* engine-gpgsm.c (parse_status): Likewise.
	(gpgsm_status_handler): Likewise.
	(gpgsm_set_recipients): Likewise.
	* export.c (export_status_handler): Likewise.
	* genkey.c (genkey_status_handler): Likewise.
	* import.c (append_xml_impinfo): Likewise.
	(import_status_handler): Likewise.
	* keylist.c (keylist_status_handler): Likewise.
	* passphrase.c (_gpgme_passphrase_status_handler): Likewise.
	(command_handler): Likewise.
	* progress.c (_gpgme_progress_status_handler): Likewise.
	* sign.c (_gpgme_sign_status_handler): Likewise.
	* trustlist.c (trustlist_status_handler): Likewise.
	* verify.c (_gpgme_verify_status_handler): Likewise.
	* gpgme.h (GpgmeEditCb): New type.
	* rungpg.h (GpgStatusCode): Rename and move to ...
	* gpgme.h (GpgmeStatusCode): ... this and here.
	* Makefile.am (status-table.h): Run mkstatus on gpgme.h, not rungpg.h.
	* mkstatus: Prefix STATUS with GPGME_.
	* rungpg.h (GpgStatusHandler, GpgCommandHandler): Change type
	accordingly.
	* ops.h (_gpgme_verify_status_handler,
	_gpgme_decrypt_status_handler, _gpgme_sign_status_handler,
	_gpgme_encrypt_status_handler, _gpgme_passphrase_status_handler,
	_gpgme_progress_status_handler): Likewise.
	* rungpg.c (struct gpg_object_s): Likewise for CMD.code.

	These changes add an edit operation to GPGME:

	* context.h (struct gpgme_context_s): New member RESULT.edit.  *
	ops.h: Add prototype for _gpgme_release_edit_result and
	_gpgme_passphrase_command_handler.
	* passphrase.c (command_handler): Make non-static and rename to ...
	(_gpgme_passphrase_command_handler): ... this.
	(_gpgme_passphrase_start): Use new name for command handler.
	* types.h: Add EditResult type.
	* gpgme.c (_gpgme_release_result): Release EDIT result.
	* edit.c: New file.
	* Makefile.am (libgpgme_la_SOURCES): Add edit.c.
	(libgpgme_la_LDADD): Rename to libgpgme_la_LIBADD, and include
	assuan_libobjs.
	(assuan_libobjs): New variable, set this instead
	libgpgme_la_LIBADD.
	* engine.h (_gpgme_engine_op_edit): New prototype.
	* engine.c (_gpgme_engine_op_edit): New function.
	* rungpg.h (_gpgme_gpg_op_edit): New prototype.
	* rungpg.c (_gpgme_gpg_op_edit): New function.
https://invent.kde.org/neon/forks/gpgme/-/commit/f12433c1e476f52c92496a885c1ffcd10fa2a322

Git commit 65392930637f70906a630de53c8a0a603ea7dbbb by Marcus Brinkmann on 28/07/2002 at 18:43..
2002-07-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-edit.c: New file.
	* gpg/Makefile (TESTS): Add t-edit.
https://invent.kde.org/neon/forks/gpgme/-/commit/65392930637f70906a630de53c8a0a603ea7dbbb

Git commit 4823df7cf425e38250859059d3d78fae0b1e1f78 by Marcus Brinkmann on 28/07/2002 at 18:45..
Add items about the edit key operation.
https://invent.kde.org/neon/forks/gpgme/-/commit/4823df7cf425e38250859059d3d78fae0b1e1f78

Git commit 4530913bc588e57fa6a42ab680b85bf56ac30146 by Marcus Brinkmann on 29/07/2002 at 11:01..
2002-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_op_edit): Use --with-colons.
https://invent.kde.org/neon/forks/gpgme/-/commit/4530913bc588e57fa6a42ab680b85bf56ac30146

Git commit 6676c74b6afd6aece8988c19c7b67cda9031efa2 by Steffen Hansen on 31/07/2002 at 12:37..
new cryptplug function importCertificateFromMem()
https://invent.kde.org/neon/forks/gpgme/-/commit/6676c74b6afd6aece8988c19c7b67cda9031efa2

Git commit b94497bf1f9e5b28767b992dd14a624809421801 by Werner Koch on 01/08/2002 at 10:16..
Fixed an update conflict.
https://invent.kde.org/neon/forks/gpgme/-/commit/b94497bf1f9e5b28767b992dd14a624809421801

Git commit 9285922de0c330d77ad4126122c7a4a672fad18a by Marcus Brinkmann on 01/08/2002 at 16:02..
2002-08-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-edit.c: Also add a test for the expire command (testing
	the passphrase callback).
https://invent.kde.org/neon/forks/gpgme/-/commit/9285922de0c330d77ad4126122c7a4a672fad18a

Git commit f9dcb109bc80a97a196074b9590ee044245dee47 by Marcus Brinkmann on 01/08/2002 at 17:40..
Correct path to test programs.
https://invent.kde.org/neon/forks/gpgme/-/commit/f9dcb109bc80a97a196074b9590ee044245dee47

Git commit 9fe6c4f30d17467c57e44c4d3320be1edc5fd597 by Marcus Brinkmann on 02/08/2002 at 10:43..
Fixed a missing update in the fix to the update conflict ;)
(STATUS_EOF -> GPGME_STATUS_EOF).
https://invent.kde.org/neon/forks/gpgme/-/commit/9fe6c4f30d17467c57e44c4d3320be1edc5fd597

Git commit c79fa942604fa116406759035153c85abba6fad5 by Werner Koch on 14/08/2002 at 13:57..
* gpgme.texi (Information About Keys): Changed GPGME_ATTR_TYPE.
https://invent.kde.org/neon/forks/gpgme/-/commit/c79fa942604fa116406759035153c85abba6fad5

Git commit a8782e4ed7322d3ec5c1a477f5176c3a5c21c8eb by Werner Koch on 14/08/2002 at 14:01..
* key.h (struct certsig_s): New.  Use it in gpgme_key_s.
* key.c (gpgme_key_release): Release it. We need to add more code
of course.
(_gpgme_key_append_name): Use memset to intialize the struct.
* gpgme.h (GPGME_KEYLIST_MODE_SIGS): New.
* rungpg.c (_gpgme_gpg_op_keylist): Include sigs in listing depending
non the list mode.

* key.c (gpgme_key_get_string_attr): Use GPGME_ATTR_TYPE to return
information about the key type (PGP or X.509).
(gpgme_key_get_ulong_attr): Likewise.

* keylist.c (keylist_colon_handler): Include 1 in the check for
valid algorithms so that RSA is usable.  Store the issuer name and
serial number also for "crs" records.  Parse the expire date for
subkeys.
(set_userid_flags): Put them onto the last appended key.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8782e4ed7322d3ec5c1a477f5176c3a5c21c8eb

Git commit 337119d9b26e23363f7e190d2688b3f153e8a873 by Werner Koch on 19/08/2002 at 16:55..
* decrypt.c (is_token,skip_token): Duplicated from verify.c
(gpgme_op_decrypt): Hack to properly return Decryption_Failed..
(_gpgme_decrypt_status_handler): Create an operation info.
https://invent.kde.org/neon/forks/gpgme/-/commit/337119d9b26e23363f7e190d2688b3f153e8a873

Git commit d50bc6abc1a22999bceac61e1ef80bc571fadfff by Marcus Brinkmann on 20/08/2002 at 11:01..
2002-08-20  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (_gpgme_set_op_info): Append data on subsequent calls.
	* encrypt-sign.c (encrypt_sign_status_handler): Remove op_info
	handling.
https://invent.kde.org/neon/forks/gpgme/-/commit/d50bc6abc1a22999bceac61e1ef80bc571fadfff

Git commit 4c7d357bce8a42844cc1e6baca4c9eef7ad90f7c by Werner Koch on 20/08/2002 at 11:59..
Added some feature requests.
https://invent.kde.org/neon/forks/gpgme/-/commit/4c7d357bce8a42844cc1e6baca4c9eef7ad90f7c

Git commit 009390ddb1373c7a0aa8b170ccf325abfe45d6d9 by Werner Koch on 20/08/2002 at 11:59..
* vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.
https://invent.kde.org/neon/forks/gpgme/-/commit/009390ddb1373c7a0aa8b170ccf325abfe45d6d9

Git commit bfbe2656136c49fc2ba959e0b8393dab6a49ee36 by Marcus Brinkmann on 20/08/2002 at 13:38..
doc/
2002-08-20  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Importing Keys): Document gpgme_op_import_ext.

gpgme/
2002-08-20  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Add prototype for gpgme_op_import_ext.
	* import.c (struct import_result_s): New member `nr_considered'.
	Rename `any_imported' to `nr_imported'.
	(import_status_handler): Increment nr_imported.  Set nr_considered
	if appropriate.
	(gpgme_op_import_ext): New function.
	(gpgme_op_import): Implement in terms of gpgme_op_import_ext.
https://invent.kde.org/neon/forks/gpgme/-/commit/bfbe2656136c49fc2ba959e0b8393dab6a49ee36

Git commit a01ee915e1c14c0e35c8db3890dcabff3c690317 by Marcus Brinkmann on 20/08/2002 at 15:44..
2002-08-20  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Importing Keys): Undocument EOF.
https://invent.kde.org/neon/forks/gpgme/-/commit/a01ee915e1c14c0e35c8db3890dcabff3c690317

Git commit b3901634c38dcbf62ba1fc635f6be5bf6daf4ccf by Werner Koch on 20/08/2002 at 16:11..
Replaced with a new and faster version.  This does not anymore try to
build test programs.  If we really need test programs, we should add
an option to gpgme-config to do so.
https://invent.kde.org/neon/forks/gpgme/-/commit/b3901634c38dcbf62ba1fc635f6be5bf6daf4ccf

Git commit 166fbcc9efa34539af29736820df2eae05654f10 by Marcus Brinkmann on 20/08/2002 at 22:42..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (SUBDIRS): Remove jnlib.
	* configure.ac: Don't check for unsigned short or unsigned long.
	Don't check for memicmp, strlwr, strtoul, memmove, stricmp.
	Make stpcpy a replaced function.
	Don't define HAVE_JNLIB_LOGGING.
	Don't generate jnlib/Makefile.

gpgme/
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* stpcpy.c: New file from gnulib.
	* Makefile.am (assuan_libobjs): Remove jnlib.
https://invent.kde.org/neon/forks/gpgme/-/commit/166fbcc9efa34539af29736820df2eae05654f10

Git commit 9f637f0b8ad94479251c9c96a0df388e42cb78ec by Marcus Brinkmann on 20/08/2002 at 22:53..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* jnlib/argparse.c, jnlib/argparse.h, jnlib/ChangeLog,
	jnlib/dotlock.c, jnlib/dotlock.h, jnlib/libjnlib-config.h,
	jnlib/logging.c, jnlib/logging.h,jnlib/Makefile.am,
	jnlib/mischelp.h, jnlib/README, jnlib/stringhelp.c,
	jnlib/stringhelp.h, jnlib/strlist.c, jnlib/strlist.h,
	jnlib/types.h, jnlib/xmalloc.c, jnlib/xmalloc.h: Remove files.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f637f0b8ad94479251c9c96a0df388e42cb78ec

Git commit 5e69581a431d858eb88ff2d165d7ac566f0f32a9 by Marcus Brinkmann on 20/08/2002 at 23:15..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* ath.h: Update list of symbols that get a prefix: Rename the
	ath_mutex_*_available symbols to ath_*_available.
https://invent.kde.org/neon/forks/gpgme/-/commit/5e69581a431d858eb88ff2d165d7ac566f0f32a9

Git commit ea6c5f180bad0fb8d221b065358a4935bba8ff07 by Marcus Brinkmann on 20/08/2002 at 23:19..
Remove item about namespace, we are clean now.
https://invent.kde.org/neon/forks/gpgme/-/commit/ea6c5f180bad0fb8d221b065358a4935bba8ff07

Git commit 49216a03607e9fe395a0f23b9a29f9af57e7e6c5 by Marcus Brinkmann on 20/08/2002 at 23:25..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Header): Document name space.
https://invent.kde.org/neon/forks/gpgme/-/commit/49216a03607e9fe395a0f23b9a29f9af57e7e6c5

Git commit a579b5fa35dce16ce234bb0a11eb5a5b9f3c29f9 by Steffen Hansen on 20/08/2002 at 23:37..
Use gpgme_op_import_ext() instead of gpgme_op_import()
https://invent.kde.org/neon/forks/gpgme/-/commit/a579b5fa35dce16ce234bb0a11eb5a5b9f3c29f9

Git commit cc98c30bb5fa7c4c54a2d3b33b8c2e6db85aa2dd by Marcus Brinkmann on 21/08/2002 at 00:09..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	Released 0.3.9.

	* NEWS: Update for 0.3.9 release.
	* Makefile.am (EXTRA_DIST): Add gpgme.spec.in.
https://invent.kde.org/neon/forks/gpgme/-/commit/cc98c30bb5fa7c4c54a2d3b33b8c2e6db85aa2dd

Git commit d23f98bbf1abcb9997d9f617ed40dd6f81e3633c by Marcus Brinkmann on 21/08/2002 at 00:36..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Bump version number to 0.3.10.
https://invent.kde.org/neon/forks/gpgme/-/commit/d23f98bbf1abcb9997d9f617ed40dd6f81e3633c

Git commit d0020f11e0c9381820e144a3313c2ceab36ededd by Marcus Brinkmann on 21/08/2002 at 00:52..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* NEWS: Add template for development version.
https://invent.kde.org/neon/forks/gpgme/-/commit/d0020f11e0c9381820e144a3313c2ceab36ededd

Git commit bcba2d8e2d0715930acede157ac3043ba1c0bcc3 by Werner Koch on 23/08/2002 at 19:48..
* gpgme-config.in: Made --prefix work for --libs.
https://invent.kde.org/neon/forks/gpgme/-/commit/bcba2d8e2d0715930acede157ac3043ba1c0bcc3

Git commit 725f093f49d456d81a082402c3d0683aa29c2538 by Werner Koch on 23/08/2002 at 19:48..
* configure.ac (GPGME_CONFIG_CFLAGS): Renamed from GPGME_CFLAGS
and removed the libpath because it is set by the config script.
https://invent.kde.org/neon/forks/gpgme/-/commit/725f093f49d456d81a082402c3d0683aa29c2538

Git commit 2ba4dc7998d30c06f17b5085e18eb4aedac40bb0 by Marcus Brinkmann on 28/08/2002 at 17:29..
2002-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* encrypt-sign.c (encrypt_sign_status_handler): Remove dead
	variables encrypt_info and encrypt_info_len.
	* trustlist.c (gpgme_op_trustlist_start): Set colon line handler.
	* posix-sema.c (sema_fatal): Remove function.
	All these reported by St�phane Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/2ba4dc7998d30c06f17b5085e18eb4aedac40bb0

Git commit 61aa1947620080883f56c60ebbcc4e7ef485270d by Marcus Brinkmann on 28/08/2002 at 20:31..
2002-08-28  Marcus Brinkmann  <marcus at g10code.de>

	* posix-io.c (_gpgme_io_spawn): Use a double-fork approach.
	Return 0 on success, -1 on error.
	* version.c (_gpgme_get_program_version): Don't wait for the child.
	* engine.c (_gpgme_engine_housecleaning): Function removed.
	(do_reaping): Likewise.
	(_gpgme_engine_add_child_to_reap_list): Likewise.
	(struct reap_s): Removed.
	(reap_list): Likewise.
	(reap_list_lock): Likewise.
	* engine.h (_gpgme_engine_io_event): Remove prototypes for
	_gpgme_engine_housecleaning and
	_gpgme_engine_add_child_to_reap_list.
	* rungpg.c (_gpgme_gpg_release): Don't add child to reap list.
	(struct gpg_object_s): Remove PID member.
	(_gpgme_gpg_new): Don't initialize GPG->pid.
	(_gpgme_gpg_spawn): Don't set GPG->pid.
	* wait.c (run_idle): Removed.
	(gpgme_wait): Run idle_function directly.
https://invent.kde.org/neon/forks/gpgme/-/commit/61aa1947620080883f56c60ebbcc4e7ef485270d

Git commit f01df1076053a92c241f6ae98375bbb7bfe3d8ee by Marcus Brinkmann on 29/08/2002 at 00:30..
2002-08-29  Marcus Brinkmann  <marcus at g10code.de>

	* passphrase.c (_gpgme_passphrase_status_handler): Reset
	CTX->result.passphrase->no_passphrase if passphrase is given (good
	or bad).  Submitted by Jean DIRAISON <jean.diraison at free.fr>.
https://invent.kde.org/neon/forks/gpgme/-/commit/f01df1076053a92c241f6ae98375bbb7bfe3d8ee

Git commit 8ab900be7b21859492761a8ee6af0581d9d5d888 by Marcus Brinkmann on 29/08/2002 at 10:24..
2002-08-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.spec.in: Changed user name in Wojciech Polak's email
	address from ghostface to polak per request by himself.
https://invent.kde.org/neon/forks/gpgme/-/commit/8ab900be7b21859492761a8ee6af0581d9d5d888

Git commit a48cef2c6686e70e7f2d7ae59df0e7c667ce75d6 by Werner Koch on 29/08/2002 at 11:47..
* acinclude.m4 (GNUPG_CHECK_VA_COPY): New.
* configure.ac: Use it.
https://invent.kde.org/neon/forks/gpgme/-/commit/a48cef2c6686e70e7f2d7ae59df0e7c667ce75d6

Git commit c642b7d54ab14de278c9c6cc1224d6eea9e42403 by Werner Koch on 29/08/2002 at 11:57..
* engine-gpgsm.c (_gpgme_gpgsm_op_sign): Implement signer
selection.
* vasprintf.c (va_copy): Define macro if not yet defined.
https://invent.kde.org/neon/forks/gpgme/-/commit/c642b7d54ab14de278c9c6cc1224d6eea9e42403

Git commit 1fcc363243724cc0072cdb88996e82adec20eb6a by Werner Koch on 29/08/2002 at 11:58..
* vasprintf.c (va_copy): Define macro if not yet defined.
https://invent.kde.org/neon/forks/gpgme/-/commit/1fcc363243724cc0072cdb88996e82adec20eb6a

Git commit 0784f4f62d99f0c3b1f9a81f319723ab42f627ca by Werner Koch on 29/08/2002 at 11:58..
new news
https://invent.kde.org/neon/forks/gpgme/-/commit/0784f4f62d99f0c3b1f9a81f319723ab42f627ca

Git commit 8e118f2d2c29d50a773a1732f8deed32ed1b9fb2 by Marcus Brinkmann on 30/08/2002 at 11:00..
2002-08-30  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_op_edit): Add args from signers.
	Suggested by Miguel Coca <e970095 at zipi.fi.upm.es>.
https://invent.kde.org/neon/forks/gpgme/-/commit/8e118f2d2c29d50a773a1732f8deed32ed1b9fb2

Git commit 6f9f51683068d959d3bb176c8401c04efe76c545 by Marcus Brinkmann on 30/08/2002 at 11:37..
2002-08-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Selecting Signers): Fix reference count.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f9f51683068d959d3bb176c8401c04efe76c545

Git commit ee97cfaa5dc9b81a1b2039accd63300aca235ab4 by Marcus Brinkmann on 31/08/2002 at 02:34..
2002-08-30  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_op_edit): Add bogus ctx argument.
	* rungpg.h: Also to prototype.
	* engine.c (_gpgme_engine_op_edit): Likewise.
	* engine.h: Likewise.
	* edit.c (_gpgme_op_edit_start): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/ee97cfaa5dc9b81a1b2039accd63300aca235ab4

Git commit 1731657df0b638ae23c070cda23d70b98b59bc85 by Marcus Brinkmann on 01/09/2002 at 19:47..
2002-09-01  Marcus Brinkmann  <marcus at g10code.de>

	* op-support.c (_gpgme_op_reset): Set CTX->pending after calling
	_gpgme_engine_release, as this will reset pending to zero in the
	event done callback on cancelled operations.
https://invent.kde.org/neon/forks/gpgme/-/commit/1731657df0b638ae23c070cda23d70b98b59bc85

Git commit 328bed490148590cfdf17384b4f2c41ebde807d1 by Marcus Brinkmann on 01/09/2002 at 22:23..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* conversion.c: New file.
	* util.h: Add prototypes for _gpgme_decode_c_string and
	_gpgme_hextobyte.
	* keylist.c (keylist_colon_handler): Call _gpgme_decode_c_string
	on issuer name.
	* Makefile.am (libgpgme_la_SOURCES): Add conversion.c
	* key.c (_gpgme_key_append_name): Replace calls to hextobyte by
	calls to _gpgme_hextobyte.
	(hash_key): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/328bed490148590cfdf17384b4f2c41ebde807d1

Git commit 3471e1560c2ef70ed8f6ea7cb89a1e69f4001744 by Marcus Brinkmann on 01/09/2002 at 22:24..
Add item about prior change.
https://invent.kde.org/neon/forks/gpgme/-/commit/3471e1560c2ef70ed8f6ea7cb89a1e69f4001744

Git commit 7bc8297fe7d828d77868808bb290f51c2e3fdcc8 by Marcus Brinkmann on 01/09/2002 at 22:30..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	Released 0.3.10.

	* NEWS: Update for 0.3.9 release.
	* configure.ac: Bump up LIBGPGME_LT_REVISION.
https://invent.kde.org/neon/forks/gpgme/-/commit/7bc8297fe7d828d77868808bb290f51c2e3fdcc8

Git commit d55e88d0bc6d669c0e8f3b930113ecba638a6fa3 by Marcus Brinkmann on 01/09/2002 at 23:08..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* conversion.c (_gpgme_decode_c_string): Fix off by one error in last change.
	* rungpg.c (_gpgme_append_gpg_args_from_signers): Move before
	_gpgme_op_edit so its prototype is known early on.
https://invent.kde.org/neon/forks/gpgme/-/commit/d55e88d0bc6d669c0e8f3b930113ecba638a6fa3

Git commit c40f22a7d831e8c8ceebb922cb6940ea6a8143a3 by Marcus Brinkmann on 01/09/2002 at 23:29..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* conversion.c (_gpgme_decode_c_string): Set DESTP before modifying DEST.
https://invent.kde.org/neon/forks/gpgme/-/commit/c40f22a7d831e8c8ceebb922cb6940ea6a8143a3

Git commit 43eb40838cac3299a33b94bfcf37e50ec12b9ded by Marcus Brinkmann on 01/09/2002 at 23:55..
Bump up version number.
https://invent.kde.org/neon/forks/gpgme/-/commit/43eb40838cac3299a33b94bfcf37e50ec12b9ded

Git commit ad264f924bc447d3c93e82e9997fc6cdc2231c48 by Marcus Brinkmann on 02/09/2002 at 12:17..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* posix-io.c (_gpgme_io_select): Don't use a non-constant struct initializer.
	* version.c (_gpgme_get_program_version): Likewise.
	Reported by Dr. Stefan Dalibor <Dr.Stefan.Dalibor at bfa.de>.
https://invent.kde.org/neon/forks/gpgme/-/commit/ad264f924bc447d3c93e82e9997fc6cdc2231c48

Git commit f0bb43f3dab2f4a7ca73f56c29f800b9d72326c2 by Marcus Brinkmann on 02/09/2002 at 12:19..
Wrap the lines nicer.
https://invent.kde.org/neon/forks/gpgme/-/commit/f0bb43f3dab2f4a7ca73f56c29f800b9d72326c2

Git commit 1b40ede2c5ac48419c2f8cfa8aaa7ea239541ca1 by Marcus Brinkmann on 02/09/2002 at 12:29..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* debug.c (_gpgme_debug_add): Test *LINE, not LINE.
	(_gpgme_debug_end): Likewise.
	Reported by Dr. Stefan Dalibor <Dr.Stefan.Dalibor at bfa.de>.
https://invent.kde.org/neon/forks/gpgme/-/commit/1b40ede2c5ac48419c2f8cfa8aaa7ea239541ca1

Git commit 442f2fe541815a29b7178afd60dcaf0f2455043a by Marcus Brinkmann on 02/09/2002 at 12:38..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (assuan_libobjs): Use @LTLIBOBJS@ instead @LIBOBJS at .
https://invent.kde.org/neon/forks/gpgme/-/commit/442f2fe541815a29b7178afd60dcaf0f2455043a

Git commit 05c75f41a5a1fc1e316ee31a00dc3242e7d0f7e3 by Marcus Brinkmann on 02/09/2002 at 13:01..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-keylist.c (main): Test PATTERN for NULL before printing.
	Reported by Dr. Stefan Dalibor <Dr.Stefan.Dalibor at bfa.de>.
https://invent.kde.org/neon/forks/gpgme/-/commit/05c75f41a5a1fc1e316ee31a00dc3242e7d0f7e3

Git commit bc012f5f2e43ceb29170f7a671ffeefb642004c7 by Marcus Brinkmann on 02/09/2002 at 13:01..
2002-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Create and substitute LTLIBOBJS.
https://invent.kde.org/neon/forks/gpgme/-/commit/bc012f5f2e43ceb29170f7a671ffeefb642004c7

Git commit 20707b1928ec38e55790473a6f9b2b3f23fb7615 by Marcus Brinkmann on 03/09/2002 at 11:26..
2002-09-03  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (assuan_libobjs): Remove @LTLIBOBJS@ as we link them
	into gpgme unconditionally.
	(libgpgme_la_LIBADD): Change @LIBOBJS@ into @LTLIBOBJS at .
https://invent.kde.org/neon/forks/gpgme/-/commit/20707b1928ec38e55790473a6f9b2b3f23fb7615

Git commit 6a7a9340554a17e165cadf1164fbf8bf4b47cd43 by Karl-Heinz Zimmer on 03/09/2002 at 16:21..
AEgypten bugfix #1220: make sure that (a) negative numbers of days-left-to-expire-of-certificate are reported correctly by using an int instead of a time_t and (b) return the special value CRYPTPLUG_CERT_DOES_NEVER_EXPIRE to indicate that no expire date is stored in this certificate
https://invent.kde.org/neon/forks/gpgme/-/commit/6a7a9340554a17e165cadf1164fbf8bf4b47cd43

Git commit 70aaa3f2362ecc5665df1280266bdee157a50038 by Marcus Brinkmann on 04/09/2002 at 01:18..
2002-09-04  Marcus Brinkmann  <marcus at g10code.de>

	* autogen.sh (autoconf_vers): Bump up to 2.53 to get the @&t@
	quadrigraph.  Always cutting the edge!
https://invent.kde.org/neon/forks/gpgme/-/commit/70aaa3f2362ecc5665df1280266bdee157a50038

Git commit da452438d9f84410f84cbb95147d0a6812c8aafc by Karl-Heinz Zimmer on 06/09/2002 at 11:52..
Bugfix: The value text of protocol parameter of OpenPGP's multipart/signed Content-Type header must be enclosed in double quotes.  Bugfix was provided by Marc Mutz solving problems with pine.
https://invent.kde.org/neon/forks/gpgme/-/commit/da452438d9f84410f84cbb95147d0a6812c8aafc

Git commit a58efc1d5f0a92ecf63a4ae122ee7757e1ac903a by Karl-Heinz Zimmer on 12/09/2002 at 11:02..
Bugfix #1276 (equals KDE bug #43868).    Make sure to update kde/kdenetwork/libkdenetwork and kde/kdenetwork/kmail.
https://invent.kde.org/neon/forks/gpgme/-/commit/a58efc1d5f0a92ecf63a4ae122ee7757e1ac903a

Git commit c34b1e06e71140acdaf2bbec065df7629e23d1a1 by Marcus Brinkmann on 13/09/2002 at 20:54..
Regenerated.
https://invent.kde.org/neon/forks/gpgme/-/commit/c34b1e06e71140acdaf2bbec065df7629e23d1a1

Git commit 1dda423fa5ff0c3e83c3f0e0ccfa690ed7dfb975 by Marcus Brinkmann on 13/09/2002 at 20:54..
2002-09-13  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (keylist_status_handler): Do not call finish_key() here.
	(gpgme_op_keylist_ext_start): Set CTX->tmp_key to NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/1dda423fa5ff0c3e83c3f0e0ccfa690ed7dfb975

Git commit 7937658bb733b062c06cf70489fe637d5bce9896 by Werner Koch on 20/09/2002 at 10:44..
* ath.c: Include sys/time.h if sys/select.h is not available.
* configure.ac (AC_CHECK_HEADERS): Check for sys/select.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/7937658bb733b062c06cf70489fe637d5bce9896

Git commit f52d17f48f94f7ad17be40413fb08507949af871 by Werner Koch on 20/09/2002 at 11:47..
* gpgmeplug.c (nextCertificate): Sanity check for empty tmp_dn.
https://invent.kde.org/neon/forks/gpgme/-/commit/f52d17f48f94f7ad17be40413fb08507949af871

Git commit c4aa7bae1a66f536185dd2b86733e1ff97db051c by Werner Koch on 20/09/2002 at 11:48..
* configure.ac: Bump up LIBGPGME_LT_REVISION.

* configure.ac (AC_CHECK_HEADERS): Check for sys/select.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/c4aa7bae1a66f536185dd2b86733e1ff97db051c

Git commit 21382e2d53d6c925a783688d4b7cb6642ec6a4af by Werner Koch on 20/09/2002 at 13:33..
changed version number after release.
https://invent.kde.org/neon/forks/gpgme/-/commit/21382e2d53d6c925a783688d4b7cb6642ec6a4af

Git commit 056bb3b5870d0d2acc949f0a5aba7dc432c1bdc0 by Marcus Brinkmann on 28/09/2002 at 20:08..
2002-09-28  Marcus Brinkmann  <marcus at g10code.de>

	* conversion.c (_gpgme_hextobyte): Prevent superfluous
	multiplication with base.  Reported by St�phane Corth�sy.

	* keylist.c (gpgme_op_keylist_ext_start): Use private asynchronous
	operation type in invocation of _gpgme_op_reset.
https://invent.kde.org/neon/forks/gpgme/-/commit/056bb3b5870d0d2acc949f0a5aba7dc432c1bdc0

Git commit e9f9833e0533bea3d882a902575300aa81982903 by Marcus Brinkmann on 28/09/2002 at 20:09..
2002-09-28  Marcus Brinkmann  <marcus at g10code.de>

	* t-version.c: Include <string.h>.  Reported by St�phane Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/e9f9833e0533bea3d882a902575300aa81982903

Git commit f9a1d517566f26af5448d2faafad4ae0a1ec1534 by Karl-Heinz Zimmer on 29/09/2002 at 21:14..
Applying Ingo's patch: Makes signatureCertificateDaysLeftToExpiry() and receiverCertificateDaysLeftToExpiry() handle the case that a certificate _never_ expires correctly.
https://invent.kde.org/neon/forks/gpgme/-/commit/f9a1d517566f26af5448d2faafad4ae0a1ec1534

Git commit 57add1098d7a6f1a7be74c71621a61a4d3cb6eda by Werner Koch on 30/09/2002 at 08:03..
* keylist.c (keylist_colon_handler): Take care when printing a
NULL with the DEBUG.

* engine-gpgsm.c (struct gpgsm_object_s): New member ANY.
(gpgsm_status_handler): Run the colon function to indicate.
(_gpgme_gpgsm_set_colon_line_handler): Better reset ANY here.
https://invent.kde.org/neon/forks/gpgme/-/commit/57add1098d7a6f1a7be74c71621a61a4d3cb6eda

Git commit d25694520557788c8dbcd43bdb33aa167e3265da by Werner Koch on 30/09/2002 at 08:03..
* gpgsm/t-keylist.c (doit): Add arg SECRET.
(main): Add option --secret.
https://invent.kde.org/neon/forks/gpgme/-/commit/d25694520557788c8dbcd43bdb33aa167e3265da

Git commit 55474920ce6caef262c6a5c7ba24ea1b3b21cd07 by Werner Koch on 30/09/2002 at 08:04..
typo
https://invent.kde.org/neon/forks/gpgme/-/commit/55474920ce6caef262c6a5c7ba24ea1b3b21cd07

Git commit 388b40bb88e299546011a774d51fee2198c68b28 by Marcus Brinkmann on 08/10/2002 at 21:52..
2002-10-08  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_INIT): Bump version up to 0.4.0.
	(NEED_GPG_VERSION): Bump up to 1.2.0.
	(NEED_GPGSM_VERSION): Bump up to 0.9.0.
	* README: Update version numbers.
	* NEWS: Start entry for 0.4.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/388b40bb88e299546011a774d51fee2198c68b28

Git commit 0447e0dd6d7d96ecb97a7c3b683f98afacf43088 by Marcus Brinkmann on 09/10/2002 at 00:16..
gpgme/
2002-10-08  Marcus Brinkmann  <marcus at g10code.de>

	New data object component:

	* gpgme.h (GpgmeDataReadCb, GpgmeDataWriteCb, GpgmeDataSeekCb,
	GpgmeDataReleaseCb): New types.
	(struct GpgmeDataCbs): New structure.
	(gpgme_data_read): Changed prototype to match that of read() closely.
	(gpgme_data_write): Similar for write().
	(gpgme_data_seek, gpgme_data_new_from_cbs, gpgme_data_new_from_fd,
	gpgme_data_new_from_stream): New prototypes.
	(gpgme_data_get_type, gpgme_check_engine): Prototype removed.

	* Makefile.am (libgpgme_la_SOURCES): Add data.h, data-fd.c,
	data-stream.c, data-mem.c, data-user.c and data-compat.c.
	* data.c: Reimplemented from scratch.
	* (data-compat.c, data-fd.c, data.h, data-mem.c, data-stream.c,
	data-user.c): New file.
	* context.h (struct gpgme_data_s): Removed.
	* conversion.c: Include <errno.h> and <sys/types.h>.
	(_gpgme_data_append): New function.
	* data.c (_gpgme_data_append_string): Move to ...
	* conversion.c (_gpgme_data_append_string): ... here.
	* data.c (_gpgme_data_append_for_xml): Move to ...
	* conversion.c (_gpgme_data_append_for_xml): ... here.
	* data.c (_gpgme_data_append_string_for_xml): Move to ...
	* conversion.c (_gpgme_data_append_string_for_xml): ... here.
	* data.c (_gpgme_data_append_percentstring_for_xml): Move to ...
	* conversion.c (_gpgme_data_append_percentstring_for_xml): ... here.

	* ops.h (_gpgme_data_get_mode, _gpgme_data_set_mode): Prototype
	removed.
	* types.h (GpgmeDataMode): Type removed.

	* decrypt.c (_gpgme_decrypt_start): Don't check data type or mode.
	* edit.c (_gpgme_op_edit_start): Likewise.
	* encrypt.c (_gpgme_op_encrypt_start): Likewise.
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Likewise.
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Likewise.
	* export.c (_gpgme_op_export_start): Likewise.
	* genkey.c (_gpgme_op_genkey_start): Likewise.
	* import.c (_gpgme_op_import_start): Likewise.
	* sign.c (_gpgme_op_sign_start): Likewise.
	* verify.c (_gpgme_op_verify_start): Likewise.

	* encrypt.c (gpgme_op_encrypt): Remove hack that returns invalid
	no recipient if no data was returned.
	* encrypt-sign.c (gpgme_op_encrypt_sign): Remove hack that returns
	no recipient if no data was returned.
	* encrypt-sign.c (gpgme_op_encrypt_sign): Remove hack that returns
	no recipient if no data was returned.

	* engine.c (_gpgme_engine_op_verify): Add new argument to
	differentiate detached from normal signatures.
	* engine.h (_gpgme_engine_op_verify): Likewise for prototype.
	* engine-gpgsm.c (_gpgme_gpgsm_op_verify): Likewise.  Don't check
	mode of data argument.
	* engine-gpgsm.h (_gpgme_gpgsm_op_verify): Likewise for prototype.
	* gpgme.h (gpgme_op_verify_start): Likewise for prototype.
	(gpgme_op_verify): Likewise for prototype.
	* rungpg.c (_gpgme_gpg_op_verify): Likewise.
	* rungpg.h (_gpgme_gpg_op_verify): Likewise for prototype.
	* verify.c (_gpgme_op_verify_start): Likewise.
	(gpgme_op_verify_start): Likewise.
	(gpgme_op_verify): Likewise.

	* rungpg.c (struct arg_and_data_s): New member INBOUND to hold
	direction of data object.
	(_gpgme_gpg_add_data): Add new argument INBOUND.  Use it to
	determine direction of data object.
	(_gpgme_gpg_add_pm_data, _gpgme_gpg_set_command_handler,
	_gpgme_gpg_op_decrypt, _gpgme_gpg_op_edit, _gpgme_gpg_op_encrypt,
	_gpgme_gpg_op_encrypt_sign, _gpgme_gpg_op_export,
	_gpgme_gpg_op_genkey, _gpgme_gpg_op_import, _gpgme_gpg_op_sign,
	_gpgme_gpg_op_verify): Add new argument to _gpgme_gpg_add_data
	invocation.
	(build_argv): Use new member INBOUND to determine direction of
	file descriptor.  Don't check the data type.
	* rungpg.h (_gpgme_gpg_add_data): Add new argument to prototype.

	* gpgme.c (gpgme_get_op_info): Don't call
	_gpgme_data_get_as_string if CTX->op_info is NULL.

	* version.c (gpgme_check_engine): Function removed.


tests/
2002-10-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-decrypt.c (print_data): Update to new gpgme_data_read
	interface, and use gpgme_engine_check_version instead
	gpgme_check_version.
	* gpg/t-decrypt-verify.c (print_data): Likewise.
	* gpg/t-edit.c (main): Likewise.
	* gpg/t-encrypt.c (print_data): Likewise.
	* gpg/t-encrypt-sign.c (print_data): Likewise.
	* gpg/t-encrypt-sym.c (print_data): Likewise.
	* gpg/t-eventloop.c (print_data): Likewise.
	* gpg/t-export.c (print_data): Likewise.
	* gpg/t-sign.c (print_data): Likewise.
	* gpg/t-signers.c (print_data): Likewise.
	* gpgsm/t-decrypt.c (print_data): Likewise.
	* gpgsm/t-encrypt.c (print_data): Likewise.
	* gpgsm/t-export.c (print_data): Likewise.
	* gpgsm/t-sign.c (print_data): Likewise.
	* gpg/t-verify.c (main): Likewise for gpgme_op_verify.
	* gpgsm/t-verify.c (main): Likewise for gpgme_op_verify.
	* t-data.c (read_once_test): Likewise.
	(write_test): Update for new behaviour of data objects.
	(main): Remove type test.
https://invent.kde.org/neon/forks/gpgme/-/commit/0447e0dd6d7d96ecb97a7c3b683f98afacf43088

Git commit 73856272654ce32a979d7eabb5a1c377f9951eea by Marcus Brinkmann on 09/10/2002 at 01:08..
2002-10-08  Marcus Brinkmann  <marcus at g10code.de>

	* util.h (_gpgme_malloc, _gpgme_realloc, _gpgme_calloc,
	_gpgme_strdup, _gpgme_free): Remove prototypes.
	(xtrymalloc, xtrycalloc, xtryrealloc, xtrystrdup, xfree): Remove
	macros.
	* util.c: File removed.
	* Makefile.am (libgpgme_la_SOURCES): Remove util.h.
	* conversion.c (_gpgme_decode_c_string): Use malloc instead of
	xtrymalloc, realloc instead of xtryrealloc, calloc instead of
	xtrycalloc, free instead of xfree.
	(_gpgme_data_append_percentstring_for_xml): Likewise.
	* data.c (_gpgme_data_new, _gpgme_data_release): Likewise.
	* data-compat.c (gpgme_data_new_from_filepart): Likewise.
	* data-mem.c (mem_write, mem_release, gpgme_data_new_from_mem,
	_gpgme_data_get_as_string): Likewise.
	* debug.c (debug_init): Likewise.
	* decrypt.c (_gpgme_release_decrypt_result): Likewise.
	* delete.c (_gpgme_release_delete_result): Likewise.
	* edit.c (_gpgme_release_edit_result, _gpgme_op_edit_start):
	Likewise.
	* encrypt.c (_gpgme_release_encrypt_result): Likewise.
	* engine.c (_gpgme_engine_get_info, _gpgme_engine_new,
	_gpgme_engine_release): Likewise.
	* engine-gpgsm.c (_gpgme_gpgsm_new, _gpgme_gpgsm_release,
	_gpgme_gpgsm_op_decrypt, _gpgme_gpgsm_op_delete,
	gpgsm_set_recipients, _gpgme_gpgsm_op_encrypt,
	_gpgme_gpgsm_op_export, _gpgme_gpgsm_op_genkey,
	_gpgme_gpgsm_op_import, _gpgme_gpgsm_op_keylist,
	_gpgme_gpgsm_op_keylist_ext, _gpgme_gpgsm_op_sign,
	_gpgme_gpgsm_op_verify, gpgsm_status_handler): Likewise.
	* genkey.c (_gpgme_release_genkey_result): Likewise.
	* gpgme.c (gpgme_new, gpgme_release): Likewise.
	* import.c (_gpgme_release_import_result): Likewise.
	* key.c (_gpgme_key_cache_init, _gpgme_key_cache_add, key_new,
	add_subkey, gpgme_key_release, _gpgme_key_append_name): Likewise.
	* keylist.c (_gpgme_release_keylist_result, keylist_colon_handler,
	_gpgme_op_keylist_event_cb, gpgme_op_keylist_next): Likewise.
	* ops.h (test_and_allocate_result): Likewise.
	* passphrase.c (_gpgme_release_passphrase_result,
	_gpgme_passphrase_status_handler,
	_gpgme_passphrase_command_handler): Likewise.
	* progress.c (_gpgme_progress_status_handler): Likewise.
	* recipient.c (gpgme_recipients_new, gpgme_recipients_release,
	gpgme_recipients_add_name_with_validity): Likewise.
	* rungpg.c (_gpgme_gpg_new, _gpgme_gpg_release,
	_gpgme_gpg_add_arg, _gpgme_gpg_add_data,
	_gpgme_gpg_set_colon_line_handler, free_argv, free_fd_data_map,
	build_argv, _gpgme_gpg_spawn, read_status, read_colon_line):
	Likewise.
	* sign.c (_gpgme_release_sign_result): Likewise.
	* signers.c (_gpgme_signers_add): Likewise.
	* trustlist.c (trust_item_new, trustlist_colon_handler,
	_gpgme_op_trustlist_event_cb, gpgme_op_trustlist_next,
	gpgme_trustitem_release): Likewise.
	* verify.c (_gpgme_release_verify_result, finish_sig): Likewise.
	* version.c (gpgme_get_engine_info, _gpgme_get_program_version):
	Likewise.
	* w32-io.c (create_reader, create_writer, destroy_reader,
	destroy_writer, build_commandline, _gpgme_io_spawn): Likewise.
	* w32-sema.c (critsect_init, _gpgme_sema_cs_destroy): Likewise.
	* w32-util.c (read_w32_registry_string): Likewise.
	* wait.c (_gpgme_fd_table_deinit, _gpgme_fd_table_put,
	_gpgme_wait_event_cb, _gpgme_add_io_cb, _gpgme_remove_io_cb)
	* data-compat.c: Include <stdlib.h>.
https://invent.kde.org/neon/forks/gpgme/-/commit/73856272654ce32a979d7eabb5a1c377f9951eea

Git commit 8646a29754e1fb37e814cae8bb377d3c27aad7a5 by Marcus Brinkmann on 09/10/2002 at 09:50..
2002-10-09  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.h (_gpgme_gpg_add_arg, _gpgme_gpg_add_data,
	_gpgme_gpg_add_pm_data, _gpgme_gpg_housecleaning,
	_gpgme_gpg_set_simple_line_handler): Prototype removed.
	(_gpgme_gpg_set_verbosity): New prototype.
	* rungpg.c (_gpgme_gpg_add_data): Make static and rename to ...
	(add_data): ... this.
	(_gpgme_gpg_add_pm_data): Call add_data, not _gpgme_gpg_add_data.
	(_gpgme_gpg_set_command_handler): Likewise.
	(_gpgme_gpg_op_decrypt, _gpgme_gpg_op_edit, _gpgme_gpg_op_encrypt,
	_gpgme_gpg_op_encrypt_sign, _gpgme_gpg_op_export,
	_gpgme_gpg_op_genkey, _gpgme_gpg_op_import, _gpgme_gpg_op_sign,
	_gpgme_gpg_op_verify): Likewise.
	(_gpgme_gpg_add_pm_data): Rename to ...
	(add_pm_data): ... this.
	(_gpgme_gpg_op_verify): Call add_pm_data, not
	_gpgme_gpg_add_pm_data.
	(_gpgme_gpg_add_arg): Make static and rename to ...
	(add_arg): ... this.
	(_gpgme_gpg_set_command_handler, _gpgme_gpg_new,
	_gpgme_gpg_op_decrypt, _gpgme_gpg_op_delete,
	_gpgme_append_gpg_args_from_signers, _gpgme_gpg_op_edit,
	_gpgme_append_gpg_args_from_recipients, _gpgme_gpg_op_encrypt,
	_gpgme_gpg_op_encrypt_sign, _gpgme_gpg_op_export,
	_gpgme_gpg_op_genkey, _gpgme_gpg_op_import, _gpgme_gpg_op_keylist,
	_gpgme_gpg_op_keylist_ext, _gpgme_gpg_op_trustlist,
	_gpgme_gpg_op_sign, _gpgme_gpg_op_verify): Use add_arg, not
	_gpgme_gpg_add_arg.
	(_gpgme_gpg_set_verbosity): New function.
	(struct gpg_object_s): Remove member simple from colon.
	(_gpgme_gpg_set_colon_line_handler): Don't initialize simple.
	(_gpgme_gpg_set_simple_line_handler): Removed function.
	(read_colon_line): Don't check the GPG->colon.simple.
	* engine.c (_gpgme_engine_set_verbosity): Call
	_gpgme_gpg_set_verbosity instead _gpgme_gpg_add_arg.
https://invent.kde.org/neon/forks/gpgme/-/commit/8646a29754e1fb37e814cae8bb377d3c27aad7a5

Git commit 291b5c78f4bdc9a1d3fddd7c3fca4c1c1b40cf94 by Marcus Brinkmann on 09/10/2002 at 11:57..
2002-10-09  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.h (_gpgme_gpg_enable_pipemode): Remove prototype.
	* rungpg.c (struct gpg_object_s): Remove PM.
	(pipemode_cb): Prototype removed.
	(add_pm_data): Function removed.
	(_gpgme_gpg_enable_pipemode): Likewise.
	(pipemode_copy): Likewise.
	(pipemode_cb): Likewise.
	(add_arg): Don't check for pipemode.
	(add_data): Likewise.
	(_gpgme_gpg_set_status_handler): Likewise.
	(_gpgme_gpg_set_colon_line_handler): Likewise.
	(_gpgme_gpg_set_command_handler): Likewise.
	(_gpgme_gpg_spawn): Likewise.
	(_gpgme_gpg_spawn): Don't set PM.active.
	(_gpgme_gpg_op_verify): Remove pipemode case.
	* verify.c (_gpgme_op_verify_start): Remove pipemode case.
https://invent.kde.org/neon/forks/gpgme/-/commit/291b5c78f4bdc9a1d3fddd7c3fca4c1c1b40cf94

Git commit dba1515d9cbe09f542a250678fb1453d84bfb38a by Marcus Brinkmann on 09/10/2002 at 12:23..
2002-10-09  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.h (GpgStatusHandler): Rename type to GpgmeStatusHandler
	and move to ...
	* types.h (GpgmeStatusHandler): ... here.
	* rungpg.h (GpgColonLineHandler): Rename type to GpgmeColonLineHandler.
	and move to ...
	* types.h (GpgmeColonLineHandler): ... here.
	* rungpg.h (GpgCommandHandler): Rename type to GpgmeCommandHandler.
	and move to ...
	* types.h (GpgmeCommandHandler): ... here.
	* engine.h: Don't include "rungpg.h".
	(_gpgme_engine_set_status_handler): Change type of
	argument from GpgStatusHandler to GpgmeStatusHandler.
	(_gpgme_engine_set_colon_line_handler): Change type of
	argument from GpgColonLineHandler to GpgmeColonLineHandler.
	(_gpgme_engine_set_command_handler): Change type of
	argument from GpgCommandHandler to GpgmeCommandHandler.
	* engine-gpgsm.h: Don't include "rungpg.h".
	(_gpgme_gpgsm_set_status_handler): Change type of
	argument from GpgStatusHandler to GpgmeStatusHandler.
	(_gpgme_gpgsm_set_colon_line_handler): Change type of
	argument from GpgColonLineHandler to GpgmeColonLineHandler.
	* engine-gpgsm.c: Do not include "rungpg.h".
	(struct gpgsm_object_s): Change type of
	status.fnc to GpgmeStatusHandler.  Change type of colon.fnc to
	GpgmeColonLineHandler.
	(gpgsm_assuan_simple_command): Change type of argument from
	GpgStatusHandler to GpgmeStatusHandler.
	(_gpgme_gpgsm_set_status_handler): Likewise.
	(_gpgme_gpgsm_set_colon_line_handler): Change type of argument from
	GpgColonLineHandler to GpgmeColonLineHandler.
	* rungpg.h (_gpgme_gpg_set_status_handler): Change type of
	argument from GpgStatusHandler to GpgmeStatusHandler.
	(_gpgme_gpg_set_colon_line_handler): Change type of
	argument from GpgColonLineHandler to GpgmeColonLineHandler.
	(_gpgme_gpg_set_command_handler): Change type of
	argument from GpgCommandHandler to GpgmeCommandHandler.
	* rungpg.c (struct gpg_object_s): Change type of status.fnc to
	GpgmeStatusHandler.  Change type of colon.fnc to
	GpgmeColonLineHandler.  Change type of cmd.fnc to
	GpgmeCommandLineHandler.
	(_gpgme_gpg_set_status_handler): Change type of argument FNC to
	GpgmeStatusHandler.
	(_gpgme_gpg_set_colon_line_handler): Change type of argument FNC
	to GpgmeColonLineHandler.
	(_gpgme_gpg_set_command_handler): Change type of argument FNC to
	GpgmeCommandHandler.
	* engine.c (_gpgme_engine_set_status_handler): Change type of
	argument FNC to GpgmeStatusHandler.
	(_gpgme_engine_set_colon_line_handler): Change type of argument FNC
	to GpgmeColonLineHandler.
	(_gpgme_engine_set_command_handler): Change type of argument FNC to
	GpgmeCommandHandler.
https://invent.kde.org/neon/forks/gpgme/-/commit/dba1515d9cbe09f542a250678fb1453d84bfb38a

Git commit 412ccb3b47985fc6a631df6ef2e252609a6d85c8 by Marcus Brinkmann on 09/10/2002 at 12:26..
2002-10-09  Marcus Brinkmann  <marcus at g10code.de>

	* data.h, data-user.c, data-stream.c, data-mem.c, data-fd.c,
	data-compat.c: New file.  Really check them in this time, completes
	2002-10-08 change.
https://invent.kde.org/neon/forks/gpgme/-/commit/412ccb3b47985fc6a631df6ef2e252609a6d85c8

Git commit 7ad91c720c6e436c604b2357b32bae965343963a by Marcus Brinkmann on 10/10/2002 at 11:34..
2002-10-10  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (_gpgme_gpgsm_op_verify) [!ENABLE_GPGSM]: Add
	missing argument.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ad91c720c6e436c604b2357b32bae965343963a

Git commit ef5960c4a70a7c61dbd7ab4d98060ecf715c5a98 by Marcus Brinkmann on 12/10/2002 at 00:29..
2002-10-12  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add automake conditional HAVE_GPGSM.
https://invent.kde.org/neon/forks/gpgme/-/commit/ef5960c4a70a7c61dbd7ab4d98060ecf715c5a98

Git commit 3a6381133afaadf4af08fa2f64d04b5ba95f6949 by Marcus Brinkmann on 12/10/2002 at 00:33..
2002-10-10  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.h, engine-gpgsm.h: File removed.
	* engine-backend.h: New file.
	* Makefile.am (gpgsm_components): New variable, set depending on
	automake conditional HAVE_GPGSM.
	(libgpgme_la_SOURCES): Add engine-backend.h, remove rungpg.h and
	engine-gpgsm.h.  Replace engine-gpgsm.c with ${gpgsm_components}.
	(status-table.h): Depend on gpgme.h, not rungpg.h.
	* conversion.c: Include <stdlib.h>.
	* engine-gpgsm.c: Do not set ENABLE_GPGSM here.  Include
	"engine-backend.h" instead "engine-gpgsm.h".  Reorder some
	functions and remove all function prototypes.
	(_gpgme_gpgsm_get_version): Make static and rename to ...
	(gpgsm_get_version): ... this.
	(_gpgme_gpgsm_check_version): Make static and rename to ...
	(gpgsm_check_version): ... this.
	(_gpgme_gpgsm_new): Make static.  Change argument type from
	GpgsmObject * to void **.  Call gpgsm_release instead
	_gpgme_gpgsm_release.
	(_gpgme_gpgsm_op_decrypt): Make static and rename to ...
	(gpgsm_check_decrypt): ... this.
	(_gpgme_gpgsm_op_delete): Make static and rename to ...
	(gpgsm_check_delete): ... this.
	(_gpgme_gpgsm_set_recipients): Make static and rename to ...
	(gpgsm_check_set_recipients): ... this.
	(_gpgme_gpgsm_op_encrypt): Make static and rename to ...
	(gpgsm_encrypt): ... this.
	(_gpgme_gpgsm_op_export): Make static and rename to ...
	(gpgsm_export): ... this.
	(_gpgme_gpgsm_op_genkey): Make static and rename to ...
	(gpgsm_genkey): ... this.
	(_gpgme_gpgsm_op_import): Make static and rename to ...
	(gpgsm_import): ... this.
	(_gpgme_gpgsm_op_keylist): Make static and rename to ...
	(gpgsm_keylist): ... this.
	(_gpgme_gpgsm_op_keylist_ext): Make static and rename to ...
	(gpgsm_keylist_ext): ... this.
	(_gpgme_gpgsm_op_sign): Make static and rename to ...
	(gpgsm_sign): ... this.
	(_gpgme_gpgsm_op_trustlist): Make static and rename to ...
	(gpgsm_trustlist): ... this.
	(_gpgme_gpgsm_op_verify): Make static and rename to ...
	(gpgsm_verify): ... this.
	(gpgsm_status_handler): Rename to ...
	(status_handler): ... this.
	(_gpgme_gpgsm_set_status_handler): Make static and rename to ...
	(gpgsm_set_status_handler): ... this.
	(_gpgme_gpgsm_set_colon_line_handler): Make static and rename to ...
	(gpgsm_set_colon_line_handler): ... this.
	(_gpgme_gpgsm_add_io_cb): Rename to ...
	(add_io_cb): ... this.
	(_gpgme_gpgsm_start): Make static and rename to ...
	(gpgsm_start): ... this.
	(_gpgme_gpgsm_set_io_cb): Make static and rename to ...
	(gpgsm_set_io_cb): ... this.
	(_gpgme_gpgsm_io_event): Make static and rename to ...
	(gpgsm_io_event): ... this.
	(struct _gpgme_engine_ops_gpgsm): New variable.
	[!ENABLE_GPGSM]: Removed.
	* engine.c: Do not include <time.h>, <sys/types.h>, <string.h>,
	<assert.h>, "io.h", "rungpg.h" and "engine-gpgsm.h".  Include
	<stdlib.h> and "engine-backend.h".
	(struct engine_object_s): Rewritten.
	(engine_ops): New variable.
	* engine.c (_gpgme_engine_get_path, _gpgme_engine_get_version,
	_gpgme_engine_check_version, _gpgme_engine_new,
	_gpgme_engine_release, _gpgme_engine_set_verbosity,
	_gpgme_engine_set_status_handler,
	_gpgme_engine_set_command_handler,
	_gpgme_engine_set_colon_line_handler, _gpgme_engine_op_decrypt,
	_gpgme_engine_op_delete, _gpgme_engine_op_edit,
	_gpgme_engine_op_encrypt, _gpgme_engine_op_encrypt_sign,
	_gpgme_engine_op_export, _gpgme_engine_op_genkey,
	_gpgme_engine_op_import, _gpgme_engine_op_keylist,
	_gpgme_engine_op_keylist_ext, _gpgme_engine_op_sign,
	_gpgme_engine_op_trustlist, _gpgme_engine_op_verify,
	_gpgme_engine_start, _gpgme_engine_set_io_cbs,
	_gpgme_engine_io_event): Reimplement.
	* engine.h: Fix a few comments and a variable name in a prototype.
	* ops.h: Do not include "rungpg.h".
	* passphrase.c: Include config.h only if [HAVE_CONFIG_H].  Do not
	include "rungpg.h".
	* recipient.c: Likewise.
	* signers.c: Likewise.
	* version.c: Likewise.
	* rungpg.c: Likewise.  Include "engine-backend.h".  Reorder
	functions and remove prototypes.
	(_gpgme_gpg_get_version): Make static and rename to ...
	(gpg_get_version): ... this.
	(_gpgme_gpg_check_version): Make static and rename to ...
	(gpg_check_version): ... this.
	(_gpgme_gpg_new): Make static.  Change argument type from
	GpgObject * to void **.  Call gpg_release instead
	_gpgme_gpg_release.
	(_gpgme_gpg_op_decrypt): Make static and rename to ...
	(gpg_check_decrypt): ... this.
	(_gpgme_gpg_op_delete): Make static and rename to ...
	(gpg_check_delete): ... this.
	(_gpgme_gpg_set_recipients): Make static and rename to ...
	(gpg_check_set_recipients): ... this.
	(_gpgme_gpg_op_encrypt): Make static and rename to ...
	(gpg_encrypt): ... this.
	(_gpgme_gpg_op_export): Make static and rename to ...
	(gpg_export): ... this.
	(_gpgme_gpg_op_genkey): Make static and rename to ...
	(gpg_genkey): ... this.
	(_gpgme_gpg_op_import): Make static and rename to ...
	(gpg_import): ... this.
	(_gpgme_gpg_op_keylist): Make static and rename to ...
	(gpg_keylist): ... this.
	(_gpgme_gpg_op_keylist_ext): Make static and rename to ...
	(gpg_keylist_ext): ... this.
	(_gpgme_gpg_op_sign): Make static and rename to ...
	(gpg_sign): ... this.
	(_gpgme_gpg_op_trustlist): Make static and rename to ...
	(gpg_trustlist): ... this.
	(_gpgme_gpg_op_verify): Make static and rename to ...
	(gpg_verify): ... this.
	(gpg_status_handler): Rename to ...
	(status_handler): ... this.
	(_gpgme_gpg_set_status_handler): Make static and rename to ...
	(gpg_set_status_handler): ... this.
	(_gpgme_gpg_set_colon_line_handler): Make static and rename to ...
	(gpg_set_colon_line_handler): ... this.
	(gpgme_gpg_add_io_cb): Rename to ...
	(add_io_cb): ... this.
	(_gpgme_gpg_start): Make static and rename to ...
	(gpg_start): ... this.
	(_gpgme_gpg_set_io_cb): Make static and rename to ...
	(gpg_set_io_cb): ... this.
	(_gpgme_gpg_io_event): Make static and rename to ...
	(gpg_io_event): ... this.
	(struct _gpgme_engine_ops_gpg): New variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/3a6381133afaadf4af08fa2f64d04b5ba95f6949

Git commit 5a7fadc5aab3191a64db4d88305134554ebe7496 by Marcus Brinkmann on 12/10/2002 at 14:32..
2002-10-12  Marcus Brinkmann  <marcus at g10code.de>

	* gpgmeplug.c (checkMessageSignature): Update call to
	gpgme_op_verify to use new arguments.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a7fadc5aab3191a64db4d88305134554ebe7496

Git commit 941530f15d6ad7d4a3934640ebb81617ecff6236 by Karl-Heinz Zimmer on 31/10/2002 at 13:14..
Implementing the 1st of missing features reported by Ingo: isEmailInCertificate()
https://invent.kde.org/neon/forks/gpgme/-/commit/941530f15d6ad7d4a3934640ebb81617ecff6236

Git commit 05f1c81b601e9897a2c8577103f9f433abc2d92c by Karl-Heinz Zimmer on 31/10/2002 at 13:59..
Add support for certificates having the e-mail address stored in GPGME_ATTR_USERID instead of GPGME_ATTR_EMAIL.
https://invent.kde.org/neon/forks/gpgme/-/commit/05f1c81b601e9897a2c8577103f9f433abc2d92c

Git commit f1750eee8a4d07306e406266b78c774f9c65a7bd by Karl-Heinz Zimmer on 31/10/2002 at 14:20..
Add error checking for isEmailInCertificate being called with invalid fingerprint parameter.
https://invent.kde.org/neon/forks/gpgme/-/commit/f1750eee8a4d07306e406266b78c774f9c65a7bd

Git commit e4a6f97d5e9c5a6139fa685100771d20091b790b by Karl-Heinz Zimmer on 31/10/2002 at 16:30..
Adding support for email addresses includes in '<' and '>'.
https://invent.kde.org/neon/forks/gpgme/-/commit/e4a6f97d5e9c5a6139fa685100771d20091b790b

Git commit 94d230c8b4c6151ab610827fafb460594ec37e9d by Marcus Brinkmann on 05/11/2002 at 12:04..
2002-11-05  Marcus Brinkmann  <marcus at gnu.org>

	* import.c (append_xml_impinfo): Use
	_gpgme_data_append_string_for_xml rather than
	_gpgme_data_append_string for the field content.
	Submitted by Miguel Coca <e970095 at zipi.fi.upm.es>.
https://invent.kde.org/neon/forks/gpgme/-/commit/94d230c8b4c6151ab610827fafb460594ec37e9d

Git commit b8ae2150c391b3d24763b1a7fa772051c8b13ad3 by Marcus Brinkmann on 05/11/2002 at 15:20..
Fix email address.
https://invent.kde.org/neon/forks/gpgme/-/commit/b8ae2150c391b3d24763b1a7fa772051c8b13ad3

Git commit 21c8829f6a72a0d4302e0fad093c0c1d4a277eb2 by Marcus Brinkmann on 05/11/2002 at 15:25..
2002-11-05  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Fix prototype of gpgme_get_sig_key.
	Reported by Miguel Coca <e970095 at zipi.fi.upm.es>.
https://invent.kde.org/neon/forks/gpgme/-/commit/21c8829f6a72a0d4302e0fad093c0c1d4a277eb2

Git commit a1bf7a10b4b682730d8bf46462da8843d393b5d5 by Marcus Brinkmann on 19/11/2002 at 09:33..
2002-11-19  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_keylist): Add --with-fingerprint to gpg invocation
	twice, to get fingerprints on subkeys.  Suggested by Timo Schulz
	<twoaday at freakmail.de>.
	(gpg_keylist_ext): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/a1bf7a10b4b682730d8bf46462da8843d393b5d5

Git commit dfc32a5441519cc6071ee5bf8e12abe4a29f5875 by Marcus Brinkmann on 19/11/2002 at 16:41..
doc/
2002-11-19  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Generating Keys): Document new argument to
	gpgme_op_genkey.

gpgme/
2002-11-19  Marcus Brinkmann  <marcus at g10code.de>

	* genkey.c: Only include <config.h> if [HAVE_CONFIG_H].
	(struct genkey_result_s): Add new member FPR.
	(_gpgme_release_genkey_result): Free RESULT->fpr if set.
	(genkey_status_handler): Extract the fingerprint from the status
	line.
	(gpgme_op_genkey): Add new argument FPR and return the fingerprint
	in it.
	* gpgme.h: Adjust prototype of gpgme_op_genkey.

tests/
2002-11-19  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-genkey.c (main): Add missing argument to gpgme_op_genkey
	invocation.
CVSk: ----------------------------------------------------------------------
https://invent.kde.org/neon/forks/gpgme/-/commit/dfc32a5441519cc6071ee5bf8e12abe4a29f5875

Git commit 80801660a9819e49727dfee0d23815a7a106462a by Marcus Brinkmann on 21/11/2002 at 11:21..
2002-11-21  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (_gpgme_verify_status_handler): Treat
	GPGME_STATUS_UNEXPECTED like GPGME_STATUS_NODATA.
	Reported by Miguel Coca <e970095 at zipi.fi.upm.es>.
https://invent.kde.org/neon/forks/gpgme/-/commit/80801660a9819e49727dfee0d23815a7a106462a

Git commit 4090227c52be335c46c0991d1036352d9550b22f by Marcus Brinkmann on 21/11/2002 at 12:58..
Add Miguel Coca <e970095 at zipi.fi.upm.es>.
https://invent.kde.org/neon/forks/gpgme/-/commit/4090227c52be335c46c0991d1036352d9550b22f

Git commit b1456f1c1962c1ce8bbdba929be5a0b5c6997c22 by Marcus Brinkmann on 21/11/2002 at 13:34..
Fix function names which lacked _new_.
https://invent.kde.org/neon/forks/gpgme/-/commit/b1456f1c1962c1ce8bbdba929be5a0b5c6997c22

Git commit 8f0283d81ab79a67b2ccdb626ab5d7cb17007107 by Marcus Brinkmann on 21/11/2002 at 13:45..
2002-11-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Document the new interface.
https://invent.kde.org/neon/forks/gpgme/-/commit/8f0283d81ab79a67b2ccdb626ab5d7cb17007107

Git commit 5047222b11d4a03350eef8e31a98e59c18d18b79 by Marcus Brinkmann on 21/11/2002 at 13:48..
2002-11-21  Marcus Brinkmann  <marcus at g10code.de>

	* decrypt.c: Some beautyfication.
https://invent.kde.org/neon/forks/gpgme/-/commit/5047222b11d4a03350eef8e31a98e59c18d18b79

Git commit 80e77635cfc4d718a0f6fd7e6d7e5912d0885264 by Marcus Brinkmann on 22/11/2002 at 17:38..
2002-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h [_MSC_VER]: Define ssize_t as long.
https://invent.kde.org/neon/forks/gpgme/-/commit/80e77635cfc4d718a0f6fd7e6d7e5912d0885264

Git commit ec6525d31170c33234d4e5a6a068715344a1bedf by Marcus Brinkmann on 22/11/2002 at 17:39..
2002-11-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Disable GPGSM for all dosish systems.
https://invent.kde.org/neon/forks/gpgme/-/commit/ec6525d31170c33234d4e5a6a068715344a1bedf

Git commit bc06e0cb8e08e6ff6129f669f054c1145adcc221 by Marcus Brinkmann on 22/11/2002 at 17:45..
2002-11-22  Werner Koch  <wk at gnupg.org>

	* engine-gpgsm.c (_gpgme_gpgsm_new): Save the result of a first
	setlocale before doing another setlocale.
https://invent.kde.org/neon/forks/gpgme/-/commit/bc06e0cb8e08e6ff6129f669f054c1145adcc221

Git commit 856c4398c6def6807ba859cf786cf0a007f14005 by Marcus Brinkmann on 25/11/2002 at 21:12..
2002-11-25  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_gpg_spawn): Do not set parent fds to -1.
	* posix-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead close
	for parent fds.
	* w32-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead
	CloseHandle for parent fds.
https://invent.kde.org/neon/forks/gpgme/-/commit/856c4398c6def6807ba859cf786cf0a007f14005

Git commit 1c66649aad21afe144ac9568e47f58b4aff88aba by Marcus Brinkmann on 28/11/2002 at 19:39..
2002-11-28  Marcus Brinkmann  <marcus at g10code.de>

	* NEWS: Add note about moving "gpgmeplug" to the "cryptplug"
	package.
	* README: Remove instructions related to "gpgmeplug".
	* configure.ac: Remove enable option "gpgmeplug" and automake
	conditional BUILD_GPGMEPLUG, as well as the status info about it.
	(GPGMEPLUG): Remove variable.
	* Makefile.am (gpgmeplug): Remove variable.
	(SUBDIRS): Remove ${gpgmeplug}.
	* cryptplug.h, gpgme-openpgp.c, gpgmeplug.dox, gpgme-smime.c,
	Makefile.am, gpgmeplug.c, ChangeLog: Files removed.
CVSk: ----------------------------------------------------------------------
https://invent.kde.org/neon/forks/gpgme/-/commit/1c66649aad21afe144ac9568e47f58b4aff88aba

Git commit 7394638cdbd71d9b9d6a7857398137f96cc69da5 by Marcus Brinkmann on 28/11/2002 at 20:20..
Fix spelling of my name.
https://invent.kde.org/neon/forks/gpgme/-/commit/7394638cdbd71d9b9d6a7857398137f96cc69da5

Git commit 1b495c51408bba99df33a544bae6184e70060fae by Marcus Brinkmann on 04/12/2002 at 16:28..
2002-12-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Add prototype for gpgme_get_key.
	* key.c (gpgme_get_key): New function.
	* verify.c (gpgme_get_sig_key): Rewrite using gpgme_get_key.

	* gpgme.h: Add prototypes for new interfaces
	gpgme_key_sig_get_string_attr and gpgme_key_get_ulong_attr.
	(enum GpgmeAttr): New attribute GPGME_ATTR_SIG_CLASS.
	* gpgme.c (gpgme_set_keylist_mode): Allow GPGME_KEYLIST_MODE_SIGS.
	* key.h (struct certsig_s): New members ALGO, NAME_PART,
	EMAIL_PART, COMMENT_PART, NAME, SIG_STAT and SIG_CLASS.

	* conversion.c (_gpgme_decode_c_string): Add new parameter LEN.
	Use that to determine if allocation is desired or not.
	* util.h: Adjust prototype of _gpgme_decode_c_string.
	* keylist.c (keylist_colon_handler): Adjust caller of
	_gpgme_decode_c_string.

	* key.h (struct gpgme_key_s): New member last_uid.
	* key.c (_gpgme_key_append_name): Rewritten using
	_gpgme_decode_c_string and the last_uid pointer.
	(my_isdigit): Macro removed.
	(ALLOC_CHUNK): Likewise.
	* keylist.c (set_userid_flags): Use last_uid member of KEY.

	* context.h (struct user_id_s): New member last_certsig.
	* key.h: Add prototype for _gpgme_key_add_certsig.
	* key.c (_gpgme_key_add_certsig): New function.
	(set_user_id_part): Move function before _gpgme_key_add_certsig.
	(parse_user_id): Change first argument to SRC, add new arguments
	NAME, EMAIL and COMMENT.  Change code to use these arguments
	instead going through UID.  Move function before
	_gpgme_add_certsig.
	(parse_x509_user_id): Likewise.
	(_gpgme_key_append_name): Adjust arguments to parse_x509_user_id
	and parse_user_id invocation.
	(one_certsig_as_xml): New function.
	(one_uid_as_xml): Print signatures.
	* context.h (struct gpgme_context_s): New member TMP_UID.
	* keylist.c (keylist_colon_handler): Rewritten, implement "sig"
	record entries.

	* key.c (get_certsig): New function.
	(gpgme_key_sig_get_string_attr): Likewise.
	(gpgme_key_sig_get_ulong_attr): Likewise.

	* keylist.c: Include <ctype.h>.
	(my_isdigit): Macro removed.
	(set_mainkey_trust_info): Use isdigit, not my_isdigit.
	(set_userid_flags): Likewise.
	(set_subkey_trust_info): Likewise.
	(set_ownertrust): Likewise.
	(finish_key): Move function up a bit and remove prototype.

	* rungpg.c (gpg_keylist_ext): Correct precedence of signature
	listing mode.
	(gpg_keylist_ext): Implement signature listing mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/1b495c51408bba99df33a544bae6184e70060fae

Git commit 6a772bd6bc3fe0195c64b385a3bebe294f2ca345 by Marcus Brinkmann on 06/12/2002 at 22:06..
doc/
2002-12-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Memory Based Data Buffers): New subsection.
	(File Based Data Buffers): Likewise.
	(Callback Based Data Buffers): Likewise.
	(Manipulating Data Buffers): Update interfaces.  Add
	gpgme_data_seek.
	* gpgme.texi (Engine Version Check): Remove gpgme_chec_engine.

gpgme/
2002-12-06  Marcus Brinkmann  <marcus at g10code.de>

	* data.h (gpgme_data_release_cb): Change return type to void.
	(gpgme_data_read_cb): Change return type to ssize_t.
	* data.c (gpgme_data_read): Likewise.
	* data-stream.c (stream_read): Likewise.
	* data-fd.c (fd_read): Likewise.
	* data-mem.c (mem_read): Likewise.
	(mem_release): Change return type to void.
	* data-user.c (user_read): Change return type to ssize_t.
	(user_release): Change return type to void.
	* data-compat.c (old_user_read): Change return type to ssize_t.
	* gpgme.h (GpgmeDataReadCb): Likewise.
	(gpgme_data_read): Likewise.
	(GpgmeDataSeekCb): Change return type to off_t.
https://invent.kde.org/neon/forks/gpgme/-/commit/6a772bd6bc3fe0195c64b385a3bebe294f2ca345

Git commit 0f78cb1e66273be9c0f755055862a1de6580ce96 by Marcus Brinkmann on 06/12/2002 at 22:27..
Fix bugs in last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/0f78cb1e66273be9c0f755055862a1de6580ce96

Git commit 76253cd2fabf7b3cbacf3a9777e9756feb17cf85 by Marcus Brinkmann on 08/12/2002 at 13:54..
2002-12-08  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (LIBGPGME_LT_CURRENT): Increase by one.
	(LIBGPGME_LT_AGE, LIBGPGME_LT_REVISION): Set to 0.
https://invent.kde.org/neon/forks/gpgme/-/commit/76253cd2fabf7b3cbacf3a9777e9756feb17cf85

Git commit 215ab30bbad456280dfc20eb43ffe5c62cb74010 by Marcus Brinkmann on 22/12/2002 at 13:55..
Add 0.3 branch changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/215ab30bbad456280dfc20eb43ffe5c62cb74010

Git commit 9d8143f0714516de7326d242221a05e947372d4d by Marcus Brinkmann on 23/12/2002 at 17:12..
2002-12-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Signatures): New section.
	(Listing Keys): Add gpgme_get_key.
https://invent.kde.org/neon/forks/gpgme/-/commit/9d8143f0714516de7326d242221a05e947372d4d

Git commit 1ab62dbcba32972d8036a22a590d38941b6bbf4a by Marcus Brinkmann on 23/12/2002 at 17:47..
2002-12-23  Marcus Brinkmann  <marcus at g10code.de>

	* data-mem.c (mem_release): Fix gcc warning.
	* data-user.c (user_release): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ab62dbcba32972d8036a22a590d38941b6bbf4a

Git commit 51168de35d4b6765901686a1f141bf5d230bb01a by Marcus Brinkmann on 23/12/2002 at 20:29..
2002-12-23  Marcus Brinkmann  <marcus at g10code.de>

	* autogen.sh (automake_vers): Require 1.7 (really 1.7.1) for the
	conditional source distribution bug fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/51168de35d4b6765901686a1f141bf5d230bb01a

Git commit c60bcb31ade3f86eeb96d38ffbbca399131a5da3 by Marcus Brinkmann on 23/12/2002 at 21:06..
2002-12-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile.am (./gpgsm.conf): Add a faked system time to
	avoid certification's expiry.
	* gpgsm/t-encrypt.c (main): Use the short certification name.
https://invent.kde.org/neon/forks/gpgme/-/commit/c60bcb31ade3f86eeb96d38ffbbca399131a5da3

Git commit 856d9db47963555f901da2507cf98085493f355e by Marcus Brinkmann on 23/12/2002 at 21:19..
Added new items.
https://invent.kde.org/neon/forks/gpgme/-/commit/856d9db47963555f901da2507cf98085493f355e

Git commit a0fc64745fef6688e16c50cefab5dbcc6a55848c by Marcus Brinkmann on 23/12/2002 at 21:28..
2002-12-23  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Bump up to 0.4.1.

	Released 0.4.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/a0fc64745fef6688e16c50cefab5dbcc6a55848c

Git commit 15de808feaebbfbd7f62f18b6e1a15b4dbb9f164 by Marcus Brinkmann on 23/12/2002 at 22:31..
2002-12-23  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (gpgme_key_get_string_attr): Don't accept GPGME_ATTR_IS_SECRET.
	(otrust_to_string): New function.
	(gpgme_key_get_as_xml): Use it.
	(validity_to_string): New function.
	(gpgme_key_get_string_attr): Beautify using above functions.
	(gpgme_key_get_ulong_attr): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/15de808feaebbfbd7f62f18b6e1a15b4dbb9f164

Git commit 06afcd13c6f2ce687bb647f14df2cee9d50464b2 by Marcus Brinkmann on 23/12/2002 at 22:34..
doc/
2002-12-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Information About Keys): Document that
	GPGME_ATTR_IS_SECRET is not representable as a string anymore.
https://invent.kde.org/neon/forks/gpgme/-/commit/06afcd13c6f2ce687bb647f14df2cee9d50464b2

Git commit d1346f398eec240aeaf92b75e00c8f8cb17b810f by Marcus Brinkmann on 23/12/2002 at 22:49..
I believe this was fixed a while ago.
https://invent.kde.org/neon/forks/gpgme/-/commit/d1346f398eec240aeaf92b75e00c8f8cb17b810f

Git commit acae8a0dced3c72e49273a1558153fd89bee8214 by Marcus Brinkmann on 23/12/2002 at 22:51..
Fingerprints of subkeys are available.
https://invent.kde.org/neon/forks/gpgme/-/commit/acae8a0dced3c72e49273a1558153fd89bee8214

Git commit 768098eb93ee4b997d70a573c93fddca8ffbfba6 by Marcus Brinkmann on 23/12/2002 at 23:44..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/768098eb93ee4b997d70a573c93fddca8ffbfba6

Git commit 1bf2a7b4a2737eb7de9f788c7103d54c0928bab2 by Marcus Brinkmann on 23/12/2002 at 23:45..
2002-12-24  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: New conditional HAVE_LD_VERSION_SCRIPT.
	Call AC_CANONICAL_HOST, use host instead target.

gpgme/
2002-12-24  Marcus Brinkmann  <marcus at g10code.de>

	* libgpgme.vers: New file.
	* Makefile.am (EXTRA_DIST): Add libgpgme.vers.
	(libgpgme_version_script_cmd): New variable.
	(libgpgme_la_LDFLAGS): Add libgpgme_version_script_cmd here.
	(libgpgme_la_DEPENDENCIES): New variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/1bf2a7b4a2737eb7de9f788c7103d54c0928bab2

Git commit 1491938785ecf8d13a5327a28b98645e1a2d2cca by Marcus Brinkmann on 23/12/2002 at 23:47..
2002-12-24  Marcus Brinkmann  <marcus at g10code.de>

	* libgpgme.vers: New file.
	* Makefile.am (EXTRA_DIST): Add libgpgme.vers.
	(libgpgme_version_script_cmd): New variable.
	(libgpgme_la_LDFLAGS): Add libgpgme_version_script_cmd here.
	(libgpgme_la_DEPENDENCIES): New variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/1491938785ecf8d13a5327a28b98645e1a2d2cca

Git commit b6e5bb310ee28ed3a8066968083b1767ab913ec7 by Marcus Brinkmann on 24/12/2002 at 13:08..
doc/
2002-12-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Drop R_STAT argument in gpgme_op_verify.
	* gpgme.texi (Decrypt and Verify): Likewise for
	gpgme_op_decrypt_verify.

gpgme/
2002-12-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_op_verify, gpgme_op_decrypt_verify): Drop R_STAT
	argument.
	* decrypt-verify.c (gpgme_op_decrypt_verify): Drop R_STAT
	argument.
	* verify.c (gpgme_op_verify): Drop R_STAT argument.
	(_gpgme_intersect_stati): Function removed.
	* ops.h (_gpgme_intersect_stati): Remove prototype.

tests/
2002-12-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-verify.c (main): Adjust caller of gpgme_op_verify.
	* gpg/t-verify.c (main): Likewise.
	* gpg/t-decrypt-verify.c (main): Likewise for
	gpgme_op_decrypt_verify.
https://invent.kde.org/neon/forks/gpgme/-/commit/b6e5bb310ee28ed3a8066968083b1767ab913ec7

Git commit 617ca7e7b87706dea107e74256f89860fa128b34 by Marcus Brinkmann on 05/01/2003 at 23:37..
2003-01-06  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_DEPENDENCIES): Correct bug in last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/617ca7e7b87706dea107e74256f89860fa128b34

Git commit 8e65687b469d00e3bf58a8ff39e40330a654d55d by Marcus Brinkmann on 06/01/2003 at 14:07..
2003-01-06  Marcus Brinkmann  <marcus at g10code.de>

	* data-mem.c: Include <string.h>.
	* engine.c: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/8e65687b469d00e3bf58a8ff39e40330a654d55d

Git commit 3552416199ea6b714e0e6eeab92124d8714a1614 by Werner Koch on 06/01/2003 at 21:06..
* keylist.c (set_mainkey_capability): Handle 'd' and 'D' used
since gpg 1.3 to denote disabled keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/3552416199ea6b714e0e6eeab92124d8714a1614

Git commit b083ea8da3619399b9c33887257d3c220941a704 by Marcus Brinkmann on 19/01/2003 at 21:51..
2003-01-19  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (_gpgme_engine_ops_gpg): Remove gpg_start.
	(gpg_start): Rename to ...
	(start): ... this function.  Change arguments to GpgObject.
	(gpg_decrypt): Call start.
	(gpg_edit): Likewise.
	(gpg_encrypt): Likewise.
	(gpg_encrypt_sign): Likewise.
	(gpg_export): Likewise.
	(gpg_import): Likewise.
	(gpg_keylist): Likewise.
	(gpg_keylist_ext): Likewise.
	(gpg_trustlist): Likewise.
	(gpg_verify): Likewise.

	* engine-gpgsm.c (_gpgme_engine_ops_encrypt): Remove gpgsm_start.
	(gpgsm_start): Rename to ...
	(struct gpgsm_object_s): Remove member command.
	(gpgsm_release): Don't free command.
	(start): ... this function.  Change arguments to GpgsmObject and
	const char *.
	(gpgsm_decrypt): Call start.
	(gpgsm_delete): Likewise.
	(gpgsm_encrypt): Likewise.
	(gpgsm_export): Likewise.
	(gpgsm_genkey): Likewise.
	(gpgsm_import): Likewise.
	(gpgsm_keylist): Likewise.
	(gpgsm_keylist_ext): Likewise.
	(gpgsm_verify): Likewise.

	* decrypt.c (_gpgme_decrypt_start): Don't call
	_gpgme_engine_start.
	* delete.c (_gpgme_op_delete_start): Likewise.
	* edit.c (_gpgme_op_edit_start): Likewise.
	* encrypt.c (_gpgme_op_encrypt_start):
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start):
	* export.c (_gpgme_op_export_start): Likewise.
	* genkey.c (_gpgme_op_genkey_start): Likewise.
	* import.c (_gpgme_op_import_start): Likewise.
	* keylist.c (gpgme_op_keylist_ext_start): Likewise.
	(gpgme_op_keylist_start): Likewise.
	* sign.c (_gpgme_op_sign_start): Likewise.
	* trustlist.c (gpgme_op_trustlist_start): Likewise.
	* verify.c (_gpgme_op_verify_start): Likewise.

	* engine-backend.h (struct engine_ops): Remove member start.

	* engine.h (_gpgme_engine_start): Remove prototype.
	* engine.c (_gpgme_engine_start): Remove function.
https://invent.kde.org/neon/forks/gpgme/-/commit/b083ea8da3619399b9c33887257d3c220941a704

Git commit c44f5e0a3c7bdf34a3abe62eff4444fab0817bef by Marcus Brinkmann on 19/01/2003 at 22:05..
2003-01-19  Miguel Coca  <mcoca at gnu.org>

	* w32-io.c (_gpgme_io_select): Add missing argument in calls to
	DEBUG_BEGIN.
	* w32-util.c: Include "sema.h".
	(find_program_in_registry): Change DEBUG1 to DEBUG2, fixes compilation
	error.
https://invent.kde.org/neon/forks/gpgme/-/commit/c44f5e0a3c7bdf34a3abe62eff4444fab0817bef

Git commit 8a5c6d0de25c4331e5a85343a9a5d6fe62041c46 by Marcus Brinkmann on 29/01/2003 at 13:52..
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (gpgme_key_sig_get_string_attr): Use validity_to_string
	instead otrust_to_string to calculate validity.
https://invent.kde.org/neon/forks/gpgme/-/commit/8a5c6d0de25c4331e5a85343a9a5d6fe62041c46

Git commit 2c543f6a86969e6437289471975a3e3d333b4d3c by Marcus Brinkmann on 29/01/2003 at 15:20..
doc/
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (I/O Callback Interface): Document new even
	GPGME_EVENT_START.
	(Waiting For Completion): Document new possible return values.
	(I/O Callback Interface): Document return type of GpgmeIOCb.

gpgme/
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (gpgme_context_s): Remove member ERROR.
	* types.h (GpgmeStatusHandler): Change return type to GpgmeError.
	(GpgmeCommandHandler): Change return type to GpgmeError and add
	new argument RESULT.
	* gpgme.h (GpgmeIOCb): Change return type to GpgmeError.
	(GpgmeEventIO): New event GPGME_EVENT_START.
	(GpgmeIdleFunc): Remove type.
	(gpgme_register_idle): Remove prototype.
	* data.c: Include <assert.h>.
	(_gpgme_data_inbound_handler): Change return type to GpgmeError.
	Return any error instead ignoring it, don't close file descriptor
	on error.
	(_gpgme_data_outbound_handler): Likewise.
	* decrypt.c: Do not include <stdio.h>, <string.h> and <assert.h>.
	(_gpgme_decrypt_status_handler): Change return type to GpgmeError.
	Return error instead setting ctx->error.  Return success at end of
	function.
	(gpgme_op_decrypt): Don't work around the old kludge anymore.
	* decrypt-verify.c (decrypt_verify_status_handler): Change return
	type to GpgmeError.  Return possible errors.
	* delete.c: Do not include <stdio.h>, <string.h>, <time.h> and
	<assert.h>.
	(delete_status_handler): Change return type to GpgmeError.  Return
	error instead setting ctx->error.  Return success at end of
	function.
	* edit.c: Do not include <stdio.h> and <string.h>.
	(_gpgme_edit_status_handler): Change type to GpgmeError,
	make static and rename to ...
	(edit_status_handler): ... this.  Return error directly.
	(command_handler): Change return type to GpgmeError, add result
	argument.  Return error directly.
	* encrypt.c (status_handler_finish): Remove function.
	(_gpgme_encrypt_status_handler): Change return type to GpgmeError.
	Return error directly.
	(_gpgme_encrypt_sym_status_handler): Likewise.
	* encrypt-sign.c (encrypt_sign_status_handler): Likewise.
	* engine-gpgsm.c (close_notify_handler): Do not signal done event
	anymore.
	(status_handler): Change return type to GpgmeError.  Diddle things
	around a bit to return errors directly.
	(start): Send start event.
	* export.c: Do not include <stdio.h>, <string.h> and <assert.h>.
	(export_status_handler): Change return type to GpgmeError.  Don't
	check ctx->error.
	* genkey.c: Do not include <stdio.h> and <assert.h>.
	(genkey_status_handler): Change return type to GpgmeError.  Don't
	check ctx->error.  Return errors directly.
	* gpgme.c (_gpgme_release_result): Do not initialize ctx->error.
	(_gpgme_op_event_cb): Function removed.
	(_gpgme_op_event_cb_user): Likewise.
	* import.c: Do not include <stdio.h>, <string.h> and <assert.h>.
	(import_status_handler): Change return type to GpgmeError.  Don't
	check ctx->error.
	* keylist.c (keylist_colon_handler, keylist_status_handler, finish_key):
	Change return type to GpgmeError, return error directly.
	* Makefile (libgpgme_la_SOURCES): Add wait-global.c,
	wait-private.c and wait-user.c
	* ops.h (test_and_allocate_result): Return error instead setting
	ctx->error.
	(_gpgme_data_inbound_handler, _gpgme_data_outbound_handler,
	_gpgme_verify_status_handler, _gpgme_decrypt_status_handler,
	_gpgme_sign_status_handler, _gpgme_encrypt_staus_handler,
	_gpgme_passphrase_status_handler, _gpgme_progress_status_handler):
	Change return type to GpgmeError.
	(_gpgme_passphease_command_handler): Change return type to
	GpgmeError and add new argument RESULT.
	* op-support.c: Use new callback functions, and change private
	data to ctx everywhere.
	* passphrase.c (_gpgme_passphrase_status_handler): Change return
	type to GpgmeError, return error directly.
	(_gpgme_passphrase_command_handler): Change return type to
	GpgmeError, add result argument.  Return results accordingly.
	* progress.c (_gpgme_progress_status_handler): Change return type
	to GpgmeError, return errors directly.
	* rungpg.c (status_handler): Change return type to GpgmeError.
	Return error directly.
	(close_notify_handler): Don't send done event.
	(colon_line_handler): Change return type to GpgmeError, return
	errors directly.
	* rungpg.c (start): Send start event.
	* sign.c (_gpgme_sign_status_handler): Change return type to
	GpgmeError, return errors directly.
	* trustlist.c (trustlist_status_handler): Change return type to
	GpgmeError.  Return 0.
	(trustlist_colon_handler): Change return type GpgmeError.  Return
	errors directly.
	* verify.c (add_notation): Change return type to GpgmeError,
	return errors directly.
	(_gpgme_verify_status_handler): Likewise.
	* wait.h (struct fd_table): Remove lock member.
	(struct wait_item_s): Moved here from wait.c.
	(struct tag): New structure.
	(_gpgme_wait_event_cb): Remove prototype.
	(_gpgme_wait_private_event_cb, _gpgme_wait_global_event_cb,
	_gpgme_wait_user_add_io_cb, _gpgme_wait_user_remove_io_cb,
	_gpgme_wait_user_event_io_cb): New prototypes.
	* wait.c: Don't include <stdio.h>.
	(ftd_global, ctx_done_list, ctx_done_list_size,
	ctx_done_list_length, ctx_done_list_lock, idle_function): Remove
	global variable.
	(gpgme_register_idle, do_select, _gpgme_wait_event_cb): Remove
	function.
	(gpgme_wait): Move to file wait-global.c.
	(_gpgme_add_io_cb): Take ctx as private argument, initialize ctx
	member in wait item and tag.
	(_gpgme_remove_io_cb): Take ctx from tag.  Don't use FDT lock.
	(_gpgme_wait_one, _gpgme_wait_on_condition): Move to
	wait-private.c.
	(gpgme_fd_table_init): Don't initialize FDT->lock.
	(gpgme_fd_table_deinit): Don't destroy FDT->lock.
	(_gpgme_fd_table_put): Make static and rename to ...
	(fd_table_put): ... this function.  Don't use FDT->lock.
	(struct wait_item_s): Move to wait.h.
	* wait-global.c: New file.
	* wait-private.c: New file.
	* wait-user.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/2c543f6a86969e6437289471975a3e3d333b4d3c

Git commit f6604334b6162b5db5f7e87bb822cff4a2065549 by Marcus Brinkmann on 29/01/2003 at 15:32..
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (wait_on_request_or_fail): Remove macro.
https://invent.kde.org/neon/forks/gpgme/-/commit/f6604334b6162b5db5f7e87bb822cff4a2065549

Git commit ff5dfd9c9ca7d0d0409d2afe06546eabf9d2fc2f by Marcus Brinkmann on 29/01/2003 at 15:41..
Add some items, remove obsolete item about pipemode.
https://invent.kde.org/neon/forks/gpgme/-/commit/ff5dfd9c9ca7d0d0409d2afe06546eabf9d2fc2f

Git commit 6912c46a77d2aa1274aeef028d8e98bd917b64dc by Marcus Brinkmann on 29/01/2003 at 16:10..
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* util.h (mk_error): Remove macro.
	* conversion.c, data.c, data-compat.c, decrypt.c, delete.c,
	edit.c, encrypt.c, encrypt-sign.c, engine.c, engine-gpgsm.c,
	export.c, genkey.c, gpgme.c, import.c, key.c, keylist.c,
	passphrase.c, progress.c, recipient.c, rungpg.c, sign.c,
	signers.c, trustlist.c, verify.c, wait.c, wait-global.c,
	wait-private (literally everywhere): Expand the mk_error macro.
https://invent.kde.org/neon/forks/gpgme/-/commit/6912c46a77d2aa1274aeef028d8e98bd917b64dc

Git commit 13e4d78a8249a381b9d47b0f4e1d2f7c6969beb3 by Marcus Brinkmann on 29/01/2003 at 19:50..
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Remove all uses of GNUPG_CHECK_TYPEDEF, for byte,
	ushort, ulong, u16 and u32.
	* acinclude.m4 (GNUPG_CHECK_TYPEDEF): Remove macro.

gpgme/
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* types.h: Remove byte and ulong types.
	* util.h (_gpgme_hextobyte): Change prototype to unsigned char
	instead byte.
	* conversion.c (_gpgme_hextobyte): Change argument to unsigned
	char instead byte.
	(_gpgme_decode_c_string): Likewise, and beautify.  Also support a
	few more escaped characters.  Be more strict about buffer size.
	(_gpgme_data_append_percentstring_for_xml): Change type of SRC,
	BUF and DST to unsigned char instead byte.
	* progress.c (_gpgme_progress_status_handler): Use unsigned char
	instead byte.
	* debug.c (trim_spaces): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/13e4d78a8249a381b9d47b0f4e1d2f7c6969beb3

Git commit d9ecfaa9c197518f644d2b4f5163261618dffe23 by Marcus Brinkmann on 29/01/2003 at 20:03..
Fix copyright year.
https://invent.kde.org/neon/forks/gpgme/-/commit/d9ecfaa9c197518f644d2b4f5163261618dffe23

Git commit 693b8a2ac6b8c0c31ba9014accafbc84e41d6e54 by Marcus Brinkmann on 29/01/2003 at 20:18..
2003-01-29  Marcus Brinkmann  <marcus at g10code.de>

	* bonobo/gpgme.c, bonobo/main.c, bonobo/main.h, bonobo/Makefile,
	bonobo/Makefile.am, bonobo/Makefile.in: Dead files removed.
	* configure.ac: Remove automake conditional BUILD_BONOBO
	(AC_CONFIG_FILES): Remove bonobo/Makefile.
	* Makefile.am (bonobo): Remove variable.
	(SUBDIRS): Remove ${bonobo}.
https://invent.kde.org/neon/forks/gpgme/-/commit/693b8a2ac6b8c0c31ba9014accafbc84e41d6e54

Git commit fdbee6b2113f2b8bd45bd481e2c8848ea4d99a7c by Marcus Brinkmann on 30/01/2003 at 11:54..
doc/
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Engine Information): Rewritten.

gpgme/
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (enum GpgmeProtocol): Remove GPGME_PROTOCOL_AUTO.
	* gpgme.c (gpgme_set_protocol): Don't handle GPGME_PROTOCOL_AUTO.
	(gpgme_get_protocol_name): New function.

	* engine-backend.h (struct engine_ops): New member
	get_req_version, remove member check_version.
	* engine.h (_gpgme_Engine_get_version): New prototype.
	* rungpg.c (gpg_get_req_version): New function.
	(gpg_check_version): Function removed.
	(_gpgme_engine_ops_gpg): Add gpg_get_req_version, remove
	gpg_check_version.
	* engine-gpgsm.c (gpgsm_get_req_version): New function.
	(gpgsm_check_version): Function removed.
	(_gpgme_engine_ops_gpgsm): Add gpgsm_get_req_version, remove
	gpgsm_check_version.
	* engine.c: Include ops.h.
	 (_gpgme_engine_get_req_version): New function.
	(gpgme_engine_check_version): Rewritten.
	* version.c (gpgme_get_engine_info): Rewritten.
	* gpgme.h (gpgme_engine_info): New structure.
	(GpgmeEngineInfo): New type.

tests/
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (TESTS): Add t-engine-info.
	* t-engine-info.c: New file.
	* gpg/t-encrypt.c (main): Don't print engine info.
	* gpg/t-eventloop.c (main): Likewise.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpgsm/t-encrypt.c (main): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/fdbee6b2113f2b8bd45bd481e2c8848ea4d99a7c

Git commit b7779c802cabd2e1966725804f8a1cefbc9b77f7 by Marcus Brinkmann on 30/01/2003 at 11:58..
Add new interfaces.
https://invent.kde.org/neon/forks/gpgme/-/commit/b7779c802cabd2e1966725804f8a1cefbc9b77f7

Git commit feb78b25ec156d50c612e2756f8480925fff140a by Marcus Brinkmann on 30/01/2003 at 12:01..
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Protocols and Engines): Document
	gpgme_get_protocol_name.
https://invent.kde.org/neon/forks/gpgme/-/commit/feb78b25ec156d50c612e2756f8480925fff140a

Git commit d102681aef8e58fe2503d2a58142558bc6034d80 by Marcus Brinkmann on 30/01/2003 at 13:11..
doc/
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Engine Information): Rename member part to
	file_name.

gpgme/
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* engine-backend.h (struct engine_ops): Rename get_path to
	get_file_name.
	* gpgme.h (struct _gpgme_engine_info): Rename member path to
	file_name.
	* version.c: Do not include <stdio.h>, <stdlib.h>, context.h and
	util.h.  Other clean ups.
	(parse_version_number): Protect more seriously against
	overflow.
	(gpgme_get_engine_info): Move to ...
	* engine.c (gpgme_get_engine_info): ... here.
	(_gpgme_engine_get_info): Function removed.
	(_gpgme_engine_get_path): Make static and rename to ...
	(engine_get_file_name): .. this.
	(_gpgme_engine_get_version): Make static and rename to ...
	(engine_get_version): ... this.
	(_gpgme_engine_get_req_version): Make static and rename to ...
	(engine_get_req_version): ... this.
	* engine.h (_gpgme_engine_get_path, _gpgme_engine_get_version,
	_gpgme_engine_req_version, _gpgme_engine_get_info.): Remove
	prototypes.

tests/
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* t-engine-info.c: Use file_name instead path throughout.
https://invent.kde.org/neon/forks/gpgme/-/commit/d102681aef8e58fe2503d2a58142558bc6034d80

Git commit 420de0b9907b7f4f25e07864add926ebf0d23bc4 by Marcus Brinkmann on 30/01/2003 at 13:12..
Small beautification.
https://invent.kde.org/neon/forks/gpgme/-/commit/420de0b9907b7f4f25e07864add926ebf0d23bc4

Git commit fb0b0b7eefb5b9dd75ade8b6c0ba461dbaa2707c by Marcus Brinkmann on 30/01/2003 at 17:12..
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* util.h (return_if_fail, return_null_if_fail,
	return_val_if_fail): Remove macro.
	* gpgme.c (gpgme_cancel): Don't use return_if_fail.
	* key.c (gpgme_key_ref): Likewise.
	* signers.c (gpgme_signers_enum): Likewise.
	(gpgme_signers_clear): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/fb0b0b7eefb5b9dd75ade8b6c0ba461dbaa2707c

Git commit 7a149cc32f8fe37c1350652617cbff0713a69fd5 by Marcus Brinkmann on 30/01/2003 at 17:28..
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* types.h (EngineObject): Move typedef to ...
	* engine.h: ... here.
	* types.h (GpgObject): Move typedef to ...
	* rungpg.c: ... here.
	* types.h (GpgsmObject): Move typedef to ...
	* engine-gpgsm.c: ... here.
https://invent.kde.org/neon/forks/gpgme/-/commit/7a149cc32f8fe37c1350652617cbff0713a69fd5

Git commit e0229fe1d6a348fa01faf35fa382b474dcba0e32 by Marcus Brinkmann on 30/01/2003 at 22:01..
Fix comment indentation.
https://invent.kde.org/neon/forks/gpgme/-/commit/e0229fe1d6a348fa01faf35fa382b474dcba0e32

Git commit 7618b28f1d8ea4bf90d866bf6dba099ca80c7010 by Marcus Brinkmann on 30/01/2003 at 22:40..
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (status_handler): Do not close status fd at end
	of function.

	* ops.h (_gpgme_op_data_lookup): Add prototype.
	* op-support.c: Include <stdlib.h>.
	(_gpgme_op_data_lookup): New function.
	* decrypt.c (_gpgme_release_decrypt_result): Function removed.
	(struct decrypt_result_s): Rename to ...
	(struct decrypt_resul): ... this.
	(DecryptResult): New type.
	(_gpgme_decrypt_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* sign.c (_gpgme_release_sign_result): Function removed.
	(release_sign_result): New function.
	(struct sign_result_s): Rename to ...
	(struct sign_result): ... this.
	(SignResult): New type.
	(_gpgme_sign_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* encrypt.c (struct encrypt_result_s): Rename to ...
	(struct encrypt_result): ... this.
	(_gpgme_release_encrypt_result): Function removed.
	(release_encrypt_result): New function.
	(_gpgme_encrypt_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* verify.c (struct verify_result_s): Rename to ...
	(struct verify_result): ... this.  Remove member next.
	(VerifyResult): New type.
	(_gpgme_release_verify_result): Function removed.
	(release_verify_result): New function.
	(finish_sig): Change first argument to type VerifyResult.  Diddle
	the type of the op_data structure.
	(add_notation): Change first argument to type VerifyResult.
	(_gpgme_verify_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* passphrase.c (struct passphrase_result_s): Rename to ...
	(struct passphrase_result): ... this.  Remove member next.
	(PassphraseResult): New type.
	(_gpgme_release_passphrase_result): Function removed.
	(release_passphrase_result): New function.
	(_gpgme_passphrase_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	(_gpgme_passphrase_command_handler): Likewise.
	* keylist.c (struct keylist_result_s): Rename to ...
	(struct keylist_result): ... this.  Remove member next.
	(KeylistResult): New type.
	(_gpgme_release_keylist_result): Function removed.
	(release_keylist_result): New function.
	(keylist_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* edit.c (struct edit_result_s): Rename to ...
	(struct edit_result): ... this.  Remove member next.
	(EditResult): New type.
	(_gpgme_release_edit_result): Function removed.
	(release_edit_result): New function.
	(edit_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	(command_handler): Likewise.
	* types.h (DecryptResult, SignResult, EncryptResult,
	PassphraseResult, ImportResult, DeleteResult, GenKeyResult,
	KeylistResult, EditResult): Types removed.
	* ops.h: Don't include "types.h", but "gpgme.h" and "context.h".
	(test_and_allocate_result): Remove macro.
	(_gpgme_release_decrypt_result): Remove prototype.
	(_gpgme_decrypt_result): Remove prototype.
	(_gpgme_release_sign_result): Remove prototype.
	(_gpgme_release_encrypt_result): Remove prototype.
	(_gpgme_release_passphrase_result): Remove prototype.
	(_gpgme_release_import_result): Remove prototype.
	(_gpgme_release_delete_result): Remove prototype.
	(_gpgme_release_genkey_result): Remove prototype.
	(_gpgme_release_keylist_result): Remove prototype.
	(_gpgme_release_edit_result): Remove prototype.
	(_gpgme_release_verify_result): Remove prototype.
	* gpgme.c (_gpgme_release_result): Rewritten.
	* context.h (enum ctx_op_data_type): New enum.
	(struct ctx_op_data): New structure.
	(struct gpgme_context_s): Replace the member result with a member
	op_data.
	(fail_on_pending_request): Remove macro.
	* op-support.c (_gpgme_op_reset): Expand macro
	fail_on_pending_request.
	* util.h: Don't include "types.h" or "debug.h", but include "gpgme.h".
https://invent.kde.org/neon/forks/gpgme/-/commit/7618b28f1d8ea4bf90d866bf6dba099ca80c7010

Git commit 83d3b3f449790be314d418eb7edb3d3b0adb01b0 by Marcus Brinkmann on 30/01/2003 at 23:02..
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* types.h: File removed.
	* Makefile.am (libgpgme_la_SOURCES): Remove types.h.
	* io.h (struct spawn_fd_item_s): Do not include "types.h".
	* key.h: Likewise.
	* context.h: Likewise.
	* cengine-gpgsm.h: Likewise.
	* engine.h: Include "gpgme.h" instead "types.h".  Add prototypes
	for EngineStatusHandler, EngineColonLineHandler and
	EngineCommandHandler.
	(_gpgme_engine_set_status_handler): Change parameter type from
	GpgmeStatusHandler to EngineStatusHandler.
	(_gpgme_engine_set_command_handler): Change parameter type from
	GpgmeCommandHandler to EngineCommandHandler.
	(_gpgme_engine_set_colon_line_handler): Change parameter type from
	GpgmeColonLineHandler to EngineColonLineHandler.
	* engine-backend.h: Include "engine.h" instead "types.h".
	(struct engine_ops): Change Gpgme*Handler parameters in members
	set_command_handler, set_colon_line_handler and set_status_handler
	to Engine*Handler.
	* engine.c (_gpgme_engine_set_status_handler): Change parameter
	type from GpgmeStatusHandler to EngineStatusHandler.
	(_gpgme_engine_set_command_handler): Change parameter type from
	GpgmeCommandHandler to EngineCommandHandler.
	(_gpgme_engine_set_colon_line_handler): Change parameter type from
	GpgmeColonLineHandler to EngineColonLineHandler.
	* rungpg.c (struct gpg_object_s): Change type of member status.fnc
	from GpgmeStatusHandler to EngineStatusHandler.  Change type of
	member colon.fnc from GpgmeColonLineHandler to
	EngineColonLineHandler.  Change type of member cmd.fnc from
	GpgmeCommandHandler to EngineCommandHandler.
	* engine-gpgsm.c (struct gpgsm_object_s): Likewise.
	* rungpg.c (gpg_set_status_handler): Change parameter type from
	GpgmeStatusHandler to EngineStatusHandler.
	* engine-gpgsm.c (gpgsm_set_status_handler): Likewise.
	(assuan_simple_command): Likewise.
	* rungpg.c (gpg_set_colon_line_handler): Change parameter type
	from GpgmeColonLineHandler to EngineColonLineHandler.
	* engine-gpgsm.c (gpgsm_set_colon_line_handler): Likewise.
	* rungpg.c (gpg_set_command_handler): Change parameter type from
	GpgmeCommandHandler to EngineCommandHandler.
https://invent.kde.org/neon/forks/gpgme/-/commit/83d3b3f449790be314d418eb7edb3d3b0adb01b0

Git commit 90beb50551e3fe8be777115cb6ea88b8f54b76b1 by Marcus Brinkmann on 01/02/2003 at 18:53..
2003-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* assuan/: Update files to 2002-11-10 version of assuan.

gpgme/
2003-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (map_assuan_error): Replace
	ASSUAN_Bad_Certificate_Path with ASSUAN_Bad_Certificate_Chain.
	(gpgsm_new): Use assuan_pipe_connect instead assuan_pipe_connect2.

	* util.h (DIMof): Remove macro.

	* ops.h (_gpgme_op_event_cb, _gpgme_op_event_cb_user,
	_gpgme_data_unread): Prototypes removed.
https://invent.kde.org/neon/forks/gpgme/-/commit/90beb50551e3fe8be777115cb6ea88b8f54b76b1

Git commit 350ef9afefaecadcf6949cd8f6a752ad835048f7 by Marcus Brinkmann on 04/02/2003 at 14:57..
2003-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (start): Handle all errors, not only most of
	them.
	(xtoi_1, xtoi_2): Remove macro.
	(status_handler): Replace use of xtoi_2 with _gpgme_hextobyte.
https://invent.kde.org/neon/forks/gpgme/-/commit/350ef9afefaecadcf6949cd8f6a752ad835048f7

Git commit 7f0efb19238d11e359855dfa3407cb479ec92d44 by Marcus Brinkmann on 04/02/2003 at 16:08..
2003-02-04  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (read_status): If he status handler returns an error,
	return it.
	(status_handler): If read_status fails, just return the error.
https://invent.kde.org/neon/forks/gpgme/-/commit/7f0efb19238d11e359855dfa3407cb479ec92d44

Git commit d2992c518c806c52b53f8f1d19e9d9483a2a6fa3 by Marcus Brinkmann on 04/02/2003 at 20:56..
2003-02-04  Marcus Brinkmann  <marcus at g10code.de>

	* trustlist.c (trustlist_colon_handler): Release ITEM if name
	could not be allocated.
	(gpgme_trust_item_release): Only release name if it is allocated.
	Reported by Marc Mutz <Marc.Mutz at uni-bielefeld.de>.
https://invent.kde.org/neon/forks/gpgme/-/commit/d2992c518c806c52b53f8f1d19e9d9483a2a6fa3

Git commit 7aaa379c44c614bc897a86e21c8dadb38383bb23 by Marcus Brinkmann on 05/02/2003 at 10:40..
2003-02-05  Marcus Brinkmann  <marcus at g10code.de>

	* wait-user.c (_gpgme_wait_user_remove_io_cb): Move check for no
	I/O handlers left to ...
	(_gpgme_user_io_cb_handler): ... here.
https://invent.kde.org/neon/forks/gpgme/-/commit/7aaa379c44c614bc897a86e21c8dadb38383bb23

Git commit 654ab241642fce3a3f2cbd39188cd61b58bcbe74 by Marcus Brinkmann on 06/02/2003 at 11:45..
2003-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* edit.c (_gpgme_edit_status_handler): Call the progress status
	handler.
https://invent.kde.org/neon/forks/gpgme/-/commit/654ab241642fce3a3f2cbd39188cd61b58bcbe74

Git commit 5a37051361cd2d8c47c49f7ac3c4ae6fd0e0c206 by Marcus Brinkmann on 06/02/2003 at 20:09..
doc/
2003-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Cancelling an Operation): Removed.
	(Passphrase Callback): Document new type for GpgmePassphraseCb.

gpgme/
2003-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GpgmePassphraseCb): Change type to return GpgmeError,
	and add argument for returning the result string.
	(gpgme_cancel): Remove prototype.
	* gpgme.c (gpgme_cancel): Remove function.
	* context.h (struct gpgme_context_s): Remove member cancel.
	* passphrase.c (_gpgme_passphrase_command_handler): Call the
	passphrase callback in the new way.

tests/
2003-02-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-decrypt.c (passphrase_cb): Fix to new prototype.
	* gpg/t-decrypt-verify.c (passphrase_cb): Likewise.
	* gpg/t-edit.c (passphrase_cb): Likewise.
	* gpg/t-encrypt-sign.c (passphrase_cb): Likewise.
	* gpg/t-encrypt-sym.c (passphrase_cb): Likewise.
	* gpg/t-sign.c (passphrase_cb): Likewise.
	* gpg/t-signers.c (passphrase_cb): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a37051361cd2d8c47c49f7ac3c4ae6fd0e0c206

Git commit 54cd78dbecf5ea6951a4178dd75d0c9402d8fc10 by Marcus Brinkmann on 07/02/2003 at 01:15..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/54cd78dbecf5ea6951a4178dd75d0c9402d8fc10

Git commit 9b740d740b99148957e08386c2dd94530a6a3fbc by Marcus Brinkmann on 24/04/2003 at 13:46..
Add news item for 0.3.15.
https://invent.kde.org/neon/forks/gpgme/-/commit/9b740d740b99148957e08386c2dd94530a6a3fbc

Git commit 8208786b9198c34e05dfcde3f818a01b44522339 by Marcus Brinkmann on 24/04/2003 at 14:33..
doc/
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Error Values): Rename GPGME_No_Passphrase to
	GPGME_Bad_Passphrase.
	* gpgme.texi (Decrypt): Likewise.
	(Decrypt and Verify): Likewise.
	(Creating a Signature): Likewise.
	(Encrypting a Plaintext): Likewise.

	* gpgme.texi (Error Values): Rename GPGME_No_Recipients to
	GPGME_No_UserID and GPGME_Invalid_Recipient to
	GPGME_Invalid_UserID.
	(Encrypting a Plaintext): Likewise.

	* gpgme.texi (Error Values): Remove GPGME_Busy and GPGME_No_Request.
	(Listing Keys): Likewise.
	(Listing Trust Items): Likewise.

gpgme/
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GpgmeError): Rename GPGME_No_Passphrase to
	GPGME_Bad_Passphrase.
	* passphrase.c (_gpgme_passphrase_status_handler): Use
	GPGME_Bad_Passphrase instead GPGME_No_Passphrase.

	* gpgme.h (GpgmeError): Rename GPGME_No_Recipients to
	GPGME_No_UserID and GPGME_Invalid_Recipient to
	GPGME_Invalid_UserID.
	* encrypt.c (_gpgme_encrypt_status_handler): Use GPGME_No_UserID
	instead GPGME_No_Recipients and GPGME_Invalid_UserID instead
	GPGME_Invalid_Recipient.
	(_gpgme_op_encrypt_start): Likewise.

	* gpgme.h (GpgmeError): Remove GPGME_Busy and GPGME_No_Request.
	* wait-user.c (_gpgme_wait_user_event_cb): Don't clear CTX->pending.
	* wait-private.c (_gpgme_wait_private_event_cb): Likewise.
	* wait-global.c (gpgme_wait): Likewise.
	* verify.c (_gpgme_op_verify_start): Likewise.
	(gpgme_get_sig_status): Don't check pending flag.
	(gpgme_get_sig_string_attr): Likewise.
	(gpgme_get_sig_ulong_attr): Likewise.
	(gpgme_get_sig_key): Likewise.
	* op-support.c (_gpgme_op_reset): Likewise.
	* trustlist.c (gpgme_op_trustlist_start): Don't clear pending flag.
	(gpgme_op_trustlist_next): Don't check or clear pending flag.
	(gpgme_op_trustlist_end): Likewise.
	* sign.c (_gpgme_op_sign_start): Likewise.
	* context.h (struct gpgme_context_s): Remove member PENDING.
	* decrypt.c (_gpgme_decrypt_start): Likewise.
	* delete.c (_gpgme_op_delete_start): Likewise.
	* edit.c (_gpgme_op_edit_start): Likewise.
	* encrypt.c (_gpgme_op_encrypt_start): Likewise.
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Likewise.
	* export.c (_gpgme_op_export_start): Likewise.
	* genkey.c (_gpgme_op_genkey_start): Likewise.
	* import.c (_gpgme_op_import_start): Likewise.
	* key.c (gpgme_get_key): Likewise.
	* keylist.c (gpgme_op_keylist_start): Likewise.
	(gpgme_op_keylist_ext_start): Likewise.
	(gpgme_op_keylist_next): Likewise.
	(gpgme_op_keylist_end): Likewise.
	* data-compat.c (gpgme_error_to_errno): Don't convert EBUSY.
https://invent.kde.org/neon/forks/gpgme/-/commit/8208786b9198c34e05dfcde3f818a01b44522339

Git commit f58531a211d7062be4ca92b4c4843f4cf73f5010 by Marcus Brinkmann on 24/04/2003 at 15:11..
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* mkstatus: Strip trailing comma.
	* gpgme.h (GpgmeStatus): Pretty print.
https://invent.kde.org/neon/forks/gpgme/-/commit/f58531a211d7062be4ca92b4c4843f4cf73f5010

Git commit 5b88552e74818acb08241834af02a8169ddc6fa6 by Marcus Brinkmann on 24/04/2003 at 15:15..
Pretty print.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b88552e74818acb08241834af02a8169ddc6fa6

Git commit 5375105fadf033a71e0d2fdf324cc44e417b4202 by Marcus Brinkmann on 24/04/2003 at 15:40..
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_SOURCES): Add key-cache.c.
	* key.c (key_cache_initialized, key_cache_size,
	key_cache_max_chain_length, ): Removed.
	(struct key_cache_item_s, key_cache_lock, key_cache,
	key_cache_unused_items, hash_key, _gpgme_key_cache_add,
	_gpgme_key_cache_get, gpgme_get_key): Moved to ...
	* key-cache.c: ... here.  New file.
	* key.h (_gpgme_key_cache_init): Remove prototypes.
	(_gpgme_key_cache_add,_gpgme_key_cache_get): Move to ...
	* ops.h: ... here.
	* version.c: Do not include "key.h".
	(do_subsystem_inits): Do not call _gpgme_key_cache_init.
https://invent.kde.org/neon/forks/gpgme/-/commit/5375105fadf033a71e0d2fdf324cc44e417b4202

Git commit e927e5c617629c54cf41d5b99b740b6ab94db47b by Marcus Brinkmann on 24/04/2003 at 15:58..
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (struct gpgme_context_s): Remove member verbosity.
	* gpgme.c (gpgme_new): Do not set member verbosity.
	* engine.h (_gpgme_engine_set_verbosity): Remove prototype.
	* engine.c (_gpgme_engine_set_verbosity): Remove function.
	* engine-backend.h (struct engine_ops): Remove set_verbosity.
	* engine-gpgsm.c (_gpgme_engine_ops_gpgsm): Remove set_verbosity member.
	* rungpg.c (_gpgme_engine_ops_gpg): Likewise.
	(gpg_set_verbosity): Remove function.
	* decrypt.c (_gpgme_decrypt_start): Don't call
	_gpgme_engine_set_verbosity.
	* delete.c (_gpgme_op_delete_start): Likewise.
	* edit.c (_gpgme_op_edit_start): Likewise.
	* encrypt.c (_gpgme_op_encrypt_start): Likewise.
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Likewise.
	* export.c (_gpgme_op_export_start): Likewise.
	* genkey.c (_gpgme_op_genkey_start): Likewise.
	* import.c (_gpgme_op_import_start): Likewise.
	* keylist.c (gpgme_op_keylist_start): Likewise.
	(gpgme_op_keylist_ext_start): Likewise.
	* sign.c (_gpgme_op_sign_start): Likewise.
	* verify.c (_gpgme_op_verify_start): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/e927e5c617629c54cf41d5b99b740b6ab94db47b

Git commit 671edce1ae7716d2099a7f502dc560abc024f8ae by Marcus Brinkmann on 24/04/2003 at 17:16..
doc/
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Generating Keys): Document changed gpgme_op_genkey
	and new gpgme_op_genkey_result function.  Document
	GpgmeGenKeyResult data type.

gpgme/
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_op_genkey_result): New structure.
	(GpgmeGenKeyResult): New type.
	(gpgme_op_genkey): Drop last argument.
	(gpgme_op_genkey_result): New function.
	* genkey.c: Do not include "util.h", but "gpgme.h".
	(struct genkey_result): Replace with ...
	(op_data_t): ... this new type.
	(release_genkey_result): Replace with ...
	(release_op_data): ... this new function.
	(gpgme_op_genkey_result): New function.
	(genkey_status_handler): Rewritten using new op_data_t type.
	(get_key_parameter): New function.
	(_gpgme_op_genkey_start): Renamed to
	(genkey_start): ... this and rewritten.
	(gpgme_op_genkey_start): Use genkey_start instead
	_gpgme_op_genkey_start.
	(gpgme_op_genkey): Rewritten.  Remove FPR argument.

tests/
2003-04-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-genkey.c: Rewritten to match new semantics.
https://invent.kde.org/neon/forks/gpgme/-/commit/671edce1ae7716d2099a7f502dc560abc024f8ae

Git commit f0ee6af9f8a47decbda6944fb0d4cea228304dc3 by Marcus Brinkmann on 24/04/2003 at 17:28..
Complete genkey example.
https://invent.kde.org/neon/forks/gpgme/-/commit/f0ee6af9f8a47decbda6944fb0d4cea228304dc3

Git commit 8c359e54163f4730262639fa70cde3fc395cb3c7 by Marcus Brinkmann on 25/04/2003 at 10:59..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (gpgme_key_get_string_attr): Fix validity attribute.
https://invent.kde.org/neon/forks/gpgme/-/commit/8c359e54163f4730262639fa70cde3fc395cb3c7

Git commit bd07371233ee06ffb0fb8e268e19a8933168641c by Marcus Brinkmann on 25/04/2003 at 11:31..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GpgmeError): Add GPGME_Busy, GPGME_No_Request.
	(GPGME_No_Recipients, GPGME_Invalid_Recipient,
	GPGME_No_Passphrase): New macros.
https://invent.kde.org/neon/forks/gpgme/-/commit/bd07371233ee06ffb0fb8e268e19a8933168641c

Git commit 66be7f23a1328cf5a15897e106cf0cb5e21a7143 by Marcus Brinkmann on 25/04/2003 at 12:38..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-genkey.c: Rewritten.
	* gpgsm/Makefile.am (noinst_PROGRAMS): Add t-genkey.
	* gpg/t-genkey.c: Include <stdlib.h>.
	(main): Check result->fpr before checking its length.
https://invent.kde.org/neon/forks/gpgme/-/commit/66be7f23a1328cf5a15897e106cf0cb5e21a7143

Git commit a6c92323b6195b1b5162900d6d78e85868c58c71 by Marcus Brinkmann on 25/04/2003 at 12:48..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Generating Keys): Fix documentation of ppublic and
	secret arguments.
https://invent.kde.org/neon/forks/gpgme/-/commit/a6c92323b6195b1b5162900d6d78e85868c58c71

Git commit 359c251b4d19f22e706a685a1179a1bd94b494e0 by Marcus Brinkmann on 25/04/2003 at 13:18..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* export.c: Do not include <stdlib.h>, "debug.h" and "util.h", but
	"gpgme.h".
	(export_status_handler): Change type of first argument to void *.
	(_gpgme_op_export_start): Rename to ...
	(export_start): ... this.  Rework error handling.
	(gpgme_op_export_start): Rewritten to use export_start instead
	_gpgme_op_export_start.
	(gpgme_op_export): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/359c251b4d19f22e706a685a1179a1bd94b494e0

Git commit d5993c256bd053454173b95e21481749d5c68c0e by Marcus Brinkmann on 25/04/2003 at 13:23..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* data.c: Do not include <assert.h>, but "gpgme.h".
	(_gpgme_data_inbound_handler): Expand _gpgme_data_append, because
	it will go.  Do not assert DH.
	(_gpgme_data_outbound_handler): Do not assert DH.
https://invent.kde.org/neon/forks/gpgme/-/commit/d5993c256bd053454173b95e21481749d5c68c0e

Git commit 7869230d1821fa4dba6c3ca788318e52e3673a14 by Marcus Brinkmann on 25/04/2003 at 13:25..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* wait-private.c (_gpgme_wait_private_event_cb): Remove variable CTX.
https://invent.kde.org/neon/forks/gpgme/-/commit/7869230d1821fa4dba6c3ca788318e52e3673a14

Git commit 9dbd9c6dffb5cab9a60733bc800b47702184835c by Marcus Brinkmann on 25/04/2003 at 13:42..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (struct gpgme_context_s): Remove member initialized,
	use_cms and help_data_1.  Add member protocol.  Make use_armor and
	use_textmode bit flags.  Make keylist_mode, include_certs,
	signers_len and signers_size unsigned.
	* gpgme.c (gpgme_new): Initialize CTX->protocol.
	(gpgme_set_protocol): Do not check CTX.  Use CTX->protocol.
	(gpgme_get_protocol): Likewise.
	(gpgme_release): Do not release CTX->help_data_1.
	* op-support.c (_gpgme_op_reset): Use CTX->protocol.
https://invent.kde.org/neon/forks/gpgme/-/commit/9dbd9c6dffb5cab9a60733bc800b47702184835c

Git commit 8002f98d48c3539e0211add8881620ea16cea21e by Marcus Brinkmann on 25/04/2003 at 14:24..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* ops.h (_gpgme_passphrase_start): Remove prototype.
	* passphrase.c: Do not include <assert.h>, "util.h" or
	"debug.h", but "gpgme.h".
	(struct passphrase_result): Change to typedef for op_data_t.
	(release_passphrase_result): Rename to release_op_data.
	(_gpgme_passphrase_status_handler): Change first argument to void *.
	Use new op_data_t type.
	(_gpgme_passphrase_command_handler): Use new op_data_t type.
	(_gpgme_passphrase_start): Remove function.
	* decrypt.c (_gpgme_decrypt_start): Rewrite error handling.  Do
	not call _gpgme_passphrase_start, but install command handler.
	* encrypt.c (_gpgme_op_encrypt_start): Likewise.
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Likewise.
	* sign.c (_gpgme_op_sign_start): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/8002f98d48c3539e0211add8881620ea16cea21e

Git commit cceb2cc2925dcad8dd2186c2b5d3d31dbc78e995 by Marcus Brinkmann on 25/04/2003 at 14:46..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* edit.c: Do not include <assert.h>, "util.h", but "gpgme.h".
	(edit_resut): Change to typedef for op_data_t.
	(edit_status_handler): Change first argument to void *.
	Rework error handling.
	(command_handler): Rework error handling.
	(_gpgme_op_edit_start): Rename to ...
	(edit_start): ... this.  Rework error handling.
	(gpgme_op_edit_start): Rewrite using edit_start.
	(gpgme_op_edit): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/cceb2cc2925dcad8dd2186c2b5d3d31dbc78e995

Git commit 8cfb3cdd070705b13f66aadbaba0d23e0a95ccbc by Marcus Brinkmann on 25/04/2003 at 15:56..
doc/
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Importing Keys): Add documentation for
	GpgmeImportStatus, GpgmeImportResult and gpgme_op_import_result.

gpgme/
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: New enum for GPGME_IMPORT_NEW, GPGME_IMPORT_UID,
	GPGME_IMPORT_SIG, GPGME_IMPORT_SUBKEY, GPGME_IMPORT_PRIVATE.
	(GpgmeError): GPGME_Unknown_Reason, GPGME_Not_Found,
	GPGME_Ambiguous_Specification, GPGME_Wrong_Key_Usage,
	GPGME_Key_Revoked, GPGME_Key_Expired, GPGME_No_CRL_Known,
	GPGME_CRL_Too_Old, GPGME_Policy_Mismatch, GPGME_No_Secret_Key,
	GPGME_Key_Not_Trusted, GPGME_Issuer_Missing, GPGME_Chain_Too_Long,
	GPGME_Unsupported_Algorithm, GPGME_Sig_Expired,
	GPGME_Bad_Signature, GPGME_No_Public_Key): New error codes.
	(struct _gpgme_import_status): New structure.
	(GpgmeImportStatus): New type.
	(struct _gpgme_op_import_result): New structure.
	(GpgmeImportResult): New type.
	(gpgme_op_import_result): New function.
	* import.c: Include <errno.h> and "gpgme.h", but not "util.h".
	(struct import_result): Change to type op_data_t.
	(release_import_result): Rename to ...
	(release_op_data): ... this.
	(append_xml_impinfo): Function removed.
	(gpgme_op_import_result): New function.
	(parse_import): New function.
	(parse_import_res): Likewise.
	(import_status_handler): Change first argument to void *.  Rewrite
	to use new functions.
	(_gpgme_op_import_start): Rework error handling.
https://invent.kde.org/neon/forks/gpgme/-/commit/8cfb3cdd070705b13f66aadbaba0d23e0a95ccbc

Git commit d99f1faa1787d9ad32b201e1349d494ee09e4338 by Marcus Brinkmann on 25/04/2003 at 16:11..
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Importing Keys): Remove note about gpgme_get_op_info.
	(Detailed Results): Remove note about import.
https://invent.kde.org/neon/forks/gpgme/-/commit/d99f1faa1787d9ad32b201e1349d494ee09e4338

Git commit ffa2b2158c80b61356a17e97e4d2684da0ee74a2 by Marcus Brinkmann on 25/04/2003 at 17:08..
doc/
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Importing Keys): Change GPGME_IMPORT_PRIVATE to
	GPGME_IMPORT_SECRET.

gpgme/
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Change GPGME_IMPORT_PRIVATE to GPGME_IMPORT_SECRET.
	* import.c (parse_import_res): Parse unchanged field.

tests/
2003-04-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-import.c: Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/ffa2b2158c80b61356a17e97e4d2684da0ee74a2

Git commit 2ffb03a969d5fd730d6ef28a48fa9685d2b6eb32 by Marcus Brinkmann on 27/04/2003 at 17:35..
doc/
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Deleting Keys): Document
	GPGME_Ambiguous_Specification.
	(Error Values): Remove GPGME_Invalid_Type and GPGME_Invalid_Mode.
	Add GPGME_Unknown_Reason, GPGME_Not_Found,
	GPGME_Ambiguous_Specification, GPGME_Wrong_Key_Usage,
	GPGME_Key_Revoked, GPGME_Key_Expired, GPGME_No_CRL_Known,
	GPGME_CRL_Too_Old, GPGME_Policy_Mismatch, GPGME_No_Secret_Key,
	GPGME_Key_Not_Trusted, GPGME_Issuer_Missing, GPGME_Chain_Too_Long,
	GPGME_Unsupported_Algorithm, GPGME_Sig_Expired,
	GPGME_Bad_Signature, GPGME_No_Public_Key.

gpgme/
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* delete.c: Include <errno.h> and "gpgme.h", but not "util.h" or
	"key.h".
	(enum delete_problem): Move into function delete_status_handler.
	(delete_status_handler): Change first argument to void *.  Parse
	delete problem with strtol instead atoi.  Return better error
	values.
	(_gpgme_op_delete_start): Rename to ...
	(delete_start): ... this.  Rework error handling.
	(gpgme_op_delete_start): Use delete_start instead
	_gpgme_op_delete_start.
	(gpgme_op_delete): Likewise.
	* gpgme.h (GpgmeDataType): Removed.
https://invent.kde.org/neon/forks/gpgme/-/commit/2ffb03a969d5fd730d6ef28a48fa9685d2b6eb32

Git commit 88f6eaea9e90ef847d499ff6f55a8ebfd70ec20d by Marcus Brinkmann on 27/04/2003 at 18:25..
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-import.c (check_result): Really use FPR.
	* gpgsm/t-import.c (check_result): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/88f6eaea9e90ef847d499ff6f55a8ebfd70ec20d

Git commit e254482818a2e8f2b0a2df4310999883674e8be0 by Marcus Brinkmann on 27/04/2003 at 18:31..
Add some items to do.
https://invent.kde.org/neon/forks/gpgme/-/commit/e254482818a2e8f2b0a2df4310999883674e8be0

Git commit 2971894b27ff61dabfbd26706e3b7d4fc5c76f50 by Marcus Brinkmann on 27/04/2003 at 20:53..
doc/
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Creating a Signature): Add info about
	GpgmeNewSignature, GpgmeSignResult and gpgme_op_sign_result.
	(Crypto Operations): Add GpgmeInvalidUserID.
	(Algorithms): New chapter.

gpgme/
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GpgmePubKeyAlgo, GpgmeHashAlgo, GpgmeInvalidUserID,
	GpgmeNewSignature, GpgmeSignResult): New data types.
	(gpgme_op_sign_result, gpgme_pubkey_algo_name,
	gpgme_hash_algo_name): New prototypes.
	* gpgme.c (gpgme_pubkey_algo_name): New function.
	(gpgme_hash_algo_name): Likewise.
	* ops.h (_gpgme_parse_inv_userid, _gpgme_op_sign_init_result): New
	prototype.
	(_gpgme_op_sign_status_handler): Fix prototype.
	* op-support.c: Include <errno.h> and <string.h>.
	(_gpgme_parse_inv_userid): New function.
	* sign.c: Include <errno.h> and "gpgme.h", but not <stdio.h>,
	<assert.h> and "util.h".
	(SKIP_TOKEN_OR_RETURN): Remove macro.
	(struct sign_result): Change to op_data_t type and rework it.
	(release_sign_result): Rename to ...
	(release_op_data): ... this and rewrite it.
	(append_xml_info): Remove function.
	(gpgme_op_sign_result): New function.
	(parse_sig_created): New function.
	(_gpgme_sign_status_handler): Change first argument to void *.
	Rewrite the function to use the new result structure and functions.
	(_gpgme_op_sign_init_result): New function.
	(_gpgme_op_sign_start): Rename to ...
	(sign_start): ... this.  Call _gpgme_op_sign_init_result.
	(gpgme_op_sign_start): Use sign_start instead _gpgme_op_sign_start.
	(gpgme_op_sign): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/2971894b27ff61dabfbd26706e3b7d4fc5c76f50

Git commit 588c16d324e83e64ccdc8761e3fb3b91648528fc by Marcus Brinkmann on 27/04/2003 at 22:24..
doc/
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Encrypting a Plaintext): Add info about
	GpgmeEncryptResult and gpgme_op_encrypt_result.

gpgme/
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GpgmeEncryptResult): New data type.
	(gpgme_op_encrypt_result): New prototype.
	* ops.h (_gpgme_op_encrypt_init_result): New prototype.
	(_gpgme_op_encrypt_status_handler): Fix prototype.
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Call
	_gpgme_op_encrypt_init_result.
	* encrypt.c: Do not include <stdio.h>, <assert.h>, "util.h" and
	"wait.h".  Include <errno.h> and "gpgme.h".
	(SKIP_TOKEN_OR_RETURN): Remove macro.
	(struct encrypt_result): Rename to ...
	(op_data_t): ... new data type.  Rewrite for user result data.
	(append_xml_encinfo): Remove function.
	(release_op_data): New function.
	(gpgme_op_encrypt_result): New function.
	(_gpgme_op_encrypt_status_handler): Change first argument to void *.
	Rewrite result parsing.
	(_gpgme_op_encrypt_sym_status_handler): Change first argument to
	void *.
	(_gpgme_op_encrypt_init_result): New function.
	(_gpgme_op_encrypt_start): Rename to ...
	(encrypt_start): ... this.
	(gpgme_op_encrypt_start): Use encrypt_start, not
	gpgme_op_encrypt_start.
	(gpgme_op_encrypt): Likewise.

tests/
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-sign.c: Rewritten.
	* gpgsm/t-sign.c: Rewritten.
	* gpg/t-encrypt.c: Check for invalid recipients.
	* gpgsm/t-encrypt.c: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/588c16d324e83e64ccdc8761e3fb3b91648528fc

Git commit e30568b2404b73442840c853d0b6f5d6fae9b810 by Marcus Brinkmann on 27/04/2003 at 22:52..
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-encrypt-sign.c (check_result): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/e30568b2404b73442840c853d0b6f5d6fae9b810

Git commit e1e10b0c95855d718d570635758bd211b528684c by Marcus Brinkmann on 27/04/2003 at 22:52..
Add item about passphrase handler.
https://invent.kde.org/neon/forks/gpgme/-/commit/e1e10b0c95855d718d570635758bd211b528684c

Git commit 32096efd58e66bc5a0546a0d3da845eab86ab232 by Marcus Brinkmann on 27/04/2003 at 23:05..
2003-04-27  Marcus Brinkmann  <marcus at g10code.de>

	* encrypt-sign.c: Do not include <stddef.h>, <stdio.h>,
	<stdlib.h>, <string.h>, <assert.h> and "util.h", but "gpgme.h".
	(_gpgme_op_encrypt_sign_start): Rename to ...
	(encrypt_sign_start): ... this.
	(gpgme_op_encrypt_sign_start): Use encrypt_sign_start, not
	_gpgme_op_encrypt_sign_start.
	(gpgme_op_encrypt_sign): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/32096efd58e66bc5a0546a0d3da845eab86ab232

Git commit 66e29b068e0d64ac06ed2e888df5a19ab5417139 by Marcus Brinkmann on 28/04/2003 at 20:23..
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-signers.c (print_data): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/66e29b068e0d64ac06ed2e888df5a19ab5417139

Git commit 174e293252a29ae7c44198cf6fc2ee8dd67ec721 by Marcus Brinkmann on 28/04/2003 at 21:17..
doc/
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Decrypt): Descript gpgme_op_decrypt_result and
	GpgmeDecryptResult.

gpgme
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_op_decrypt_result): New structure.
	(GpgmeDecryptResult): New type.
	(gpgme_op_decrypt_result): New prototype.
	* ops.h (_gpgme_op_decrypt_init_result): New prototype.
	(_gpgme_decrypt_status_handler): Fix prototype.
	(_gpgme_decrypt_start): Remove prototype.
	* decrypt-verify.c: Do not include <stdio.h>, <stdlib.h>,
	<string.h> and <assert.h>, "util.h" and "context.h", but
	"gpgme.h".
	(decrypt_verify_status_handler): Change first argument to void *,
	and rework error handling.
	(_gpgme_op_decrypt_verify_start): New function.
	(gpgme_op_decrypt_verify_start): Rewrite using
	_gpgme_op_decrypt_verify_start.
	(gpgme_op_decrypt_verify): Likewise.
	* decrypt.c: Include <string.h>, "gpgme.h" and "util.h".
	(struct decrypt_result): Change to typedef op_data_t, rewritten.
	(is_token): Remove function.
	(release_op_data): New function.
	(skip_token): Remove function.
	(gpgme_op_decrypt_result): New function.
	(_gpgme_decrypt_status_handler): Change first argument to void *.
	Rework error handling.
	(_gpgme_decrypt_start): Rename to ...
	(decrypt_start): ... this.  Call _gpgme_op_decrypt_init_result.
	(_gpgme_op_decrypt_init_result): New function.
	(gpgme_op_decrypt_start): Use decrypt_start.
	(gpgme_op_decrypt): Likewise.

tests/
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-decrypt.c: Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/174e293252a29ae7c44198cf6fc2ee8dd67ec721

Git commit 16c4687a9c9c104ef8bc6e1e5bd7cb449dd1f4b7 by Marcus Brinkmann on 28/04/2003 at 21:28..
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-decrypt.c (main): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/16c4687a9c9c104ef8bc6e1e5bd7cb449dd1f4b7

Git commit 30cdf132842cec187e428af413dbc2c8fafa341b by Marcus Brinkmann on 28/04/2003 at 23:59..
doc/
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Rewritten to take into account new and
	deprecated functions and data types.

gpgme/
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_sig_notation): New structure.
	(GpgmeSigNotation): New type.
	(struct _gpgme_signature): New structure.
	(GpgmeSignature): New type.
	(struct _gpgme_op_verify_result): New structure.
	(GpgmeVerifyResult): New type.
	(gpgme_op_verify_result): New prototype.
	(gpgme_get_notation): Remove prototype.
	* ops.h (_gpgme_op_verify_init_result): New prototype.
	(_gpgme_verify_status_handler): Change first argument to void *.
	* util.h (_gpgme_decode_percent_string, _gpgme_map_gnupg_error):
	New prototypes.
	* conversion.c (_gpgme_decode_percent_string): New function.
	(gnupg_errors): New static global.
	(_gpgme_map_gnupg_error): New function.
	* gpgme.c (gpgme_release): Don't release CTX->notation.
	(gpgme_get_notation): Remove function.
	* decrypt-verify.c (_gpgme_op_decrypt_verify_start): Call
	_gpgme_op_verify_init_result.
	* verify.c: Do not include <stdio.h>, <assert.h> and "key.h", but
	do include "gpgme.h".
	(struct verify_result): Replace with ...
	(op_data_t): ... this type.
	(release_verify_result): Remove function.
	(release_op_data): New function.
	(is_token): Remove function.
	(skip_token): Remove function.
	(copy_token): Remove function.
	(gpgme_op_verify_result): New function.
	(calc_sig_summary): Rewritten.
	(finish_sig): Remove function.
	(parse_new_sig): New function.
	(parse_valid_sig): New function.
	(parse_notation): New function.
	(parse_trust): New function.
	(parse_error): New function.
	(_gpgme_verify_status_handler): Rewritten.  Change first argument
	to void *.
	(_gpgme_op_verify_start): Rework error handling.  Call
	_gpgme_op_verify_init_result.
	(gpgme_op_verify): Do not release or clear CTX->notation.
	(gpgme_get_sig_status): Rewritten.
	(gpgme_get_sig_string_attr): Likewise.
	(gpgme_get_sig_ulong_attr): Likewise.
	(gpgme_get_sig_key): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/30cdf132842cec187e428af413dbc2c8fafa341b

Git commit 1ab9b4616a874485d1b6e61dee85173066e9696a by Marcus Brinkmann on 29/04/2003 at 00:54..
2003-04-28  Marcus Brinkmann  <marcus at g10code.de>

	* context.h: Remove OPDATA_VERIFY_COLLECTING.
	(struct gpgme_context_s): Remove member notation.
	* gpgme.h: Make enum for GPGME_KEYLIST_MODE_* values.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ab9b4616a874485d1b6e61dee85173066e9696a

Git commit 85425c74ad28b801687babd964cf3e9847d0f497 by Marcus Brinkmann on 29/04/2003 at 20:50..
2003-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (calc_sig_summary): Do not set GPGME_SIGSUM_SYS_ERROR
	for bad signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/85425c74ad28b801687babd964cf3e9847d0f497

Git commit 26ec59fdbd2535ff20eaeedab559b8648505c8ca by Marcus Brinkmann on 29/04/2003 at 20:51..
2003-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-verify.c (main): Rewritten.
	* gpg/t-decrypt-verify.c: Rewritten.
	* gpgsm/t-verify.c (main): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/26ec59fdbd2535ff20eaeedab559b8648505c8ca

Git commit c476829aba506ff85d49916810b8a644df928f77 by Marcus Brinkmann on 29/04/2003 at 21:53..
doc/
2003-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Trust Item Management): Add data members of
	GpgmeTrustItem type.
	(Information About Trust Items): Add note about obsoleteness.
	(Manipulating Trust Items): Add gpgme_trust_item_ref and
	gpgme_trust_item_unref.

gpgme/
2003-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_trust_item): New structure.
	(GpgmeTrustItem): New type.
	(gpgme_trust_item_ref, gpgme_trust_item_unref): New prototypes.
	* context.h (struct trust_queue_item_s): Remove structure.
	(struct gpgme_context_s): Remove trust_queue member.
	* Makefile.am (libgpgme_la_SOURCES): Add trust-item.c.
	* trust-item.c: New file.
	* trustlist.c: Do not include <stdio.h> or <time.h>, but
	"gpgme.h".
	(struct trust_queue_item_s): Change to new type op_data_t.
	(trust_status_handler): Change first argument to void *.
	(trust_colon_handler): Likewise.
	(_gpgme_op_trustlist_event_cb): Use op_data_t type.
	(gpgme_op_trustlist_start): Use op_data_t and rework error
	handling.
	(gpgme_op_trustlist_next): Use op_data_t.
	(gpgme_trust_item_release): Remove function.
	(gpgme_trust_item_get_string_attr): Likewise.
	(gpgme_trust_item_get_int_attr): Likewise.

tests/
2003-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-trustlist.c: Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/c476829aba506ff85d49916810b8a644df928f77

Git commit 5533982d792971c3aa6255756f1eb20c4ea32db1 by Marcus Brinkmann on 29/04/2003 at 21:58..
Add items.
https://invent.kde.org/neon/forks/gpgme/-/commit/5533982d792971c3aa6255756f1eb20c4ea32db1

Git commit 984d611a438768f07b27a5af8202d9f7739be1ab by Marcus Brinkmann on 29/04/2003 at 22:24..
doc/
2003-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Listing Keys): Remove force_update argument from
	gpgme_get_key.

gpgme/
2003-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_get_key): Remove force_update argument.
	* key-cache.c: File removed.
	* Makefile.am (libgpgme_la_SOURCES): Remove key-cache.c.
	* ops.h (_gpgme_key_cache_add, _gpgme_key_cache_get): Remove
	prototypes.
	* keylist.c (_gpgme_op_keylist_event_cb): Don't call
	_gpgme_key_cache_add.
	(gpgme_get_key): New function.
	* verify.c (gpgme_get_sig_key): Remove last argument to
	gpgme_get_key invocation.
https://invent.kde.org/neon/forks/gpgme/-/commit/984d611a438768f07b27a5af8202d9f7739be1ab

Git commit 18fb96bdcd4ac8f5add1516ff9e7d5171c6df535 by Marcus Brinkmann on 29/04/2003 at 22:34..
Really add the file.
https://invent.kde.org/neon/forks/gpgme/-/commit/18fb96bdcd4ac8f5add1516ff9e7d5171c6df535

Git commit ba333bf07e73d2fc051d595fcc77545fb6adc543 by Marcus Brinkmann on 30/04/2003 at 03:02..
doc/
2003-04-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Listing Mode): Add GPGME_KEYLIST_MODE_SIGS.
	(Manipulating Keys): Add obsoleteness note.
	(Key Signatures): Likewise.
	(Information About Keys): Likewise.
	(Key Management): Add new data types GpgmeSubkey, GpgmeKeySig,
	GpgmeUserID, and all the information about GpgmeKey.

gpgme/
2003-04-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_key): New structure.
	(GpgmeKey): Define using _gpgme_key.
	(struct _gpgme_subkey): New structure.
	(GpgmeSubKey): New type.
	(struct _gpgme_key_sig): New structure.
	(GpgmeKeySig): New type.
	(struct _gpgme_user_id): New structure.
	(GpgmeUserID): New type.
	(struct _gpgme_op_keylist_result): New structure.
	(GpgmeKeyListResult): New type.
	(gpgme_op_keylist_result): New function.
	(gpgme_key_get_as_xml): Remove prototype.
	* context.h (struct gpgme_context_s): Remove members tmp_key,
	tmp_uid, key_cond and key_queue.
	(struct key_queue_item_s): Remove structure.
	(struct user_id_s): Remove structure.
	(struct gpgme_recipients_s): Replace with simple
	GpgmeUserID list.
	* gpgme.c (gpgme_release): Do not release CTX->tmp_key.
	* ops.h (_gpgme_key_add_subkey, _gpgme_key_append_name,
	_gpgme_key_add_sig, _gpgme_trust_item_new): New prototypes.
	* rungpg.c (command_cb): Return GpgmeError instead int.
	New variable ERR.  Use it to hold return value of cmd handler.
	(gpg_delete): Access fingerprint of key directly.
	(append_args_from_signers): Likewise.
	(gpg_edit): Likewise.
	(append_args_from_recipients): Use GpgmeUserID for recipient list.
	* engine-gpgsm.c: Do not include "key.h".
	(gpgsm_delete): Access fingerprint of key directly.
	(gpgsm_sign): Likewise.
	(set_recipients): Use GpgmeUserID for recipients.  Invert invalid
	user ID flag.
	* key.h: File removed.
	* key.c: Completely reworked to use exposed GpgmeKey data types.
	* keylist.c: Likewise.
	* recipient.c: Completely reworked to use GpgmeUserID.

tests/
2003-04-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-keylist.c: Rewritten.
	* gpgsm/t-keylist.c (main): Rewritten.
	* gpg/t-edit.c (main): Do not use gpgme_key_get_as_xml.  Use
	gpgme_key_unref instead gpgme_key_release.
	* gpg/t-signers.c (main): Use gpgme_key_unref instead
	gpgme_key_release.
https://invent.kde.org/neon/forks/gpgme/-/commit/ba333bf07e73d2fc051d595fcc77545fb6adc543

Git commit 473288524e280827a4950b0574144f0b3bf64dd1 by Marcus Brinkmann on 30/04/2003 at 03:04..
Really remove file.
https://invent.kde.org/neon/forks/gpgme/-/commit/473288524e280827a4950b0574144f0b3bf64dd1

Git commit 102e973a9bc2746899bf604ea70e69f9862a6c6b by Marcus Brinkmann on 30/04/2003 at 03:34..
doc/
2003-04-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Encrypting a Plaintext): Remove reference to
	gpgme_get_op_info.
	(Detailed Results): Subsection removed.

gpgme/
2003-04-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_get_op_info): Remove prototype.
	* ops.h (_gpgme_set_op_info,
	_gpgme_data_release_and_return_string, _gpgme_data_get_as_string,
	_gpgme_data_append, _gpgme_data_append_string,
	_gpgme_data_append_string_for_xml, _gpgme_data_append_for_xml,
	_gpgme_data_append_percentstring_for_xml): Likewise.
	(_gpgme_progress_status_handler): Change first arg to void *.
	* progress.c (_gpgme_progress_status_handler): Likewise.
	* conversion.c: Do not include <string.h>, <errno.h>, <ctype.h>,
	and <sys/types.h>, but <string.h>.
	(_gpgme_data_append): Remove function.
	(_gpgme_data_append_string): Likewise.
	(_gpgme_data_append_for_xml): Likewise.
	(_gpgme_data_append_string_for_xml): Likewise.
	(_gpgme_data_append_percentstring_for_xml): Likewise.
	* data-mem.c (_gpgme_data_get_as_string): Likewise.
	(_gpgme_data_release_and_return_string): Likewise.
	* gpgme.c (gpgme_get_op_info): Likewise.
	(_gpgme_set_op_info): Likewise.

tests/
2003-04-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-eventloop.c (main): Do not call print_op_info.
	(print_op_info): Function removed.
https://invent.kde.org/neon/forks/gpgme/-/commit/102e973a9bc2746899bf604ea70e69f9862a6c6b

Git commit e95998f0a0d5be12201b06119fd0ee47789e3763 by Marcus Brinkmann on 04/05/2003 at 14:55..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GpgmeError): Add deprecated values for
	GPGME_Invalid_Type and GPGME_Invalid_Mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/e95998f0a0d5be12201b06119fd0ee47789e3763

Git commit 05821e49daf1639eedac0f4500f629a1eb9b0d64 by Marcus Brinkmann on 04/05/2003 at 14:57..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Importing Keys): Fix cut and paste error.
https://invent.kde.org/neon/forks/gpgme/-/commit/05821e49daf1639eedac0f4500f629a1eb9b0d64

Git commit 05c36875819aa87a646dcb4793dcd49b550aa6e6 by Marcus Brinkmann on 04/05/2003 at 14:58..
Fix typo.
https://invent.kde.org/neon/forks/gpgme/-/commit/05c36875819aa87a646dcb4793dcd49b550aa6e6

Git commit c5097caeae8c78f030d976d4474e21ad0b66c34b by Marcus Brinkmann on 04/05/2003 at 16:43..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (TESTS): Add t-keylist-sig.
	* gpg/t-keylist-sig.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/c5097caeae8c78f030d976d4474e21ad0b66c34b

Git commit 97581ba4808e3dc5a7e34be2d30fdac602eaefb9 by Marcus Brinkmann on 04/05/2003 at 16:45..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (_gpgme_key_add_sig): Initialize SIG->uid.
https://invent.kde.org/neon/forks/gpgme/-/commit/97581ba4808e3dc5a7e34be2d30fdac602eaefb9

Git commit 864371b340b66cd25b2a8c24121e708b548b7fa7 by Marcus Brinkmann on 04/05/2003 at 17:00..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c: Add check for timestamp.
https://invent.kde.org/neon/forks/gpgme/-/commit/864371b340b66cd25b2a8c24121e708b548b7fa7

Git commit 7bc04bffe9f168db5aaef4b8eee17c19cc4b40a9 by Marcus Brinkmann on 04/05/2003 at 18:05..
Update items.
https://invent.kde.org/neon/forks/gpgme/-/commit/7bc04bffe9f168db5aaef4b8eee17c19cc4b40a9

Git commit 75f91eed402741d931c47b4e955d58cd0bef1c1c by Marcus Brinkmann on 04/05/2003 at 20:49..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Listing Keys): Document what happens if key is not
	found.
https://invent.kde.org/neon/forks/gpgme/-/commit/75f91eed402741d931c47b4e955d58cd0bef1c1c

Git commit f5d8c7d3df69a108cf37908e7541fc17c96836f7 by Marcus Brinkmann on 04/05/2003 at 20:54..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (struct gpgme_context_s): Remove member op_info.
https://invent.kde.org/neon/forks/gpgme/-/commit/f5d8c7d3df69a108cf37908e7541fc17c96836f7

Git commit 13634fff8a4e5f3bb7256061ce600610e9be2131 by Marcus Brinkmann on 04/05/2003 at 22:06..
2003-05-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-keylist-sig.c (main): Remove timestamp check.
https://invent.kde.org/neon/forks/gpgme/-/commit/13634fff8a4e5f3bb7256061ce600610e9be2131

Git commit 3cbd595c13ebe15207e8491101265ca9de8f2d5e by Marcus Brinkmann on 04/05/2003 at 22:28..
2003-05-05  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (_gpgme_key_append_name): Use decoded string to parse user id.
	(_gpgme_key_add_sig): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/3cbd595c13ebe15207e8491101265ca9de8f2d5e

Git commit 5d43a181499ecf290b93b1dac223eff5c48bb4f6 by Marcus Brinkmann on 04/05/2003 at 23:53..
Add items.
https://invent.kde.org/neon/forks/gpgme/-/commit/5d43a181499ecf290b93b1dac223eff5c48bb4f6

Git commit db7c97cbafd7f5c3c0675098c92103841e67fad3 by Marcus Brinkmann on 04/05/2003 at 23:53..
Add item.
https://invent.kde.org/neon/forks/gpgme/-/commit/db7c97cbafd7f5c3c0675098c92103841e67fad3

Git commit cd8f1c53cc2b6c9bfe15a104adf7b55106d9b828 by Marcus Brinkmann on 18/05/2003 at 13:59..
2003-05-18  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (_gpgme_verify_status_handler): Return GPGME_No_Data
	for NODATA status without signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/cd8f1c53cc2b6c9bfe15a104adf7b55106d9b828

Git commit ce1878d7e945d20b649a6c19929f90e7b9f9a707 by Marcus Brinkmann on 18/05/2003 at 14:39..
2003-05-18  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (finish_key): Clear OPD->tmp_uid.
https://invent.kde.org/neon/forks/gpgme/-/commit/ce1878d7e945d20b649a6c19929f90e7b9f9a707

Git commit 0a882398e1ce8a1f616118476983466b53b14ba6 by Marcus Brinkmann on 18/05/2003 at 20:45..
2003-05-18  Marcus Brinkmann  <marcus at g10code.de>

	In all files, replace the Gpgme* type names with the new gpgme_*
	type names.

doc/
2003-05-18  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Header): Remove Gpgme as namespace prefix.  Add
	_GPGME to namespace prefix.
	* gpgme.texi (Multi Threading): Add note about link order.

gpgme/
2003-05-18  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: The following types are renamed.  The old name is kept
	as a deprecated typedef.
	(GpgmeCtx): Rename to gpgme_ctx_t.
	(GpgmeData): Rename to gpgme_data_t.
	(GpgmeRecipients): Rename to gpgme_recipients_t.
	(GpgmeError): Rename to gpgme_error_t.
	(GpgmeDataEncoding): Rename to gpgme_data_encoding_t.
	(GpgmePubKeyAlgo): Rename to gpgme_pubkey_algo_t.
	(GpgmeHashAlgo): Rename to gpgme_hash_algo_t.
	(GpgmeSigStat): Rename to gpgme_sig_stat_t.
	(GpgmeSigMode): Rename to gpgme_sig_mode_t.
	(GpgmeAttr): Rename to gpgme_attr_t.
	(GpgmeValidity): Rename to gpgme_validity_t.
	(GpgmeProtocol): Rename to gpgme_protocol_t.
	(GpgmeStatusCode): Rename to gpgme_status_code_t.
	(GpgmeEngineInfo): Rename to gpgme_engine_info_t.
	(GpgmeSubkey): Rename to gpgme_subkey_t.
	(GpgmeKeySig): Rename to gpgme_keysig_t.
	(GpgmeUserID): Rename to gpgme_user_id_t.
	(GpgmePassphraseCb): Rename to gpgme_passphrase_cb_t.
	(GpgmeProgressCb): Rename to gpgme_progress_cb_t.
	(GpgmeEditCb): Rename to gpgme_edit_cb_t.
	(GpgmeIOCb): Rename to gpgme_io_cb_t.
	(GpgmeRegisterIOCb): Rename to gpgme_register_io_cb_t.
	(GpgmeRemoveIOCb): Rename to gpgme_remove_io_cb_t.
	(GpgmeEventIO): Rename to gpgme_event_io_t.
	(GpgmeEventIOCb): Rename to gpgme_event_io_cb_t.
	(GpgmeIOCbs): Rename to gpgme_io_cbs.
	(gpgme_io_cbs_t): New type.
	(GpgmeDataReadCb): Rename to gpgme_data_read_cb_t.
	(GpgmeDataWriteCb): Rename to gpgme_data_write_cb_t.
	(GpgmeDataSeekCb): Rename to gpgme_data_seek_cb_t.
	(GpgmeDataReleaseCb): Rename to gpgme_data_release_cb_t.
	(GpgmeDataCbs): Rename to gpgme_data_cbs.
	(gpgme_data_cbs_t): New type.
	(GpgmeInvalidUserID): Rename to gpgme_invalid_user_id_t.
	(GpgmeEncryptResult): Rename to gpgme_encrypt_result_t.
	(GpgmeDecryptResult): Rename to gpgme_decrypt_result_t.
	(GpgmeNewSignature): Rename to gpgme_new_signature_t.
	(GpgmeSignResult): Rename to gpgme_sign_result_t.
	(GpgmeSigNotation): Rename to gpgme_sig_notation_t.
	(GpgmeSignature): Rename to gpgme_signature_t.
	(GpgmeVerifyResult): Rename to gpgme_verify_result_t.
	(GpgmeImportStatus): Rename to gpgme_import_status_t.
	(GpgmeImportResult): Rename to gpgme_import_result_t.
	(GpgmeGenKeyResult): Rename to gpgme_genkey_result_t.
	(GpgmeKeyListResult): Rename to gpgme_keylist_result_t.
	(GpgmeTrustItem): Rename to gpgme_trust_item_t.
	* gpgme.h (gpgme_deprecated_error_t): New type, swallowing macros
	GPGME_No_Recipients, GPGME_Invalid_Recipient and
	GPGME_No_Passphrase.
	* data.h (struct gpgme_data_s): Rename to struct gpgme_data.
	* context.h (struct gpgme_context_s): Rename to struct
	gpgme_context.
	(struct gpgme_recipients_s): Rename to gpgme_recipients.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a882398e1ce8a1f616118476983466b53b14ba6

Git commit d953c7815c52970f6c16c8a3aceceb3724d0fb68 by Marcus Brinkmann on 18/05/2003 at 21:08..
Beautify source code.
https://invent.kde.org/neon/forks/gpgme/-/commit/d953c7815c52970f6c16c8a3aceceb3724d0fb68

Git commit c341e295906ba43ca94b2251d4cce11ec377f088 by Marcus Brinkmann on 18/05/2003 at 22:54..
2003-05-19  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (parse_new_sig): Fix ERRSIG case.
	Submitted by Benjamin Lee <benjaminlee at users.sf.net>.
https://invent.kde.org/neon/forks/gpgme/-/commit/c341e295906ba43ca94b2251d4cce11ec377f088

Git commit 673cbb3e81e63cac51e6d3cbcd7e84bd435843b0 by Marcus Brinkmann on 26/05/2003 at 19:13..
2003-05-26  Marcus Brinkmann  <marcus at g10code.de>

	* recipient.c (gpgme_recipients_add_name_with_validity): Add one
	to buffer to allocate.
https://invent.kde.org/neon/forks/gpgme/-/commit/673cbb3e81e63cac51e6d3cbcd7e84bd435843b0

Git commit bc73ec0d579d85229992a8835d811b85c4fc67ec by Marcus Brinkmann on 26/05/2003 at 19:43..
2003-05-26  Marcus Brinkmann  <marcus at g10code.de>

	* conversion.c (_gpgme_decode_c_string): Add missing break
	statement.
https://invent.kde.org/neon/forks/gpgme/-/commit/bc73ec0d579d85229992a8835d811b85c4fc67ec

Git commit dcc65b17260abc0560b82ee19c178cb38902d2f6 by Marcus Brinkmann on 26/05/2003 at 21:50..
2003-05-26  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (NEED_GPG_VERSION): Bump up to 1.2.2.

gpgme/
2003-05-26  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_new): Add --enable-progress-filter to gpg
	invocation.
	* decrypt-verify.c (_gpgme_op_decrypt_verify_start): Rename to
	decrypt_verify_start.
	(gpgme_op_decrypt_verify_start): Call decrypt_verify_start.
	(gpgme_op_decrypt_verify): Likewise.
	* verify.c (verify_status_handler): New function that also calls
	progress status handler.
	(_gpgme_op_verify_start): Set status handler to verify_status_handler.
	Rename to (verify_start).
	(gpgme_op_verify_start): Call verify_start.
	(gpgme_op_verify): Likewise.
	* encrypt.c (encrypt_status_handler): New function.
	(_gpgme_encrypt_sym_status_handler): Call progress status handler.
	Make static.  Rename to encrypt_sym_status_handler.
	(encrypt_start): Set status handler to encrypt_sym_status_handler
	or encrypt_status_handler.
	* sign.c (sign_status_handler): New function.
	(sign_start): Set status handler to sign_status_handler.
	* decrypt.c (decrypt_status_handler): New function that also calls
	progress status handler.
	(decrypt_start): Set status handler to decrypt_status_handler.
	* encrypt-sign.c (encrypt_sign_status_handler): Likewise.
	* decrypt-verify.c (decrypt_verify_status_handler): Call
	_gpgme_progress_status_handler.
https://invent.kde.org/neon/forks/gpgme/-/commit/dcc65b17260abc0560b82ee19c178cb38902d2f6

Git commit eb4834a024ebb210c161e87c7f37b5d80b51ee57 by Marcus Brinkmann on 26/05/2003 at 21:59..
Bump gpg version requirement.
https://invent.kde.org/neon/forks/gpgme/-/commit/eb4834a024ebb210c161e87c7f37b5d80b51ee57

Git commit 0f2763bbe3d374379206259ccfc2c6699bbdc796 by Marcus Brinkmann on 26/05/2003 at 22:01..
Update Miguel's email address.
https://invent.kde.org/neon/forks/gpgme/-/commit/0f2763bbe3d374379206259ccfc2c6699bbdc796

Git commit 03bcb7f4c14e771392ccf04d1d5cd38c5baf47b2 by Marcus Brinkmann on 27/05/2003 at 01:31..
doc/
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Passphrase Callback): Document new prototype.

gpgme/
2003-05-26  Marcus Brinkmann  <marcus at g10code.de>

	* engine.h (EngineCommandHandler): Change last argument to int fd.
	* gpgme.h (gpgme_passphrase_cb_t): Rewritten to take parts of the
	description and fd.
	(gpgme_edit_cb_t): Change last argument to int fd.
	* ops.h (_gpgme_passphrase_command_handler_internal): New prototype.
	* passphrase.c: Include <assert.h>.
	(op_data_t): Rename userid_hint to uid_hint, remove last_pw_handle.
	(release_op_data): Check values before calling free.
	(_gpgme_passphrase_status_handler): Likewise.
	(_gpgme_passphrase_command_handler_internal): New function.
	(_gpgme_passphrase_command_handler): Rewritten.
	* edit.c (edit_status_handler): Pass -1 as fd argument.
	(command_handler): Update prototype.  New variable processed.  Use
	it to store return value of
	_gpgme_passphrase_command_handler_internal which is now used
	instead _gpgme_passphrase_command_handler.  Use it also to check
	if we should call the user's edit function.  Pass fd to user's
	edit function.
	* rungpg.c (struct gpg_object_s): Change type of cmd.cb_data to
	void *.
	(gpg_release): Check value before calling free.  Do not release
	cmd.cb_data.
	(command_cb): Function removed.
	(command_handler): New function.  Thus we don't use a data object
	for command handler stuff anymore, but handle it directly.  This
	allows proper error reporting (cancel of passphrase requests, for
	example).  Also all callbacks work via direct writes to the file
	descriptor (so that passphrases are not kept in insecure memory).
	(gpg_set_command_handler): Rewritten to use even more ugly hacks.
	(read_status): Check cmd.keyword before calling free.  Install
	command_handler as the I/O callback handler with GPG as private
	data.

tests/
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* (t-decrypt-verify.c, t-decrypt.c, t-edit.c, t-encrypt-sign.c,
	t-encrypt-sym.c, t-sign.c, t-signers.c): Include <unistd.h>.
	(passphrase_cb): Rewritten.
	* t-edit.c (edit_fnc): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/03bcb7f4c14e771392ccf04d1d5cd38c5baf47b2

Git commit c440b6792e5ded2c29c68da1754f5469c10c478d by Marcus Brinkmann on 27/05/2003 at 01:39..
Reintroduce a check in edit_fnc.
https://invent.kde.org/neon/forks/gpgme/-/commit/c440b6792e5ded2c29c68da1754f5469c10c478d

Git commit ab23f5e720d6e55a7d5a35ce4f0bc94f0d6461ab by Marcus Brinkmann on 27/05/2003 at 01:52..
Remove file that is better provided by automake.
https://invent.kde.org/neon/forks/gpgme/-/commit/ab23f5e720d6e55a7d5a35ce4f0bc94f0d6461ab

Git commit bcd42df60e7e759d40ef2f4b4093edd44ca100bf by Marcus Brinkmann on 27/05/2003 at 02:16..
Add more info.
https://invent.kde.org/neon/forks/gpgme/-/commit/bcd42df60e7e759d40ef2f4b4093edd44ca100bf

Git commit d0c0963b90e3d13978ca3026bc57e44b337c7cb5 by Marcus Brinkmann on 27/05/2003 at 02:26..
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* passphrase.c (_gpgme_passphrase_command_handler_internal): Fix
	access to pointer type.
https://invent.kde.org/neon/forks/gpgme/-/commit/d0c0963b90e3d13978ca3026bc57e44b337c7cb5

Git commit 3d476c73de58b8a51b13a319a3a5564ce6880f78 by Marcus Brinkmann on 27/05/2003 at 02:54..
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* encrypt.c (gpgme_op_encrypt_result): Use intermediate variable
	HOOK to avoid compiler warning.  Don't ask, you don't want to know.
	(_gpgme_encrypt_status_handler): Likewise.
	(_gpgme_op_encrypt_init_result): Likewise.
	* decrypt.c (gpgme_op_decrypt_result): Likewise.
	(_gpgme_decrypt_status_handler): Likewise.
	(_gpgme_op_decrypt_init_result): Likewise.
	* verify.c (gpgme_op_verify_result): Likewise.
	(_gpgme_verify_status_handler): Likewise.
	(_gpgme_op_verify_init_result): Likewise.
	* edit.c (edit_status_handler): Likewise.
	(command_handler): Likewise.
	(edit_start): Likewise.
	* genkey.c (gpgme_op_genkey_result): Likewise.
	(genkey_status_handler): Likewise.
	(genkey_start): Likewise.
	* import.c (gpgme_op_import_result): Likewise.
	(import_status_handler): Likewise.
	(_gpgme_op_import_start): Likewise.
	* trustlist.c (gpgme_op_trustlist_next): Likewise.
	(_gpgme_op_trustlist_event_cb): Likewise.
	(gpgme_op_trustlist_start): Likewise.
	* keylist.c (gpgme_op_keylist_result): Likewise.
	(keylist_colon_handler): Likewise.
	(keylist_status_handler): Likewise.
	(_gpgme_op_keylist_event_cb): Likewise.
	(gpgme_op_keylist_start): Likewise.
	(gpgme_op_keylist_ext_start): Likewise.
	(gpgme_op_keylist_next): Likewise.
	* passphrase.c (_gpgme_passphrase_status_handler): Likewise.
	(_gpgme_passphrase_command_handler_internal): Likewise.
	* sign.c (gpgme_op_sign_result): Likewise.
	(_gpgme_sign_status_handler): Likewise.
	(_gpgme_op_sign_init_result): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/3d476c73de58b8a51b13a319a3a5564ce6880f78

Git commit 0a1940070d2743066bdab859c7ba740a5db74af2 by Marcus Brinkmann on 27/05/2003 at 03:06..
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* t-data.c: Remove TEST_OUT_CB.
	(main): Likewise.
	* gpg/t-trustlist.c (main): Access ITEM directly.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a1940070d2743066bdab859c7ba740a5db74af2

Git commit 0be6fec1e2f456d3a8e94cf1dd93475982d5e58d by Marcus Brinkmann on 27/05/2003 at 05:07..
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (TESTS): Order t-keylist and t-keylist-sig after
	t-import.
	* gpg/t-edit.c (edit_fnc): Work around gpg 1.2.2 bug by resetting
	primary uid after setting expiration date.
	* gpg/t-keylist.c: Change order of user IDs.
	* gpg/t-keylist-sig.c: Likewise.
	* gpg/t-import.c: Add support for gpg in CVS.
https://invent.kde.org/neon/forks/gpgme/-/commit/0be6fec1e2f456d3a8e94cf1dd93475982d5e58d

Git commit 569509758a754c7c76ee2f278c8d0adce5488ec0 by Marcus Brinkmann on 27/05/2003 at 05:41..
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Protocol Selection): Do not use @acronym in @node
	because that breaks texi2dvi.
https://invent.kde.org/neon/forks/gpgme/-/commit/569509758a754c7c76ee2f278c8d0adce5488ec0

Git commit ef83cb47d6d7951bb56a3539c5bcbec6e14264bd by Marcus Brinkmann on 27/05/2003 at 05:45..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/ef83cb47d6d7951bb56a3539c5bcbec6e14264bd

Git commit 78c70247f0a9230ce5063bddc8002cf10c427d5d by Marcus Brinkmann on 27/05/2003 at 08:18..
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* op-support.c (_gpgme_parse_inv_userid): Add missing break
	statements.
	* encrypt.c (gpgme_op_encrypt): Use gpgme_error_t instead of int.
https://invent.kde.org/neon/forks/gpgme/-/commit/78c70247f0a9230ce5063bddc8002cf10c427d5d

Git commit 64b0e7004ff9df4ca05c2fe1efcae469d0b19261 by Marcus Brinkmann on 27/05/2003 at 08:31..
Fix last changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/64b0e7004ff9df4ca05c2fe1efcae469d0b19261

Git commit d5d26aecbce26c05e948af6f5f99fd4561497c28 by Marcus Brinkmann on 27/05/2003 at 09:00..
2003-05-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_op_import_result): Add skipped_new_keys.
	* import.c (parse_import_res): Add skipped_new_keys parser.
https://invent.kde.org/neon/forks/gpgme/-/commit/d5d26aecbce26c05e948af6f5f99fd4561497c28

Git commit bade4a32b525c3e84cd6a74f1e8d2364322b8526 by Marcus Brinkmann on 28/05/2003 at 01:15..
doc/
2003-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Exporting Keys): Change argument type from
	gpgme_recipient_t to gpgme_user_id_t.
	(Encrypting a Plaintext): Likewise.
	(Selecting Recipients): Rewritten.

gpgme/
2003-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_SOURCES): Remove recipient.c, add
	user-id.c.
	* gpgme.h (gpgme_recipients_t): Removed.
	(gpgme_recipients_new, gpgme_recipients_release,
	gpgme_recipients_add_name,
	gpgme_recipients_add_name_with_validity, gpgme_recipients_count,
	gpgme_recipients_enum_open, gpgme_recipients_enum_read,
	gpgme_recipients_enum_close): Removed.
	(gpgme_op_encrypt, gpgme_op_encrypt_start, gpgme_op_encrypt_sign,
	gpgme_op_encrypt_sign_start, gpgme_op_export_start,
	gpgme_op_export): Change second argument to gpgme_user_id_t.
	(gpgme_user_ids_release): New prototype.
	(gpgme_user_ids_append): Likewise.
	* ops.h (_gpgme_recipients_all_valid): Remove.
	(_gpgme_user_ids_all_valid): Add.
	* context.h (struct gpgme_recipients): Removed.
	* user-id.c: New file.
	* recipient.c: Removed file.
	* rungpg.c (append_args_from_recipients): Change last arg to
	gpgme_user_id_t.  Reimplement.
	(gpg_encrypt): Change second arg to gpgme_user_id_t.
	(gpg_encrypt_sign): Likewise.
	(gpg_export): Likewise.  Rewrite user ID list code.
	* engine.c (_gpgme_engine_op_encrypt): Change second arg to
	gpgme_user_id_t.
	(_gpgme_engine_op_encrypt_sign): Likewise.
	(_gpgme_engine_op_export): Likewise.
	* engine.h (_gpgme_engine_op_encrypt, _gpgme_engine_op_encrypt_sign,
	_gpgme_engine_op_export): Likewise.
	* engine-gpgsm.c (set_recipients): Likewise.  Rewrite loop code.
	(gpgsm_encrypt): Likewise.
	(gpgsm_export): Likewise.
	* engine-backend.h (struct engine_ops): Likewise for members
	ENCRYPT, ENCRYPT_SIGN and EXPORT.
	* export.c (export_start, gpgme_op_export_start, gpgme_op_export):
	Likewise.
	* encrypt.c (encrypt_start): Likewise.  Don't check for count of
	recipients.
	(gpgme_op_encrypt_start): Likewise.
	(gpgme_op_encrypt): Likewise.
	* encrypt-sign.c (encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign): Likewise.
	(gpgme_op_encrypt_sign_start): Likewise.

tests/
2003-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-eventloop.c (main): Rewrite recipient management.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpg/t-encrypt.c (main): Likewise.
	* gpg/t-export.c (main): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/bade4a32b525c3e84cd6a74f1e8d2364322b8526

Git commit 05040ea3ba23929f21ec3a82010d310e04867fd4 by Marcus Brinkmann on 28/05/2003 at 01:18..
Fix comment.
https://invent.kde.org/neon/forks/gpgme/-/commit/05040ea3ba23929f21ec3a82010d310e04867fd4

Git commit 92e9e8dd3a801a1b882a990619395a2c87ac095c by Marcus Brinkmann on 28/05/2003 at 01:50..
2003-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-encrypt.c (main): Likewise.
	* gpgsm/t-export.c (main): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/92e9e8dd3a801a1b882a990619395a2c87ac095c

Git commit 7cbc391644e2e0582da7692b2ead001c1b6bde3f by Marcus Brinkmann on 28/05/2003 at 01:52..
2003-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (struct gpgme_context): Change EngineObject to
	engine_object_t.
	(enum ctx_op_data_type): Rename to ctx_op_data_id_t.
	(ctx_op_data_t): New type.
	(struct gpgme_context): Use it.
	* ops.h (_gpgme_op_data_lookup): Use new type name.
	* op-support.c (_gpgme_op_data_lookup): Likewise.
	* engine.c: Rename EngineObject to engine_t in the file.  Also
	EngineStatusHandler to engine_status_handler_t,
	EngineCommandHandler to engine_command_handler_t and
	EngineColonLineHandler to engine_colon_line_handler.
	* rungpg.c (start): Likewise.
	* engine-gpgsm.c: Likewise.
	* engine-backend.h (struct engine_ops): Likewise
	* engine.h (struct engine_object_s): Rename to struct engine.
	(EngineObject): Rename to engine_t.  Also everywhere else in the
	file.
	(EngineStatusHandler): Rename to engine_status_handler_t.
	(EngineColonLineHandler): Rename to engine_colon_line_handler_t.
	(EngineCommandHandler): Rename to engine_command_handler_t.

	* engine-gpgsm.c (gpgsm_export): Fix bug in last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/7cbc391644e2e0582da7692b2ead001c1b6bde3f

Git commit b61a983ee759f7229450023b3f7f0986f07c4aee by Marcus Brinkmann on 28/05/2003 at 01:59..
2003-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c: Rename GpgsmObject to engine_gpgsm_t.
	(struct gpgsm_object_s): Rename to struct engine_gpgsm.
	* rungpg.c: Rename GpgObject to engine_gpg_t.
	(struct gpg_object_s): Rename to struct engine_gpg.
https://invent.kde.org/neon/forks/gpgme/-/commit/b61a983ee759f7229450023b3f7f0986f07c4aee

Git commit 8585e1cc532781367d15231ad0b129c4e21a24ff by Marcus Brinkmann on 28/05/2003 at 02:11..
Fix typo.
https://invent.kde.org/neon/forks/gpgme/-/commit/8585e1cc532781367d15231ad0b129c4e21a24ff

Git commit 8f8c78d534d7a1242f1cc68bfb1ac9b5079108a5 by Marcus Brinkmann on 29/05/2003 at 03:21..
doc/
2003-05-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Exporting Keys): Change and document prototypes.
	Add new gpgme_op_export_ext and gpgme_op_export_ext_start
	variants.
	(Selecting Recipients): Section removed.
	(Encrypting a Plaintext): Change prototypes and document the
	changes.

gpgme/
2003-05-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_op_export_start): Change second arg to const char *.
	(gpgme_op_export): Likewise.
	(gpgme_op_export_ext_start): New prototype.
	(gpgme_op_export_ext): Likewise.
	* engine.h: Likewise for _gpgme_engine_op_export and
	_gpgme_engine_op_export_ext.
	* engine-backend.h (struct engine_ops): Change second argument of
	prototype of export to const char *, and add reserverd int as
	third argument.  Add prototype for export_ext.
	* engine.c (_gpgme_engine_op_export_ext): New function.
	(_gpgme_engine_op_export): Change second argument of prototype of
	export to const char *, and add reserverd int as third argument.
	* rungpg.c (gpg_export): Change second argument of prototype of
	export to const char *, and add reserverd int as third argument.
	(gpg_export_ext): New function.
	(gpg_keylist_ext): Break loop at error.
	(_gpgme_engine_ops_gpg): Add gpg_export_ext.
	* engine-gpgsm.c (gpgsm_export): Change second argument of
	prototype of export to const char *, and add reserverd int as
	third argument.
	(gpgsm_export_ext): New function.
	(_gpgme_engine_ops_gpgsm): Add gpgsm_export_ext.
	* export.c (export_start): Change second argument of prototype of
	export to const char *, and add reserverd int as third argument.
	(gpgme_op_export_start): Likewise.
	(export_ext_start): New function.
	(gpgme_op_export_ext_start): Likewise.
	(gpgme_op_export_ext): Likewise.

	* gpgme.h (gpgme_keylist_mode_t): New type for anonymous enum.
	(gpgme_sigsum_t): New type for anonymous enum.

	* encrypt-sign.c (encrypt_sign_start): Check for errors earlier,
	and return an error if RECP is not set.

	* Makefile.am (libgpgme_la_SOURCES): Remove user-id.c.
	* user-id.c: Remove file.
	* ops.h: Remove prototype for _gpgme_user_ids_all_valid.
	* gpgme.h (gpgme_encrypt_flags_t): New type.
	(gpgme_op_encrypt_start): Change second parameter to type
	gpgme_key_t[], and add third parameter.
	(gpgme_op_encrypt): Likewise.
	(gpgme_op_encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign): Likewise.
	* encrypt.c (encrypt_start): Likewise.
	(gpgme_op_encrypt_start): Likewise.
	(gpgme_op_encrypt): Likewise.  Pass flags to engine.
	* encrypt-sign.c (encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign): Likewise.
	* engine-backend.h (struct engine_ops): Likewise for prototypes of
	encrypt and encrypt_sign.
	* engine.h: Likewise for prototypes of _gpgme_engine_op_encrypt
	and _gpgme_engine_op_encrypt_sign.
	* engine.c (_gpgme_engine_op_encrypt): Likewise.
	(_gpgme_engine_op_encrypt_sign): Likewise.
	* rungpg.c (gpg_encrypt): Likewise.
	(gpg_encrypt_sign): Likewise.
	* rungpg.c (gpg_encrypt): Check flags for always trust option.
	* engine-gpgsm.c (gpgsm_encrypt): Likewise.
	(set_recipients): Rewritten to use keys instead user IDs.
	* rungpg.c (append_args_from_recipients): Rewritten to use keys
	instead user IDs.
	* encrypt.c (_gpgme_encrypt_status_handler): Change errors
	returned to GPGME_Invalid_Key and GPGME_General_Error.

tests/
2003-05-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-encrypt-sym.c (main): Adapt to new syntax.
	* gpg/t-encrypt.c (main): Likewise.
	* gpg/t-eventloop.c (main): Likewise.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpgsm/t-export.c (main): Likewise.
	* gpgsm/t-encrypt.c (main): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/8f8c78d534d7a1242f1cc68bfb1ac9b5079108a5

Git commit 02536bb72b884dceeaadda9364860f0649450e2e by Marcus Brinkmann on 05/06/2003 at 23:20..
doc/
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Change error codes to GPG_ERR_* variants.
	(Error Handling): Rewritten.

gpgme/
2003-06-05  Marcus Brinkmann  <marcus at g10code.de>

	Everywhere: Use libgpg-error error codes.

	* Makefile.am (EXTRA_DIST): Remove mkerrors.
	(BUILT_SOURCES): Remove errors.c.
	(MOSTLYCLEANFILES): Likewise.
	(libgpgme_la_SOURCES): Likewise.  Add error.c.
	(errors.c): Remove target.
	* mkerrors: File removed.
	* error.c: New file.

	* gpgme.h (gpgme_error_t): Change to type gpg_error_t.
	(gpgme_err_code_t, gpgme_err_source_t): New types.
	(gpgme_err_code, gpgme_err_source, gpgme_error, gpgme_err_make):
	New static inline functions.
	(gpgme_strsource, gpgme_err_code_from_errno,
	gpgme_err_code_to_errno, gpgme_err_make_from_errno,
	gpgme_error_from_errno): New prototypes.

tests/
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	Everywhere: Use libgpg-error error codes.

	* gpg/Makefile.am (noinst_HEADERS): New variable.
	* gpg/t-support.h: New file.
	* gpgsm/Makefile.am (noinst_HEADERS): New variable.
	* gpgsm/t-support.h: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/02536bb72b884dceeaadda9364860f0649450e2e

Git commit 4172e1d56c0ed7bc4db0ae398966038842b37406 by Marcus Brinkmann on 05/06/2003 at 23:39..
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (struct engine_gpg): Remove arg_error.
	(add_arg): Don't set arg_error.
	(add_data): Likewise.
	(start): Don't check arg_error.
	(gpg_new): Check return value of add_arg.
	* verify.c (parse_notation): Free allocated memory at error.
https://invent.kde.org/neon/forks/gpgme/-/commit/4172e1d56c0ed7bc4db0ae398966038842b37406

Git commit e03686e0131bf34b6951eba67d7d0304e10f0c45 by Marcus Brinkmann on 06/06/2003 at 00:08..
Remove obsolete item
https://invent.kde.org/neon/forks/gpgme/-/commit/e03686e0131bf34b6951eba67d7d0304e10f0c45

Git commit ef2ffa51652550cf7f3d098f4353a1027e4ae22f by Marcus Brinkmann on 06/06/2003 at 00:22..
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* posix-io.c (_gpgme_io_read): Save errno across debug calls.
	(_gpgme_io_write): Likewise.
	(_gpgme_io_pipe): Likewise.
	(_gpgme_io_select): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/ef2ffa51652550cf7f3d098f4353a1027e4ae22f

Git commit 0b08f4b85fa7336d36aa968b7c121bf6913d16b9 by Marcus Brinkmann on 06/06/2003 at 00:26..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/0b08f4b85fa7336d36aa968b7c121bf6913d16b9

Git commit a8fe22ca6ba1ef72e603611b6b72b65a701e1575 by Marcus Brinkmann on 06/06/2003 at 00:56..
doc/
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Crypto Operations): Rename gpgme_invalid_user_id_t
	to gpgme_invalid_key_t.

gpgme/
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* op-support.c (_gpgme_parse_inv_userid): Rename to
	_gpgme_parse_inv_recp and change to new datatype.
	* ops.h (_gpgme_parse_inv_key): Fix prototype.
	* gpgme.h (struct _gpgme_invalid_user_id): Rename to
	__gpgme_invalid_key.  Rename field ID to KEY.
	(gpgme_invalid_user_id_t): Rename to gpgme_invalid_key_t.
	(struct _gpgme_op_encrypt_result): Here, too.
	(struct _gpgme_op_sign_result): Likewise.
	* encrypt.c (struct op_data): Likewise.
	(release_op_data): Likewise.
	* sign.c (struct op_data): Likewise.
	(release_op_data): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8fe22ca6ba1ef72e603611b6b72b65a701e1575

Git commit 44b3538634b4ed77104e1d5b7b39d003641dca30 by Marcus Brinkmann on 06/06/2003 at 02:35..
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Use AM_PATH_GPG_ERROR.

gpgme/
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (AM_CPPFLAGS): Add @GPG_ERROR_CFLAGS at .
	* gpgme-config.in (gpg_error_libs, gpg_error_cflags): New variables.
	Print them.
https://invent.kde.org/neon/forks/gpgme/-/commit/44b3538634b4ed77104e1d5b7b39d003641dca30

Git commit 6e899f43f982db8cfdcd110062135792396e839e by Marcus Brinkmann on 06/06/2003 at 03:04..
2003-06-06  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (LIBGPGME_LT_CURRENT): Bump up to 11.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e899f43f982db8cfdcd110062135792396e839e

Git commit e390cd4e78d048f7dbb60dd98d0050f5767712ee by Marcus Brinkmann on 22/06/2003 at 12:24..
2003-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_INIT): Bump version to 0.4.2.
https://invent.kde.org/neon/forks/gpgme/-/commit/e390cd4e78d048f7dbb60dd98d0050f5767712ee

Git commit 7b1bac188f7d7ac753eb2444f81bc6ab2a0e1485 by Marcus Brinkmann on 22/06/2003 at 12:26..
doc/
2003-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Multi Threading): Remove reference to
	gpgme_recipients_t.

gpgme/
2003-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_user_ids_release, gpgme_user_ids_append): Remove
	prototypes.
https://invent.kde.org/neon/forks/gpgme/-/commit/7b1bac188f7d7ac753eb2444f81bc6ab2a0e1485

Git commit 83cc539b1d1b9c59af37dcbab7fede40dfc0de63 by Marcus Brinkmann on 22/06/2003 at 20:56..
2003-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* data-mem.c (mem_write): Copy original buffer content.
https://invent.kde.org/neon/forks/gpgme/-/commit/83cc539b1d1b9c59af37dcbab7fede40dfc0de63

Git commit 4975c762c69ed2e588a0afc621e62073967771e3 by Marcus Brinkmann on 22/06/2003 at 21:09..
2003-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Add 2003 to copyright notice.

	* gpgme.texi (Header): Fix name space documentation on
	libgpg-error.
https://invent.kde.org/neon/forks/gpgme/-/commit/4975c762c69ed2e588a0afc621e62073967771e3

Git commit a237b4eb82f359bb5fdf2ff3e9854f045bcd9538 by Marcus Brinkmann on 28/06/2003 at 12:45..
Add decrypt feature.
https://invent.kde.org/neon/forks/gpgme/-/commit/a237b4eb82f359bb5fdf2ff3e9854f045bcd9538

Git commit 3e348f622bc5e673afce0924956de1fc53cafd01 by Marcus Brinkmann on 08/07/2003 at 17:11..
2003-07-08  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Complain if libgpg-error is not found.
https://invent.kde.org/neon/forks/gpgme/-/commit/3e348f622bc5e673afce0924956de1fc53cafd01

Git commit 3dc6488caebaea6592ca55cd7d7eeddbc7d9b533 by Marcus Brinkmann on 08/07/2003 at 17:22..
2003-07-08  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Progress Meter Callback): Change return type of
	gpgme_progress_cb_t to void.
https://invent.kde.org/neon/forks/gpgme/-/commit/3dc6488caebaea6592ca55cd7d7eeddbc7d9b533

Git commit 4b409bbad9646a0bea57faae75cb0b9ac07e5d24 by Marcus Brinkmann on 08/07/2003 at 18:02..
Update.
https://invent.kde.org/neon/forks/gpgme/-/commit/4b409bbad9646a0bea57faae75cb0b9ac07e5d24

Git commit 708e6d984e57d73c9deeef7325520bde66d1db24 by Marcus Brinkmann on 09/07/2003 at 00:49..
2003-07-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Clarify difference between can_sign
	and can_certify.
	(Information About Keys): Likewise for GPGME_ATTR_CAN_SIGN and
	GPGME_ATTR_CAN_CERTIFY.
https://invent.kde.org/neon/forks/gpgme/-/commit/708e6d984e57d73c9deeef7325520bde66d1db24

Git commit 841cb75ed4a8ebbaaf194af6662d874e5f954861 by Marcus Brinkmann on 22/07/2003 at 11:30..
2003-07-22  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (set_recipients): Move declaration of NEWLEN to
	the beginning of the block.
https://invent.kde.org/neon/forks/gpgme/-/commit/841cb75ed4a8ebbaaf194af6662d874e5f954861

Git commit ade276f81ef5cb1b20bbbf399fd757c0e1bac7b4 by Marcus Brinkmann on 22/07/2003 at 11:40..
2003-07-22  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (AM_CPPFLAGS): New variable.
	(LDADD): Add @GPG_ERROR_LIBS at .
	* gpg/Makefile.am (AM_CPPFLAGS): New variable.
	(LDADD): Add @GPG_ERROR_LIBS at .
	* gpgsm/Makefile.am (AM_CPPFLAGS): New variable.
	(LDADD): Add @GPG_ERROR_LIBS at .
https://invent.kde.org/neon/forks/gpgme/-/commit/ade276f81ef5cb1b20bbbf399fd757c0e1bac7b4

Git commit 5758e09e61bdde55eaf2d29e96961d5679d73333 by Marcus Brinkmann on 22/07/2003 at 11:48..
Fill in missing info.
https://invent.kde.org/neon/forks/gpgme/-/commit/5758e09e61bdde55eaf2d29e96961d5679d73333

Git commit c605cb3b77113ca3b45885d4592c203a1ebffe6e by Marcus Brinkmann on 22/07/2003 at 12:19..
2003-07-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Error Sources): Fix cut and paste error.
https://invent.kde.org/neon/forks/gpgme/-/commit/c605cb3b77113ca3b45885d4592c203a1ebffe6e

Git commit 7ab89d8d6c4c8c30e964f78b41cc3f48cc739911 by Marcus Brinkmann on 28/07/2003 at 12:09..
2003-07-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in (gpg_error_libs): Quote GPG_ERROR_CFLAGS and
	GPG_ERROR_LIBS when setting the corresponding variables.
	Reported by St�phane Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ab89d8d6c4c8c30e964f78b41cc3f48cc739911

Git commit 0e4157b1d06b3f09890c8478b7a244be12f84894 by Marcus Brinkmann on 28/07/2003 at 12:09..
2003-07-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Listing Mode): Remove word duplication.
	(Listing Keys): Remove mentioning of force argument.
	(Verify): Don't mention r_stat.  Fix some typos.
	(Decrypt and Verify): Correct info how to get the result.  Don't
	mention r_stat.
	(Manipulating Data Buffers): Fix documentation of return value.
	(Listing Keys): Update examples.
	(Decrypt): Result might also be available when operation failed.
	(Verify): Result might also be available when operation failed.
	All spotted by St�phane Corth�sy.
https://invent.kde.org/neon/forks/gpgme/-/commit/0e4157b1d06b3f09890c8478b7a244be12f84894

Git commit b2e98c407a539e945d28ba1371ae56782bba478e by Marcus Brinkmann on 29/07/2003 at 18:20..
2003-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* engine.c (gpgme_get_engine_info): Initialize NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/b2e98c407a539e945d28ba1371ae56782bba478e

Git commit 40343b5f4aff6b0c208288d695f04f80f2321f1c by Marcus Brinkmann on 29/07/2003 at 18:25..
2003-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Encrypting a Plaintext): Mention encrypt and sign
	operations in result function.
	(Creating a Signature): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/40343b5f4aff6b0c208288d695f04f80f2321f1c

Git commit 62673145f0f7b331e5ff5a5c034eeecb02e395e7 by Marcus Brinkmann on 29/07/2003 at 18:27..
Add item about result structures.
https://invent.kde.org/neon/forks/gpgme/-/commit/62673145f0f7b331e5ff5a5c034eeecb02e395e7

Git commit 50bc3d654bc94157ca2dc2f9189c4acbb55e39fa by Marcus Brinkmann on 29/07/2003 at 18:31..
2003-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Creating a Signature): Document
	GPG_ERR_UNUSABLE_SECKEY.
https://invent.kde.org/neon/forks/gpgme/-/commit/50bc3d654bc94157ca2dc2f9189c4acbb55e39fa

Git commit 14c928fb9175de2eeb3e24f60c210e5062e06fe9 by Marcus Brinkmann on 29/07/2003 at 18:46..
2003-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Encrypting a Plaintext): Bad passphrase is only
	possible with symmetric encryption, change the wording to reflect
	that.

	* gpgme.texi (Creating a Signature): Document
	GPG_ERR_UNUSABLE_SECKEY.
https://invent.kde.org/neon/forks/gpgme/-/commit/14c928fb9175de2eeb3e24f60c210e5062e06fe9

Git commit 235e4e8eaccdfb65fef08869678bd726dac336f9 by Marcus Brinkmann on 29/07/2003 at 18:49..
2003-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (EXTRA_DIST): Remove variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/235e4e8eaccdfb65fef08869678bd726dac336f9

Git commit 95390e074ac3c68d1b477170b662ed13d5b6b1ac by Marcus Brinkmann on 29/07/2003 at 19:34..
2003-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* decrypt-verify.c (decrypt_verify_status_handler): Expand silly
	and wrong expression.
	* encrypt-sign.c (encrypt_sign_status_handler): Likewise.
	* encrypt.c (encrypt_sym_status_handler): Likewise.
	* sign.c (sign_status_handler): Likewise.
	* verify.c (verify_status_handler): Likewise.
	* decrypt.c (decrypt_status_handler): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/95390e074ac3c68d1b477170b662ed13d5b6b1ac

Git commit 56b09ecb295df4a83867aa5fbf77a512e844a362 by Marcus Brinkmann on 29/07/2003 at 20:04..
Add task for verify.
https://invent.kde.org/neon/forks/gpgme/-/commit/56b09ecb295df4a83867aa5fbf77a512e844a362

Git commit 6d6cb1c0497139335457c049c3bc017ac6ab2c08 by Marcus Brinkmann on 30/07/2003 at 12:41..
Update information about todo items.
https://invent.kde.org/neon/forks/gpgme/-/commit/6d6cb1c0497139335457c049c3bc017ac6ab2c08

Git commit f29ce4cdb4357c0a4fdc7d2b04ba1ff0809c799e by Marcus Brinkmann on 30/07/2003 at 12:43..
Add item about configure check for gpg and gpgsm warning.
https://invent.kde.org/neon/forks/gpgme/-/commit/f29ce4cdb4357c0a4fdc7d2b04ba1ff0809c799e

Git commit b0e0ab96cb809392412334df67fa0b755ad0c567 by Marcus Brinkmann on 30/07/2003 at 12:56..
2003-07-30  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (LIBGPGME_LT_REVISION): Bump up to 1.

	Released 0.4.2.
https://invent.kde.org/neon/forks/gpgme/-/commit/b0e0ab96cb809392412334df67fa0b755ad0c567

Git commit f4c25d034c0c61edec0893cb23374f499853dd7c by Marcus Brinkmann on 31/07/2003 at 15:44..
2003-07-31  Marcus Brinkmann  <marcus at g10code.de>

	* util.h (_gpgme_decode_c_string): Change type of LEN argument to
	size_t.
	(_gpgme_decode_percent_string): Likewise.
	* conversion.c (_gpgme_decode_c_string): Likewise.
	(_gpgme_decode_percent_string): Likewise.
	(_gpgme_map_gnupg_error): Change type of I to unsigned int.
	* signers.c (gpgme_signers_clear): Likewise.
	(gpgme_signers_enum): New unsigned variable SEQNO, set to SEQ.
	Use SEQNO instead SEQ.
	* wait.c (fd_table_put): Change type of I and J to unsigned int.
	* wait-global.c (_gpgme_wait_global_event_cb): Change type of IDX
	to unsigned int.
	(gpgme_wait): Change type of I and IDX to unsigned int.
	* wait-private.c (_gpgme_wait_on_condition): Change type of IDX
	and I to unsigned int.
	* posix-io.c (_gpgme_io_close): Cast return value of macro DIM to
	int to suppress gcc warning.
	(_gpgme_io_set_close_notify): Likewise.
	(_gpgme_io_select): Change type of I to unsigned int.
	* engine.c (gpgme_get_engine_info): Change type of PROTO to
	unsigned int.
	* wait-user.c (_gpgme_user_io_cb_handler): Change type of IDX and
	I to unsigned int.
https://invent.kde.org/neon/forks/gpgme/-/commit/f4c25d034c0c61edec0893cb23374f499853dd7c

Git commit 51c384409ec3ad3d993786b5154aa7ebe11ebbce by Marcus Brinkmann on 31/07/2003 at 15:44..
2003-07-31  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-verify.c (check_result): Change type of SUMMARY to
	unsigned int.
	* gpg/t-decrypt-verify.c (check_verify_result): Likewise.
	* gpg/t-keylist-sig.c (keys): Change type of member CLASS to
	unsigned int.
	* t-data.c (read_cb): Change type of AMOUNT to unsigned int.
	* t-version.c (version): Remove unused variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/51c384409ec3ad3d993786b5154aa7ebe11ebbce

Git commit 6bb0790d97f07ea383726583e2e7fdc7f6f70845 by Marcus Brinkmann on 31/07/2003 at 15:57..
2003-07-31  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_INIT): Bump version to 0.4.3.
https://invent.kde.org/neon/forks/gpgme/-/commit/6bb0790d97f07ea383726583e2e7fdc7f6f70845

Git commit 82f7a68aa2027a54b8317f777c48a9c7d7e715a0 by Marcus Brinkmann on 31/07/2003 at 16:01..
doc/
2003-07-31  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Listing Keys): Document GPG_ERR_AMBIGUOUS_NAME for
	gpgme_get_key.

gpgme/
2003-07-31  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (gpgme_get_key): Check if there is more than one key
	listed, and return GPG_ERR_AMBIGUOUS_NAME in that case.
https://invent.kde.org/neon/forks/gpgme/-/commit/82f7a68aa2027a54b8317f777c48a9c7d7e715a0

Git commit 9d0642c0125e0cc78e03243aa33dfddf1c065ed0 by Marcus Brinkmann on 31/07/2003 at 16:59..
doc/
2003-07-31  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Add can_authenticate flag.

gpgme/
2003-07-31  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_subkey): Add flag CAN_AUTHENTICATE.
	Lower _UNUSED to 23 bits.
	(struct _gpgme_key): Likewise.
	* keylist.c (set_mainkey_capability): Support 'a' and 'A'.
	(set_subkey_capability): Support 'a'.
https://invent.kde.org/neon/forks/gpgme/-/commit/9d0642c0125e0cc78e03243aa33dfddf1c065ed0

Git commit 275ef15b0be9ce0bfd15412043e2ce95d36dd1c8 by Marcus Brinkmann on 04/08/2003 at 21:11..
doc/
2003-08-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Get error code from SIG->status in the code
	for gpgme_get_sig_status.

gpgme/
2003-08-04  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (parse_new_sig): Fix status parsing case.
https://invent.kde.org/neon/forks/gpgme/-/commit/275ef15b0be9ce0bfd15412043e2ce95d36dd1c8

Git commit 52ee4708a011839d6a920e894e11ea95859cfee3 by Marcus Brinkmann on 04/08/2003 at 21:13..
Add info about bug fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/52ee4708a011839d6a920e894e11ea95859cfee3

Git commit 694e2a80417da734355c46c8778e25d05f6cb2ce by Marcus Brinkmann on 14/08/2003 at 17:32..
doc/
2003-08-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Creating a Signature): Change type of member class
	to unsigned int.

gpgme/
2003-08-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_new_signature): Rename member CLASS to
	_OBSOLETE_CLASS, add member CLASS with type unsigned int.
	* sign.c (parse_sig_created): Also set SIG->_unused_class for
	backward compatibility.

tests/
2003-08-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-sign.c (check_result): Change output format for signature
	class to unsigned int.
https://invent.kde.org/neon/forks/gpgme/-/commit/694e2a80417da734355c46c8778e25d05f6cb2ce

Git commit c1ae70b1775a20def5c695ae2787dd193d36dbc7 by Marcus Brinkmann on 14/08/2003 at 22:54..
2003-08-15  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in: Put gpg-error related flags after gpgme's.
https://invent.kde.org/neon/forks/gpgme/-/commit/c1ae70b1775a20def5c695ae2787dd193d36dbc7

Git commit c93237c3a4cb4ecc579033c31a56cf447c277be3 by Marcus Brinkmann on 18/08/2003 at 19:17..
2003-08-18  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: If building Assuan, check for funopen and
	fopencookie, and make isascii, putc_unlocked and memrchr
	replacement functions.

assuan/
Update to the latest assuan version.

gpgme/
2003-08-18  Marcus Brinkmann  <marcus at g10code.de>

	* funopen.c, putc_unlocked.c, isascii.c, memrchr.c: New files.
	* fopencookie.c: File removed.
https://invent.kde.org/neon/forks/gpgme/-/commit/c93237c3a4cb4ecc579033c31a56cf447c277be3

Git commit 0217495902bbb33d3c429599885192c3aec295e6 by Marcus Brinkmann on 20/08/2003 at 20:20..
2003-08-18  Marcus Brinkmann  <marcus at g10code.de>

	*configure.ac (AM_PATH_GPG_ERROR): Require 0.3.

assuan/
See README.1st.

gpgme/
2003-08-19  Marcus Brinkmann  <marcus at g10code.de>

	The ath files (ath.h, ath.c, ath-pth.c, ath-pthread.c,
	ath-compat.c, ath-pth-compat.c and ath-pthread-compat.c) have been
	updated to have better thread support, and the Makefile.am was
	changed to reflect that.

	* util.h [!HAVE_FOPENCOOKIE]: Remove fopencookie declaration.
	* engine-gpgsm.c (gpgsm_assuan_simple_command): Set ERR to return
	value of status_fnc.
	* rungpg.c (start): Return SAVED_ERRNO, not errno.
https://invent.kde.org/neon/forks/gpgme/-/commit/0217495902bbb33d3c429599885192c3aec295e6

Git commit 2591d8a70b1bd3d1c488b2333368afd8c2ffd373 by Marcus Brinkmann on 20/08/2003 at 20:41..
2003-08-18  Marcus Brinkmann  <marcus at g10code.de>

	*configure.ac (AM_PATH_GPG_ERROR): Require 0.3.

assuan/
See README.1st.

gpgme/
2003-08-19  Marcus Brinkmann  <marcus at g10code.de>

	The ath files (ath.h, ath.c, ath-pth.c, ath-pthread.c,
	ath-compat.c, ath-pth-compat.c and ath-pthread-compat.c) have been
	updated to have better thread support, and the Makefile.am was
	changed to reflect that.

	* util.h [!HAVE_FOPENCOOKIE]: Remove fopencookie declaration.
	* engine-gpgsm.c (gpgsm_assuan_simple_command): Set ERR to return
	value of status_fnc.
	* rungpg.c (start): Return SAVED_ERRNO, not errno.
https://invent.kde.org/neon/forks/gpgme/-/commit/2591d8a70b1bd3d1c488b2333368afd8c2ffd373

Git commit 2b7e505a39ac99ff76b14a6bff20f2ab3d346065 by Marcus Brinkmann on 02/09/2003 at 18:04..
2003-08-30  Robert Schiele <rschiele at uni-mannheim.de>

	* gpgme.spec.in: %{_infodir}/dir is not packaged,
	remove to prevent checking failure.
https://invent.kde.org/neon/forks/gpgme/-/commit/2b7e505a39ac99ff76b14a6bff20f2ab3d346065

Git commit 58616ade03dc897bb016eca0cf3921520849c8f8 by Marcus Brinkmann on 02/09/2003 at 21:46..
2003-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Move invocation of AC_CANONICAL_HOST up to
	suppress warning by autoconf.
https://invent.kde.org/neon/forks/gpgme/-/commit/58616ade03dc897bb016eca0cf3921520849c8f8

Git commit 5231aa6a2a8bf0ffb97ca5cf3d2ab2e4817141b8 by Marcus Brinkmann on 02/09/2003 at 22:00..
2003-08-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-sign.c (check_result): Change output format for signature
	class to unsigned int.
	* gpg/t-signers.c (check_result): Likewise.
	* gpg/t-encrypt-sign.c (check_result): Likewise.
	* gpgsm/t-sign.c (check_result): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/5231aa6a2a8bf0ffb97ca5cf3d2ab2e4817141b8

Git commit be89abd1379aa85fe3e273db506da2f07f41275d by Marcus Brinkmann on 02/09/2003 at 22:44..
Document some more problems.
https://invent.kde.org/neon/forks/gpgme/-/commit/be89abd1379aa85fe3e273db506da2f07f41275d

Git commit d772a96a624609526438a80cf97a9ae55cf4d563 by Marcus Brinkmann on 03/09/2003 at 01:15..
2003-09-03  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Remove GPGME_CONFIG_LIBS and GPGME_CONFIG_CFLAGS.

doc/
2003-09-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Header): We don't use the assuan namespace anymore.
	Document new thread options.

gpgme/
2003-09-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in: Rewritten.
	* gpgme.m4: Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/d772a96a624609526438a80cf97a9ae55cf4d563

Git commit 543f9581692e8b171f023398c59cae0a2aff58ef by Marcus Brinkmann on 03/09/2003 at 01:18..
Document thread changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/543f9581692e8b171f023398c59cae0a2aff58ef

Git commit e4045aa72f3dde8eaf15e7f43c21ffca98544a91 by Marcus Brinkmann on 03/09/2003 at 20:58..
2003-09-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in: Use $libdir, not @libdir@, for the echo
	command.
https://invent.kde.org/neon/forks/gpgme/-/commit/e4045aa72f3dde8eaf15e7f43c21ffca98544a91

Git commit 727f0ba45d5bd5e7018514528b3a6f6612bf91af by Marcus Brinkmann on 13/09/2003 at 17:45..
2003-09-13  Marcus Brinkmann  <marcus at g10code.de>

	* acinclude.m4: Remove libtool cruft, add jm_GLIBC21.
	* configure.ac: Add check for getenv_r, and call jm_GLIBC21.
	Define HAVE_THREAD_SAFE_GETENV if appropriate.

gpgme/
2003-09-13  Marcus Brinkmann  <marcus at g10code.de>

	* get-env.c: New file.
	* util.h (_gpgme_getenv): Add prototype.
	* Makefile.am (libgpgme_real_la_SOURCES): Add get-env.c.
	* rungpg.c (build_argv): Use _gpgme_getenv.
	* debug.c (debug_init): Likewise.
	* engine-gpgsm.c (gpgsm_new): Likewise.
	(gpgsm_new): Use ttyname_r.
	* w32-io.c (_gpgme_io_spawn): Disable debugging for now.
https://invent.kde.org/neon/forks/gpgme/-/commit/727f0ba45d5bd5e7018514528b3a6f6612bf91af

Git commit 33912dcc8694fba72933fc9a34f39bdd3c53ef62 by Marcus Brinkmann on 13/09/2003 at 18:04..
2003-09-13  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Multi Threading): Update documentation.
https://invent.kde.org/neon/forks/gpgme/-/commit/33912dcc8694fba72933fc9a34f39bdd3c53ef62

Git commit c4ea1235d56f7ab89ff84fef894d9c0d378d8b72 by Marcus Brinkmann on 13/09/2003 at 21:45..
doc/
2003-09-13  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Error Strings): Add gpgme_strerror_r.

gpgme/
2003-09-13  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_strerror_r): New prototype.
	* error.c (gpgme_strerror_r): New function.
https://invent.kde.org/neon/forks/gpgme/-/commit/c4ea1235d56f7ab89ff84fef894d9c0d378d8b72

Git commit 256ef2e87ee107705f6bb6de4a63d9dc130c507f by Marcus Brinkmann on 14/09/2003 at 00:02..
doc/
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Locale): New section.
	(Multi Threading): Set locale in example.

gpgme/
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (struct gpgme_context): New members lc_ctype and
	lc_messages.
	* gpgme.c: Include <locale.h>.
	(def_lc_lock, def_lc_ctype, def_lc_messages): New static
	variables.
	(gpgme_set_locale): New function.
	* engine.c (_gpgme_engine_new): Add arguments lc_ctype and
	lc_messages.
	* engine.h (_gpgme_engine_new): Likewise.
	* engine-gpgsm.c (gpgsm_new): Likewise.
	* rungpg.c (gpg_new): Likewise.
	* engine-backend.h (struct engine_ops): Likewise to NEW.
	* op-support.c (_gpgme_op_reset): Likewise to invocation of
	_gpgme_engine_new.
https://invent.kde.org/neon/forks/gpgme/-/commit/256ef2e87ee107705f6bb6de4a63d9dc130c507f

Git commit 36e27200b71c790a841c6ecb87ee4ef9fca46302 by Marcus Brinkmann on 14/09/2003 at 00:06..
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Define macro _GPGME_INLINE depending on the compiler
	characteristics and use that instead __inline__.
https://invent.kde.org/neon/forks/gpgme/-/commit/36e27200b71c790a841c6ecb87ee4ef9fca46302

Git commit e4792cfb7dccbd5dea1aae099ef8fd473d541c74 by Marcus Brinkmann on 14/09/2003 at 00:29..
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Add prototype for gpgme_set_locale.
https://invent.kde.org/neon/forks/gpgme/-/commit/e4792cfb7dccbd5dea1aae099ef8fd473d541c74

Git commit f8867f27074b9371e5be8376360d75e97c2bbdd2 by Marcus Brinkmann on 14/09/2003 at 00:30..
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-import.c (main): Likewise.
	* gpg/t-keylist-sig.c (main): Likewise.
	* gpg/t-keylist.c (main): Likewise.
	* gpg/t-sign.c (main): Likewise.
	* gpg/t-signers.c (main): Likewise.
	* gpg/t-trustlist.c (main): Likewise.
	* gpgsm/t-support.h: Include <stdlib.h> and <locale.h>.
	(init_gpgme): New function.
	* gpg/t-support.h: Likewise.
	* gpgsm/t-verify.c (main): Call init_gpgme.
	* gpgsm/t-decrypt.c (main): Likewise.
	* gpgsm/t-encrypt.c (main): Likewise.
	* gpgsm/t-export.c (main): Likewise.
	* gpgsm/t-genkey.c (main): Likewise.
	* gpgsm/t-import.c (main): Likewise.
	* gpgsm/t-keylist.c (main): Likewise.
	* gpgsm/t-sign.c (main): Likewise.
	* gpg/t-verify.c (main): Call init_gpgme.
	* gpg/t-decrypt-verify.c (main): Likewise.
	* gpg/t-decrypt.c (main): Likewise.
	* gpg/t-edit.c (main): Likewise.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpg/t-encrypt-sym.c (main): Likewise.
	* gpg/t-encrypt.c (main): Likewise.
	* gpg/t-eventloop.c (main): Likewise.
	* gpg/t-export.c (main): Likewise.
	* gpg/t-genkey.c (main): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/f8867f27074b9371e5be8376360d75e97c2bbdd2

Git commit 68def3d9dca978c617ec650dd92e441c30d518b1 by Marcus Brinkmann on 14/09/2003 at 00:34..
Update release list.
https://invent.kde.org/neon/forks/gpgme/-/commit/68def3d9dca978c617ec650dd92e441c30d518b1

Git commit 0291c000915a3a47af0f92f2dfb48af1e7ebecf6 by Marcus Brinkmann on 14/09/2003 at 00:41..
Require libgpg-error 0.5.
https://invent.kde.org/neon/forks/gpgme/-/commit/0291c000915a3a47af0f92f2dfb48af1e7ebecf6

Git commit 38a0357afbd1a005efce142a2aacb77d485e55b7 by Marcus Brinkmann on 14/09/2003 at 01:05..
Include "t-support.h".
https://invent.kde.org/neon/forks/gpgme/-/commit/38a0357afbd1a005efce142a2aacb77d485e55b7

Git commit 0a952a59b68e55bae6a1da500ebf834a42cc41df by Marcus Brinkmann on 14/09/2003 at 01:32..
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-thread1.c: New file.
	* gpg/Makefile.am (TESTS): Add t-thread1.c.
	(t_thread1_LDADD): New variable.
	(LDADD): Remove GPG Error lib.
	* gpgsm/Makefile.am (LDADD): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a952a59b68e55bae6a1da500ebf834a42cc41df

Git commit b4473cfffd836c7f7e69069cec2b6feb2f10f1d3 by Marcus Brinkmann on 14/09/2003 at 14:48..
doc/
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Multi Threading): Correct documentation on memory
	synchronization requirement.

tests/
2003-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-thread1.c (main): Call init_gpgme here.
	(initialize_gpgme): Function removed.
https://invent.kde.org/neon/forks/gpgme/-/commit/b4473cfffd836c7f7e69069cec2b6feb2f10f1d3

Git commit d66ff5e6651202369d3ebec924523fb01d1ce24e by Marcus Brinkmann on 30/09/2003 at 17:19..
2003-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_hash_algo_name): Change name of RMD160 to
	RIPEMD160, name of TIGER to TIGER192, name of CRC32-RFC1510 to
	CRC32RFC1510, and name of CRC24-RFC2440 to CRC24RFC2440.
https://invent.kde.org/neon/forks/gpgme/-/commit/d66ff5e6651202369d3ebec924523fb01d1ce24e

Git commit 2f91a2586519c0c01b521f4c10d20d8deb9bff93 by Marcus Brinkmann on 30/09/2003 at 19:36..
2003-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpg_strerror_r): Change prototype to match
	gpg_strerror_r change.
	* error.c (gpg_strerror_r): Likewise, also update implementation.
https://invent.kde.org/neon/forks/gpgme/-/commit/2f91a2586519c0c01b521f4c10d20d8deb9bff93

Git commit 91f217b4b2f769c9d231e7c6ad7c214b3d9e688c by Marcus Brinkmann on 02/10/2003 at 15:03..
2003-10-02  Marcus Brinkmann  <marcus at g10code.de>

	* engine-backend.h (struct engine_ops): Add argument TYPE.
	* engine.c (_gpgme_engine_op_edit): Likewise.
	* engine.h: Likewise.
	* rungpg.c (gpg_edit): Likewise.  Use it.
	* edit.c (edit_start): Likewise.  Pass it on.
	(gpgme_op_edit_start, gpgme_op_edit): Likewise.
	(gpgme_op_card_edit_start, gpgme_op_card_edit): New functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/91f217b4b2f769c9d231e7c6ad7c214b3d9e688c

Git commit fe37afc0501df68a037ca5b32a8163bfa5a8e60f by Marcus Brinkmann on 06/10/2003 at 12:02..
Remove empty line
https://invent.kde.org/neon/forks/gpgme/-/commit/fe37afc0501df68a037ca5b32a8163bfa5a8e60f

Git commit 5168a8d5bee5f7ea392bf4b3983ff25b651e7dd4 by Marcus Brinkmann on 06/10/2003 at 12:15..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c: Do not include <time.h>, <sys/time.h>, <sys/types.h>,
	<signal.h>, <fcntl.h>, or "unistd.h".
https://invent.kde.org/neon/forks/gpgme/-/commit/5168a8d5bee5f7ea392bf4b3983ff25b651e7dd4

Git commit 4cb6f77a326b92b98f26ecb5352cc6082c7d8918 by Marcus Brinkmann on 06/10/2003 at 13:24..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* ath.h [HAVE_SYS_SELECT_H]: Include <sys/select.h> for fd_set.
	[!HAVE_SYS_SELECT_H]: Include <sys/time.h>.

	* conversion.c (_gpgme_hextobyte): Drop "unsigned" from type of
	SRC argument.
	* util.h (_gpgme_hextobyte): Likewise for prototype.

	* gpgme.h: Remove trailing comma in enum.
https://invent.kde.org/neon/forks/gpgme/-/commit/4cb6f77a326b92b98f26ecb5352cc6082c7d8918

Git commit 142f4aea09fa0dab6a5099cd727fabf70e94a37e by Marcus Brinkmann on 06/10/2003 at 14:06..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* ath.h (struct ath_ops): Make ADDR argument of CONNECT prototype
	const.
	(ath_connect): Make ADDR argument const.
	* ath-pthread.c (ath_connect): Likewise.
	* ath-pth.c (ath_connect): Likewise.
	* ath-compat.c (ath_connect): Likewise.
	* ath.c (ath_connect): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/142f4aea09fa0dab6a5099cd727fabf70e94a37e

Git commit 5024a533e80e9af0c32498e9e123a9c40f8f797e by Marcus Brinkmann on 06/10/2003 at 14:50..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* debug.c (debug_init): Drop const qualifier from E.
https://invent.kde.org/neon/forks/gpgme/-/commit/5024a533e80e9af0c32498e9e123a9c40f8f797e

Git commit 0d0378a200f7347e6b8071bff8f519aaaa44bce1 by Marcus Brinkmann on 06/10/2003 at 16:17..
doc/
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Signal Handling): New section.

gpgme/
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* io.h (_gpgme_io_subsystem_init): New prototype.
	* posix-io.c (_gpgme_io_subsystem_init): Add function.
	(_gpgme_io_spawn): Do not fixup signal handler here.
	* version.c (do_subsystem_inits): Call _gpgme_io_subsystem_init.

tests/
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-thread1.c (thread_one): Do not call initialize_gpgme.
	Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/0d0378a200f7347e6b8071bff8f519aaaa44bce1

Git commit 8b4852963b8d72b2129920390af05d8ccfd6b4d3 by Marcus Brinkmann on 06/10/2003 at 16:32..
Add item about sigaction.
https://invent.kde.org/neon/forks/gpgme/-/commit/8b4852963b8d72b2129920390af05d8ccfd6b4d3

Git commit e702f52860283884c5d1a915edaf9046b2b76352 by Marcus Brinkmann on 06/10/2003 at 18:30..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	Released 0.4.3.

	* configure.ac (LIBGPGME_LT_CURRENT, LIBGPGME_LT_AGE): Bump up by 1.
	(LIBGPGME_LT_REVISION): Set to 0.
https://invent.kde.org/neon/forks/gpgme/-/commit/e702f52860283884c5d1a915edaf9046b2b76352

Git commit ccb90f4e4d70acdf698e4048454728fc4431a81d by Marcus Brinkmann on 06/10/2003 at 19:12..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (map_assuan_error): If ERR is -1, return sensible
	error.
https://invent.kde.org/neon/forks/gpgme/-/commit/ccb90f4e4d70acdf698e4048454728fc4431a81d

Git commit b8f831b7a03deff720e20e746897e3c3f7fc23a1 by Marcus Brinkmann on 06/10/2003 at 19:22..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/b8f831b7a03deff720e20e746897e3c3f7fc23a1

Git commit 638c25eda41480f3e73422a8804028cc98c50c27 by Marcus Brinkmann on 06/10/2003 at 19:33..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile.am (DISTCLEANFILES): Add random_seed.
https://invent.kde.org/neon/forks/gpgme/-/commit/638c25eda41480f3e73422a8804028cc98c50c27

Git commit 91cc459641bd8c80c751dae2b8a3166e704530f0 by Marcus Brinkmann on 06/10/2003 at 19:46..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-eventloop.c: Include <sys/types.h> for old systems.
https://invent.kde.org/neon/forks/gpgme/-/commit/91cc459641bd8c80c751dae2b8a3166e704530f0

Git commit 01e247eeb41416404e24701b222fc624601e7fdf by Marcus Brinkmann on 06/10/2003 at 19:48..
2003-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* data-compat.c: Include <sys/time.h> before <sys/stat.h> for
	broken systems.
https://invent.kde.org/neon/forks/gpgme/-/commit/01e247eeb41416404e24701b222fc624601e7fdf

Git commit 96793df9ecb5cc30af7d1d8b723aec0106161883 by Marcus Brinkmann on 06/10/2003 at 21:14..
Prepare for developing the next version.
https://invent.kde.org/neon/forks/gpgme/-/commit/96793df9ecb5cc30af7d1d8b723aec0106161883

Git commit 2250b42294a525d18301a8d4f6bf8ac45fadd8e3 by Marcus Brinkmann on 10/10/2003 at 09:08..
2003-10-10  Marcus Brinkmann  <marcus at g10code.de>

	* genkey.c (get_key_parameter): Make a copy of the key parameters.
	Submitted by Miguel Coca <e970095 at zipi.fi.upm.es>.
https://invent.kde.org/neon/forks/gpgme/-/commit/2250b42294a525d18301a8d4f6bf8ac45fadd8e3

Git commit 2f1226cea902076ef98396db58983298ed079d51 by Werner Koch on 31/10/2003 at 12:07..
(parse_timestamp): Detect ISO 8601 timestamps and try
to convert them.
https://invent.kde.org/neon/forks/gpgme/-/commit/2f1226cea902076ef98396db58983298ed079d51

Git commit c2740411a95b0e1548ac5a823f0bdce6c64ee944 by Werner Koch on 13/11/2003 at 07:26..
(int_vasprintf): ARGS should not be a pointer.
https://invent.kde.org/neon/forks/gpgme/-/commit/c2740411a95b0e1548ac5a823f0bdce6c64ee944

Git commit 23a2e04133c09bb4884058189abb703f3027cd75 by Werner Koch on 13/11/2003 at 07:31..
Silly me:  Reverted last change.  The code here is actually okay but
when driving the one for gnupg, the bug was probably introduced.
https://invent.kde.org/neon/forks/gpgme/-/commit/23a2e04133c09bb4884058189abb703f3027cd75

Git commit 9cf95d61eb524b73f1ad6a28678c292a404eac1d by Werner Koch on 19/11/2003 at 15:15..
* acinclude.m4: Add AM_PATH_GPG_ERROR.
* configure.ac: Check for timegm.  Made warning messages more
prominent.
https://invent.kde.org/neon/forks/gpgme/-/commit/9cf95d61eb524b73f1ad6a28678c292a404eac1d

Git commit 7fab1937f875223d7a9ac4490fc8addd439d9b53 by Werner Koch on 19/11/2003 at 15:15..
* conversion.c (_gpgme_parse_timestamp): New.
(atoi_1, atoi_2, atoi_4): New.
* keylist.c (parse_timestamp): Removed. Changed all callers to use
the new function.
* verify.c (parse_valid_sig): Ditto.  Repalced the errno check.
* sign.c (parse_sig_created): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/7fab1937f875223d7a9ac4490fc8addd439d9b53

Git commit 82cb03cc834a911ad626435a1236bfb9a9241bb0 by Werner Koch on 19/11/2003 at 15:15..
* gpg/t-support.h (DIM): Added.

* gpg/t-verify.c (check_result): Rewrote test for notations
because the order of notaions is not guaranteed.

* gpgsm/t-support.h (fail_if_err): Also print the numeric values.
https://invent.kde.org/neon/forks/gpgme/-/commit/82cb03cc834a911ad626435a1236bfb9a9241bb0

Git commit 459791591095a6f73fa262f60bec76b510198e63 by Werner Koch on 23/12/2003 at 08:21..
C++ fixes
https://invent.kde.org/neon/forks/gpgme/-/commit/459791591095a6f73fa262f60bec76b510198e63

Git commit a3d1b15db26f5320f4b191f77a0904acc5220c4b by Moritz Schulte on 23/12/2003 at 09:08..
2003-12-23  Moritz Schulte  <mo at g10code.com>

	* gpgme.texi (Listing Keys): Minor clarification for
	gpgme_get_key.
https://invent.kde.org/neon/forks/gpgme/-/commit/a3d1b15db26f5320f4b191f77a0904acc5220c4b

Git commit de739f876b8d506e32a209d2979ed44a0a33b41d by Marcus Brinkmann on 25/12/2003 at 14:38..
doc/
2003-12-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Rename member class in
	gpgme_key_sig_t to sig_class.
	(Creating a Signature): Likewise for gpgme_signature_t.

gpgme/
2003-12-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (_GPGME_D_CLASS): Revert this change.
	(struct _gpgme_key_sig): For C++ compilers, rename class
	member to _obsolete_class.  Add new member sig_class.
	(struct _gpgme_new_signature): Same here.
	* key.c (gpgme_key_sig_get_ulong_attr): Use CERTSIG->sig_class,
	not CERTSIG->class.
	* keylist.c (keylist_colon_handler): Likewise for KEYSIG, but keep
	setting KEYSIG->class, too.  Rename variable CLASS to SIG_CLASS.
	* sign.c (parse_sig_created): Set SIG->sig_class.
https://invent.kde.org/neon/forks/gpgme/-/commit/de739f876b8d506e32a209d2979ed44a0a33b41d

Git commit 215da10c1c9e29878a130324816cd981e9ab8487 by Werner Koch on 12/01/2004 at 13:28..
About to release 0.4.4:

* configure.ac: Bumbed LT_Revision; now at C12/A1/R1.
(NEED_GPGSM_VERSION): Set to 1.9.3.

* sign.c: Include util.h for prototype of _gpgme_parse_timestamp.

* gpg/t-keylist-sig.c (main): Temporary disabled one test due top
gpg 1.3.4 problems.
* gpg/t-import.c (check_result): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/215da10c1c9e29878a130324816cd981e9ab8487

Git commit b5c66f75bac64e43d71bbc1299955e41ee5cc569 by Werner Koch on 12/01/2004 at 13:41..
Updated the CVS build stuff
https://invent.kde.org/neon/forks/gpgme/-/commit/b5c66f75bac64e43d71bbc1299955e41ee5cc569

Git commit 615321b79608197110d973b83dfa0cf1227df43a by Werner Koch on 12/01/2004 at 13:49..
Added files usually installed bu automake.  We want to keep them in the CVS
from now on.
https://invent.kde.org/neon/forks/gpgme/-/commit/615321b79608197110d973b83dfa0cf1227df43a

Git commit 76b5855b8ed254b05fa2d60a2af9dd25531bed5f by Marcus Brinkmann on 13/01/2004 at 21:42..
2004-01-13  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_key_sig): Fix comment on REVOKED>
https://invent.kde.org/neon/forks/gpgme/-/commit/76b5855b8ed254b05fa2d60a2af9dd25531bed5f

Git commit 6d47796aa629a526b1bdb705ae7e2befa0d6ef12 by Marcus Brinkmann on 13/01/2004 at 21:43..
2004-01-13  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Fix exportable field.
https://invent.kde.org/neon/forks/gpgme/-/commit/6d47796aa629a526b1bdb705ae7e2befa0d6ef12

Git commit 8986b980630d51de93ce484ae20e0f53d3092254 by Marcus Brinkmann on 13/01/2004 at 21:44..
Add note about key signature notations.
https://invent.kde.org/neon/forks/gpgme/-/commit/8986b980630d51de93ce484ae20e0f53d3092254

Git commit 0c2e282d2f6981f7b46a2d65e693ba5586b64926 by Werner Koch on 16/01/2004 at 15:47..
(_gpgme_map_gnupg_error): Handle numerical codes as
used by GnuPG 1.9.x
https://invent.kde.org/neon/forks/gpgme/-/commit/0c2e282d2f6981f7b46a2d65e693ba5586b64926

Git commit 68ab06735844ee7087ea7163cf33accf3ebc0322 by Marcus Brinkmann on 01/02/2004 at 13:39..
2004-01-31  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add invocation of AC_SYS_LARGEFILE, AC_TYPE_OFF_T
	and AC_FUNC_FSEEKO.

doc/
2004-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Largefile Support): New section.

gpgme/
2004-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* data-compat.c (gpgme_data_new_from_filepart): Call fseeko if
	available.
	* data-stream.c (stream_seek): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/68ab06735844ee7087ea7163cf33accf3ebc0322

Git commit b1b57049f5b9ce5fd6aa7ca8851307e2f6a1f632 by Marcus Brinkmann on 01/02/2004 at 14:34..
2004-02-01  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (build_argv): Use --no-comment, not --comment "".
https://invent.kde.org/neon/forks/gpgme/-/commit/b1b57049f5b9ce5fd6aa7ca8851307e2f6a1f632

Git commit cdf91c300d80c4da27273fcb7505f1d032dc07f3 by Moritz Schulte on 06/02/2004 at 15:45..
2004-02-06  Moritz Schulte  <mo at g10code.com>

	* configure.ac: Fix funopen replacement mechanism.
https://invent.kde.org/neon/forks/gpgme/-/commit/cdf91c300d80c4da27273fcb7505f1d032dc07f3

Git commit a4bbdd6cbd867c60fd12c7976fcb8a7873f0b186 by Moritz Schulte on 06/02/2004 at 15:47..
2004-02-06  Moritz Schulte  <mo at g10code.com>

	* gpgme.texi: A couple of small fixes regarding the Largfile
	Support section.
https://invent.kde.org/neon/forks/gpgme/-/commit/a4bbdd6cbd867c60fd12c7976fcb8a7873f0b186

Git commit 867df1aa048900f2d158435e4495ca2a771c73f8 by Werner Koch on 10/02/2004 at 10:10..
Fixed funopen test change.

Hey, Moritz what was the orginal problem?  Does autoconf not anymore
allow to put AC_LIBOBJ into AC_CEHCK_FUNCS?
https://invent.kde.org/neon/forks/gpgme/-/commit/867df1aa048900f2d158435e4495ca2a771c73f8

Git commit 3d6d811a83b017cd2943825f267aa125930bbe7b by Werner Koch on 13/02/2004 at 13:02..
Removed the unneeded alloca.h
https://invent.kde.org/neon/forks/gpgme/-/commit/3d6d811a83b017cd2943825f267aa125930bbe7b

Git commit 6e468be50e0dbd48e2b28128fb816b7eb55cd2bc by Werner Koch on 15/02/2004 at 16:02..
(memrchr): Fixed implementation.  Problem pointed out
by Adriaan de Groot.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e468be50e0dbd48e2b28128fb816b7eb55cd2bc

Git commit afabac4c9dbc0ee0a88ad225b27be3836509f5f9 by Werner Koch on 17/02/2004 at 15:27..
* gpgme.texi (Key Listing Mode): Doc KEYLIST_MODE_VALIDATE.

* gpgme.h: Add GPGME_KEYLIST_MODE_VALIDATE.
* engine-gpgsm.c (gpgsm_keylist): Send this to gpgsm.
https://invent.kde.org/neon/forks/gpgme/-/commit/afabac4c9dbc0ee0a88ad225b27be3836509f5f9

Git commit 91d3e5aa57bd9a75e77ddbd4753897b6a372c323 by Werner Koch on 17/02/2004 at 17:26..
* gpgsm/t-import.c (check_result): gpgsm does now return info in
the result->imports; adjust for that.

* gpgsm/Makefile.am (TESTS_ENVIRONMENT): Reset the GPG_AGENT_INFO.

* gpg/t-keylist-sig.c (main): s/class/sig_class/.
* gpg/t-signers.c (check_result): Ditto.
* gpg/t-sign.c (check_result): Ditto.
* gpg/t-encrypt-sign.c (check_result): Ditto.
* gpgsm/t-sign.c (check_result): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/91d3e5aa57bd9a75e77ddbd4753897b6a372c323

Git commit fd8f4ac9f070e748a7a35deb178c40d37e1046f1 by Werner Koch on 18/02/2004 at 18:05..
* configure.ac: Make the check for funopen fail with just a
warning.

* assuan-handler.c (assuan_get_data_fp): Fail with ENOSYS if we
can't implement this.
https://invent.kde.org/neon/forks/gpgme/-/commit/fd8f4ac9f070e748a7a35deb178c40d37e1046f1

Git commit ed314ff7665c452389c34163c6b82eea9b3b804f by Marcus Brinkmann on 24/02/2004 at 23:08..
doc/
2004-02-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (cancellation): New section.

gpgme/
2004-02-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_cancel): New function.
	* engine-backend.h (struct engine_ops): New member cancel.
	* engine.h (_gpgme_engine_cancel): New prototype.
	* engine.c (_gpgme_engine_cancel): New function.
	* engine-gpgsm.c: Add new member cancel.
	(gpgsm_cancel): New function.
	(gpgsm_release): Use it.
	* rungpg.c: Add new member cancel.
https://invent.kde.org/neon/forks/gpgme/-/commit/ed314ff7665c452389c34163c6b82eea9b3b804f

Git commit d988a1820c05227409b8eb3c6713b947bfb3c04b by Marcus Brinkmann on 24/02/2004 at 23:15..
2004-02-25  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_cancel): New function.
	(gpg_release): Call it here.
	(_gpgme_engine_ops_gpg): Add it here.
	* engine-gpgsm.c (gpgsm_cancel): Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/d988a1820c05227409b8eb3c6713b947bfb3c04b

Git commit e65396c735f0b032b90cdea9e14c5157bcaaa019 by Werner Koch on 03/03/2004 at 15:15..
* engine-gpgsm.c (gpgsm_export_ext): Properly insert a space
beween patterns.

* gpgsm/t-export.c (main): Also check exporting 2 certificates.
https://invent.kde.org/neon/forks/gpgme/-/commit/e65396c735f0b032b90cdea9e14c5157bcaaa019

Git commit 52cf0dda6746fccbd39f5e11c31e1d25cd5f2c93 by Marcus Brinkmann on 03/03/2004 at 16:11..
2004-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (I/O Callback Example Qt): New section by Marc Mutz.
https://invent.kde.org/neon/forks/gpgme/-/commit/52cf0dda6746fccbd39f5e11c31e1d25cd5f2c93

Git commit d6d3eaa858963f7eef9b946dba1d9e6f20ecee72 by Marcus Brinkmann on 07/03/2004 at 17:41..
2004-03-07  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in: Do not emit include and lib directory for
	prefix "/usr" or "".
https://invent.kde.org/neon/forks/gpgme/-/commit/d6d3eaa858963f7eef9b946dba1d9e6f20ecee72

Git commit 498347ce00605ec5ba5403f857c202efefe77b8d by Marcus Brinkmann on 07/03/2004 at 17:44..
2004-03-07  Marcus Brinkmann  <marcus at g10code.de>

	Released 0.4.5.

	* Makefile.am (EXTRA_DIST): Remove autogen.sh and README.CVS.
https://invent.kde.org/neon/forks/gpgme/-/commit/498347ce00605ec5ba5403f857c202efefe77b8d

Git commit 887c31aa0a1d15b423ac32a113e601acf442d183 by Marcus Brinkmann on 07/03/2004 at 22:32..
2004-03-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (I/O Callback Example Qt): New section by Marc Mutz.
https://invent.kde.org/neon/forks/gpgme/-/commit/887c31aa0a1d15b423ac32a113e601acf442d183

Git commit af3c09d9b2773b8c31b63af378925c785e8f5153 by Marcus Brinkmann on 07/03/2004 at 22:49..
2004-03-07  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (NEED_GPGSM_VERSION): Bump up to 1.9.6.

2004-03-07  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c: Add chain IDs.
https://invent.kde.org/neon/forks/gpgme/-/commit/af3c09d9b2773b8c31b63af378925c785e8f5153

Git commit 4e4944ff193d34043c7d83afbeca733bb9d86431 by Marcus Brinkmann on 07/03/2004 at 22:55..
*** empty log message ***
https://invent.kde.org/neon/forks/gpgme/-/commit/4e4944ff193d34043c7d83afbeca733bb9d86431

Git commit 6de192d691b3e64b23c71a7c86d4e138fd405abe by Marcus Brinkmann on 08/03/2004 at 00:57..
Prepare for next round of changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/6de192d691b3e64b23c71a7c86d4e138fd405abe

Git commit dcb04fb19521a507ef5bd49027d528fca969aebe by Marcus Brinkmann on 10/03/2004 at 23:52..
2004-03-11  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_cancel): Only call assuan_disconnect if
	GPGSM->assuan_ctx is not NULL.  Set it to NULL afterwards.
https://invent.kde.org/neon/forks/gpgme/-/commit/dcb04fb19521a507ef5bd49027d528fca969aebe

Git commit f7e02a469f0ac0235d922973254e770a066fc533 by Marcus Brinkmann on 11/03/2004 at 13:54..
2004-03-11  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_cancel): Set GPG->fd_data_map to NULL after
	releasing it.
https://invent.kde.org/neon/forks/gpgme/-/commit/f7e02a469f0ac0235d922973254e770a066fc533

Git commit 9ee42a1e4765d2a5304d40b3dd9307138d0a8282 by Marcus Brinkmann on 11/03/2004 at 14:31..
*** empty log message ***
https://invent.kde.org/neon/forks/gpgme/-/commit/9ee42a1e4765d2a5304d40b3dd9307138d0a8282

Git commit e17289e77c386c0ee20988c4320dd6d39750e6b5 by Marcus Brinkmann on 23/03/2004 at 13:43..
2004-03-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Library Version Check): Fix the instruction when to
	set the locale.
https://invent.kde.org/neon/forks/gpgme/-/commit/e17289e77c386c0ee20988c4320dd6d39750e6b5

Git commit 3816adb43a110bb00e84b985f45a35ed2ab03b24 by Marcus Brinkmann on 23/03/2004 at 18:10..
2004-03-23  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_new): Protect _only_ tty related code with
	isatty().  Submitted by Bernhard Herzog.
https://invent.kde.org/neon/forks/gpgme/-/commit/3816adb43a110bb00e84b985f45a35ed2ab03b24

Git commit 78cdfffd9243f0f2704cb868f4be9fc2f12cc07f by Moritz Schulte on 29/03/2004 at 18:42..
2004-03-29  Moritz Schulte  <moritz at duesseldorf.ccc.de>

	* gpgme.texi (Verify): Fix type of gpgme_op_verify_result.
	* gpgme.texi (Key Listing Mode): Typo fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/78cdfffd9243f0f2704cb868f4be9fc2f12cc07f

Git commit 92dff6e4f17567cbe64fc4779deb9d2c51716ab0 by Werner Koch on 05/04/2004 at 11:53..
(gpgsm_keylist_ext): Send with-validation
option.  Fixed pattern construction.
https://invent.kde.org/neon/forks/gpgme/-/commit/92dff6e4f17567cbe64fc4779deb9d2c51716ab0

Git commit 761cd12e1ea6718006e87b06adfa19b685e9ceec by Werner Koch on 05/04/2004 at 13:49..
(parse_error): Compare only the last part of the where
token.
https://invent.kde.org/neon/forks/gpgme/-/commit/761cd12e1ea6718006e87b06adfa19b685e9ceec

Git commit fe16ca5cc467899f94ab2c12510c83f98fe2455b by Werner Koch on 05/04/2004 at 18:39..
* verify.c (parse_error): Compare only the last part of the where
token.
(prepare_new_sig): New.
(parse_new_sig): Use prepare_new_sig when required.
(_gpgme_verify_status_handler): Handle STATUS_NEWSIG.

* engine-gpgsm.c (gpgsm_keylist_ext): Send with-validation
option.  Fixed pattern construction.
(status_handler): Add debugging output.
https://invent.kde.org/neon/forks/gpgme/-/commit/fe16ca5cc467899f94ab2c12510c83f98fe2455b

Git commit edf5d2bd31b676e044c7798f5934bbffcd194d8e by Werner Koch on 05/04/2004 at 18:40..
* gpgme.h: Add GPGME_STATUS_NEWSIG.

* gpgsm/Makefile.am: Changed the faked system time to 20011213T12000.
https://invent.kde.org/neon/forks/gpgme/-/commit/edf5d2bd31b676e044c7798f5934bbffcd194d8e

Git commit 9ad224b6c1b8c4b5e52d8ce9c32b30f0a0d28739 by Werner Koch on 05/04/2004 at 18:54..
Final fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/9ad224b6c1b8c4b5e52d8ce9c32b30f0a0d28739

Git commit fa5930eba71e57f615cabb8c36b17c767e1c03dc by Werner Koch on 06/04/2004 at 14:21..
* config.guess, config.sub, ltmain.sh: Updated to those from
libtools 1.5.4.
https://invent.kde.org/neon/forks/gpgme/-/commit/fa5930eba71e57f615cabb8c36b17c767e1c03dc

Git commit 156ca55890171274141f988e027c3a5e9f85eea7 by Werner Koch on 06/04/2004 at 14:21..
Updated
https://invent.kde.org/neon/forks/gpgme/-/commit/156ca55890171274141f988e027c3a5e9f85eea7

Git commit 054f95f1b314cd57cc60c9924f7509164f2fd050 by Werner Koch on 06/04/2004 at 14:22..
Tell that gpgsm 1.9.6 is required.
https://invent.kde.org/neon/forks/gpgme/-/commit/054f95f1b314cd57cc60c9924f7509164f2fd050

Git commit 55a5561da5a864ba8ae31e1e6d58bed42164a0df by Werner Koch on 06/04/2004 at 14:24..
Bumbed version number
https://invent.kde.org/neon/forks/gpgme/-/commit/55a5561da5a864ba8ae31e1e6d58bed42164a0df

Git commit 9fc0272efc24a84dcf262c39cb56b8e2686eb813 by Werner Koch on 06/04/2004 at 14:41..
Updated
https://invent.kde.org/neon/forks/gpgme/-/commit/9fc0272efc24a84dcf262c39cb56b8e2686eb813

Git commit 8e2c5119798a401516e9eea5eb60d1da1e8c226c by Werner Koch on 06/04/2004 at 14:42..
Post-release version bumb
https://invent.kde.org/neon/forks/gpgme/-/commit/8e2c5119798a401516e9eea5eb60d1da1e8c226c

Git commit 90837eb14edb3462dd528d9632577af6661526c3 by Werner Koch on 07/04/2004 at 16:17..
(decrypt_verify_status_handler): Hack to cope
with meaningless error codes from the verify status function.
https://invent.kde.org/neon/forks/gpgme/-/commit/90837eb14edb3462dd528d9632577af6661526c3

Git commit 162ebc3b04164aee398d2641fadcd96bab8a4cf5 by Werner Koch on 08/04/2004 at 09:53..
* verify.c (_gpgme_verify_status_handler): Ignore the error status
if we can't process it.
* decrypt-verify.c (decrypt_verify_status_handler): Backed out
yesterday's hack.  It is not any longer required.
https://invent.kde.org/neon/forks/gpgme/-/commit/162ebc3b04164aee398d2641fadcd96bab8a4cf5

Git commit a33e7ba3c780c319496d9f3b71c6ce7dcc4d01cd by Werner Koch on 15/04/2004 at 15:18..
(gpgme_get_key): Return an error if FPR is NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/a33e7ba3c780c319496d9f3b71c6ce7dcc4d01cd

Git commit 09bd0f6a895a89a57065b55e2a4e128fb3076b7d by Werner Koch on 15/04/2004 at 15:58..
(prepare_new_sig, _gpgme_verify_status_handler): Remove
unused result.signatures items.
https://invent.kde.org/neon/forks/gpgme/-/commit/09bd0f6a895a89a57065b55e2a4e128fb3076b7d

Git commit 1266b7f0612393979564cb1a62b51c3bf9f3deca by Marcus Brinkmann on 19/04/2004 at 14:09..
2004-04-02  Thomas Schwinge  <schwinge at nic-nac-project.de>

	* autogen.sh: Added ACLOCAL_FLAGS.
https://invent.kde.org/neon/forks/gpgme/-/commit/1266b7f0612393979564cb1a62b51c3bf9f3deca

Git commit 7eb7b24228128dd6dfc8a822b1ff3e0bfa820f80 by Werner Koch on 19/04/2004 at 14:24..
* assuan-socket-connect.c: Include sys/types.h
* assuan-socket-server.c: Ditto
* assuan-domain-connect.c: Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/7eb7b24228128dd6dfc8a822b1ff3e0bfa820f80

Git commit 37a4f44f0615916f4a3b08865fd111ee54a005a5 by Werner Koch on 21/04/2004 at 18:14..
(gpgme_key_unref): Allow passing NULL like free does.
The rule of least surprise.
https://invent.kde.org/neon/forks/gpgme/-/commit/37a4f44f0615916f4a3b08865fd111ee54a005a5

Git commit a7adf03290a9a185ae27ab672401ecfb966a8ac6 by Marcus Brinkmann on 22/04/2004 at 18:23..
2004-04-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.m4: Quote first argument to AC_DEFUN.
https://invent.kde.org/neon/forks/gpgme/-/commit/a7adf03290a9a185ae27ab672401ecfb966a8ac6

Git commit b9ed761b6ebcb31368af72c25fbd0eba2124540b by Marcus Brinkmann on 29/04/2004 at 10:55..
2004-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (set_mainkey_trust_info): Rewritten.
	(set_subkey_capability): Handle 'd' (disabled).
	(set_mainkey_capability): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/b9ed761b6ebcb31368af72c25fbd0eba2124540b

Git commit 7f99d65249710d41e31dff4f4f83997946e899a8 by Marcus Brinkmann on 29/04/2004 at 11:01..
Add item about key fields.
https://invent.kde.org/neon/forks/gpgme/-/commit/7f99d65249710d41e31dff4f4f83997946e899a8

Git commit 715da14d23bc5200888d9711dba28499a0c68dcb by Marcus Brinkmann on 29/04/2004 at 21:18..
Add Albrecht Dress, because he was helpful.
https://invent.kde.org/neon/forks/gpgme/-/commit/715da14d23bc5200888d9711dba28499a0c68dcb

Git commit 7bdaddd2139ae408ebea57722e4d8a30c73104e6 by Marcus Brinkmann on 29/04/2004 at 21:19..
Add Albrecht Dre� <albrecht.dress at arcor.de>, because he was helpful.
https://invent.kde.org/neon/forks/gpgme/-/commit/7bdaddd2139ae408ebea57722e4d8a30c73104e6

Git commit 3e64cff5f8edc5a7fd13a797ab62f4c40414f3db by Marcus Brinkmann on 29/04/2004 at 21:19..
2004-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Correct type of member wrong_key_usage.
https://invent.kde.org/neon/forks/gpgme/-/commit/3e64cff5f8edc5a7fd13a797ab62f4c40414f3db

Git commit 619929800a010cfd4e80a76b388d6546d7e5b16c by Marcus Brinkmann on 29/04/2004 at 21:19..
2004-04-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_signature): Change member WRONG_KEY_USAGE
	to unsigned int.  Same for member _unused.
https://invent.kde.org/neon/forks/gpgme/-/commit/619929800a010cfd4e80a76b388d6546d7e5b16c

Git commit 1a47f1ee9fd8abac41f6d1e3bfc5f9991e168473 by Marcus Brinkmann on 29/04/2004 at 21:47..
Finalize for 0.4.7.
https://invent.kde.org/neon/forks/gpgme/-/commit/1a47f1ee9fd8abac41f6d1e3bfc5f9991e168473

Git commit eadf1ffb7da06823e75dd60164dd17fb990cd439 by Marcus Brinkmann on 29/04/2004 at 21:49..
2004-04-29  Marcus Brinkmann  <marcus at g10code.de>

	Released 0.4.7.

	* configure.ac (LIBGPGME_LT_REVISION): Bump it up.
https://invent.kde.org/neon/forks/gpgme/-/commit/eadf1ffb7da06823e75dd60164dd17fb990cd439

Git commit 54f9887cf6161452db88fed9cfeb906c2350f793 by Marcus Brinkmann on 29/04/2004 at 21:50..
Update version number.
https://invent.kde.org/neon/forks/gpgme/-/commit/54f9887cf6161452db88fed9cfeb906c2350f793

Git commit 6aeee0426a98e306974a0e06a6e85cbe69e16dff by Marcus Brinkmann on 21/05/2004 at 15:15..
doc/
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Add note about new field
	keylist_mode of gpgme_key_t.

gpgme/
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_key): New member keylist_mode.
	* keylist.c (keylist_colon_handler): Set the keylist_mode of KEY.
https://invent.kde.org/neon/forks/gpgme/-/commit/6aeee0426a98e306974a0e06a6e85cbe69e16dff

Git commit cf6910f69dd23214ea2016bbd46c580268646aae by Marcus Brinkmann on 21/05/2004 at 15:51..
doc/
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Decrypt): Add note about new field wrong_key_usage
	of gpgme_decrypt_result_t.

gpgme/
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_decrypt_result): New fields
	wrong_key_usage and _unused.
	* decrypt.c (_gpgme_decrypt_status_handler): Don't skip over
	character after a matched string, as in a protocol error this
	could skip over the trailing binary zero.
	Handle decrypt.keyusage error notifications.
https://invent.kde.org/neon/forks/gpgme/-/commit/cf6910f69dd23214ea2016bbd46c580268646aae

Git commit b9d1269d0a383266de1dbfaaeafde2c6ba53a955 by Marcus Brinkmann on 21/05/2004 at 16:36..
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_status_code_t): Add GPGME_STATUS_REVKEYSIG.
	* verify.c (_gpgme_verify_status_handler): Add handling of
	GPGME_STATUS_REVKEYSIG.
	(parse_trust): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/b9d1269d0a383266de1dbfaaeafde2c6ba53a955

Git commit ae1e3748d7843f2c0f3c9126c76f91dff767bc23 by Marcus Brinkmann on 21/05/2004 at 16:38..
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.text (Verify): Document GPG_ERR_CERT_REVOKED status.
https://invent.kde.org/neon/forks/gpgme/-/commit/ae1e3748d7843f2c0f3c9126c76f91dff767bc23

Git commit d37c56aca0499306b557a02b2eaa240d111312f5 by Marcus Brinkmann on 21/05/2004 at 16:39..
Add item about GPG_ERR_CERT_REVOKED in verify status.
https://invent.kde.org/neon/forks/gpgme/-/commit/d37c56aca0499306b557a02b2eaa240d111312f5

Git commit 17c7de32c38172baf1435a22be87532950f4573d by Marcus Brinkmann on 21/05/2004 at 19:15..
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (parse_error): Do not skip location of where token.
https://invent.kde.org/neon/forks/gpgme/-/commit/17c7de32c38172baf1435a22be87532950f4573d

Git commit bfe01a28ab8b42df668780a3981026a295f92b36 by Marcus Brinkmann on 21/05/2004 at 19:17..
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* decrypt.c (_gpgme_decrypt_status_handler): Fix last change.
	* verify.c (parse_error): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/bfe01a28ab8b42df668780a3981026a295f92b36

Git commit fafe1d93928b58f5e12972811fa128678f4f58c8 by Marcus Brinkmann on 21/05/2004 at 19:19..
Remove item about verify.keyusage.
https://invent.kde.org/neon/forks/gpgme/-/commit/fafe1d93928b58f5e12972811fa128678f4f58c8

Git commit 60e6827efedd8d00a69152011d9e4b49ea42b73c by Marcus Brinkmann on 21/05/2004 at 19:43..
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* libgpgme.vers: List all gpgme symbols under version GPGME_1.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/60e6827efedd8d00a69152011d9e4b49ea42b73c

Git commit ce8d1aed0855b92b14be1a6d9469ba46fda6d6a8 by Marcus Brinkmann on 21/05/2004 at 19:49..
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (GPGME_CONFIG_API_VERSION): New variable,
	substitute it.

gpgme/
2004-05-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in (Options): Support --api-version.
https://invent.kde.org/neon/forks/gpgme/-/commit/ce8d1aed0855b92b14be1a6d9469ba46fda6d6a8

Git commit f7b5cdc464ddbebbe1f7b2c6fc43542e99675a00 by Marcus Brinkmann on 21/05/2004 at 19:53..
Add item about gpgme.m4.
https://invent.kde.org/neon/forks/gpgme/-/commit/f7b5cdc464ddbebbe1f7b2c6fc43542e99675a00

Git commit 8d2e1e7f6134c08eaed83f3563ac60678c3a6ad2 by Marcus Brinkmann on 02/06/2004 at 14:18..
2004-06-02  Marcus Brinkmann  <marcus at g10code.de>

	* libgpgme.vers: Remove C-style comment, which is not supported by
	older binutils.
https://invent.kde.org/neon/forks/gpgme/-/commit/8d2e1e7f6134c08eaed83f3563ac60678c3a6ad2

Git commit 5236702f6f5ee13514ea812ab305b0c614df094d by Marcus Brinkmann on 08/06/2004 at 17:26..
2004-06-08  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Decrypt and Verify): Document the NO_DATA error
	code.
	(Verify): Document the relationship between gpgme_op_verify_result
	and the decrypt and verify operations.
https://invent.kde.org/neon/forks/gpgme/-/commit/5236702f6f5ee13514ea812ab305b0c614df094d

Git commit 99011b0b8dc74ae288ff4454463afee1ebc8e98b by Marcus Brinkmann on 08/06/2004 at 17:39..
2004-06-08  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Listing Keys): Elaborate on the length restrictions
	on search patterns.
https://invent.kde.org/neon/forks/gpgme/-/commit/99011b0b8dc74ae288ff4454463afee1ebc8e98b

Git commit 50caa77ee5098dd6d3f7410f610a756bb5dac72f by Marcus Brinkmann on 08/06/2004 at 17:48..
2004-06-08  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-buffer.c (assuan_write_line): If the line is longer than
	the maximum line length, bail out early.
https://invent.kde.org/neon/forks/gpgme/-/commit/50caa77ee5098dd6d3f7410f610a756bb5dac72f

Git commit c5ed55fb62a0b62b75d50a9fd9a0d0bbd845229c by Marcus Brinkmann on 08/06/2004 at 17:52..
Add two items about documentation fixes.
https://invent.kde.org/neon/forks/gpgme/-/commit/c5ed55fb62a0b62b75d50a9fd9a0d0bbd845229c

Git commit 59dfd6debf417a6d3252edb7ce48904ef2ed69aa by Marcus Brinkmann on 08/06/2004 at 18:46..
D'oh, forget the release date in the released NEWS entry!

Prepare for upcoming release.
https://invent.kde.org/neon/forks/gpgme/-/commit/59dfd6debf417a6d3252edb7ce48904ef2ed69aa

Git commit 533d9dfb94d4b89ce40a8d0cefce3af5032b6aaa by Marcus Brinkmann on 23/06/2004 at 13:52..
2004-06-23  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-handler.c: Include <errno.h>.
https://invent.kde.org/neon/forks/gpgme/-/commit/533d9dfb94d4b89ce40a8d0cefce3af5032b6aaa

Git commit 3f1b8857e69bfd4d8b8e6c729817d19c6adce2f1 by Marcus Brinkmann on 23/06/2004 at 14:11..
2004-06-23  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Check for <sys/uio.h>.

assuan
2004-06-23  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-domain-connect.c [HAVE_SYS_UIO_H]: Include <sys/uio.h>.
https://invent.kde.org/neon/forks/gpgme/-/commit/3f1b8857e69bfd4d8b8e6c729817d19c6adce2f1

Git commit a89821bbb5e49395e2d99e878177cf86eb2ad3fd by Marcus Brinkmann on 23/06/2004 at 14:13..
Update version number.
https://invent.kde.org/neon/forks/gpgme/-/commit/a89821bbb5e49395e2d99e878177cf86eb2ad3fd

Git commit 78bd20d676da382b9daaf2e26b0d9b0bef4df12d by Marcus Brinkmann on 23/06/2004 at 21:15..
2004-06-23  Marcus Brinkmann  <marcus at g10code.de>

        * key.c (_gpgme_key_append_name): Make sure tail points to the
        byte following the uid.
        (_gpgme_key_add_sig): Likewise.  Don't use calloc, but malloc and
        memset.
https://invent.kde.org/neon/forks/gpgme/-/commit/78bd20d676da382b9daaf2e26b0d9b0bef4df12d

Git commit b2c86ab705a12227b5f2749168a5383db4ae65fb by Moritz Schulte on 29/07/2004 at 20:46..
2004-07-29  Moritz Schulte  <moritz at g10code.com>

	* gpgme.texi (Verify): Fix gpgme_get_key example (ancient
	force_update argument was still there).
https://invent.kde.org/neon/forks/gpgme/-/commit/b2c86ab705a12227b5f2749168a5383db4ae65fb

Git commit 6d65ae9632d9c92366f25e51e32c703cea8de8ce by Marcus Brinkmann on 17/08/2004 at 21:13..
2004-08-17  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c (struct): Add new fields VALIDITY and
	KEY_LENGTH.
	(main): Use them.
	* gpgsm/t-import.c (check_result): New argument total_stat.
	(main): Pass this argument.  Reduce number of total considered
	keys to 1 for the second test.
https://invent.kde.org/neon/forks/gpgme/-/commit/6d65ae9632d9c92366f25e51e32c703cea8de8ce

Git commit 8802eb42401987405e975446c65131638dcd3152 by Marcus Brinkmann on 17/08/2004 at 21:16..
2004-08-17  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (build_argv): Use --no-sk-comment, not --no-comment.
https://invent.kde.org/neon/forks/gpgme/-/commit/8802eb42401987405e975446c65131638dcd3152

Git commit 92f095084a03593a1c8b85cea4e50bd38e3123d9 by Marcus Brinkmann on 18/08/2004 at 00:48..
2004-08-18  Marcus Brinkmann  <marcus at g10code.de>

	* passphrase.c (_gpgme_passphrase_status_handler): Always run the
	status handler.
https://invent.kde.org/neon/forks/gpgme/-/commit/92f095084a03593a1c8b85cea4e50bd38e3123d9

Git commit 3e4881a65a900cf143063b9b8f6067e00d67e7e3 by Marcus Brinkmann on 14/09/2004 at 18:30..
2004-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* acinclude.m4: Add copyright notice.
	(jm_GLIBC21, AM_PATH_GPG_ERROR, _AC_PTH_ERROR, _AC_PTH_VERBOSE,
	AC_CHECK_PTH): Removed.

m4/
2004-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* glibc21.m4: New file.
	* gpg-error.m4: New file.
	* pth.m4: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/3e4881a65a900cf143063b9b8f6067e00d67e7e3

Git commit 851f76fe5d5881746268ec011021d79ac9553cd3 by Marcus Brinkmann on 14/09/2004 at 18:31..
2004-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* pth.m4: Disable _ac_pth_line, and don't fail if Pth is not
	found.
https://invent.kde.org/neon/forks/gpgme/-/commit/851f76fe5d5881746268ec011021d79ac9553cd3

Git commit 13a65ef0e0fbf5929ced8ba7e6ab8ee87f7ae561 by Marcus Brinkmann on 14/09/2004 at 18:40..
2004-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.m4: Add copyright notice.
https://invent.kde.org/neon/forks/gpgme/-/commit/13a65ef0e0fbf5929ced8ba7e6ab8ee87f7ae561

Git commit c9209a7d1969b90143278a839b160e7c8b67513b by Marcus Brinkmann on 14/09/2004 at 19:27..
2004-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Print diagnostics about found thread libraries at
	the end.  Check for the versions of GPG and GPGSM and print the
	found versions at the end.
	(HAVE_GPGSM): Do not require GPGSM to exist and be readable.
	(AC_CONFIG_MACRO_DIR): Invoke with argument m4.
https://invent.kde.org/neon/forks/gpgme/-/commit/c9209a7d1969b90143278a839b160e7c8b67513b

Git commit 84af83d668c686599ff744381a280fe9f0ddec10 by Marcus Brinkmann on 14/09/2004 at 19:47..
2004-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Improve diagnostics with version check.
https://invent.kde.org/neon/forks/gpgme/-/commit/84af83d668c686599ff744381a280fe9f0ddec10

Git commit fcdad8cfb9b3a69a44ccaec5170bc43b88afad1c by Marcus Brinkmann on 16/09/2004 at 22:17..
2004-09-17  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Disable AC_CONFIG_MACRO_DIR for now.
https://invent.kde.org/neon/forks/gpgme/-/commit/fcdad8cfb9b3a69a44ccaec5170bc43b88afad1c

Git commit 497b0f8bd8eafe6e4fd58c7ff5c128c0f199ba43 by Marcus Brinkmann on 16/09/2004 at 22:21..
Add entry about AC_CONFIG_MACRO_DIR.
https://invent.kde.org/neon/forks/gpgme/-/commit/497b0f8bd8eafe6e4fd58c7ff5c128c0f199ba43

Git commit 4b8e1217fc9ea7ef49ce048fc1e466d7ea568d26 by Marcus Brinkmann on 23/09/2004 at 17:54..
2004-09-23  Marcus Brinkmann  <marcus at g10code.de>

	* data-stream.c (stream_seek): Call ftello and return the current
	offset.
	* data.h (struct gpgme_data): Change type of data.mem.offset to
	off_t.
	* data.c (gpgme_data_seek): Check dh->cbs->seek callback, not read
	callback.  If SEEK_CUR, adjust the offset by the pending buffer
	size.  Clear pending buffer on success.
https://invent.kde.org/neon/forks/gpgme/-/commit/4b8e1217fc9ea7ef49ce048fc1e466d7ea568d26

Git commit 7bfcd45c9fde613409db28e189412ce14be2badc by Marcus Brinkmann on 23/09/2004 at 19:23..
2004-09-23  Marcus Brinkmann  <marcus at g10code.de>

	* data.c (_gpgme_data_outbound_handler): Close the file descriptor
	if we get an EPIPE.
https://invent.kde.org/neon/forks/gpgme/-/commit/7bfcd45c9fde613409db28e189412ce14be2badc

Git commit ae7ead80a00f3a641d484b464cd225f30a4dca81 by Marcus Brinkmann on 27/09/2004 at 15:23..
2004-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Update copyright year for tex version.
https://invent.kde.org/neon/forks/gpgme/-/commit/ae7ead80a00f3a641d484b464cd225f30a4dca81

Git commit b8b44c4767a25912db79e641ff660e44145c5d40 by Marcus Brinkmann on 27/09/2004 at 20:24..
2004-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Passphrase Callback): Document
	GPG_ERR_NOT_IMPLEMENTED.
https://invent.kde.org/neon/forks/gpgme/-/commit/b8b44c4767a25912db79e641ff660e44145c5d40

Git commit 9a2a72db087a10a5d18e97e9d2c6c7a305ca63ae by Marcus Brinkmann on 28/09/2004 at 11:42..
2004-09-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Passphrase Callback): Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/9a2a72db087a10a5d18e97e9d2c6c7a305ca63ae

Git commit cc769c66edcceb87d0d27658ff620a936004f867 by Marcus Brinkmann on 28/09/2004 at 23:15..
doc/
2004-09-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Change type of keylist_mode in
	gpgme_key_t to gpgme_keylist_mode_t.

gpgme/
2004-09-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (GPGME_IMPORT_NEW, GPGME_IMPORT_UID, GPGME_IMPORT_SIG,
	GPGME_IMPORT_SUBKEY, GPGME_IMPORT_SECRET,
	(GPGME_KEYLIST_MODE_LOCAL, GPGME_KEYLIST_MODERN_EXTERN,
	GPGME_KEYLIST_MODE_SIGS, GPGME_KEYLIST_MODE_VALIDATE): Change from
	enum to macros.
	(gpgme_keylist_mode_t): Define as unsigned int.
	(gpgme_key_t): Change type of keylist_mode to
	gpgme_keylist_mode_t.
https://invent.kde.org/neon/forks/gpgme/-/commit/cc769c66edcceb87d0d27658ff620a936004f867

Git commit b6852571b37c5525024a7ba4bbe99261aa50c04e by Marcus Brinkmann on 28/09/2004 at 23:25..
Update some entries.
https://invent.kde.org/neon/forks/gpgme/-/commit/b6852571b37c5525024a7ba4bbe99261aa50c04e

Git commit a2d38f6824c79eeb906e02266a51e233502ce684 by Marcus Brinkmann on 30/09/2004 at 00:19..
2004-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* data.c (_gpgme_data_inbound_handler): Use _gpgme_io_read, not
	read, to improve debug output.
https://invent.kde.org/neon/forks/gpgme/-/commit/a2d38f6824c79eeb906e02266a51e233502ce684

Git commit 1819293208e3a2eaf01303b539a2d091626cbe5e by Marcus Brinkmann on 30/09/2004 at 00:24..
2004-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (read_status): Move the polling of the output data pipe
	to just before removing the command fd, from just before adding
	it.  This avoids buffering problems.
https://invent.kde.org/neon/forks/gpgme/-/commit/1819293208e3a2eaf01303b539a2d091626cbe5e

Git commit 5c4008a1766e8ca06b0e78faa508d73229fc7e98 by Marcus Brinkmann on 30/09/2004 at 01:06..
2004-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.m4: Implement the --api-version check.
https://invent.kde.org/neon/forks/gpgme/-/commit/5c4008a1766e8ca06b0e78faa508d73229fc7e98

Git commit 2fcd7ca12d61d7e91907caabfcbc98cb979a9e38 by Marcus Brinkmann on 30/09/2004 at 01:30..
2004-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (EXTRA_DIST): Remove README-alpha.
	* README-alpha: Remove file.
https://invent.kde.org/neon/forks/gpgme/-/commit/2fcd7ca12d61d7e91907caabfcbc98cb979a9e38

Git commit 0a026d32c4bd1977ea1600577b2752e43b115f53 by Marcus Brinkmann on 30/09/2004 at 01:30..
Update information.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a026d32c4bd1977ea1600577b2752e43b115f53

Git commit 61006547a93a51a773fa97dd83b7b278b4d51be5 by Marcus Brinkmann on 30/09/2004 at 01:32..
2004-09-30  Marcus Brinkmann  <marcus at g10code.de>

	Released 1.0.0.

	* configure.ac (LIBGPGME_LT_REVISION): Bump up to 1.
	(AC_INIT): Set version to 1.0.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/61006547a93a51a773fa97dd83b7b278b4d51be5

Git commit ba4d74f2cb7a7e5f14aba56a5ec57ee042b2d1ac by Marcus Brinkmann on 30/09/2004 at 01:33..
Update for 1.0.0 release.
https://invent.kde.org/neon/forks/gpgme/-/commit/ba4d74f2cb7a7e5f14aba56a5ec57ee042b2d1ac

Git commit f3b369df84ea8bfd086a78c83388406c8c95f70e by Marcus Brinkmann on 30/09/2004 at 01:44..
Update the information before release, for what it's worth.
https://invent.kde.org/neon/forks/gpgme/-/commit/f3b369df84ea8bfd086a78c83388406c8c95f70e

Git commit 5b667d74fa66d4885c68d9d3c01bfcc6dfdb0287 by Marcus Brinkmann on 30/09/2004 at 02:11..
2004-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (gpgme_TEXINFOS): Remove fdl.texi.
	* gpgme.texi: Do not include fdl.texi.  Change license to GPL.
	* fdl.texi: File removed.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b667d74fa66d4885c68d9d3c01bfcc6dfdb0287

Git commit ee3186519d065e9227661786da18de8fb6c32b4d by Marcus Brinkmann on 30/09/2004 at 02:37..
Add some more info.
https://invent.kde.org/neon/forks/gpgme/-/commit/ee3186519d065e9227661786da18de8fb6c32b4d

Git commit 9bccf0d83016d20911c483a2d1f59095fbf83331 by Marcus Brinkmann on 05/10/2004 at 15:08..
2004-10-05  Marcus Brinkmann  <marcus at g10code.de>

	* op-support.c (_gpgme_op_data_lookup): Use char pointer for
	pointer arithmetic.
https://invent.kde.org/neon/forks/gpgme/-/commit/9bccf0d83016d20911c483a2d1f59095fbf83331

Git commit e2297804cff3de9a176661d0005dc85fd1c84018 by Marcus Brinkmann on 22/10/2004 at 16:55..
2004-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (map_assuan_error): Return 0 if ERR is 0.
	(start): Call map_assuan_error on return value of
	assuan_write_line.
https://invent.kde.org/neon/forks/gpgme/-/commit/e2297804cff3de9a176661d0005dc85fd1c84018

Git commit bbcda9f87f44d2c55858a176f1ae430f7d6dc255 by Marcus Brinkmann on 22/10/2004 at 17:57..
2004-10-03  Marcus Brinkmann  <marcus at g10code.de>

	* verify.c (parse_trust): If no reason is provided, set
	SIG->validity_reason to 0.
	(calc_sig_summary): Set GPGME_SIGSUM_CRL_TOO_OLD if appropriate.
https://invent.kde.org/neon/forks/gpgme/-/commit/bbcda9f87f44d2c55858a176f1ae430f7d6dc255

Git commit 0f087215d55e9eb0e39d466d16e8179e464b1129 by Marcus Brinkmann on 22/10/2004 at 18:11..
Add item about 1.0.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/0f087215d55e9eb0e39d466d16e8179e464b1129

Git commit d7d2dfa15ab056cfc4ee5d6c30f4bd6128975995 by Marcus Brinkmann on 22/10/2004 at 18:16..
2004-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Set HAVE_GPGSM to true only if $GPGSM is not "no".
https://invent.kde.org/neon/forks/gpgme/-/commit/d7d2dfa15ab056cfc4ee5d6c30f4bd6128975995

Git commit bcd1b60960dac19cfb84d00b8842c715835d04f2 by Marcus Brinkmann on 22/10/2004 at 18:19..
2004-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (LIBGPGME_LT_REVISION): Bump up to 2.
	(AC_INIT): Set version to 1.0.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/bcd1b60960dac19cfb84d00b8842c715835d04f2

Git commit b5853f2afda5c9005e9437dba0ce4fbec83986c4 by Marcus Brinkmann on 22/10/2004 at 18:21..
2004-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (LIBGPGME_LT_REVISION): Bump up to 2.
	(AC_INIT): Set version to 1.0.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/b5853f2afda5c9005e9437dba0ce4fbec83986c4

Git commit cae6d4e94041ff135452f1f8fa6826c398aeba48 by Werner Koch on 04/11/2004 at 13:58..
.
https://invent.kde.org/neon/forks/gpgme/-/commit/cae6d4e94041ff135452f1f8fa6826c398aeba48

Git commit 4504426076149586a54c536049fc8ac374b6345c by Marcus Brinkmann on 07/12/2004 at 14:37..
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (GPGSM_VERSION): Fix filter to get it.
https://invent.kde.org/neon/forks/gpgme/-/commit/4504426076149586a54c536049fc8ac374b6345c

Git commit 886cde2ea09c9d797fcea19d953ebda3866ec43e by Marcus Brinkmann on 07/12/2004 at 15:25..
Revert change to fix up gpgme-1.0.1 release tag glitch.
https://invent.kde.org/neon/forks/gpgme/-/commit/886cde2ea09c9d797fcea19d953ebda3866ec43e

Git commit 0120be1520857ee63d38a5018387a6733d9bd595 by Marcus Brinkmann on 07/12/2004 at 15:27..
Fix up gpgme-1.0.1 release changes.  Somehow the correct change didn't
make it into the repository.
https://invent.kde.org/neon/forks/gpgme/-/commit/0120be1520857ee63d38a5018387a6733d9bd595

Git commit e8e44007853324620522a095f71e93ca30cf8793 by Marcus Brinkmann on 07/12/2004 at 15:30..
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (GPGSM_VERSION): Fix filter to get it.
https://invent.kde.org/neon/forks/gpgme/-/commit/e8e44007853324620522a095f71e93ca30cf8793

Git commit 0ebb858f1ea4ad3181e6dc71a98338e4e060db13 by Marcus Brinkmann on 07/12/2004 at 18:25..
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* libgpgme.vers (GPGME_1.1): New version.
	* engine-backend.h (struct engine_ops): Add argument FILE_NAME to
	member get_version().  Add arguments FILE_NAME and HOME_DIR to
	member new().  Change return type of get_file_name and get_version
	to char *.
	* engine-gpgsm.c (gpgsm_get_version): Change return type to char
	pointer.  Do not cache result.
	(gpgsm_new): Add file_name and home_dir argument, and use them
	instead of the defaults, if set.
	* rungpg.c (struct engine_gpg): New member file_name.
	(gpg_get_version): Change return type to char pointer, and do not
	cache result.
	(gpg_release): Free gpg->file_name.
	(gpg_new): Take new arguments file_name and home_dir.  Set the
	--homedir argument if HOME_DIR is not NULL.  Set gpg->file_name.
	(start): Use gpg->file_name instead _gpgme_get_gpg_path, if set.
	* engine.h (_gpgme_engine_info_copy, _gpgme_engine_info_release):
	New prototypes.
	(_gpgme_engine_new): Change first argument to gpgme_engine_info_t
	info.
	* engine.c: Include <assert.h>.
	(gpgme_get_engine_info): Set *INFO within the lock.  Move
	ENGINE_INFO and ENGINE_INFO_LOCK to ....
	(engine_info, engine_info_lock): ... here.  New static variables.
	(engine_get_version): Add file_name argument to
	get_version invocation.  Change return type to char pointer.
	(gpgme_engine_check_version): Rewritten to free() the return value
	of engine_get_version after using it.
	(_gpgme_engine_info_release): New function.
	(gpgme_get_engine_info): Rewritten.
	(_gpgme_engine_info_copy): New function.
	(_gpgme_set_engine_info): New function.
	(gpgme_set_engine_info): New function.
	(_gpgme_engine_new): Change first argument to gpgme_engine_info_t
	info, and use that.
	* gpgme.h (struct _gpgme_engine_info): Change type of file_name
	and version to char * (remove the const).  New member home_dir.
	(gpgme_set_engine_info, gpgme_ctx_get_engine_info,
	gpgme_ctx_set_engine_info): New prototypes.
	* context.h (struct gpgme_context): New member engine_info.
	* gpgme.c (gpgme_new): Allocate CTX->engine_info.
	(gpgme_release): Deallocate CTX->engine_info.
	(gpgme_ctx_get_engine_info, gpgme_ctx_set_engine_info): New
	functions.
	* op-support.c (_gpgme_op_reset): Look for correct engine info and
	pass it to _gpgme_engine_new.
	* version.c (gpgme_check_version): Adjust to
	_gpgme_compare_versions returning an int.
	(_gpgme_compare_versions): Return an int value, not a const char
	pointer.
	* ops.h (_gpgme_compare_versions): Same for prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/0ebb858f1ea4ad3181e6dc71a98338e4e060db13

Git commit 4b45385889b61e894570081ed0531e0c52bfcbc7 by Marcus Brinkmann on 07/12/2004 at 18:49..
Update.
https://invent.kde.org/neon/forks/gpgme/-/commit/4b45385889b61e894570081ed0531e0c52bfcbc7

Git commit d40de0d14f8f4a434bb43d300ba1a11674275ba8 by Marcus Brinkmann on 07/12/2004 at 19:05..
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Creating Contexts): Fix cut&paste error.  Reported
	by Noel Torres <envite at rolamasao.org>.
https://invent.kde.org/neon/forks/gpgme/-/commit/d40de0d14f8f4a434bb43d300ba1a11674275ba8

Git commit a4a985c4ccb6e8552c1b465a1a50a08486c989f4 by Marcus Brinkmann on 07/12/2004 at 19:06..
Add Noel Torres <envite at rolamasao.org>.
https://invent.kde.org/neon/forks/gpgme/-/commit/a4a985c4ccb6e8552c1b465a1a50a08486c989f4

Git commit 71775ad8fcdcc5e7066b94fa29dd7c44c3469c38 by Marcus Brinkmann on 07/12/2004 at 21:13..
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* README: Refer to COPYING.LESSER and "each file" instead of
	COPYING.
	* COPYING.LESSER: New file.
	* gpgme.spec.in (%doc): Add COPYING.LESSER.
	* acinclude.m4, configure.ac, Makefile.am: Change license to LGPL
	2.1 or later.
	* TODO: Add copyright notice.
	* README.CVS: Likewise.

assuan/
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* README.1st: Add copyright notice.

doc/
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am: Change license to LGPL.
	(gpgme_TEXINFOS): Replace gpl.texi with lesser.texi.

	* gpgme.texi: Change license to LGPL (also for documentation of
	GPGME's license).
	* lesser.texi: New file.
	* gpl.texi: File removed.

gpgme/
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* putc_unlocked.c, funopen.c: I just claim copyright on these
	files and change their license to LGPL, because they are totally
	trivial wrapper functions.
	* isascii.c: Change copyright notice to the one from ctype/ctype.h
	in the GNU C Library (CVS Head 2004-10-10), where isascii is
	defined as a macro doing exactly the same as the function in this
	file.
	* memrchr.c: Update from the GNU C Library (CVS Head 2001-07-06).
	* stpcpy.c: Update from the GNU C Library (CVS Head 2004-10-10).
	* ath.c, ath-compat.c, ath.h, ath-pth.c, ath-pth-compat.c,
	ath-pthread.c, ath-pthread-compat.c, context.h, conversion.c,
	data.c, data-compat.c, data-fd.c, data.h, data-mem.c,
	data-stream.c, data-user.c, debug.c, debug.h, decrypt.c,
	decrypt-verify.c, delete.c, edit.c, encrypt.c, encrypt-sign.c,
	engine-backend.h, engine.c, engine-gpgsm.c, engine.h, error.c,
	export.c, genkey.c, get-env.c, gpgme.c, gpgme.h, import.c, io.h,
	key.c, keylist.c, mkstatus, Makefile.am, ops.h, op-support.c,
	passphrase.c, posix-io.c, posix-sema.c, posix-util.c, progress.c,
	rungpg.c, sema.h, sign.c, signers.c, trust-item.c, trustlist.c,
	util.h, verify.c, version.c, w32-io.c, w32-sema.c, w32-util.c,
	wait.c, wait-global.c, wait.h, wait-private.c, wait-user.c: Change
	license to LGPL.

tests/
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/mkdemodirs: Add copyright notice.

	* gpgsm/Makefile.am, gpgsm/t-support.h, gpgsm/t-decrypt.c,
	gpgsm/t-encrypt.c, gpgsm/t-export.c, gpgsm/t-genkey.c,
	gpgsm/t-import.c, gpgsm/t-keylist.c, gpgsm/t-sign.c,
	gpgsm/t-verify.c, gpg/Makefile.am, gpg/t-decrypt.c,
	gpg/t-decrypt-verify.c, gpg/t-edit.c, gpg/t-encrypt.c,
	gpg/t-encrypt-sign.c, gpg/t-encrypt-sym.c, gpg/t-eventloop.c,
	gpg/t-export.c, gpg/t-genkey.c, gpg/t-import.c, gpg/t-keylist.c,
	gpg/t-keylist-sig.c, gpg/t-sign.c, gpg/t-signers.c,
	gpg/t-support.h, gpg/t-thread1.c, gpg/t-trustlist.c,
	gpg/t-verify.c, Makefile.am, t-data.c, t-engine-info.c,
	t-version.c: Change license to LGPL.
https://invent.kde.org/neon/forks/gpgme/-/commit/71775ad8fcdcc5e7066b94fa29dd7c44c3469c38

Git commit 31c6be048ff1690211ac1fd7efdcdec0d8e516a8 by Marcus Brinkmann on 07/12/2004 at 21:21..
2004-12-07  Marcus Brinkmann  <marcus at g10code.de>

        * lesser.texi (Library Copying): Change from @appendixsec to
        @appendix.
        * gpgme.texi (Features): Change reference to GPL to one to LGPL.
https://invent.kde.org/neon/forks/gpgme/-/commit/31c6be048ff1690211ac1fd7efdcdec0d8e516a8

Git commit f355692a6562b5f1f149cb4c8a31ea94c07ae8ba by Marcus Brinkmann on 07/12/2004 at 21:24..
Add news entry for 0.3.16.
https://invent.kde.org/neon/forks/gpgme/-/commit/f355692a6562b5f1f149cb4c8a31ea94c07ae8ba

Git commit 04be3c316c6fe8267f185180aa2cf7b5c109898f by Marcus Brinkmann on 11/12/2004 at 15:48..
2004-12-11  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Replace ttyname_r if it doesn't exist (and warn in
	that case).

gpgme/
2004-12-11  Marcus Brinkmann  <marcus at g10code.de>

	* util.h [HAVE_CONFIG_H && HAVE_TTYNAME_R] (ttyname_r): Define
	prototype.
	* ttyname_r.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/04be3c316c6fe8267f185180aa2cf7b5c109898f

Git commit c00c3c75ffd1ecc36962fac82ceaca8d7007d795 by Marcus Brinkmann on 11/12/2004 at 15:48..
Small beautification.
https://invent.kde.org/neon/forks/gpgme/-/commit/c00c3c75ffd1ecc36962fac82ceaca8d7007d795

Git commit 3ad6f89275e6aa1906324a164dc794b9e12f5196 by Marcus Brinkmann on 12/12/2004 at 14:58..
2004-12-12  Marcus Brinkmann  <marcus at g10code.de>

	* engine.c (_gpgme_set_engine_info): Fix assertion.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ad6f89275e6aa1906324a164dc794b9e12f5196

Git commit a68fd530efb0f3e0d263aa4725c788daa57e7174 by Marcus Brinkmann on 21/12/2004 at 08:42..
2004-12-16  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-pipe-connect.c (do_finish): Do not wait for child to finish.
	(assuan_pipe_connect): Use double-fork approach.
	* assuan-connect.c (assuan_disconnect): Do not write BYE to the
	status line.
https://invent.kde.org/neon/forks/gpgme/-/commit/a68fd530efb0f3e0d263aa4725c788daa57e7174

Git commit a8d0033fff04f7ec8200fb9d7118c234c4ef12bc by Marcus Brinkmann on 12/01/2005 at 10:16..
2004-12-28  Werner Koch  <wk at g10code.com>

	* pth.m4: Changed quoting for use with automake 1.9.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8d0033fff04f7ec8200fb9d7118c234c4ef12bc

Git commit 2fe3ceba81deda356562fe9d98fbcf9e5f7838fd by Marcus Brinkmann on 12/01/2005 at 10:28..
2004-12-28  Werner Koch  <wk at g10code.com>

	Released 1.0.2.

	* Makefile.am (AUTOMAKE_OPTIONS): Build bzip 2 version.
	(ACLOCAL_AMFLAGS): Add -I m4.
	* configure.ac: Require automake 1.9.3 and autoconf 2.59.
	* acinclude.m4: Changed quoting for automake 1.9.
	* README: Use SHA1 instead of MD5.
https://invent.kde.org/neon/forks/gpgme/-/commit/2fe3ceba81deda356562fe9d98fbcf9e5f7838fd

Git commit d45f97f18534d7d29d188ce67b9b0215345de301 by Marcus Brinkmann on 12/01/2005 at 11:13..
2005-01-12  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Engine Configuration): New section.
	(Crypto Engine): New subsection.
https://invent.kde.org/neon/forks/gpgme/-/commit/d45f97f18534d7d29d188ce67b9b0215345de301

Git commit 7d10a7f2960093d4aaff48f26b2180359e32eb84 by Marcus Brinkmann on 12/01/2005 at 11:18..
Remove some obsolete entries.
https://invent.kde.org/neon/forks/gpgme/-/commit/7d10a7f2960093d4aaff48f26b2180359e32eb84

Git commit 2d5f4c8188549fc0d5a01fc700e194bb251cd933 by Timo Schulz on 09/03/2005 at 11:47..
2005-03-07  Timo Schulz  <twoaday at g10code.de>

        * gpgme.h: [_WIN32] Removed ssize_t typedef.
        * ath.h: [_WIN32] Added some (dummy) types.
        * io.h: [_WIN32] include stdio.h.
        * data.h: [_WIN32] Define EOPNOTSUPP.
        * w32-io.c [_WIN32] (_gpgme_io_subsystem_init): New.
        * gpgme.c [_WIN32] (gpgme_set_locale): Disabled.
https://invent.kde.org/neon/forks/gpgme/-/commit/2d5f4c8188549fc0d5a01fc700e194bb251cd933

Git commit e86f9181adc947c235d270d2d3fcc3265c1f29cc by Werner Koch on 09/03/2005 at 16:03..
* acinclude.m4 (GNUPG_CHECK_VA_COPY): Assume no when cross-compiling.

* Makefile.am (EXTRA_DIST): Include autogen.sh

* autogen.sh: Added the usual code to build for W32 (--build-w32).

* configure.ac: Fixed the mingw32 host string, removed OS/2 stuff.
(HAVE_DRIVE_LETTERS): Removed.
(HAVE_W32_SYSTEM): Added.
(AC_GNU_SOURCE): New to replace the identical AH_VERBATIM.
(AH_BOTTOM): Added.

* w32-util.c (_gpgme_get_gpg_path, _gpgme_get_gpgsm_path): Do not
cast away type checks.

* io.h [W32]: Do not include stdio.h.  If it is needed do it at
the right place.

* data.h [W32]: Removed kludge for EOPNOTSUP.
* data.c, data-compat.c [W32]: Explicitly test for it here.
https://invent.kde.org/neon/forks/gpgme/-/commit/e86f9181adc947c235d270d2d3fcc3265c1f29cc

Git commit 2e21a29ff9b2f0ffa6597c952449b47476ce7e57 by Timo Schulz on 10/03/2005 at 19:25..
2005-03-10  Timo Schulz  <twoaday at g10code.com>

        * gpgme.def: New. Exported GPGME functions.
        * build-dll: New.
https://invent.kde.org/neon/forks/gpgme/-/commit/2e21a29ff9b2f0ffa6597c952449b47476ce7e57

Git commit 2262d604c2298f54bdab8e5b92f8006e7c150963 by Werner Koch on 22/03/2005 at 09:10..
(struct assuan_io): Renamed elements READ and
WRITE to READFNC and WRITEFNC to avoid problems with read defined
as macro.  Changed callers.  Noted by Ville Skytt��.
https://invent.kde.org/neon/forks/gpgme/-/commit/2262d604c2298f54bdab8e5b92f8006e7c150963

Git commit 259c65d94f01797d4fb841cfd9e803965f41886b by Marcus Brinkmann on 24/03/2005 at 13:05..
2005-03-24  Marcus Brinkmann  <marcus at g10code.de>

	* io.h: Rename to ...
	* priv-io.h: ... this.
	* Makefile.am (libgpgme_real_la_SOURCES): Change io.h to priv-io.h.
	* data.c, engine-gpgsm.c, posix-io.c, rungpg.c, version.c,
	w32-io.c, wait-private.c, wait-global.c, wait-user.c, wait.c:
	Change all includes of "io.h" to "priv-io.h"
https://invent.kde.org/neon/forks/gpgme/-/commit/259c65d94f01797d4fb841cfd9e803965f41886b

Git commit 719d27dfce421a929ecf22032896034c3c32faca by Marcus Brinkmann on 24/03/2005 at 13:09..
2005-03-24  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AH_BOTTOM): Removed.

gpgme/
2005-03-24  Marcus Brinkmann  <marcus at g10code.de>

	* data.h (EOPNOTSUPP) [_WIN32]: Remove definition.
	* data.c (EOPNOTSUPP) [HAVE_W32_SYSTEM]: Remove definition.
	(gpgme_data_read, gpgme_data_write, gpgme_data_seek): Return
	ENOSYS instead EOPNOTSUPP.
	* data-compat.c (EOPNOTSUPP) [HAVE_W32_SYSTEM]: Remove definition.
	(gpgme_error_to_errno): Map GPG_ERR_NOT_SUPPORTED
	to ENOSYS.
https://invent.kde.org/neon/forks/gpgme/-/commit/719d27dfce421a929ecf22032896034c3c32faca

Git commit 33fee70045a41f58e3769081ee69a6c99c7a3013 by Marcus Brinkmann on 14/04/2005 at 08:41..
2005-04-14  Marcus Brinkmann  <marcus at g10code.de>

	* wait-global.c (gpgme_wait): If no context is found, and we
	should not hang, set *status to 0 and return NULL.
	Reported by Igor Belyi <gpgme at katehok.ac93.org>.
https://invent.kde.org/neon/forks/gpgme/-/commit/33fee70045a41f58e3769081ee69a6c99c7a3013

Git commit bfa554b3e8975161274ad13b44fddf0f5d451ea9 by Marcus Brinkmann on 14/04/2005 at 08:44..
Add Igor Belyi <gpgme at katehok.ac93.org>.
https://invent.kde.org/neon/forks/gpgme/-/commit/bfa554b3e8975161274ad13b44fddf0f5d451ea9

Git commit cbddc8e1346c3f565fa0d0768691c1affacbd86d by Marcus Brinkmann on 14/04/2005 at 08:45..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/cbddc8e1346c3f565fa0d0768691c1affacbd86d

Git commit 34f97998390b7be1febbb436f01482984062d7d6 by Marcus Brinkmann on 14/04/2005 at 08:49..
2005-04-14  Marcus Brinkmann  <marcus at g10code.de>

	* wait-global.c (gpgme_wait): Use LI->ctx when checking a context
	in the list, not the user-provided CTX.
https://invent.kde.org/neon/forks/gpgme/-/commit/34f97998390b7be1febbb436f01482984062d7d6

Git commit 826736608a8695809f9d2ece9508c0a6a2cd2036 by Werner Koch on 21/04/2005 at 07:13..
(calc_sig_summary): Set the key revoked bit.
https://invent.kde.org/neon/forks/gpgme/-/commit/826736608a8695809f9d2ece9508c0a6a2cd2036

Git commit 02a1dbee30e990b25dae67fe3406dbac1463f509 by Marcus Brinkmann on 28/04/2005 at 16:11..
doc/
2005-04-28  Marcus Brinkmann  <marcus at g10code.de>

        * gpgme.texi (Included Certificates): Document
        GPGME_INCLUDE_CERTS_DEFAULT.

gpgme/
2005-04-28  Marcus Brinkmann  <marcus at g10code.de>

        * gpgme.h (GPGME_INCLUDE_CERTS_DEFAULT): New macro.
        * engine-gpgsm.c (gpgsm_sign): Send the include-certs option after
        the reset, just for cleanliness, and do not sent it at all if the
        default is requested.
        * gpgme.c (gpgme_set_include_certs): Allow to use
        GPGME_INCLUDE_CERTS_DEFAULT.
https://invent.kde.org/neon/forks/gpgme/-/commit/02a1dbee30e990b25dae67fe3406dbac1463f509

Git commit 1184d349cd494088cdc22acc87ac5898173c995e by Marcus Brinkmann on 05/05/2005 at 12:00..
2005-05-05  Marcus Brinkmann  <marcus at g10code.de>

	* data-user.c (user_release): Only call user hook if provided.
	(user_seek): Return EBADF if no user hook is provided.
	(user_read): Likewise.
	(user_write): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/1184d349cd494088cdc22acc87ac5898173c995e

Git commit bd44798c95ebeb269cbf83c0ff43755db5a8bd3a by Marcus Brinkmann on 11/05/2005 at 12:48..
2005-05-11  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c (_gpgme_io_select): Fix loop increment.
https://invent.kde.org/neon/forks/gpgme/-/commit/bd44798c95ebeb269cbf83c0ff43755db5a8bd3a

Git commit d386d747e29fd84dfb605185c282eaee2e306c25 by Marcus Brinkmann on 17/05/2005 at 12:26..
2005-05-17  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_new): Set the CTX->include_certs default to the
	default.
https://invent.kde.org/neon/forks/gpgme/-/commit/d386d747e29fd84dfb605185c282eaee2e306c25

Git commit c593a193b651fa7cb40db0c602f2c375c0dd2202 by Marcus Brinkmann on 28/05/2005 at 20:03..
2005-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* data-user.c: Include <errno.h>.
https://invent.kde.org/neon/forks/gpgme/-/commit/c593a193b651fa7cb40db0c602f2c375c0dd2202

Git commit 749ed3a25882c8c1318693532dcb0734dddc536a by Marcus Brinkmann on 28/05/2005 at 20:09..
2005-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Listing Mode): Fix return type of
	gpgme_set_keylist_mode.
	Reported by "Sergio" <ml_sergico at virgilio.it>.
https://invent.kde.org/neon/forks/gpgme/-/commit/749ed3a25882c8c1318693532dcb0734dddc536a

Git commit e8ddf895a0346b70a31e3c2c9b203e794cdac889 by Werner Koch on 02/06/2005 at 11:22..
* passphrase.c (_gpgme_passphrase_status_handler): Take care of
GPGME_STATUS_NEED_PASSPHRASE_PIN.
(_gpgme_passphrase_command_handler_internal): Also act on the key
"passphrase.pin.ask".

* gpgme.h: Added status codes GPGME_STATUS_SIG_SUBPACKET,
GPGME_STATUS_NEED_PASSPHRASE_PIN, GPGME_STATUS_SC_OP_FAILURE,
GPGME_STATUS_SC_OP_SUCCESS, GPGME_STATUS_CARDCTRL,
GPGME_STATUS_BACKUP_KEY_CREATED.
https://invent.kde.org/neon/forks/gpgme/-/commit/e8ddf895a0346b70a31e3c2c9b203e794cdac889

Git commit 7ccc3083305c8c116a5be85601e27ceed37947d9 by Marcus Brinkmann on 02/06/2005 at 21:59..
2005-06-02  Marcus Brinkmann  <marcus at g10code.de>

	* wait.h (_gpgme_run_io_cb): New prototype.
	* wait.c (_gpgme_run_io_cb): New function.
	* wait-global.c (gpgme_wait): Call it.
	* wait-user.c (_gpgme_user_io_cb_handler): Likewise.
	* wait-private.c (_gpgme_wait_on_condition): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ccc3083305c8c116a5be85601e27ceed37947d9

Git commit bf93a73b310b34713a5c167baaacd41eca2bba4f by Marcus Brinkmann on 02/06/2005 at 22:01..
Add new status codes.
https://invent.kde.org/neon/forks/gpgme/-/commit/bf93a73b310b34713a5c167baaacd41eca2bba4f

Git commit 172a8df25fb374915f7e082a4418f5e2a4185747 by Marcus Brinkmann on 02/06/2005 at 22:59..
gpgme/
2005-06-03  Marcus Brinkmann  <marcus at g10code.de>

	* wait-global.c (gpgme_wait): Break out of the fd processing loop
	after an error.
	Reported by Igor Belyi <gpgme at katehok.ac93.org>.

tests/
2005-06-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (TESTS): Add t-wait.
	* gpg/t-wait.c (main): New test.
https://invent.kde.org/neon/forks/gpgme/-/commit/172a8df25fb374915f7e082a4418f5e2a4185747

Git commit b8440749f177805ba99a807b5ec80bec39612d0e by Marcus Brinkmann on 03/06/2005 at 00:42..
doc/
2005-06-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Decrypt): Add gpgme_recipient_t.

gpgme/
2005-06-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_recipient): New structure.
	(gpgme_recipient_t): New type.
	(struct _gpgme_op_decrypt_result): Add member recipients.
	* decrypt.c (op_data_t): New member last_recipient_p.
	(_gpgme_op_decrypt_init_result): Initialize last_recipient_p.
	(parse_enc_to): New function.
	(_gpgme_decrypt_status_handler): Handle status ENC_TO and
	NO_SECKEY.
https://invent.kde.org/neon/forks/gpgme/-/commit/b8440749f177805ba99a807b5ec80bec39612d0e

Git commit e5f1dad76d8ae9c7fde814813fcf98357df0b716 by Marcus Brinkmann on 03/06/2005 at 14:23..
2005-06-03  Marcus Brinkmann  <marcus at g10code.de>

	(_gpgme_decrypt_status_handler): Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/e5f1dad76d8ae9c7fde814813fcf98357df0b716

Git commit fcddcb674e98257197fa2ef67efc64e48f8a3edd by Marcus Brinkmann on 03/06/2005 at 19:41..
doc/
2005-06-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Verify): Add information about new fields in
	gpgme_signature_t.

gpgme/
2005-06-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_signature): New members pubkey_algo and
	hash_algo.
	* verify.c (parse_valid_sig): Parse pubkey and hash algo numbers.
	(parse_new_sig): Parse pubkey, hash algo and timestamp for ERRSIG.
https://invent.kde.org/neon/forks/gpgme/-/commit/fcddcb674e98257197fa2ef67efc64e48f8a3edd

Git commit 2a308a2b146b176fea01f4edcbad157db2c767cb by Marcus Brinkmann on 20/06/2005 at 18:10..
2005-06-20  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.m4: Only call GPGME_CONFIG if found.
https://invent.kde.org/neon/forks/gpgme/-/commit/2a308a2b146b176fea01f4edcbad157db2c767cb

Git commit b19c847b02c893199e12085ab6a13a3cf2ed9a0d by Marcus Brinkmann on 26/07/2005 at 17:30..
2005-07-26  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (gpgme_get_key): Allow key IDs.
https://invent.kde.org/neon/forks/gpgme/-/commit/b19c847b02c893199e12085ab6a13a3cf2ed9a0d

Git commit 7bdaf53a4a4ce97007c3d919328a1225e506dc54 by Marcus Brinkmann on 27/07/2005 at 01:50..
doc/
2005-07-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Decrypt): Add plaintext_filename to
	gpgme_decrypt_result_t.
	(Verify): Likewise for gpgme_verify_result_t.

gpgme/
2005-07-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_status_code_t): Add GPGME_STATUS_PLAINTEXT.
	(struct _gpgme_op_decrypt_result): New member plaintext_filename.
	(struct _gpgme_op_verify_result): Likewise.
	* ops.h (_gpgme_parse_plaintext): Add prototype.
	* op-support.c (_gpgme_parse_plaintext): New function.
	* decrypt.c (release_op_data): Release
	OPD->result.plaintext_filename.
	(_gpgme_decrypt_status_handler): Handle GPGME_STATUS_PLAINTEXT.
	* verify.c (release_op_data): Release
	OPD->result.plaintext_filename.
	(_gpgme_verify_status_handler): Handle GPGME_STATUS_PLAINTEXT.
https://invent.kde.org/neon/forks/gpgme/-/commit/7bdaf53a4a4ce97007c3d919328a1225e506dc54

Git commit b71096a83217e1c8a9163a955a74a4b88afa4290 by Werner Koch on 09/08/2005 at 13:19..
Merged changes from upstream libassuan to allow building a W32 DLL.
https://invent.kde.org/neon/forks/gpgme/-/commit/b71096a83217e1c8a9163a955a74a4b88afa4290

Git commit dbe0df44b68ae918e4d713924d974e3bdb93eac3 by Werner Koch on 19/08/2005 at 16:11..
Changes to allow building a W32 DLL
https://invent.kde.org/neon/forks/gpgme/-/commit/dbe0df44b68ae918e4d713924d974e3bdb93eac3

Git commit 01baed5b70d549290ad3f1df10158ee400ed489b by Werner Koch on 19/08/2005 at 16:34..
Added missing files and fixed stuff from the recent merged.  I did only
tests on W32 at that time.
https://invent.kde.org/neon/forks/gpgme/-/commit/01baed5b70d549290ad3f1df10158ee400ed489b

Git commit 82a0c97250995ef82144422a48cc066018790020 by Werner Koch on 26/08/2005 at 12:38..
* configure.ac (SEPCONSTANTS): New to define DIRSEP_C et al.

* w32-util.c (read_w32_registry_string): Updated from code used by
GnuPG.  This allows for expanding strings and features the
implicit fallback key.
(w32_shgetfolderpath, find_program_at_standard_place): New.
(_gpgme_get_gpg_path, _gpgme_get_gpgsm_path): With no registry
entry, locate the programs at the standard place.
(dlopen, dlsym, dlclose): New, so that we can keep on using what
we are accustomed to.

* debug.c (debug_init): Use PATHSEP_C so that under W32 a
semicolon is used which allows us to create files with drive
letters.

* w32-io.c (_gpgme_io_read, _gpgme_io_write): Print content in
debug mode too.
https://invent.kde.org/neon/forks/gpgme/-/commit/82a0c97250995ef82144422a48cc066018790020

Git commit 9f952a5a0b6876814d43495f077aa114eec352d7 by Marcus Brinkmann on 26/08/2005 at 14:53..
2005-08-26  Marcus Brinkmann  <marcus at g10code.de>

	* engine.h (engine_command_handler_t): Add new argument processed.
	* ops.h (_gpgme_passphrase_command_handler_internal): Rename
	prototype to ...
	(_gpgme_passphrase_command_handler): ... this one.
	* passphrase.c (_gpgme_passphrase_command_handler_internal):
	Rename to ...
	(_gpgme_passphrase_command_handler): ... this one.
	* edit.c (command_handler): Add new argument processed.  Remove
	local variable with the same name.  Always return processed as
	true.
	* rungpg.c (command_handler): Send a newline character if the
	handler did not.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f952a5a0b6876814d43495f077aa114eec352d7

Git commit ae92f9282634a2ab61dfc2fb308030b61a37619d by Marcus Brinkmann on 26/08/2005 at 15:00..
2005-08-26  Marcus Brinkmann  <marcus at g10code.de>

	* edit.c (command_handler): Do not depend on PROCESSED being
	available.
https://invent.kde.org/neon/forks/gpgme/-/commit/ae92f9282634a2ab61dfc2fb308030b61a37619d

Git commit 38f8bf3b04f812ff5cd55e279ca40ca09f699737 by Marcus Brinkmann on 26/08/2005 at 15:35..
2005-08-26  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (command_handler): Use _gpgme_io_write instead of write.
https://invent.kde.org/neon/forks/gpgme/-/commit/38f8bf3b04f812ff5cd55e279ca40ca09f699737

Git commit 3cbd1b477faeb55cc873b46c6baafee283c0c50b by Marcus Brinkmann on 08/09/2005 at 15:17..
Deleted the property eol-style and set the property binary file.
https://invent.kde.org/neon/forks/gpgme/-/commit/3cbd1b477faeb55cc873b46c6baafee283c0c50b

Git commit 30c821580db3ae65f92f8dfb0b961b030737e67f by Marcus Brinkmann on 08/09/2005 at 15:17..
Restore the key files.
https://invent.kde.org/neon/forks/gpgme/-/commit/30c821580db3ae65f92f8dfb0b961b030737e67f

Git commit a02fa90f6bf22660bc1561364d6ce19ed37e6988 by Marcus Brinkmann on 12/09/2005 at 19:06..
2005-09-12  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (release_op_data): Do not free opd->tmp_uid.
https://invent.kde.org/neon/forks/gpgme/-/commit/a02fa90f6bf22660bc1561364d6ce19ed37e6988

Git commit f1eb841d3b8a90c18aa1f8b0948edd41816444c1 by Marcus Brinkmann on 12/09/2005 at 19:14..
2005-09-12  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (HAVE_PTH): Don't add $PTH_CFLAGS to $CFLAGS here.

gpgme/
2005-09-12  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_SOURCES): Set to ath.h and ath.c.
	(ath_pth_src, ath_pthread_src): Removed.
	(w32_o_files): Replace ath-compat.o with ath.o.
	(libgpgme_pth_la_CFLAGS): New variable.
	* ath-compat.c, ath-pthread-compat.c, ath-pth-compat.c: Removed.
	* ath.h (ath_pthread_available, ath_pth_available): Removed.
	(ath_init) [!_ATH_EXT_SYM_PREFIX]: Do not define macro.
	(struct ath_ops, ath_init) [_ATH_COMPAT]: Removed.
	(_ATH_COMPAT): Macro removed.
	* posix-sema.c (_gpgme_sema_subsystem_init): Do not call
	_gpgme_ath_init.
https://invent.kde.org/neon/forks/gpgme/-/commit/f1eb841d3b8a90c18aa1f8b0948edd41816444c1

Git commit c6abbb7901fc9a2bc8780a37dcaf799cbfdabb82 by Marcus Brinkmann on 12/09/2005 at 19:15..
2005-09-12  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (HAVE_PTH): Don't add $PTH_CFLAGS to $CFLAGS here.

gpgme/
2005-09-12  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_la_SOURCES): Set to ath.h and ath.c.
	(ath_pth_src, ath_pthread_src): Removed.
	(w32_o_files): Replace ath-compat.o with ath.o.
	(libgpgme_pth_la_CFLAGS): New variable.
	* ath-compat.c, ath-pthread-compat.c, ath-pth-compat.c: Removed.
	* ath.h (ath_pthread_available, ath_pth_available): Removed.
	(ath_init) [!_ATH_EXT_SYM_PREFIX]: Do not define macro.
	(struct ath_ops, ath_init) [_ATH_COMPAT]: Removed.
	(_ATH_COMPAT): Macro removed.
	* posix-sema.c (_gpgme_sema_subsystem_init): Do not call
	_gpgme_ath_init.
https://invent.kde.org/neon/forks/gpgme/-/commit/c6abbb7901fc9a2bc8780a37dcaf799cbfdabb82

Git commit 0df0e97634d2a3e07b40b302ecbb098f0712a776 by Werner Koch on 13/09/2005 at 14:17..
* ath.c: Changes to make it work under W32.
* w32-io.c (build_commandline): Quote argv[0].
https://invent.kde.org/neon/forks/gpgme/-/commit/0df0e97634d2a3e07b40b302ecbb098f0712a776

Git commit 8a1ce95287705641f20d75619190de2bb2099a06 by Werner Koch on 23/09/2005 at 13:29..
Boosted performance of w32 I/O
https://invent.kde.org/neon/forks/gpgme/-/commit/8a1ce95287705641f20d75619190de2bb2099a06

Git commit 3f6853c2e3da7f1a738b7e26e145682f7e2d33ff by Marcus Brinkmann on 29/09/2005 at 17:54..
2005-09-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_key): Add field is_qualified.
	(struct _gpgme_subkey): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/3f6853c2e3da7f1a738b7e26e145682f7e2d33ff

Git commit fb2ea39a38a0088309dc460ffe478e0877705657 by Marcus Brinkmann on 29/09/2005 at 17:58..
2005-09-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (struct _gpgme_key): Add field is_qualified.
	(struct _gpgme_subkey): Likewise.
	* keylist.c (set_subkey_capability, set_mainkey_capability): Set
	field is_qualified.
https://invent.kde.org/neon/forks/gpgme/-/commit/fb2ea39a38a0088309dc460ffe478e0877705657

Git commit c77dc1d42a7b812577e2075929cee7185e755026 by Marcus Brinkmann on 30/09/2005 at 11:01..
2005-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Document is_qualified.
https://invent.kde.org/neon/forks/gpgme/-/commit/c77dc1d42a7b812577e2075929cee7185e755026

Git commit 74db831fc8e70215447903420c321805b8bbe0ab by Marcus Brinkmann on 30/09/2005 at 13:24..
doc/
2005-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Replace plaintext_filename with file_name.

gpgme/
2005-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* decrpyt.c, verify.c, gpgme.h: Replace plaintext_filename with
	file_name.
https://invent.kde.org/neon/forks/gpgme/-/commit/74db831fc8e70215447903420c321805b8bbe0ab

Git commit c6ee58ef5578162d49f6a674116cb9b84f9906ed by Marcus Brinkmann on 30/09/2005 at 14:17..
doc/
2005-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Data Buffer I/O Operations, Data Buffer Meta-Data):
	New subsections.

gpgme/
2005-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* data.h (struct gpgme_data): New member file_name.
	* data.c (gpgme_data_set_filename): New function.
	(_gpgme_data_release): Free DH->filename if necessary.
	(gpgme_data_get_filename): New function.
	* rungpg.c (gpg_encrypt): Set filename option.
	(gpg_encrypt_sign): Likewise.
	(gpg_sign): Likewise.
	* libgpgme.vers (GPGME_1.1): Add gpgme_data_set_file_name and
	gpgme_data_get_file_name.

tests/
2005-09-30  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (TESTS): Add t-filename.
	* gpg/t-filename.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/c6ee58ef5578162d49f6a674116cb9b84f9906ed

Git commit b3304042aafdfa2adf4b332a6629182b12a089e1 by Marcus Brinkmann on 01/10/2005 at 02:33..
doc/
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Signature Notation Data): New section.
	(Verify): Added more about the notation data structure.

gpgme/
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.def: Add gpgme_data_set_file_name,
	gpgme_data_get_file_name, gpgme_sig_notation_clear,
	gpgme_sig_notation_add and gpgme_sig_notation_get.
	* libgpgme.vers: Add gpgme_sig_notation_clear,
	gpgme_sig_notation_add and gpgme_sig_notation_get.
	* Makefile.am (libgpgme_real_la_SOURCES): Add sig-notation.c.
	* context.h (struct gpgme_context): New field sig_notations.
	* gpgme.h (struct _gpgme_sig_notation): New member value_len and
	critical.
	(GPGME_SIG_NOTATION_CRITICAL): New symbol.
	(gpgme_sig_notation_flags_t): New type.
	(gpgme_sig_notation_add, gpgme_sig_notation_clear,
	gpgme_sig_notation_get): New prototypes.
	* ops.h (_gpgme_sig_notation_create, _gpgme_sig_notation_free):
	New prototypes.
	* sig-notation.c (_gpgme_sig_notation_free): New file.
	* verify.c (parse_notation): Use support functions.
	(release_op_data): Likewise.
	* rungpg.c (append_args_from_sig_notations): New function.
	(gpg_encrypt_sign, gpg_sign): Call it.


tests/
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (TESTS): Add t-sig-notation.
	* gpg/t-sig-notation.c (check_result): New file.
	* gpg/t-verify.c (check_result): Also check the length of the
	notation data.
	* gpg/gpg.conf: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/b3304042aafdfa2adf4b332a6629182b12a089e1

Git commit efb2ed5a78bcd4029cc638edaddc4950bba7bb13 by Marcus Brinkmann on 01/10/2005 at 19:22..
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (EXTRA_DIST): Add gpg.conf.
https://invent.kde.org/neon/forks/gpgme/-/commit/efb2ed5a78bcd4029cc638edaddc4950bba7bb13

Git commit 7f6ad15cbe37cacf9b38288538195f6636b2f1bd by Marcus Brinkmann on 01/10/2005 at 19:51..
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-client.c (assuan_transact): Change LINE, S and D from
	unsigned char * to char * to silence gcc warning.
	* assuan-util.c (_assuan_log_sanitized_string): Add explicit cast
	to silence gcc warning.
	* assuan-inquire.c (assuan_inquire): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/7f6ad15cbe37cacf9b38288538195f6636b2f1bd

Git commit fbf6ece78b6ad0efeab49c2e148b8720ee26c41c by Marcus Brinkmann on 01/10/2005 at 20:17..
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* assuan.h (assuan_pipe_connect, assuan_pipe_connect2): Make type
	of ARGV parameter const in prototype.
	* assuan-pipe-connect.c (assuan_pipe_connect,
	assuan_pipe_connect2): Likewise in declaration.
	(assuan_pipe_connect2): Add braindead cast to make execv happy.
https://invent.kde.org/neon/forks/gpgme/-/commit/fbf6ece78b6ad0efeab49c2e148b8720ee26c41c

Git commit bda9541b51f64e9138160811faea26be22dc7ac0 by Marcus Brinkmann on 01/10/2005 at 20:41..
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (EXTRA_DIST): Remove gpg.conf.
	(DISTCLEANFILES): Add gpg.conf.
	(all-local): Add gpg.conf.
	(./gpg.conf): New target.
	* gpg/gpg.conf: Remove file.
https://invent.kde.org/neon/forks/gpgme/-/commit/bda9541b51f64e9138160811faea26be22dc7ac0

Git commit 19043016ed9761c6b495fb8f76663234d223d198 by Marcus Brinkmann on 01/10/2005 at 20:42..
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* engine.h (_gpgme_set_engine_info): Add prototype.
	* engine-backend.h (struct engine_ops): Change return type of
	get_file_name() to const char * to silence gcc warning.
	* engine.c (engine_get_file_name): Change return type to const
	char * to silence gcc warning.
	(gpgme_get_engine_info): Use transitional variable to go from
	const char * to char * to silence gcc warning.
	(_gpgme_set_engine_info): Likewise.
	* engine-gpgsm.c (struct engine_gpgsm): Change type of LINE to
	char * to silence gcc warning.
	(gpgsm_new): Make ARGV a pointer to const char.
	(status_handler): Change type of SRC, END, DST, ALINE and NEWLINE
	to char * to silence gcc warning.
https://invent.kde.org/neon/forks/gpgme/-/commit/19043016ed9761c6b495fb8f76663234d223d198

Git commit 204237d60acc7ae6cd49501a7b8402c918f96ab3 by Marcus Brinkmann on 01/10/2005 at 20:53..
Remove ath item.
https://invent.kde.org/neon/forks/gpgme/-/commit/204237d60acc7ae6cd49501a7b8402c918f96ab3

Git commit 0dbcb6a144a4b08e35420aea5eb5b00ffaa4e9cf by Marcus Brinkmann on 01/10/2005 at 21:02..
Update some items.
https://invent.kde.org/neon/forks/gpgme/-/commit/0dbcb6a144a4b08e35420aea5eb5b00ffaa4e9cf

Git commit 54dbe183ea328113641b3bab1c2ddfd5557d643b by Marcus Brinkmann on 01/10/2005 at 21:31..
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	Released 1.1.0.

	* configure.ac (LIBGPGME_LT_CURRENT, LIBGPGME_LT_AGE): Bump for
	release.
	(LIBGPGME_LT_REVISION): Reset to 0 for release.
https://invent.kde.org/neon/forks/gpgme/-/commit/54dbe183ea328113641b3bab1c2ddfd5557d643b

Git commit 6e5762d67b8058f84ab7607869f0d42dde21224d by Marcus Brinkmann on 01/10/2005 at 21:39..
Fix typo.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e5762d67b8058f84ab7607869f0d42dde21224d

Git commit 81e5fdfbe6f0fec4ef7c07f0c1a9aee7f8274f24 by Marcus Brinkmann on 01/10/2005 at 21:58..
Post-release fixup.
https://invent.kde.org/neon/forks/gpgme/-/commit/81e5fdfbe6f0fec4ef7c07f0c1a9aee7f8274f24

Git commit 20f85c2b57483a892d8f71022c3880c9cfa48dae by Marcus Brinkmann on 01/10/2005 at 22:14..
2005-10-01  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Enclose all return parameters of deftypefuns in
	curly brackets.
https://invent.kde.org/neon/forks/gpgme/-/commit/20f85c2b57483a892d8f71022c3880c9cfa48dae

Git commit df065473385bd216ef253afe8661b919538bbf6f by Marcus Brinkmann on 01/10/2005 at 22:15..
Fix copyright year.
https://invent.kde.org/neon/forks/gpgme/-/commit/df065473385bd216ef253afe8661b919538bbf6f

Git commit ceb26145c7038fc2200d287bb4075d9f886da663 by Marcus Brinkmann on 01/10/2005 at 22:17..
Add item about docs.
https://invent.kde.org/neon/forks/gpgme/-/commit/ceb26145c7038fc2200d287bb4075d9f886da663

Git commit 5f5faeafa1e17663dc10eaaa9281fa98ff625170 by Marcus Brinkmann on 02/10/2005 at 14:39..
doc/
2005-10-02  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Key Management): Add the new member notations of
	gpgme_sig_key_t.
	(Key Listing Mode): Document GPGME_KEYLIST_MODE_SIG_NOTATIONS.

gpgme/
2005-10-02  Marcus Brinkmann  <marcus at g10code.de>

	* util.h (_gpgme_decode_percent_string): Add new argument BINARY
	to prototype.
	* verify.c (parse_notation): Likewise for invocation.
	* conversion.c (_gpgme_decode_percent_string): Likewise to
	declaration.  If set, do not replace '\0' characters with a
	printable string.
	* gpgme.h (struct _gpgme_key_sig): New field notations.
	* ops.h (_gpgme_parse_notation): New prototype.
	* sig-notation.c (_gpgme_parse_notation): New function.
	* key.c (gpgme_key_unref): Free all signature notations.
	* keylist.c (op_data_t): New member tmp_keysig.
	(finish_key): Clear OPD->tmp_keysig.
	* gpgme.c (gpgme_set_keylist_mode): Remove check.
	* rungpg.c (gpg_keylist): Support listing signature notations.
	(gpg_keylist_ext): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/5f5faeafa1e17663dc10eaaa9281fa98ff625170

Git commit 11203e11a666b1123ffdbf3aec4a4531ae02a31d by Marcus Brinkmann on 02/10/2005 at 14:41..
Update some items.
https://invent.kde.org/neon/forks/gpgme/-/commit/11203e11a666b1123ffdbf3aec4a4531ae02a31d

Git commit 91c9053f664465ae8788294ca160e7e6503dc9b6 by Marcus Brinkmann on 02/10/2005 at 14:55..
Update some items.
https://invent.kde.org/neon/forks/gpgme/-/commit/91c9053f664465ae8788294ca160e7e6503dc9b6

Git commit a336bc6834099b62b17c6e772763328145537dc2 by Marcus Brinkmann on 06/10/2005 at 10:44..
doc/
2005-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Destroying Data Buffers): Document gpgme_free.

gpgme/
2005-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_free): New prototype.
	* data-mem.c (gpgme_free): New function.
	* libgpgme.vers (GPGME_1.1): Add gpgme_free.
	* gpgme.def: Add gpgme_free.
https://invent.kde.org/neon/forks/gpgme/-/commit/a336bc6834099b62b17c6e772763328145537dc2

Git commit 54844a992fd8aea110ac015c15fdb5b2dbfe4231 by Marcus Brinkmann on 06/10/2005 at 11:06..
2005-10-06  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (gpgme.dll gpgme.dll.a): Use $(srcdir) for
	gpgme.def.
https://invent.kde.org/neon/forks/gpgme/-/commit/54844a992fd8aea110ac015c15fdb5b2dbfe4231

Git commit 2513557bf5a4aea1d73022daacca84c0ad0cd7a3 by Marcus Brinkmann on 06/10/2005 at 23:28..
2005-10-07  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-sig-notation.c: Change critical notation to something
	GnuPG understands.
https://invent.kde.org/neon/forks/gpgme/-/commit/2513557bf5a4aea1d73022daacca84c0ad0cd7a3

Git commit 81735c3e4cac2e73662e907f9a8246c1bea87227 by Marcus Brinkmann on 07/10/2005 at 13:34..
2005-10-07  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c (main): Allow for an email address as a second
	uid.
https://invent.kde.org/neon/forks/gpgme/-/commit/81735c3e4cac2e73662e907f9a8246c1bea87227

Git commit 378f4d3a7ad570dd99edb87ddf48e9752006c297 by Marcus Brinkmann on 16/10/2005 at 19:38..
2005-10-16  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_edit): Don't add a key argument if in card edit
	mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/378f4d3a7ad570dd99edb87ddf48e9752006c297

Git commit deae5fa5a29b909c2b3a62e05ef695844111634f by Werner Koch on 19/10/2005 at 08:23..
Add a test for expired subkeys
https://invent.kde.org/neon/forks/gpgme/-/commit/deae5fa5a29b909c2b3a62e05ef695844111634f

Git commit 4cfced2ce8dff0602518dbe64804bb8aaac3e12a by Marcus Brinkmann on 20/10/2005 at 13:05..
2005-10-20  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Instead checking for windres and dlltool, invoke
	AC_LIBTOOL_WIN32_DLL and AC_LIBTOOL_RC.
	* src/Makefile.am [HAVE_W32_SYSTEM]: Use libtool, which simplifies
	the rules.
https://invent.kde.org/neon/forks/gpgme/-/commit/4cfced2ce8dff0602518dbe64804bb8aaac3e12a

Git commit 36dc669515674176737d13c2364e613b5a864004 by Marcus Brinkmann on 20/10/2005 at 13:32..
2005-10-20  Marcus Brinkmann  <marcus at g10code.de>

	* w32-dll/ChangeLog, w32-dll/build-dll, w32-dll/gpgme.def: Remove
	files.
https://invent.kde.org/neon/forks/gpgme/-/commit/36dc669515674176737d13c2364e613b5a864004

Git commit 2b58d3449071d87a0f953f38c0ae7e2cf9be24bf by Marcus Brinkmann on 20/10/2005 at 19:21..
2005-10-20  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am: Build versioninfo.lo, not versioninfo.o.  Also, fix
	the whole mess.
https://invent.kde.org/neon/forks/gpgme/-/commit/2b58d3449071d87a0f953f38c0ae7e2cf9be24bf

Git commit d1ac714cbf4e8995733b1e487c10118e3139bb34 by Werner Koch on 21/10/2005 at 16:18..
fixed c+p error and a typo
https://invent.kde.org/neon/forks/gpgme/-/commit/d1ac714cbf4e8995733b1e487c10118e3139bb34

Git commit e7799b3e920901641cef4c39336c29451ec1084a by Marcus Brinkmann on 24/10/2005 at 09:53..
2005-10-24  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c (_gpgme_io_spawn): Don't minimize window, hide it.
https://invent.kde.org/neon/forks/gpgme/-/commit/e7799b3e920901641cef4c39336c29451ec1084a

Git commit 3acdcbf67bdc7c7a2a960668db585cedab3922e6 by Werner Koch on 15/11/2005 at 16:04..
build static and shared lib by default - required by gpgol.
https://invent.kde.org/neon/forks/gpgme/-/commit/3acdcbf67bdc7c7a2a960668db585cedab3922e6

Git commit d19cc31e0683ca040ad4305abd49019f4514602d by Marcus Brinkmann on 17/11/2005 at 16:12..
2005-11-17  Marcus Brinkmann  <marcus at g10code.de>

	* priv-io.h (_gpgme_io_waitpid, _gpgme_io_kill): Removed.
	* w32-io.c (_gpgme_io_waitpid, _gpgme_io_kill): Removed.
	* posix-io.c (_gpgme_io_kill): Removed.
	(_gpgme_io_waitpid): Declare static.
https://invent.kde.org/neon/forks/gpgme/-/commit/d19cc31e0683ca040ad4305abd49019f4514602d

Git commit d11318a3198e88f7cbb7e4b4bada4b96984be374 by Marcus Brinkmann on 17/11/2005 at 18:45..
2005-11-17  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add support for --enable-w32-glib (disabled by
	default).  Invoke AM_PATH_GLIB_2_0.

gpgme/
2005-11-17  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c: New file.
	* gpgme.def (gpgme_get_giochannel): Add symbol.
	* Makefile.am (system_components) [HAVE_DOSISH_SYSTEM]: Remove
	w32-io.c.
	(ltlib_gpgme_extra): New variable.
	(lib_LTLIBRARIES): Add $(ltlib_gpgme_extra).
	(system_components_not_extra): New variable.
	(libgpgme_la_SOURCES, libgpgme_pthread_la_SOURCES,
	(libgpgme_pth_la_SOURCES): Add $(system_components_not_extra).
	(libgpgme_glib_la_LDFLAGS, libgpgme_glib_la_DEPENDENCIES,
	(libgpgme_glib_la_LIBADD, libgpgme_glib_la_CFLAGS)
	[BUILD_W32_GLIB]: New variables. 
	* gpgme-config.in (glib): New option.
	* gpgme.m4 (AM_PATH_GPGME_GLIB): New macro.

m4/
2005-11-17  Marcus Brinkmann  <marcus at g10code.de>

	* glib-2.0.m4: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/d11318a3198e88f7cbb7e4b4bada4b96984be374

Git commit e0ca3ebeca1596f21574df4ec88e6dfe80e68c59 by Marcus Brinkmann on 17/11/2005 at 18:45..
2005-11-17  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add support for --enable-w32-glib (disabled by
	default).  Invoke AM_PATH_GLIB_2_0.

gpgme/
2005-11-17  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c: New file.
	* gpgme.def (gpgme_get_giochannel): Add symbol.
	* Makefile.am (system_components) [HAVE_DOSISH_SYSTEM]: Remove
	w32-io.c.
	(ltlib_gpgme_extra): New variable.
	(lib_LTLIBRARIES): Add $(ltlib_gpgme_extra).
	(system_components_not_extra): New variable.
	(libgpgme_la_SOURCES, libgpgme_pthread_la_SOURCES,
	(libgpgme_pth_la_SOURCES): Add $(system_components_not_extra).
	(libgpgme_glib_la_LDFLAGS, libgpgme_glib_la_DEPENDENCIES,
	(libgpgme_glib_la_LIBADD, libgpgme_glib_la_CFLAGS)
	[BUILD_W32_GLIB]: New variables. 
	* gpgme-config.in (glib): New option.
	* gpgme.m4 (AM_PATH_GPGME_GLIB): New macro.

m4/
2005-11-17  Marcus Brinkmann  <marcus at g10code.de>

	* glib-2.0.m4: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/e0ca3ebeca1596f21574df4ec88e6dfe80e68c59

Git commit b9401b8f6c29c2fc13eb22617df11f4ece91d688 by Marcus Brinkmann on 18/11/2005 at 11:18..
2005-11-18  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c: Rewrote the file handle code.  We don't create
	system fds for every handle (doesn't work for inherited handles),
	but we create pseudo fds in a private namespace that designate a
	handle and potentially a giochannel.
https://invent.kde.org/neon/forks/gpgme/-/commit/b9401b8f6c29c2fc13eb22617df11f4ece91d688

Git commit 3418d23ec527b60e876e5f231879f37928955541 by Marcus Brinkmann on 18/11/2005 at 14:00..
2005-11-18  Marcus Brinkmann  <marcus at g10code.de>

	* priv-io.h (_gpgme_io_fd2str): New prototype.
	* posix-io.c (_gpgme_io_fd2str): New function.
	* w32-io.c (_gpgme_io_fd2str): New function.
	* rungpg.c: Use this new function.
	* w32-glib-io.c (_gpgme_io_fd2str): Rewrote the file handle code
	again.  Two's company, three's the musketeers.
https://invent.kde.org/neon/forks/gpgme/-/commit/3418d23ec527b60e876e5f231879f37928955541

Git commit 6b24b361ad8311c7a8f3d74ffbaf82a525347018 by Werner Koch on 18/11/2005 at 16:52..
GPA does now work with the glib based i/o backend.
https://invent.kde.org/neon/forks/gpgme/-/commit/6b24b361ad8311c7a8f3d74ffbaf82a525347018

Git commit a0ded960b440f13c28d946e9b66f1718184d5280 by Marcus Brinkmann on 24/11/2005 at 08:39..
2005-11-24  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c (_gpgme_io_fd2str): Remove debug printf.
https://invent.kde.org/neon/forks/gpgme/-/commit/a0ded960b440f13c28d946e9b66f1718184d5280

Git commit bca775102ec4d107e27cd706786e5a4b931ac8cc by Marcus Brinkmann on 27/11/2005 at 17:11..
2005-11-27  Marcus Brinkmann  <marcus at g10code.de>

	* engine.c (_gpgme_set_engine_info): Use new_file_name in
	engine_get_version invocation.  Reported by Stéphane Corthésy.
https://invent.kde.org/neon/forks/gpgme/-/commit/bca775102ec4d107e27cd706786e5a4b931ac8cc

Git commit a1e484f9eac9dfc8e29fdd4955bf8b422ae52061 by Werner Koch on 06/12/2005 at 16:30..
* Fixed a bug in that the fingerprints of subkeys are not available.
 
 * Clarified usage of the SECRET flag in key listings.  It is now
   reset for stub keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/a1e484f9eac9dfc8e29fdd4955bf8b422ae52061

Git commit b1fb4f2fa6af0ebc3822e436a2c6e163c3c5687e by Werner Koch on 20/12/2005 at 20:22..
Basic PKA support.
https://invent.kde.org/neon/forks/gpgme/-/commit/b1fb4f2fa6af0ebc3822e436a2c6e163c3c5687e

Git commit 5b90f5cfcb17c959cca662064941ec46e27062e4 by Marcus Brinkmann on 31/12/2005 at 04:22..
2005-12-31  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c (find_channel): Set channel to unbuffered.
	(_gpgme_io_select): Fix debug output.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b90f5cfcb17c959cca662064941ec46e27062e4

Git commit 253577cb2a2f4bef985cce8e232a01d60d6bda28 by Marcus Brinkmann on 31/12/2005 at 12:56..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/253577cb2a2f4bef985cce8e232a01d60d6bda28

Git commit 1fc25af357735bcc2436507db4589b221626f327 by Marcus Brinkmann on 03/01/2006 at 14:20..
2006-01-03  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c (_gpgme_io_close): Only close fd if there is no
	channel for it.
https://invent.kde.org/neon/forks/gpgme/-/commit/1fc25af357735bcc2436507db4589b221626f327

Git commit 3c1c9ed5721d2cb2c5c4adc0b7ff5b52eeb0eabf by Werner Koch on 03/01/2006 at 18:31..
Added PKA stuff
https://invent.kde.org/neon/forks/gpgme/-/commit/3c1c9ed5721d2cb2c5c4adc0b7ff5b52eeb0eabf

Git commit c50809afb66d33bcc325aadae1a62ee585c05c87 by Werner Koch on 03/01/2006 at 18:40..
Append revision number to the version string
https://invent.kde.org/neon/forks/gpgme/-/commit/c50809afb66d33bcc325aadae1a62ee585c05c87

Git commit 5b57bff96cc4eed3afa47eb10ac7fdbfd163b24d by Werner Koch on 05/01/2006 at 08:58..
Minor glib fix.
Pretty up debug output.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b57bff96cc4eed3afa47eb10ac7fdbfd163b24d

Git commit 419fc378e4f3cdf33fd640a2898d83657403209d by Werner Koch on 26/01/2006 at 10:23..
[W32] Add a tuning feature
https://invent.kde.org/neon/forks/gpgme/-/commit/419fc378e4f3cdf33fd640a2898d83657403209d

Git commit c585b7895cd4f7c916e13a9230cca135ef48984c by Werner Koch on 26/01/2006 at 10:56..
.
https://invent.kde.org/neon/forks/gpgme/-/commit/c585b7895cd4f7c916e13a9230cca135ef48984c

Git commit 9829cffc3c42d2149ed3f59490105c9495916e58 by Marcus Brinkmann on 15/02/2006 at 13:30..
2006-02-15  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c (create_writer): Make C->have_data a manually resetted
	event.
	(writer): Move code from end of if block to beginning, so it
	is also run the first time.
	(_gpgme_io_write): Move assert check after error check.  Reset
	the is_empty event, and also do it eagerly.
	(_gpgme_io_select): Unconditionally wait for the is_empty event.
https://invent.kde.org/neon/forks/gpgme/-/commit/9829cffc3c42d2149ed3f59490105c9495916e58

Git commit 2f4b38533245635ba98f3f115622d5b0c00579bb by Marcus Brinkmann on 22/02/2006 at 11:02..
2006-02-22  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (read_colon_line): Invoke colon preprocess handler if
	it is set.
	(colon_preprocessor_t): New type.
	(struct engine_gpg): New member colon.preprocess_fnc.
	(gpg_keylist_preprocess): New function.
	* keylist.c (keylist_colon_handler): Allow short key IDs.
https://invent.kde.org/neon/forks/gpgme/-/commit/2f4b38533245635ba98f3f115622d5b0c00579bb

Git commit fb6692fc75da65b616a9a5ed66789c52e8227f97 by Marcus Brinkmann on 22/02/2006 at 11:44..
2006-02-22  Marcus Brinkmann  <marcus at g10code.de>

	* engine.c (gpgme_engine_check_version): Reimplemented to allow
	checking the version correctly even after changing the engine
	information.  Bug reported by Stéphane Corthésy.
https://invent.kde.org/neon/forks/gpgme/-/commit/fb6692fc75da65b616a9a5ed66789c52e8227f97

Git commit 13a3cb6e29236ef9f792cfb25973beaf4e1f8303 by Marcus Brinkmann on 22/02/2006 at 11:58..
2006-02-22  Marcus Brinkmann  <marcus at g10code.de>

	* pth.m4: Fix code generation (required for Max OS X).
	Submitted by Emanuele Giaquinta <exg at gentoo.org>.
https://invent.kde.org/neon/forks/gpgme/-/commit/13a3cb6e29236ef9f792cfb25973beaf4e1f8303

Git commit 366e7757f5ae178452eecaa600cad386b629b46e by Marcus Brinkmann on 22/02/2006 at 12:01..
Fix copyright year.
https://invent.kde.org/neon/forks/gpgme/-/commit/366e7757f5ae178452eecaa600cad386b629b46e

Git commit f89b761f52cef5aa9f9aab377bac3148e95bcb36 by Marcus Brinkmann on 22/02/2006 at 12:03..
2006-02-22  Marcus Brinkmann  <marcus at g10code.de>

	Released 1.1.1.

	* configure.ac (LIBGPGME_LT_CURRENT, LIBGPGME_LT_AGE): Bump for
	release.
	(LIBGPGME_LT_REVISION): Reset to 0 for release.
https://invent.kde.org/neon/forks/gpgme/-/commit/f89b761f52cef5aa9f9aab377bac3148e95bcb36

Git commit 79659ab54439727dc89d8fda8ab96f88b64461a1 by Marcus Brinkmann on 23/02/2006 at 16:31..
Change history.  That's double plus good.
https://invent.kde.org/neon/forks/gpgme/-/commit/79659ab54439727dc89d8fda8ab96f88b64461a1

Git commit a30bcb457c766bcd51d33619019b0b40573344fd by Marcus Brinkmann on 28/02/2006 at 16:54..
2006-02-28  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c (O_BINARY) [!O_BINARY]: New macro.
	(_gpgme_io_pipe): Open pipes in binary mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/a30bcb457c766bcd51d33619019b0b40573344fd

Git commit 7384c8a45798e951d74e544f6328cca8056bda0c by Marcus Brinkmann on 02/03/2006 at 10:39..
2006-03-02  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (LIBGPGME_LT_REVISION): Bump for release.
https://invent.kde.org/neon/forks/gpgme/-/commit/7384c8a45798e951d74e544f6328cca8056bda0c

Git commit 2725bbebd35a39ad04a7e2532b7002c42237f1b3 by Marcus Brinkmann on 03/03/2006 at 10:13..
Post-release tweaks.
https://invent.kde.org/neon/forks/gpgme/-/commit/2725bbebd35a39ad04a7e2532b7002c42237f1b3

Git commit b3755b31b1c67f4bc80f4acb2b3f679258c335b6 by Marcus Brinkmann on 06/03/2006 at 10:33..
2006-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in (cflags_pth): Revert accidential removal of
	pthread support with last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/b3755b31b1c67f4bc80f4acb2b3f679258c335b6

Git commit 5cf7a6a52600aca0ec80e397f34bbeddf6b1c923 by Marcus Brinkmann on 08/06/2006 at 22:07..
2006-06-08  Marcus Brinkmann  <marcus at g10code.de>

	* pth.m4: Add --all to pth-config invocation.
https://invent.kde.org/neon/forks/gpgme/-/commit/5cf7a6a52600aca0ec80e397f34bbeddf6b1c923

Git commit 0a8808623a7bdc6170179f5f966af11ab9bebabb by Marcus Brinkmann on 21/06/2006 at 01:15..
2006-06-21  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Passphrase Callback): Fix inverted condition in
	description.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a8808623a7bdc6170179f5f966af11ab9bebabb

Git commit fca694b372a6c3a43f3937269753c8378c499569 by Marcus Brinkmann on 22/06/2006 at 17:20..
2006-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (gpgme_get_key): Also clone the engine info.
https://invent.kde.org/neon/forks/gpgme/-/commit/fca694b372a6c3a43f3937269753c8378c499569

Git commit 1ae2788117076e95a186fe7491f56f348aaeb5a0 by Marcus Brinkmann on 06/07/2006 at 10:37..
2006-07-06  Marcus Brinkmann  <marcus at g10code.de>

	* lang, lang/cl: New subdirectories.
	* lang/Makefile.am, lang/README: New files.
	* configure.ac (AC_CONFIG_FILES): Add lang/Makefile,
	lang/cl/Makefile and lang/cl/gpgme.asd.
	* Makefile.am (SUBDIRS): Add lang.

lang/cl/
2006-07-06  Marcus Brinkmann  <marcus at g10code.de>

	* Initial release.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ae2788117076e95a186fe7491f56f348aaeb5a0

Git commit c7762497febcf1d1681d57b02929bad7903827d3 by Marcus Brinkmann on 16/07/2006 at 13:25..
2006-07-16  Marcus Brinkmann  <marcus at g10code.de>

	* data.c (gpgme_data_set_file_name): Allow to clear the file name
	by passing NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/c7762497febcf1d1681d57b02929bad7903827d3

Git commit 6bde056355796f15b6e6954372e87f349847515b by Marcus Brinkmann on 16/07/2006 at 13:27..
2006-07-16  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (read_status): Strip potential carriage return.
	* genkey.c (get_key_parameter): Skip potential carriage return.
	* version.c (_gpgme_get_program_version): Strip potential carriage
	return.
https://invent.kde.org/neon/forks/gpgme/-/commit/6bde056355796f15b6e6954372e87f349847515b

Git commit fba48de1eeda06044c372d573940a6358abf7ca3 by Marcus Brinkmann on 16/07/2006 at 13:36..
doc/
2005-03-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Library Version Check): Make example code compatible
	to W32 systems.

gpgme/
2005-03-24  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_set_locale): Remove conditional on
	HAVE_W32_SYSTEM, and just check for LC_MESSAGES.
https://invent.kde.org/neon/forks/gpgme/-/commit/fba48de1eeda06044c372d573940a6358abf7ca3

Git commit f3285b560992a39614c13dd5d738493c8d357d3a by Marcus Brinkmann on 29/07/2006 at 13:42..
2006-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (read_status): Fix comparison disguising as an
	assignment.
https://invent.kde.org/neon/forks/gpgme/-/commit/f3285b560992a39614c13dd5d738493c8d357d3a

Git commit 426fd0cc08f579c5478bc5fbf13456814685a739 by Marcus Brinkmann on 29/07/2006 at 14:40..
2006-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Check for network libraries and set NETLIBS.

gpgme/
2006-07-29  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in (Options): Add NETLIBS.
	* Makefile.am (libgpgme_la_LIBADD, libgpgme_pthread_la_LIBADD,
	libgpgme_pth_la_LIBADD, libgpgme_glib_la_LIBADD): Add NETLIBS.
https://invent.kde.org/neon/forks/gpgme/-/commit/426fd0cc08f579c5478bc5fbf13456814685a739

Git commit 9e09d93de83fe1160689acb36b082c02ccb52716 by Marcus Brinkmann on 19/09/2006 at 14:01..
assuan/
	Update to current version.

2006-09-19  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Turn stpcpy into a replacement function.
	Check for unistd.h and add setenv as replacement function.

gpgme/
2006-09-19  Marcus Brinkmann  <marcus at g10code.de>

	* setenv.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e09d93de83fe1160689acb36b082c02ccb52716

Git commit 4b1393f66411ad17afe743a52f8926271b4833af by Marcus Brinkmann on 22/09/2006 at 12:29..
2006-09-22  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (keylist_colon_handler): Move debug output after
	initialising KEY.
https://invent.kde.org/neon/forks/gpgme/-/commit/4b1393f66411ad17afe743a52f8926271b4833af

Git commit 9247e9081b6a2112e50a165ecff4403b5caa9f1f by Marcus Brinkmann on 25/09/2006 at 14:57..
doc/
2006-09-25  Marcus Brinkmann  <marcus at g10code.de>

        * gpgme.texi (Destroying Data Buffers): Clarify that
        gpgme_data_release_and_get_mem destroys DH unconditionally.

gpgme/
2006-09-25  Marcus Brinkmann  <marcus at g10code.de>

        * data-mem.c (gpgme_data_release_and_get_mem): Release the data
        object properly.
https://invent.kde.org/neon/forks/gpgme/-/commit/9247e9081b6a2112e50a165ecff4403b5caa9f1f

Git commit aeef0402a7469d9ade74751cdbdf12a277c4304e by Marcus Brinkmann on 23/10/2006 at 17:17..
2006-10-23  Marcus Brinkmann  <marcus at g10code.de>

	* keylist.c (gpgme_op_keylist_next): Return error if OPD is NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/aeef0402a7469d9ade74751cdbdf12a277c4304e

Git commit ebb8edbb30c8d21f2ebc4c398d46616f84859355 by Marcus Brinkmann on 23/10/2006 at 18:52..
2006-10-23  Marcus Brinkmann  <marcus at g10code.de>

	* wait-global.c (gpgme_wait): Unlock CTX_LIST_LOCK while calling
	_gpgme_engine_io_event().
https://invent.kde.org/neon/forks/gpgme/-/commit/ebb8edbb30c8d21f2ebc4c398d46616f84859355

Git commit f44e7a64bba3fd1980fb1a6fac792bfaf4c3d36b by Marcus Brinkmann on 24/10/2006 at 09:22..
2006-10-24  Marcus Brinkmann  <marcus at g10code.de>

	* trustlist.c (gpgme_op_trustlist_next): Return error if OPD is
	NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/f44e7a64bba3fd1980fb1a6fac792bfaf4c3d36b

Git commit 27e9625668eadbf0dc52d03e4b3d19bcad8fcaee by Moritz Schulte on 01/11/2006 at 10:02..
2006-11-01  Moritz Schulte  <moritz at g10code.com>

	* gpgme.texi (Data Buffer I/O Operations): Fixed entry for
	gpgme_data_seek: OFFSET is not a pointer; some s/whence/offset/.
https://invent.kde.org/neon/forks/gpgme/-/commit/27e9625668eadbf0dc52d03e4b3d19bcad8fcaee

Git commit 7a1e9447e56efc4069be5a58f97b61d1573d4883 by Marcus Brinkmann on 29/11/2006 at 15:44..
2006-11-29  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c: Include <unistd.h>.
	(gpg_new): Support --display, --ttyname, --ttytype, --lc-ctype and
	--lc-messages.  Fixes issue 734.
https://invent.kde.org/neon/forks/gpgme/-/commit/7a1e9447e56efc4069be5a58f97b61d1573d4883

Git commit a9e91c8b4af3bdf11f2ae4457d093fa5e2501432 by Marcus Brinkmann on 29/11/2006 at 15:47..
2006-11-29  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (NEED_GPG_VERSION): Bump to 1.3.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/a9e91c8b4af3bdf11f2ae4457d093fa5e2501432

Git commit aa1c0a545dfbddead04abb8a1754606672cc667c by Marcus Brinkmann on 29/11/2006 at 16:25..
Update to rev 231 of libassuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/aa1c0a545dfbddead04abb8a1754606672cc667c

Git commit 0bd5dd4b24bc50452d982bf033f758bc96a9b7f1 by Marcus Brinkmann on 29/11/2006 at 19:21..
2006-11-29  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_new): Check return value of
	assuan_pipe_connect.
https://invent.kde.org/neon/forks/gpgme/-/commit/0bd5dd4b24bc50452d982bf033f758bc96a9b7f1

Git commit ca43edcd40a91f6e50bcabb9bfe43c6c58dc1aba by Marcus Brinkmann on 30/11/2006 at 20:45..
2006-11-30  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c: Replace AssuanError with gpg_error_t and
	ASSUAN_CONTEXT with assuan_context_t.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca43edcd40a91f6e50bcabb9bfe43c6c58dc1aba

Git commit e9f92dd04909ced0365e39b6ce43c4282ce29e4a by Marcus Brinkmann on 01/12/2006 at 12:22..
2006-12-01  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_real_la_SOURCES): Rename to main_sources.
	(libgpgme_la_SOURCES, libgpgme_pthread_la_SOURCES,
	libgpgme_glib_la_SOURCES, libgpgme_pth_la_SOURCES): Add
	$(main_sources).
	(libgpgme_la_DEPENDENCIES, libgpgme_la_LIBADD,
	libgpgme_pthread_la_DEPENDENCIES, libgpgme_pthread_la_LIBADD,
	libgpgme_pth_la_DEPENDENCIES, libgpgme_pth_la_LIBADD,
	libgpgme_glib_la_DEPENDENCIES, libgpgme_glib_la_LIBADD): Remove
	libgpgme-real.la.
	(noinst_LTLIBRARIES): Removed.
	(libgpgme_glib_la_CFLAGS, libgpgme_pth_la_CFLAGS): Removed.
	(AM_CFLAGS): New variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/e9f92dd04909ced0365e39b6ce43c4282ce29e4a

Git commit 68fc3075c3fd56be97b2949f7cf25ac88c65bd71 by Marcus Brinkmann on 02/12/2006 at 22:47..
2006-12-02  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-keylist.c (main): Skip unknown keys.  Newer versions of
	GPGSM import more keys than older ones.
https://invent.kde.org/neon/forks/gpgme/-/commit/68fc3075c3fd56be97b2949f7cf25ac88c65bd71

Git commit a5b002c88364120d5cbc3d07acca49d45e0ac902 by Marcus Brinkmann on 02/12/2006 at 23:57..
2006-12-02  Marcus Brinkmann  <marcus at g10code.de>

	* version.c: Include "assuan.h".
	(do_subsystem_inits): Call assuan_set_assuan_err_source.
https://invent.kde.org/neon/forks/gpgme/-/commit/a5b002c88364120d5cbc3d07acca49d45e0ac902

Git commit 7cce8f4bb28166d1b7747c747de38aaf638f2496 by Marcus Brinkmann on 02/12/2006 at 23:58..
2006-12-03  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add check for use of descriptor passing.
https://invent.kde.org/neon/forks/gpgme/-/commit/7cce8f4bb28166d1b7747c747de38aaf638f2496

Git commit cb960f1e9619a8da61bd2f33dfd939d9e7301b08 by Marcus Brinkmann on 03/12/2006 at 02:00..
2006-12-03  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Use descriptor passing only if --enable-fd-passing
	is provided.
https://invent.kde.org/neon/forks/gpgme/-/commit/cb960f1e9619a8da61bd2f33dfd939d9e7301b08

Git commit ba58b21408d34938fd0c1b8eecf10bfa9de4366a by Marcus Brinkmann on 03/12/2006 at 02:05..
2006-12-03  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (struct engine_gpgsm): Move members
	input_fd_server, output_fd_server, message_fd_server to ...
	(iocb_data): ... here (as server_fd).
	(close_notify_handler): Reset tags as well.
	(gpgsm_new): Implement support for descriptor
	passing.
	(fd_type_t): New type.
	(gpgsm_clear_fd): New function.  Use it instead of _gpgsm_io_close
	for unused communication channels.
	(gpgsm_set_fd): Rewritten to support descriptor passing.  All
	relevant callers adjusted as well (previously of _gpgme_io_close).
https://invent.kde.org/neon/forks/gpgme/-/commit/ba58b21408d34938fd0c1b8eecf10bfa9de4366a

Git commit f9bf0d5b796c779312102a48997988048ceb485d by Marcus Brinkmann on 17/12/2006 at 16:40..
2006-12-17  Marcus Brinkmann  <marcus at g10code.de>

	* engine.h (_gpgme_engine_new): Remove arguments lc_ctype and
	lc_messages from prototype.
	(_gpgme_engine_set_locale): New prototype.
	* engine.c (_gpgme_engine_set_locale): New function.
	* op-support.c (_gpgme_op_reset): Call _gpgme_engine_set_locale.
	* engine-backend.h (struct engine_ops): Add new member SET_LOCALE.
	Remove arguments lc_messages and lc_ctype from member NEW.
	* engine-gpgsm.c (struct engine_gpgsm): New members lc_ctype_set
	and lc_messages_set.
	(gpgsm_new): Remove lc_messages and lc_ctype
	arguments.
	(gpgsm_set_locale): New function.
	(_gpgme_engine_ops_gpgsm): Add gpgsm_set_locale.
	* rungpg.c (struct engine_gpg): Add new members lc_messages and
	lc_ctype.
	(gpg_release): Release lc_messages and lc_ctype if set.
	(gpg_new): Remove lc_messages and lc_ctype arguments.
	(gpg_set_locale): New function.
	(_gpgme_engine_ops_gpg): Add gpg_set_locale.
	(add_arg): Implement in terms of:
	(add_arg_ext): New function.
	(start): Set lc-messages and lc-ctype arguments here.
https://invent.kde.org/neon/forks/gpgme/-/commit/f9bf0d5b796c779312102a48997988048ceb485d

Git commit 13d2e5d1c769d82d05e47a3fe9733108fabd5f73 by Marcus Brinkmann on 17/12/2006 at 21:12..
2006-12-17  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Fix two typos in last change.

gpgme/
2006-12-17  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_set_protocol): Shut down the engine when
	switching protocols.
	(gpgme_ctx_set_engine_info): Likewise for engine info.
	* engine.h (_gpgme_engine_reset): New function prototype.
	* engine.c (_gpgme_engine_reset): New function.
	* engine-backend.h (struct engine_ops): New member RESET.
	* rungpg.c (_gpgme_engine_ops_gpg): Add NULL for reset function.
	* engine-gpgsm.c (_gpgme_engine_ops_gpgsm)
	[USE_DESCRIPTOR_PASSING]: Add gpgsm_reset for reset.
	(_gpgme_engine_ops_gpgsm) [!USE_DESCRIPTOR_PASSING]: Add NULL for
	reset function.
	(gpgsm_reset) [USE_DESCRIPTOR_PASSING]: New function.
	* op-support.c (_gpgme_op_reset): Try to use the engine's reset
	function if available.
	* engine-gpgsm.c (gpgsm_new): Move code to dup status_fd to ...
	(start): ... here.
	* posix-io.c (_gpgme_io_recvmsg, _gpgme_io_sendmsg): New functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/13d2e5d1c769d82d05e47a3fe9733108fabd5f73

Git commit 2a139abd8e5ab7b8500fa498da1a96ab2f508e27 by Marcus Brinkmann on 05/01/2007 at 17:16..
2007-01-05  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add options --with-gpg-version and
	--with-gpgsm-version to allow overriding the minimum version
	requirements.
https://invent.kde.org/neon/forks/gpgme/-/commit/2a139abd8e5ab7b8500fa498da1a96ab2f508e27

Git commit fca9d331d2c7a825c132a756a97a74325b381b2c by Werner Koch on 08/01/2007 at 12:05..
Fixes for building without gpgsm and for W32
https://invent.kde.org/neon/forks/gpgme/-/commit/fca9d331d2c7a825c132a756a97a74325b381b2c

Git commit cc5190ffc1bdef706df2d6fe7e1e5491fb28c708 by Werner Koch on 10/01/2007 at 10:18..
/
	* configure.ac (NEED_GPG_VERSION,
	(NEED_GPGSM_VERSION): Must define after it may have been changed
	by an option.

	* configure.ac: Require gpg-error 1.4 due to the use of
	gpg_error_from_syserror.
	(HAVE_ASSUAN_H): New.

gpgme/

	* ttyname_r.c (ttyname_r) [W32]: Return a dummy name.

	* version.c (do_subsystem_inits): Do assuan init only if building
	with Assuan.
	* setenv.c: Include assuan-def.h only if building with Assuan
	support.

	* op-support.c (_gpgme_op_reset): Set LC_MESSAGES only if
	if defined.
	* engine-gpgsm.c (gpgsm_set_locale): Ditto.
	* rungpg.c (gpg_set_locale): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/cc5190ffc1bdef706df2d6fe7e1e5491fb28c708

Git commit c1b1642f1bb9c338210b3a9235b871ad09ddeb21 by Marcus Brinkmann on 17/01/2007 at 19:35..
2007-01-17  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c (build_commandline): Quote all command line arguments.
	* w32-glib-io.c (build_commandline): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/c1b1642f1bb9c338210b3a9235b871ad09ddeb21

Git commit e08d4a32d67bc2217a232c9c92f5accbaa931550 by Marcus Brinkmann on 17/01/2007 at 19:38..
Add item about windows command line quoting bug fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/e08d4a32d67bc2217a232c9c92f5accbaa931550

Git commit 9e1edec4ffd903c2481f6a3b3c46e6c37a97d665 by Marcus Brinkmann on 18/01/2007 at 17:59..
2007-01-18  Marcus Brinkmann  <marcus at g10code.de>

	* data.h (_gpgme_data_get_fd): Add prototype.
	(gpgme_data_get_fd_cb): New type.
	(struct _gpgme_data_cbs): New member get_fd.
	* data.c (_gpgme_data_get_fd): New function.
	* data-fd.c (fd_get_fd): New function.
	(fd_cbs): Add fd_get_fd.
	* data-stream.c (stream_get_fd): New function.
	(stream_cbs): Add stream_get_fd.
	* data-mem.c (mem_cbs): Add NULL for get_fd callback.	
	* data-user.c (user_cbs): Likewise.
	* engine-gpgsm.c (gpgsm_set_fd) [USE_DESCRIPTOR_PASSING]: Try to
	short-cut by passing the data descriptor directly.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e1edec4ffd903c2481f6a3b3c46e6c37a97d665

Git commit ffbeb4f508ad64e4b7a5a26029e9c3ca43ca2c76 by Marcus Brinkmann on 18/01/2007 at 18:02..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/ffbeb4f508ad64e4b7a5a26029e9c3ca43ca2c76

Git commit d6a252124671ea969d85b64567c781a57b322e06 by Werner Koch on 26/01/2007 at 12:08..
/
	* configure.ac: Changed gpg and gpgsm version checks to work with
	arbitrary names of the gpg binary. New option --disable-gpg-test
	and --disable-gpgsm-test.
gpgme/
	* w32-io.c (build_commandline): Fixed stupid quoting bug.
	* w32-glib-io.c (build_commandline): Ditto.

	* rungpg.c (gpg_set_locale): Avoid dangling pointer after free.

	* gpgme-config.in: New options --get-gpg and --get-gpgsm.
https://invent.kde.org/neon/forks/gpgme/-/commit/d6a252124671ea969d85b64567c781a57b322e06

Git commit 69346c7aad4755248f426150b9ad7325c1531a76 by Marcus Brinkmann on 29/01/2007 at 20:53..
2007-01-29  Marcus Brinkmann  <marcus at g10code.de>

        * Released 1.1.3.

        * configure.ac (LIBGPGME_LT_REVISION): Bump for release.
https://invent.kde.org/neon/forks/gpgme/-/commit/69346c7aad4755248f426150b9ad7325c1531a76

Git commit 1786019d6891b4e4ff350ca800b1cd63a79c5806 by Werner Koch on 26/02/2007 at 10:36..
Detect and bailo out on double plaintext messages.
https://invent.kde.org/neon/forks/gpgme/-/commit/1786019d6891b4e4ff350ca800b1cd63a79c5806

Git commit fec4e786b347fd0ce5f62f5db0f077d3b53b81b3 by Werner Koch on 26/02/2007 at 10:44..
Fixed last chnage.
https://invent.kde.org/neon/forks/gpgme/-/commit/fec4e786b347fd0ce5f62f5db0f077d3b53b81b3

Git commit a103cf2bf151a64a357057119a1ab35020d7a405 by Werner Koch on 05/03/2007 at 10:56..
Preparing a new release
https://invent.kde.org/neon/forks/gpgme/-/commit/a103cf2bf151a64a357057119a1ab35020d7a405

Git commit c8a3156192d14c76bb04d42d021cd70b78b3d22d by Werner Koch on 05/03/2007 at 11:18..
Post release updates
https://invent.kde.org/neon/forks/gpgme/-/commit/c8a3156192d14c76bb04d42d021cd70b78b3d22d

Git commit 0bd4e4c4d16d44ac08a7a1adc06ce7402a8784a9 by Marcus Brinkmann on 30/04/2007 at 18:37..
2007-04-30  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_new): Fix error handling for ttyname_r.
	* rungpg.c (gpg_new): Likewise.
	Submitted by Stephen Tether.
https://invent.kde.org/neon/forks/gpgme/-/commit/0bd4e4c4d16d44ac08a7a1adc06ce7402a8784a9

Git commit f2bd9ab3be4daa9e0ecadfcb3958fd15d5a760fb by Marcus Brinkmann on 03/05/2007 at 20:12..
2007-05-03  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Registering I/O Callbacks): Fix description of EVENT
	member of gpgme_event_io_t.
https://invent.kde.org/neon/forks/gpgme/-/commit/f2bd9ab3be4daa9e0ecadfcb3958fd15d5a760fb

Git commit 2c5d7a18a92942ed2f6c48dcdda8169b3f11ccc8 by Marcus Brinkmann on 18/05/2007 at 22:30..
2007-05-18  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Error Strings): Fix documentation of
	gpgme_strerror_r.
https://invent.kde.org/neon/forks/gpgme/-/commit/2c5d7a18a92942ed2f6c48dcdda8169b3f11ccc8

Git commit b240231ce345044d774fe43ccba62aa188806318 by Marcus Brinkmann on 05/06/2007 at 14:47..
2007-06-05  Marcus Brinkmann  <marcus at g10code.de>

        * gpgme.texi (Advanced Key Editing): New section.
https://invent.kde.org/neon/forks/gpgme/-/commit/b240231ce345044d774fe43ccba62aa188806318

Git commit 4daa6aa2c976e74e931e8869fa71668c0d2764e2 by Werner Koch on 29/06/2007 at 14:41..
Added target "online".
https://invent.kde.org/neon/forks/gpgme/-/commit/4daa6aa2c976e74e931e8869fa71668c0d2764e2

Git commit 1639030a88ed2e9428d8943d1a11f57dff8b8bfb by Marcus Brinkmann on 04/07/2007 at 20:02..
2007-07-04  Marcus Brinkmann  <marcus at g10code.de>

	* autogen.sh: Use = not == in test.
https://invent.kde.org/neon/forks/gpgme/-/commit/1639030a88ed2e9428d8943d1a11f57dff8b8bfb

Git commit a63c5c013771799432dadec5e2f0aabd48db6af4 by Marcus Brinkmann on 04/07/2007 at 20:03..
2007-07-04  Marcus Brinkmann  <marcus at g10code.de>

	* assuan/: Update files to 2007-07-04 version of assuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/a63c5c013771799432dadec5e2f0aabd48db6af4

Git commit 2d7cfe08b0654ba21a2455ace42eb316ef61725e by Marcus Brinkmann on 04/07/2007 at 21:07..
2007-07-04  Marcus Brinkmann  <marcus at g10code.de>

	* assuan/Makefile.am (INCLUDES): Include $(top_srcdir)/gpgme.  *
	assuan/assuan.h: Include <ath.h> instead of trying to duplicate
	the definitions.
https://invent.kde.org/neon/forks/gpgme/-/commit/2d7cfe08b0654ba21a2455ace42eb316ef61725e

Git commit 5b8e76a5334259a844ff973938b77d3e92e26f8b by Marcus Brinkmann on 08/07/2007 at 15:46..
2007-07-08  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (GPGSM_DEFAULT) [*-mingw32*]: Initialize it.
	(HAVE_ASSUAN_H): Set to 1 if we have it.
	(funopen): Use AC_REPLACE_FUNCS.
	(USE_DESCRIPTOR_PASSING): Define to 1 if we have it.  Do not
	define it at all if we don't.
	(NETLIBS) [have_w32_system]: Add -lws2_32.
	(DIRSEP_C, DIRSEP_S, EXPSEP_C, EXPSEP_S, PATHSEP_S)
	[HAVE_DOSISH_SYSTEM]: Remove definitions.

	* assuan/assuan.h (_assuan_funopen): Define to _gpgme_funopen.
	* assuan/funopen.c: Move to ../gpgme/funopen.c.
	* assuan/Makefile.am (libassuan_la_SOURCES): Remove funopen.c.

assuan/
2007-07-08  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-defs.h (struct assuan_context_s): Have partial peercred
	structure even if HAVE_W32_SYSTEM, and have full peercred
	structure only if HAVE_SO_PEERCRED.
	* assuan-connect.c (assuan_get_peercred) [!HAVE_SO_PEERCRED]: Do
	not try to set PID, UID and GID.

gpgme/
2007-07-08  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c [HAVE_W32_SYSTEM]: Enable the bunch of the file.
	* funopen.c (funopen): Rename to _gpgme_funopen.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b8e76a5334259a844ff973938b77d3e92e26f8b

Git commit 573f4ff07bc68a131cec8b8753b5926f0c0e943b by Marcus Brinkmann on 08/07/2007 at 15:48..
Fix formatting.
https://invent.kde.org/neon/forks/gpgme/-/commit/573f4ff07bc68a131cec8b8753b5926f0c0e943b

Git commit f15a48db5553b7897775ee3593ea891dcd2330e3 by Marcus Brinkmann on 08/07/2007 at 16:00..
Really delete the file as announced in the ChangeLog.
https://invent.kde.org/neon/forks/gpgme/-/commit/f15a48db5553b7897775ee3593ea891dcd2330e3

Git commit 3ceac8604d62ed87cf70ebc5eb0b0838c26218a3 by Marcus Brinkmann on 09/07/2007 at 13:07..
2007-07-09  Marcus Brinkmann  <marcus at g10code.de>

	Released 1.1.5.

	* configure.ac (LIBGPGME_LT_REVISION): Bump for release.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ceac8604d62ed87cf70ebc5eb0b0838c26218a3

Git commit 4718b14e181ae1eb5deb8b7efb22641f17ceb3d0 by Marcus Brinkmann on 09/07/2007 at 13:45..
Post-release fixup.
https://invent.kde.org/neon/forks/gpgme/-/commit/4718b14e181ae1eb5deb8b7efb22641f17ceb3d0

Git commit 2d9c4431b883224891d24611536964b4abb492a7 by Marcus Brinkmann on 10/07/2007 at 16:06..
2007-07-10  Marcus Brinkmann  <marcus at g10code.de>

	* priv-io.h (_gpgme_io_dup): New prototype.
	* posix-io.c (_gpgme_io_dup): New function. 
	* w32-io.c (_gpgme_io_dup): Likewise.
	* w32-glib-io.c (_gpgme_io_dup): Likewise.
	* engine-gpgsm.c (start): Use _gpgme_dup() instead of dup().
https://invent.kde.org/neon/forks/gpgme/-/commit/2d9c4431b883224891d24611536964b4abb492a7

Git commit 906da085cf6a15173b1ffdf698159d55fd0d67fe by Werner Koch on 12/07/2007 at 15:25..
Changes for W32
https://invent.kde.org/neon/forks/gpgme/-/commit/906da085cf6a15173b1ffdf698159d55fd0d67fe

Git commit 1ef14744a2f648eb94fa308336f807e5b2eafafd by Marcus Brinkmann on 12/07/2007 at 18:26..
2007-07-12  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/Makefile.am (key_id): Change := into =.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ef14744a2f648eb94fa308336f807e5b2eafafd

Git commit f401a75a5f6dca2c0bdac81a7d6f9b7f79ad353a by Marcus Brinkmann on 12/07/2007 at 18:31..
2007-07-12  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am: Replace implicite rule by suffix rule.  Add
	SUFFIXES for that.
https://invent.kde.org/neon/forks/gpgme/-/commit/f401a75a5f6dca2c0bdac81a7d6f9b7f79ad353a

Git commit 409aaefe365e8eb9a8c89fccf64e27fe32b73de7 by Werner Koch on 12/07/2007 at 18:54..
Minor fixes for W32
https://invent.kde.org/neon/forks/gpgme/-/commit/409aaefe365e8eb9a8c89fccf64e27fe32b73de7

Git commit a3e3601d06b6eb1916a909707293fb81137c3405 by Marcus Brinkmann on 12/07/2007 at 20:19..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/a3e3601d06b6eb1916a909707293fb81137c3405

Git commit c4bb93ec28db2bab7e02c5e6c76645a7367bf4b2 by Marcus Brinkmann on 13/07/2007 at 00:43..
2007-07-13  Marcus Brinkmann  <marcus at g10code.de>

	* assuan/assuan-io.c (_assuan_simple_read, _assuan_simple_write):
	Always use read/write (which means _gpgme_io_read and
	_gpgme_io_write).

gpgme/
2007-07-13  Marcus Brinkmann  <marcus at g10code.de>

	* priv-io.h (_gpgme_io_set_close_notify): Change type of HANDLER
	to _gpgme_close_notify_handler.
	(_gpgme_close_notify_handler): New type.
	(_gpgme_io_dup): Remove prototype.
	* posix-io.c (notify_table, _gpgme_io_set_close_notify): Change
	type of HANDLER to _gpgme_close_notify_handler_t.
	(_gpgme_io_close): Do not close the FD if handler returns 0.
	(_gpgme_io_dup): Remove function.
	* w32-io.c (notify_table, _gpgme_io_set_close_notify,
	_gpgme_io_close): Change type of HANDLER to
	_gpgme_close_notify_handler_t.
	(_gpgme_io_close): Do not close the FD if handler returns 0.
	(_gpgme_io_dup): Remove function.
	* w32-glib-io.c (_gpgme_io_dup): Remove function.
	(_gpgme_io_set_close_notify, notify_table): Change type of HANDLER
	to _gpgme_close_notify_handler_t.
	(_gpgme_io_close): Do not close the FD if handler returns 0.
	* rungpg.c (close_notify_handler): Change return type to int,
	return 1.
	* engine-gpgsm.c (close_notify_handler): Change return type to
	int, return 0 for status FD and 1 for all other FDs.
	(start): Do not duplicate the status FD.
https://invent.kde.org/neon/forks/gpgme/-/commit/c4bb93ec28db2bab7e02c5e6c76645a7367bf4b2

Git commit 5d25b54f30d2335694e98760e3560915bf639bff by Marcus Brinkmann on 13/07/2007 at 01:57..
2007-07-13  Marcus Brinkmann  <marcus at g10code.de>

	* Revert the "close_notify_handler" returns int stuff.  Always
	close in the _gpgme_io_close implementations.
	* engine-gpgsm.c (status_handler): Try to terminate the connection
	in case of error.
	* w32-io.c (_gpgme_io_read): Return C->error_code in ERRNO.
	(_gpgme_io_write): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/5d25b54f30d2335694e98760e3560915bf639bff

Git commit d258f5f735d427137b5490f5e3b56fa6ba2f7f2f by Marcus Brinkmann on 13/07/2007 at 14:47..
2007-07-13  Marcus Brinkmann  <marcus at g10code.de>

	* data-user.c (user_read, user_write, user_seek): Set errno and
	return -1 instead returning the error code directly.
	* data-compat.c (old_user_seek): Likewise.
	* gpgme.c (gpgme_sig_notation_add): Return error properly.
https://invent.kde.org/neon/forks/gpgme/-/commit/d258f5f735d427137b5490f5e3b56fa6ba2f7f2f

Git commit b3434696b380921d5d0be8ffdf1e19ca938fe572 by Marcus Brinkmann on 16/07/2007 at 17:26..
2007-07-16  Marcus Brinkmann  <marcus at g10code.de>

	* assuan/assuan-socket.c (_assuan_close): Always use close().
	* assuan/assuan.h (_gpgme_io_close): New prototype.
	(close): New macro, define as _gpgme_io_close.

gpgme/
2007-07-16  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c (struct reader_context_s, struct writer_context_s): New
	members REFCOUNT.
	(create_reader, create_writer): Initialize C->refcount to 1.
	(destroy_reader, destroy_writer): Only destroy if C->refcount
	drops to 0.
	(find_reader, find_writer, kill_reader, kill_writer): Beautify.
	* priv-io.h (_gpgme_io_dup): New prototype.
	* posix-io.c (_gpgme_io_dup): New function. 
	* w32-io.c (_gpgme_io_dup): Likewise.
	* w32-glib-io.c (_gpgme_io_dup): Likewise.
	* engine-gpgsm.c (start): Reverting to version 2007-07-10.
https://invent.kde.org/neon/forks/gpgme/-/commit/b3434696b380921d5d0be8ffdf1e19ca938fe572

Git commit 174bf90842115b450eda3e57a133edfc36e48aee by Marcus Brinkmann on 16/07/2007 at 17:27..
2007-07-16  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (status_handler): Do not send BYE here.
https://invent.kde.org/neon/forks/gpgme/-/commit/174bf90842115b450eda3e57a133edfc36e48aee

Git commit d1e40ac15ff28c16660cd14a4f30b5c3e8be977a by Marcus Brinkmann on 16/07/2007 at 17:47..
Fixed last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/d1e40ac15ff28c16660cd14a4f30b5c3e8be977a

Git commit d61bf6c13c1ac6fb8c20afa87e8343a38431b76f by Marcus Brinkmann on 17/07/2007 at 12:36..
2007-07-17  Marcus Brinkmann  <marcus at g10code.de>

	* debug.c:;5B Include <errno.h> and "debug.h".
	(_gpgme_debug): Save and restore ERRNO.
	(TOHEX): New macro.
	(_gpgme_debug_buffer): New function.
	* conversion.c, data-compat.c, data-mem.c, data.c, engine-gpgsm.c,
	gpgme.c, keylist.c, posix-io.c, rungpg.c, sign.c, version.c,
	w32-io.c, wait.c: Replace DEBUG macros by TRACE_* variants.  In
	most of these files, add many more tracepoints.
https://invent.kde.org/neon/forks/gpgme/-/commit/d61bf6c13c1ac6fb8c20afa87e8343a38431b76f

Git commit ba87348230b5b62139ab133fca598eb04714a81d by Marcus Brinkmann on 17/07/2007 at 12:42..
Add item for tracepoints.
https://invent.kde.org/neon/forks/gpgme/-/commit/ba87348230b5b62139ab133fca598eb04714a81d

Git commit 5e00a176f502fe29d2f4d30d581865d539452f79 by Werner Koch on 02/08/2007 at 14:59..
Improved debug support: Assuan logging is now directed to the  gpgme debug
stream.
Create processes detached.
https://invent.kde.org/neon/forks/gpgme/-/commit/5e00a176f502fe29d2f4d30d581865d539452f79

Git commit bc82a66514c6f0399f7074f8ad1afc7e8556e028 by Werner Koch on 07/08/2007 at 15:21..
Add new signature_t member chain_model.
https://invent.kde.org/neon/forks/gpgme/-/commit/bc82a66514c6f0399f7074f8ad1afc7e8556e028

Git commit 2535c304055c72fa15e8a53e92f660d5223fc52b by Marcus Brinkmann on 20/08/2007 at 16:12..
2007-08-20  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h: Move include of gpg-error.h out of extern "C".
https://invent.kde.org/neon/forks/gpgme/-/commit/2535c304055c72fa15e8a53e92f660d5223fc52b

Git commit 9490cb1bc544a384a1f57c313e05a2b4f03e47b2 by Marcus Brinkmann on 21/08/2007 at 15:09..
2007-08-21  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (--enable-w32-glib): Use --enableval, not
	--withval.
https://invent.kde.org/neon/forks/gpgme/-/commit/9490cb1bc544a384a1f57c313e05a2b4f03e47b2

Git commit 597e0283e27f60c807bbe7f4a2b2ecb9dcace467 by Marcus Brinkmann on 22/08/2007 at 11:10..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/597e0283e27f60c807bbe7f4a2b2ecb9dcace467

Git commit c9dc982ce3da776268334a1663cee17970cee11e by Marcus Brinkmann on 22/08/2007 at 17:29..
2007-08-22  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c (_gpgme_io_write): Return early if COUNT is zero.
	(writer): Remove superfluous check.
https://invent.kde.org/neon/forks/gpgme/-/commit/c9dc982ce3da776268334a1663cee17970cee11e

Git commit e8b5e9321da78948b90f7f3bb3ed42dd96d4d61d by Marcus Brinkmann on 03/09/2007 at 14:19..
2007-09-03  Marcus Brinkmann  <marcus at g10code.de>

	* assuan.h [_ASSUAN_EXT_SYM_PREFIX]: Add missing symbol renames
	with _ASSUAN_PREFIX.
https://invent.kde.org/neon/forks/gpgme/-/commit/e8b5e9321da78948b90f7f3bb3ed42dd96d4d61d

Git commit becf580f6163889de683500957a0a7cfceb7ed47 by Marcus Brinkmann on 06/09/2007 at 22:41..
2007-09-07  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Check for C++, Qt and support --enable-w32-qt.
	* m4/pkg.m4: New file.

gpgme/
2007-09-07  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.h, kdpipeiodevice.cpp, moc_kdpipeiodevice.cpp,
	kdpipeiodevice.moc, w32-qt-io.c: New files.
	* Makefile.am (ltlib_gpgme_extra): Rename to ltlib_gpgme_glib.
	(ltlib_gpgme_qt): New variable.
	(lib_LTLIBRARIES): Add $(ltlib_gpgme_qt).
	(libgpgme_qt_la_SOURCES): New variable.
	(AM_CPPFLAGS): Add @QT4_CORE_INCLUDES@
	(AM_CFLAGS): Add @QT4_CORE_CFLAGS at .
	(libgpgme_qt_la_LDFLAGS, libgpgme_qt_la_DEPENDENCIES)
	(libgpgme_qt_la_LIBADD): New variables.
	* sema.h (struct critsect_s): Rename "private" to "priv" to make
	C++ users happy.  Change users.
	* posix-sema.c (_gpgme_sema_cs_enter, _gpgme_sema_cs_leave)
	(_gpgme_sema_cs_destroy): Likewise.
	* w32-sema.c (critsect_init, _gpgme_sema_cs_enter)
	(_gpgme_sema_cs_leave, _gpgme_sema_cs_destroy): Likewise.
	* w32-glib-io.c (gpgme_get_giochannel): Change return type to
	void*.
	(gpgme_get_fdptr): New function.
	* w32-io.c (gpgme_get_fdptr): New function
	* gpgme.def: Add gpgme_get_fdptr.
https://invent.kde.org/neon/forks/gpgme/-/commit/becf580f6163889de683500957a0a7cfceb7ed47

Git commit 414212ea5ebfa8a1f381e69c733aad303127410e by Marcus Brinkmann on 07/09/2007 at 19:38..
2007-09-07  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Work around for missing Qt cross compilation support.
	Check for glib and qt only on w32 targets.
gpgme/
2007-09-07  Marcus Brinkmann  <marcus at g10code.de>

	* w32-qt-io.cpp (_gpgme_io_spawn): Fix several cast errors and typos.
	* w32-io.c (_gpgme_io_write): Use TRACE_SYSRES instead of TRACE_SYS.
	(libgpgme_qt_la_LIBADD): Add QT4_CORE_LIBS, not QT4_CORE_LIB.
https://invent.kde.org/neon/forks/gpgme/-/commit/414212ea5ebfa8a1f381e69c733aad303127410e

Git commit dc9b29175f31c3b0cac65902a8eb938806a4eadd by Marcus Brinkmann on 07/09/2007 at 20:54..
2007-09-07  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (libgpgme_qt_la_SOURCES): Move
	moc_kdpipeiodevice.cpp to EXTRA_DIST, as this is only included by
	another file (it's more like a header file than a cpp file, but
	automake doesn't know that).
https://invent.kde.org/neon/forks/gpgme/-/commit/dc9b29175f31c3b0cac65902a8eb938806a4eadd

Git commit 5de5a01672604c258ce7fc598393aa11ecee0ddc by Marcus Brinkmann on 13/09/2007 at 20:42..
2007-09-13  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_new): Handle return value of _gpgme_getenv (fixes
	small memory leak).
https://invent.kde.org/neon/forks/gpgme/-/commit/5de5a01672604c258ce7fc598393aa11ecee0ddc

Git commit 5f726f4af7570bc94fcdd67d25b3d0dfbf25eeb4 by Marcus Brinkmann on 13/09/2007 at 22:40..
2007-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-verify.c (main): Release TEXT and SIG.
https://invent.kde.org/neon/forks/gpgme/-/commit/5f726f4af7570bc94fcdd67d25b3d0dfbf25eeb4

Git commit 7ea5674f482ad0d4f1e30979ffa9220b5a280cab by Marcus Brinkmann on 13/09/2007 at 22:41..
2007-09-14  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_release): Call gpgme_sig_notation_clear.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ea5674f482ad0d4f1e30979ffa9220b5a280cab

Git commit da6f3dc0c53f11f7432b3c258702db07d6c37f9a by Werner Koch on 14/09/2007 at 12:27..
Fixed bug in gpgme_data_relase_and_get_mem.
Typo fixes.
https://invent.kde.org/neon/forks/gpgme/-/commit/da6f3dc0c53f11f7432b3c258702db07d6c37f9a

Git commit 68f6c707117643ce439618e5b5277a42c1c01355 by Werner Koch on 17/09/2007 at 10:21..
Fixed a W32bug in rungpg.c
https://invent.kde.org/neon/forks/gpgme/-/commit/68f6c707117643ce439618e5b5277a42c1c01355

Git commit 496fa48ffdde26e724b17d77bf821a075e0b5985 by Werner Koch on 17/09/2007 at 13:24..
Bumbed version number (still svn, though)
https://invent.kde.org/neon/forks/gpgme/-/commit/496fa48ffdde26e724b17d77bf821a075e0b5985

Git commit 11df38d4655465b951696e2fcb6f995533a4011a by Werner Koch on 25/09/2007 at 15:08..
Fixed a name clash under W32
https://invent.kde.org/neon/forks/gpgme/-/commit/11df38d4655465b951696e2fcb6f995533a4011a

Git commit e7f0767e977d14abca010e8b7a93156247e85a16 by Marcus Brinkmann on 25/09/2007 at 16:34..
2007-09-25  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.h: Use namespace _gpgme_.
	* kdpipeiodevice.cpp: Use namespace _gpgme_.
	[Q_OS_WIN32 && NOMINMAX]: Do not define NOMINMAX again.
	* w32-qt-io.cpp: Change namespace of KDPipeIODevice to
	_gpgme_::KDPipeIODevice.
https://invent.kde.org/neon/forks/gpgme/-/commit/e7f0767e977d14abca010e8b7a93156247e85a16

Git commit 076eb7608b3ed71fd79b8d89f4295fe52e0bf907 by Marcus Brinkmann on 25/09/2007 at 16:35..
2007-09-25  Marcus Brinkmann  <marcus at g10code.de>

	* conversion.c, keylist.c: Include <sys/types.h>.
https://invent.kde.org/neon/forks/gpgme/-/commit/076eb7608b3ed71fd79b8d89f4295fe52e0bf907

Git commit 90a7b744770707035f313772c17a87922b8f0708 by Marcus Brinkmann on 27/09/2007 at 11:06..
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-pipe-connect.c (pipe_connect_gpgme): New function, use it
	if _ASSUAN_IN_GPGME_BUILD_ASSUAN.
https://invent.kde.org/neon/forks/gpgme/-/commit/90a7b744770707035f313772c17a87922b8f0708

Git commit 8495b4f031098bb83996fc5c62c7d77f781f6dc2 by Marcus Brinkmann on 27/09/2007 at 11:44..
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-pipe-connect.c (pipe_connect_gpgme): Fix last change.

gpgme/
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c (_gpgme_io_pipe), w32-qt-io.c (_gpgme_io_pipe),
	w32-io.c (_gpgme_io_pipe), posix-io.c (_gpgme_io_pipe): Fix debug
	output.
https://invent.kde.org/neon/forks/gpgme/-/commit/8495b4f031098bb83996fc5c62c7d77f781f6dc2

Git commit 7c0007926aaaa05545bd3f371267c5c52a3acc30 by Marcus Brinkmann on 27/09/2007 at 11:55..
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.h: Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/7c0007926aaaa05545bd3f371267c5c52a3acc30

Git commit 30df62122dc09769e124c8ac0661b16df8a38185 by Marcus Brinkmann on 27/09/2007 at 12:17..
doc/
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Protocols and Engines): Document GPGME_PROTOCOL_UNKNOWN.

gpgme/
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h (gpgme_protocol_t): Add GPGME_PROTOCOL_UNKNOWN.
	* gpgme.c (gpgme_get_protocol_name): Implement support for
	GPGME_PROTOCOL_UNKNOWN.
https://invent.kde.org/neon/forks/gpgme/-/commit/30df62122dc09769e124c8ac0661b16df8a38185

Git commit 37ac53e74c6dd66c3df2ad052ef0302cf90cf4b0 by Marcus Brinkmann on 27/09/2007 at 13:01..
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-pipe-connect.c (pipe_connect_gpgme): Do not close process
	handle here.  Use this function also on Unix systems.

gpgme/
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c (_gpgme_io_spawn),
	w32-qt-io.cpp (_gpgme_io_spawn), w32-io.c (_gpgme_io_spawn): Close
	the process handle, return 0.

tests/
2007-09-27  Marcus Brinkmann  <marcus at g10code.de>

	* t-engine-info.c (check_engine_info): Fix debug output.
	* gpg/Makefile.am (tests_unix): New variable.
	(TESTS): Use it.
	* gpg/t-support.h (passphrase_cb) [HAVE_W32_SYSTEM]: Use WriteFile instead of write.
	* gpg/t-wait.c [HAVE_W32_SYSTEM]: Define sleep as _sleep.
https://invent.kde.org/neon/forks/gpgme/-/commit/37ac53e74c6dd66c3df2ad052ef0302cf90cf4b0

Git commit 7e82572bb2406d02b916bc17013652d19896c156 by Marcus Brinkmann on 27/09/2007 at 22:21..
2007-09-28  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.moc, w32-qt-io.cpp, kdpipeiodevice.cpp: New
	versions from Frank Osterfeld.
https://invent.kde.org/neon/forks/gpgme/-/commit/7e82572bb2406d02b916bc17013652d19896c156

Git commit fea223a5ef1cc352fc60eb1f7ad53d7a1cf421c9 by Werner Koch on 28/09/2007 at 16:23..
Fixed the external event loop for glib.
Add a bit more tracing.
https://invent.kde.org/neon/forks/gpgme/-/commit/fea223a5ef1cc352fc60eb1f7ad53d7a1cf421c9

Git commit 0123eed81c9b12e9fc29cca973c14d39ae984227 by Werner Koch on 28/09/2007 at 17:30..
Fixed a problem in the W32 gpgme->gpgsm communication.
https://invent.kde.org/neon/forks/gpgme/-/commit/0123eed81c9b12e9fc29cca973c14d39ae984227

Git commit d8289000feaa3c4c2ab37296c3036e5f2e0d9bbc by Marcus Brinkmann on 02/10/2007 at 12:02..
2007-10-02  Marcus Brinkmann  <marcus at g10code.de>

	* priv-io.h, engine-gpgsm.c: Add comments.
	* w32-qt-io.cpp (_gpgme_io_select): Remove code handling frozen FDs.
	* w32-glib-io.c (_gpgme_io_close): Always dereference the channel,
	even if not primary.
	(_gpgme_io_dup): Acquire a reference.  Replace unused
	implementation by assertion.
https://invent.kde.org/neon/forks/gpgme/-/commit/d8289000feaa3c4c2ab37296c3036e5f2e0d9bbc

Git commit 228ca8fab2ee450a2d3415bcf6bdc80e47b87c62 by Marcus Brinkmann on 02/10/2007 at 15:56..
2007-10-02  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.cpp, kdpipeiodevice.moc: New versions.
	* w32-qt-io.cpp (_gpgme_io_fd2str): Print actual_fd if available.
	(_gpgme_io_dup): Only acquire a reference, do not actually dup.
	Submitted by Frank Osterfeld.
https://invent.kde.org/neon/forks/gpgme/-/commit/228ca8fab2ee450a2d3415bcf6bdc80e47b87c62

Git commit a70248939fd3a9f4fd08ecc6373b4d7886237661 by Marcus Brinkmann on 04/10/2007 at 14:09..
2007-10-04  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.h, kdpipeiodevice.cpp, kdpipeiodevice.moc,
	w32-qt-io.cpp: New versions from Frank Osterfeld.
https://invent.kde.org/neon/forks/gpgme/-/commit/a70248939fd3a9f4fd08ecc6373b4d7886237661

Git commit c8deb0385a4aa07e4fad7518e1a88be480a28619 by Marcus Brinkmann on 05/10/2007 at 00:20..
2007-10-05  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.cpp, w32-qt-io.cpp: New versions from Frank
	Osterfeld.
https://invent.kde.org/neon/forks/gpgme/-/commit/c8deb0385a4aa07e4fad7518e1a88be480a28619

Git commit d7af11c7e20bbc42186e515d1cc4e738961c2d24 by Marcus Brinkmann on 09/10/2007 at 21:23..
2007-10-09  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.cpp: New version from Frank Osterfeld and Marc
	Mutz.
https://invent.kde.org/neon/forks/gpgme/-/commit/d7af11c7e20bbc42186e515d1cc4e738961c2d24

Git commit 4a86704d193e67c6484f3f0aec0bc37e45b7b0dd by Marcus Brinkmann on 11/10/2007 at 13:03..
2007-10-11  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.cpp: New version from Frank Osterfeld.
https://invent.kde.org/neon/forks/gpgme/-/commit/4a86704d193e67c6484f3f0aec0bc37e45b7b0dd

Git commit acf868bc7f32621e36ab165cad2d35ccb926d33a by Marcus Brinkmann on 12/11/2007 at 11:34..
2007-11-12  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.cpp: New version from Frank Osterfeld.
https://invent.kde.org/neon/forks/gpgme/-/commit/acf868bc7f32621e36ab165cad2d35ccb926d33a

Git commit c5875428bb97369400fa30b52658f684d240b888 by Werner Koch on 20/11/2007 at 10:40..
Suuport INV_RECP reason code 11.
Changed address paragraph in top comment.
https://invent.kde.org/neon/forks/gpgme/-/commit/c5875428bb97369400fa30b52658f684d240b888

Git commit 4dbd2fbdfebbd610f9376a2a60472d4061e5b3c4 by Werner Koch on 22/11/2007 at 16:44..
New API gpgme_op_getauditlog.
https://invent.kde.org/neon/forks/gpgme/-/commit/4dbd2fbdfebbd610f9376a2a60472d4061e5b3c4

Git commit c07011580a3e642baccb0e6d208a309d60aa5a62 by Werner Koch on 23/11/2007 at 13:07..
Make getauditlog work.  For now only when configured with --enable-fd-passing.
https://invent.kde.org/neon/forks/gpgme/-/commit/c07011580a3e642baccb0e6d208a309d60aa5a62

Git commit f6ebf8638f9cc75ecb6faa5429dd7278cbb1f774 by Marcus Brinkmann on 23/11/2007 at 17:25..
2007-11-23  Marcus Brinkmann  <marcus at g10code.de>

	* gpgsm/t-verify.c (show_auditlog): Check for GPG_ERR_ASS_UNKNOWN_CMD.
https://invent.kde.org/neon/forks/gpgme/-/commit/f6ebf8638f9cc75ecb6faa5429dd7278cbb1f774

Git commit 38167ceddb577cba5a160dec024f4992576878ea by Werner Koch on 26/11/2007 at 10:59..
Made autolog feature for if --enable-fd-passing has not been enabled.
Pass HTML glag to test program.
https://invent.kde.org/neon/forks/gpgme/-/commit/38167ceddb577cba5a160dec024f4992576878ea

Git commit 6286b436bdd22361538267d91959576ef11a2bd9 by Marcus Brinkmann on 28/11/2007 at 16:31..
2007-11-28  Marcus Brinkmann  <marcus at g10code.de>

	* w32-util.c (_gpgme_get_gpg_path, _gpgme_get_gpgsm_path): Search
	for installation directory.  Remove old fallback default.
	(find_program_in_inst_dir): New function.
https://invent.kde.org/neon/forks/gpgme/-/commit/6286b436bdd22361538267d91959576ef11a2bd9

Git commit 19025d791890e4c42931f0023a41fea45e866945 by Marcus Brinkmann on 04/01/2008 at 14:31..
2008-01-04  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Support gpgconf.

gpgme/
2008-01-04  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (gpgconf_components): New variable.
	(main_sources): Add gpgconf.c.
	* gpgme.h (gpgme_protocol_t): New protocol GPGME_PROTOCOL_GPGCONF.
	(gpgme_conf_level_t, gpgme_conf_type_t, gpgme_conf_arg_t)
	(gpgme_conf_opt_t, gpgme_conf_comp_t, gpgme_conf_arg_new)
	(gpgme_conf_arg_release, gpgme_conf_opt_change)
	(gpgme_conf_release, gpgme_op_conf_load, gpgme_op_conf_save): New
	types.
	* gpgconf.c, engine-gpgconf.c: New files.
	* engine.h: (_gpgme_engine_op_conf_load,
	(_gpgme_engine_op_conf_save): New prototypes.
	* op-support.c (_gpgme_op_reset): Ignore not implemented locale
	function.
	* posix-util.c (_gpgme_get_gpgconf_path): New function.
	* w32-util.c (_gpgme_get_gpgconf_path): New function.
	* engine-gpgsm.c:
	(_gpgme_engine_ops_gpgsm): Add stubs for conf_load and conf_save.
	* rungpg.c:
	(_gpgme_engine_ops_gpg): Add stubs for conf_load and conf_save.
	* gpgme.def: Add new gpgconf related interfaces.
	* libgpgme.vers: Likewise.
	* util.h (_gpgme_get_gpgconf_path): New prototype.
	* gpgme.h (gpgme_protocol_t): Add GPGME_PROTOCOL_GPGCONF.
	* engine-backend.h (_gpgme_engine_ops_gpgconf): New prototype.
	(struct engine_ops): Add members for conf_load and conf_save.
	* engine.c (engine_ops): Add _gpgme_engine_ops_gpgconf.
	(_gpgme_engine_op_conf_load,
	(_gpgme_engine_op_conf_save): New functions.
	(gpgme_get_engine_info): Allow protocol GPGME_PROTOCOL_GPGCONF.

tests/
2008-01-04  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (TESTS_ENVIRONMENT): Use absolute path for
	GNUPGHOME.
	* gpg/Makefile.am (TESTS_ENVIRONMENT): Use absolute path for
	GNUPGHOME.
	* gpgsm/Makefile.am (TESTS_ENVIRONMENT): Use absolute path for
	GNUPGHOME.
	* gpg/Makefile.am (TESTS): Add t-gpgconf.
	t-gpgconf.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/19025d791890e4c42931f0023a41fea45e866945

Git commit 64502919a10c841417c7c5882ff5a402d2a1bb01 by Marcus Brinkmann on 04/01/2008 at 14:34..
Prepare for release.
https://invent.kde.org/neon/forks/gpgme/-/commit/64502919a10c841417c7c5882ff5a402d2a1bb01

Git commit 4028a0f390e4aefb81e25f464424f268dc01ed91 by Marcus Brinkmann on 04/01/2008 at 14:40..
2008-01-04  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (CLEANFILES): Add pubring.kbx and dirmngr.conf.
https://invent.kde.org/neon/forks/gpgme/-/commit/4028a0f390e4aefb81e25f464424f268dc01ed91

Git commit afbb4ca9d6580b0b8df85d713dbbf0bbccb331e0 by Marcus Brinkmann on 04/01/2008 at 15:10..
Post-release dance.
https://invent.kde.org/neon/forks/gpgme/-/commit/afbb4ca9d6580b0b8df85d713dbbf0bbccb331e0

Git commit b55a4d7b31f2d3ff0eed20948fddcde2711f240f by Marcus Brinkmann on 04/01/2008 at 16:06..
2008-01-04  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-pipe-connect.c (_gpgme_io_pipe)
	(_gpgme_io_spawn) [_ASSUAN_IN_GPGME_BUILD_ASSUAN]: Add prototypes
https://invent.kde.org/neon/forks/gpgme/-/commit/b55a4d7b31f2d3ff0eed20948fddcde2711f240f

Git commit 62a1429a5c54d83feb6024d6195c8539ea05541e by Marcus Brinkmann on 10/01/2008 at 02:13..
2008-01-10  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-gpgconf.c (main): Exit early if compiled without gpgconf.
https://invent.kde.org/neon/forks/gpgme/-/commit/62a1429a5c54d83feb6024d6195c8539ea05541e

Git commit e65bb3ef3ce751eafde54c4cea0815c1e7dd8d24 by Marcus Brinkmann on 10/01/2008 at 02:31..
2008-01-10  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgconf.c (gpgconf_config_load_cb2): Handle the flag
	NO_ARG_DESC.
https://invent.kde.org/neon/forks/gpgme/-/commit/e65bb3ef3ce751eafde54c4cea0815c1e7dd8d24

Git commit 25dccf5897948d28dd2f32f1ccba15edc124dc0b by Marcus Brinkmann on 10/01/2008 at 04:33..
2008-01-10  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/pinentry: New file.
	* gpg/Makefile.am (DISTCLEANFILES, all-local): Add gpg-agent.conf
	(./gpg-agent.conf): New target.
	(EXTRA_DIST): Add pinentry.
https://invent.kde.org/neon/forks/gpgme/-/commit/25dccf5897948d28dd2f32f1ccba15edc124dc0b

Git commit ade61e1311c1c63a9aac85bf534b43e95ae9cfd8 by Marcus Brinkmann on 10/01/2008 at 04:40..
2008-01-10  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (./gpg-agent.conf): Correct pinentry path.
https://invent.kde.org/neon/forks/gpgme/-/commit/ade61e1311c1c63a9aac85bf534b43e95ae9cfd8

Git commit 38c5950991f1759ab9ef998ece821b934bb34807 by Marcus Brinkmann on 10/01/2008 at 04:54..
2008-01-10  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-gpgconf.c (main): Allow for dirmngr not to be available.
https://invent.kde.org/neon/forks/gpgme/-/commit/38c5950991f1759ab9ef998ece821b934bb34807

Git commit 7813804014ca664f063a6f1c0c06a477c2ff3dc6 by Marcus Brinkmann on 10/01/2008 at 13:38..
2008-01-10  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.cpp: New version from Frank Osterfeld.
https://invent.kde.org/neon/forks/gpgme/-/commit/7813804014ca664f063a6f1c0c06a477c2ff3dc6

Git commit bc617afe5fa525826d97bcf46f57122aca137e2f by Marcus Brinkmann on 14/01/2008 at 17:34..
2008-01-14  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgconf.c (gpgconf_config_load_cb): Fix program_name
	field.
https://invent.kde.org/neon/forks/gpgme/-/commit/bc617afe5fa525826d97bcf46f57122aca137e2f

Git commit f9f9a70ec729a8c4fc8cee3f81e9ebeaf8e723c5 by Werner Koch on 28/01/2008 at 18:46..
Fixed bug 876
https://invent.kde.org/neon/forks/gpgme/-/commit/f9f9a70ec729a8c4fc8cee3f81e9ebeaf8e723c5

Git commit cd096c8316c3712f27f5a1d7c6f9c448edc50121 by Marcus Brinkmann on 28/01/2008 at 19:25..
2008-01-28  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (map_input_enc): Rename to ...
	(map_data_enc): ... this.  Also change all callers.
	(gpgsm_encrypt, gpgsm_export, gpgsm_export_ext, gpgsm_genkey)
	(gpgsm_sign): Set encoding for output.
https://invent.kde.org/neon/forks/gpgme/-/commit/cd096c8316c3712f27f5a1d7c6f9c448edc50121

Git commit ef430d7828d5d9724fa787685662afbd5e248ebb by Marcus Brinkmann on 28/01/2008 at 19:41..
2008-01-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi: Document that data encoding affects some output data
	objects now.
https://invent.kde.org/neon/forks/gpgme/-/commit/ef430d7828d5d9724fa787685662afbd5e248ebb

Git commit 2b5033018f19a4f480bcbc3f0109afeee6659b3b by Marcus Brinkmann on 28/01/2008 at 19:49..
2008-01-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/Makefile.am (DISTCLEANFILES): Add pubring.kbx~.
https://invent.kde.org/neon/forks/gpgme/-/commit/2b5033018f19a4f480bcbc3f0109afeee6659b3b

Git commit 2cf46b3ca9c6fd8747c6f5f31701907d0567e2ab by Marcus Brinkmann on 30/01/2008 at 13:24..
2008-01-30  Marcus Brinkmann  <marcus at g10code.de>

	* kdpipeiodevice.cpp: New version by Frank Osterfeld, fixes race
	condition.
https://invent.kde.org/neon/forks/gpgme/-/commit/2cf46b3ca9c6fd8747c6f5f31701907d0567e2ab

Git commit 2ac285d69193dfa50add2479ce9ad752efa8584a by Marcus Brinkmann on 30/01/2008 at 14:17..

https://invent.kde.org/neon/forks/gpgme/-/commit/2ac285d69193dfa50add2479ce9ad752efa8584a

Git commit 3756fd0f0689915f3cf0ea77c0d1b8d8431c7744 by Werner Koch on 14/02/2008 at 19:51..
Chnages to supporta pinnetry notification
https://invent.kde.org/neon/forks/gpgme/-/commit/3756fd0f0689915f3cf0ea77c0d1b8d8431c7744

Git commit ca17a12d3a8f9509477818fb3a31565f044ee63d by Marcus Brinkmann on 15/02/2008 at 23:02..
Add item.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca17a12d3a8f9509477818fb3a31565f044ee63d

Git commit 8b834710797fa68c168b67df409a792af4752d88 by Marcus Brinkmann on 15/02/2008 at 23:07..
2008-02-15  Marcus Brinkmann  <marcus at g10code.de>

        * engine-gpgconf.c (gpgconf_read): Fix end-of-line handline.
https://invent.kde.org/neon/forks/gpgme/-/commit/8b834710797fa68c168b67df409a792af4752d88

Git commit 639df34f6506cead14179c2db459de3fcf7d3290 by Marcus Brinkmann on 05/03/2008 at 12:00..
2008-03-05  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Library Version Check): Rename snippet function to
	init_gpgme.
	(I/O Callback Example): Call it here.
https://invent.kde.org/neon/forks/gpgme/-/commit/639df34f6506cead14179c2db459de3fcf7d3290

Git commit 95a12bd084c4f9e4cc992f055df4ab934bb39cdd by Marcus Brinkmann on 05/03/2008 at 19:58..
2008-03-05  Marcus Brinkmann  <marcus at g10code.de>

	* decrypt.c (release_op_data): Release OPD->result.recipients.
	* encrypt.c (release_op_data): Release invalid_recipient.
https://invent.kde.org/neon/forks/gpgme/-/commit/95a12bd084c4f9e4cc992f055df4ab934bb39cdd

Git commit 27fccc3f01f993165fa1bda5fa8f6866f8bc6b29 by Marcus Brinkmann on 06/03/2008 at 14:54..
2008-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* key.c (_gpgme_key_add_sig): Terminate UID in case SRC is NULL.
	Reported by Marc Mutz.
https://invent.kde.org/neon/forks/gpgme/-/commit/27fccc3f01f993165fa1bda5fa8f6866f8bc6b29

Git commit 3dcae464f4944258b2f36f4e85b509940733a682 by Marcus Brinkmann on 11/03/2008 at 16:05..
doc/
2008-03-11  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (File Based Data Buffers): Document the need for
	blocking operations.
	(Callback Based Data Buffers): Likewise.

gpgme/
2008-03-11  Marcus Brinkmann  <marcus at g10code.de>

	* data.c (gpgme_data_read, gpgme_data_write): Retry on EINTR.
https://invent.kde.org/neon/forks/gpgme/-/commit/3dcae464f4944258b2f36f4e85b509940733a682

Git commit a69c74e4effaf4565faf8714b0988b66777881c3 by Marcus Brinkmann on 22/04/2008 at 11:20..
2008-04-22  Marcus Brinkmann  <marcus at g10code.de>

	* w32-qt-io.cpp, kdpipeiodevice.cpp: New versions from Frank
	Osterfeld, implement blocking select.
https://invent.kde.org/neon/forks/gpgme/-/commit/a69c74e4effaf4565faf8714b0988b66777881c3

Git commit 914ace7a373456b4059d372f99afb51aa544bbfd by Werner Koch on 28/04/2008 at 18:42..
Fixed a bug reading  from gpgconf.
https://invent.kde.org/neon/forks/gpgme/-/commit/914ace7a373456b4059d372f99afb51aa544bbfd

Git commit 14d099181cc5006fab24982c450cbca1025796ad by Werner Koch on 06/05/2008 at 08:13..
Allow for engine version lines with a suffix.
https://invent.kde.org/neon/forks/gpgme/-/commit/14d099181cc5006fab24982c450cbca1025796ad

Git commit b72c0012830eb8904678e18cc80ceb74a03e152c by Werner Koch on 07/05/2008 at 15:41..
Support --locate-keys feature of gpg.
https://invent.kde.org/neon/forks/gpgme/-/commit/b72c0012830eb8904678e18cc80ceb74a03e152c

Git commit bae48619146d66fed760cfbf033e35ec2df99558 by Werner Koch on 09/05/2008 at 08:26..
Fixed a gpgconf problem under Windows.
https://invent.kde.org/neon/forks/gpgme/-/commit/bae48619146d66fed760cfbf033e35ec2df99558

Git commit f54ea0e32c81a8a69e4512c394dc727593ffa10a by Werner Koch on 04/06/2008 at 14:14..
Include the GnuPG UI Server specification.
Change the license of the manual to GPLv3+.
https://invent.kde.org/neon/forks/gpgme/-/commit/f54ea0e32c81a8a69e4512c394dc727593ffa10a

Git commit 1358096083dfba7747ed0eadc734db801bfc2aad by Werner Koch on 05/06/2008 at 10:56..
Add missing file.
https://invent.kde.org/neon/forks/gpgme/-/commit/1358096083dfba7747ed0eadc734db801bfc2aad

Git commit 9e4169fcec45a7c53d421f9a25566b0f849d7f48 by Werner Koch on 19/06/2008 at 17:37..
Add new types to the gpgconf interface.
Fix a parsing bug in gpgconf interface.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e4169fcec45a7c53d421f9a25566b0f849d7f48

Git commit 63ea0d66630d2d790f82d744ee88b51b7e3c3b59 by Werner Koch on 19/06/2008 at 18:38..
Add example.
Update gpgconf test.
https://invent.kde.org/neon/forks/gpgme/-/commit/63ea0d66630d2d790f82d744ee88b51b7e3c3b59

Git commit 5a19f6d421a23ca4072bb1b5d24206bfc38dfd5a by Werner Koch on 20/06/2008 at 09:53..
Fix parsing of long lines.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a19f6d421a23ca4072bb1b5d24206bfc38dfd5a

Git commit b0a5687a1657e5da1cf484f0dfc145bbef748b2c by Werner Koch on 20/06/2008 at 10:40..
Updated the example.
https://invent.kde.org/neon/forks/gpgme/-/commit/b0a5687a1657e5da1cf484f0dfc145bbef748b2c

Git commit d0fe86179c28493a0b282acb0101c829f8a35820 by Werner Koch on 25/06/2008 at 01:44..
Updated example.
https://invent.kde.org/neon/forks/gpgme/-/commit/d0fe86179c28493a0b282acb0101c829f8a35820

Git commit 0560f3089b5d1f24fd9625612921ceffc995fff8 by Marcus Brinkmann on 25/06/2008 at 16:52..
assuan/
2008-06-25  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-pipe-connect.c (struct spawn_fd_item_s): Add new members.
	(HANDLE_TRANSLATION): New macro.
	(pipe_connect_gpgme): Adjust caller of _gpgme_io_spawn.
	[HANDLE_TRANSLATION]: Return translated handles.

gpgme/
2008-06-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-w32spawn.c: New file.
	* Makefile.am (libexec_PROGRAMS) [HAVE_W32_SYSTEM]: New variable
	with gpgme-w32spawn.
	* engine-gpgsm.c (gpgsm_new): Use server translated handles.
	(gpgsm_set_locale): Return early if locale value is NULL.
	* util.h (_gpgme_mkstemp)
	(_gpgme_get_w32spawn_path) [HAVE_W32_SYSTEM]: New function
	prototypes.
	* w32-util.c: Include <stdint.h>, <sys/stat.h> and <unistd.h>.
	(letters, mkstemp, _gpgme_mkstemp, _gpgme_get_w32spawn_path): New
	functions.
	* rungpg.c (gpg_decrypt, gpg_encrypt, gpg_encrypt_sign)
	(gpg_genkey, gpg_import, gpg_verify, gpg_sign): Pass data over
	special filename FD rather than stdin.
	(struct arg_and_data_s): Add member ARG_LOCP.
	(struct fd_data_map_s): Add member ARG_LOC.
	(struct engine_gpg): Add member ARG_LOC to status and colon.
	(_add_arg, add_arg_with_locp): New function.
	(add_arg_ext): Reimplement in terms of _add_arg.
	(gpg_new): Remember argument location for status FD.
	(build_argv): Set argument location if requested.  Also set
	argument location of fd_data_map for data items.
	(start): Adjust caller of _gpgme_io_spawn.
	* priv-io.h (struct spawn_fd_item_s): Add members peer_name and
	arg_loc.
	(_gpgme_io_spawn): Remove parent fd list argument.
	* posix-io.c (get_max_fds): New function.
	(_gpgme_io_dup): Add tracing.
	(_gpgme_io_spawn): Remove parent fd list.  Change meaning of child
	fd list to contain all child fds that should be inherited.  Close
	all other file descriptors after fork.
	* w32-io.c, w32-glib-io.c, w32-qt-io.c(_gpgme_io_spawn): Remove
	parent fd list.  Change meaning of child fd list to contain all
	child fds that should be inherited.  Do not inherit any file
	descriptors, but DuplicateHandle them.  Spawn process through
	wrapper process.  Provide wrapper process with a temporary file
	containing handle translation data.  Return translated handle
	names.
	* w32-io.c (reader): Add more tracing output.
	(_gpgme_io_read): Likewise.
	* engine-gpgconf.c (gpgconf_read): Adjust caller of
	_gpgme_io_spawn.
	* version.c (_gpgme_get_program_version): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/0560f3089b5d1f24fd9625612921ceffc995fff8

Git commit eccdb17c30ef564767e5279cc8eae9bc937e0e48 by Werner Koch on 26/06/2008 at 14:38..
Fix incompatibility with non-recent mingw runtimes.
https://invent.kde.org/neon/forks/gpgme/-/commit/eccdb17c30ef564767e5279cc8eae9bc937e0e48

Git commit 695ec56ffbf3cf1cb4722f5fab33dd2bdb43a9af by Marcus Brinkmann on 27/06/2008 at 16:07..
2008-06-27  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Cancellation): Document gpgme_cancel_async.

gpgme/
2008-06-27  Marcus Brinkmann  <marcus at g10code.de>

	* context.h: Include "sema.h".
	(struct gpgme_context): New members lock and canceled.
	* gpgme.c (gpgme_new): Initialize lock.
	(gpgme_release): Destroy lock.
	(gpgme_cancel_async): New function.
	* op-support.c (_gpgme_op_reset): Reset the canceled flag.
	* wait-global.c (gpgme_wait): Check cancel flag before processing
	any I/O callbacks.
	* wait-private.c (_gpgme_wait_on_condition): Likewise.
	* wait-user.c (_gpgme_user_io_cb_handler): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/695ec56ffbf3cf1cb4722f5fab33dd2bdb43a9af

Git commit 67ae7de4c5a1b94d8bc39d7b3ce210e6153cb175 by Marcus Brinkmann on 27/06/2008 at 16:08..
Add gpgme_cancel_async
https://invent.kde.org/neon/forks/gpgme/-/commit/67ae7de4c5a1b94d8bc39d7b3ce210e6153cb175

Git commit 01baa339f993e06e8df2da793c72ad8348d86ebc by Marcus Brinkmann on 27/06/2008 at 16:14..
2008-06-27  Marcus Brinkmann  <marcus at g10code.de>

	* libgpgme.vers: Add gpgme_cancel_async.
	* gpgme.def: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/01baa339f993e06e8df2da793c72ad8348d86ebc

Git commit 8bf7f5bd0ce13ce051ffe1fd91409af2aed607fa by Marcus Brinkmann on 29/06/2008 at 18:41..
2008-06-29  Marcus Brinkmann  <marcus at ulysses.g10code.com>

	* gpgme.c (gpgme_cancel_async): Remove unused variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/8bf7f5bd0ce13ce051ffe1fd91409af2aed607fa

Git commit a60cbde70954bf9b61041ba9c72e1be734092072 by Werner Koch on 04/07/2008 at 15:46..
Update automake scripts.
Minor doc changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/a60cbde70954bf9b61041ba9c72e1be734092072

Git commit 9c6bf32eea3295f84fef9c2be6d3642ebef28971 by Werner Koch on 17/07/2008 at 17:09..
Add a module overview diagram.
https://invent.kde.org/neon/forks/gpgme/-/commit/9c6bf32eea3295f84fef9c2be6d3642ebef28971

Git commit 569829b6fd4d50daff3fb86b57bed3cb6af32bd0 by Marcus Brinkmann on 08/08/2008 at 17:53..
2008-08-08  Marcus Brinkmann  <marcus at g10code.com>

	* rungpg.c (command_handler): Remove I/O callback on error, too.
https://invent.kde.org/neon/forks/gpgme/-/commit/569829b6fd4d50daff3fb86b57bed3cb6af32bd0

Git commit 26c0edc2707b7b2f6fa3c1f278260bc9116ab74a by Marcus Brinkmann on 11/08/2008 at 17:23..
2008-08-11  Marcus Brinkmann  <marcus at g10code.com>

        * rungpg.c (gpg_cancel): Remove cmd fd before status fd.
        * gpgme.c (_gpgme_cancel_with_err): New function.
        (gpgme_cancel): Reimplement in terms of _gpgme_cancel_with_err.
        * wait-private.c (_gpgme_wait_on_condition): Use
        _gpgme_cancel_with_err.
        * wait-user.c (_gpgme_user_io_cb_handler): Likewise.
        * wait-global.c (_gpgme_wait_global_event_cb, gpgme_wait): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/26c0edc2707b7b2f6fa3c1f278260bc9116ab74a

Git commit f300cd09b4b409bb856573c49e89517cb05eb2f4 by Marcus Brinkmann on 16/09/2008 at 15:23..
2008-09-16  Marcus Brinkmann  <marcus at g10code.com>

	* rungpg.c (gpg_new): Don't use errno with ttyname_r.
https://invent.kde.org/neon/forks/gpgme/-/commit/f300cd09b4b409bb856573c49e89517cb05eb2f4

Git commit cf5100d27cbaeaa9dc2e3fa473c67f21259bf659 by Marcus Brinkmann on 16/09/2008 at 15:30..
2008-09-16  Marcus Brinkmann  <marcus at g10code.com>

	* configure.ac (_XOPEN_SOURCE) [apple-darwin]: Define it.
https://invent.kde.org/neon/forks/gpgme/-/commit/cf5100d27cbaeaa9dc2e3fa473c67f21259bf659

Git commit a8be6e0da37eb7b7cb2e30363f7310da42ce62e2 by Moritz Schulte on 19/09/2008 at 14:15..
2008-09-19  Moritz  <moritz at gnu.org>

	* configure.ac: Remove bogus "esac".
https://invent.kde.org/neon/forks/gpgme/-/commit/a8be6e0da37eb7b7cb2e30363f7310da42ce62e2

Git commit 4ae2ac986110b4ba26b52b7f6437c4454c9f1789 by Marcus Brinkmann on 23/09/2008 at 10:52..
2008-09-23  Marcus Brinkmann  <marcus at g10code.com>

	* gpgme.c (gpgme_sig_notation_clear): Clear CTX->sig_notations.
	Submitted by "Daniel Mueller" <daniel at danm.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/4ae2ac986110b4ba26b52b7f6437c4454c9f1789

Git commit 693e515832b737beb41de879d8fec00efed8a386 by Werner Koch on 17/10/2008 at 11:15..
Fix for mingw32 bug.
https://invent.kde.org/neon/forks/gpgme/-/commit/693e515832b737beb41de879d8fec00efed8a386

Git commit 166a5593ad68572d03bccf93c99aafea80b0652b by Marcus Brinkmann on 17/10/2008 at 18:57..
2008-10-17  Marcus Brinkmann  <marcus at g10code.com>

	Release GPGME 1.1.7.

	* configure.ac (LIBGPGME_LT_REVISION): Bump for release.
https://invent.kde.org/neon/forks/gpgme/-/commit/166a5593ad68572d03bccf93c99aafea80b0652b

Git commit 759d969528992976229724817b6a9e784d279bc1 by Marcus Brinkmann on 17/10/2008 at 21:03..
Post-release changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/759d969528992976229724817b6a9e784d279bc1

Git commit 4dd5ee910664cfb814c8ecd3589536a187572c26 by Marcus Brinkmann on 17/10/2008 at 23:10..
2008-10-18  Marcus Brinkmann  <marcus at g10code.com>

	* w32-util.c (find_program_in_registry): Don't define.
	(_gpgme_get_gpg_path, _gpgme_get_gpgsm_path)
	(_gpgme_get_gpgconf_path): Do not check for fooProgram in the
	registry anymore.  It is now no longer possible to overwrite the
	default location in that way.
https://invent.kde.org/neon/forks/gpgme/-/commit/4dd5ee910664cfb814c8ecd3589536a187572c26

Git commit eae8d3830c266d8e383cd29f44f6963e2c568ede by Werner Koch on 20/10/2008 at 15:59..
Fix bug #818.
Use gpgme.h.in instead of in-place editing gpgme.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/eae8d3830c266d8e383cd29f44f6963e2c568ede

Git commit 69b1a65fb8138a46db6b006c54a10ceb942549df by Marcus Brinkmann on 23/10/2008 at 10:51..
2008-10-23  Marcus Brinkmann  <marcus at g10code.de>

	* rungpg.c (gpg_keylist_preprocess): Convert percent escaped
	string to C coded string.
https://invent.kde.org/neon/forks/gpgme/-/commit/69b1a65fb8138a46db6b006c54a10ceb942549df

Git commit 6ce90fccd90e18115471957152ff98fc08e7eb2e by Werner Koch on 24/10/2008 at 14:07..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/6ce90fccd90e18115471957152ff98fc08e7eb2e

Git commit 66c64cfa05147ef65fea099afc1fe2266eb89472 by Werner Koch on 30/10/2008 at 13:23..
new debug helper program
https://invent.kde.org/neon/forks/gpgme/-/commit/66c64cfa05147ef65fea099afc1fe2266eb89472

Git commit 9c7489e8d1f3af427eb6612fc425226aba4b6990 by Werner Koch on 30/10/2008 at 14:41..
use validated mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/9c7489e8d1f3af427eb6612fc425226aba4b6990

Git commit 6405d54bad459072ec8e5cad3d6538be564854af by Marcus Brinkmann on 30/10/2008 at 15:08..
assuan/
2008-10-30  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-pipe-connect.c: Fix prototype for _gpgme_io_spawn.  Cast
	second argument in its invocation to silence gcc warning.

gpgme/
2008-10-30  Marcus Brinkmann  <marcus at g10code.de>

	* wait-private.c (_gpgme_wait_on_condition): Remove unused
	variable IDX.
	* wait-global.c: Include ops.h to silence gcc warning.
	(_gpgme_wait_global_event_cb): Pass error value directly.
	* wait-user.c: Include ops.h to silence gcc warning.

	* posix-io.c (_gpgme_io_spawn): Make ARGV argument const to
	silence gcc warning.  Cast argument to execv to silence warning.
	* w32-io.c (_gpgme_io_spawn): Likewise.
	* priv-io.h (_gpgme_io_spawn): Likewise for prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/6405d54bad459072ec8e5cad3d6538be564854af

Git commit 66d0fa1973e5e1a1bff619de8b595673d1b76cc5 by Marcus Brinkmann on 03/11/2008 at 17:24..
008-11-03  Marcus Brinkmann  <marcus at g10code.com>

        * configure.ac: Replace gpgme paths with src.
        * gpgme: Move to ...
        * src: ... this new directory.

assuan/
2008-11-03  Marcus Brinkmann  <marcus at g10code.com>

	* Makefile.am (INCLUDES): Replace gpgme path with src.

tests/
2008-11-03  Marcus Brinkmann  <marcus at g10code.com>

        * gpgsm/Makefile.am (INCLUDES, LDADD): Replace gpgme path with src.
        * gpg/Makefile.am (INCLUDES, LDADD, t_thread1_LDADD): Likewise.
	* Makefile.am (LDADD): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/66d0fa1973e5e1a1bff619de8b595673d1b76cc5

Git commit 92394f92d4c194be21652f474e8bdb2af7c61f2c by Werner Koch on 18/11/2008 at 11:12..
Fix SIGPIPE ignoring regression.
Fix unsupported algorithm detection.
https://invent.kde.org/neon/forks/gpgme/-/commit/92394f92d4c194be21652f474e8bdb2af7c61f2c

Git commit c01087be85ef7007d1f667bf08a6e1dbe44bd4fb by Moritz Schulte on 23/11/2008 at 18:09..
2008-11-08  Moritz  <moritz at gnu.org>

	* gpgme.lisp (size-t): Wrong call to defctype: function accepts
	optional, not keyword argument.
	(ssize-t): Likewise.
	(off-t): Likewise.
	(gpgme-data-t, gpgme-ctx-t): Likewise.
	(gpgme-error-t): Likewise.
	(gpgme-error-no-signal-t): Likewise.
	(gpgme-err-code-t): Likewise.
	(gpgme-err-source-t): Likewise.
	(gpgme-sig-notation-t, gpgme-engine-info-t): Likewise.
	(gpgme-subkey-t): Likewise.
	(gpgme-key-sig-t): Likewise.
	(gpgme-user-id-t): Likewise.
	(gpgme-key-t): Likewise.
	(gpgme-data-cbs-t): Likewise.
	(gpgme-invalid-key-t): Likewise.
	(gpgme-op-encrypt-result-t): Likewise.
	(gpgme-recipient-t): Likewise.
	(gpgme-op-decrypt-result-t): Likewise.
	(gpgme-new-signature-t): Likewise.
	(gpgme-op-sign-result-t): Likewise.
	(gpgme-signature-t): Likewise.
	(gpgme-op-verify-result-t): Likewise.
	(gpgme-import-status-t): Likewise.
	(gpgme-op-import-result-t): Likewise.
	(gpgme-op-genkey-result-t): Likewise.
	(gpgme-op-keylist-result-t): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/c01087be85ef7007d1f667bf08a6e1dbe44bd4fb

Git commit 5beba8689c22bb61481f5125c19f8c48d92c5177 by Werner Koch on 28/11/2008 at 10:32..
Fix doc bug.
https://invent.kde.org/neon/forks/gpgme/-/commit/5beba8689c22bb61481f5125c19f8c48d92c5177

Git commit 6216d736114c27adb8b3eee2daa96ac9b00c9912 by Marcus Brinkmann on 03/12/2008 at 14:24..
2008-12-03  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (status-table.h): Use $(builddir) to find gpgme.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/6216d736114c27adb8b3eee2daa96ac9b00c9912

Git commit 6d93f41f053f7e927739edf0ae80cf24cf059a17 by Marcus Brinkmann on 03/12/2008 at 14:27..
2008-12-03  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (INCLUDES): Fix path to include file.
	* gpg/Makefile.am (INCLUDES), gpgsm/Makefile.am (INCLUDES): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/6d93f41f053f7e927739edf0ae80cf24cf059a17

Git commit 21eaf417dcd56804fca037ac019171e13560c2fe by Marcus Brinkmann on 08/12/2008 at 19:28..
2008-12-08  Marcus Brinkmann  <marcus at g10code.de>

	Release GPGME 1.1.8.

	* configure.ac: Bump API revision.
https://invent.kde.org/neon/forks/gpgme/-/commit/21eaf417dcd56804fca037ac019171e13560c2fe

Git commit 23022dd9d9169751aecc17f2b5b099442ff845ad by Werner Koch on 19/01/2009 at 14:44..
Renamed rungpg.c to engine-gpg.c for conistency.
https://invent.kde.org/neon/forks/gpgme/-/commit/23022dd9d9169751aecc17f2b5b099442ff845ad

Git commit d951cb713fdc3a1310534acdce84e3e005ad1d04 by Werner Koch on 26/01/2009 at 10:21..
First take on the low-level assuan interface.
https://invent.kde.org/neon/forks/gpgme/-/commit/d951cb713fdc3a1310534acdce84e3e005ad1d04

Git commit 259cbefd5c5d9fbd2ea3c3cd0b2a7d60af81c52b by Werner Koch on 04/02/2009 at 09:51..
Provide inforation about smartcards.
https://invent.kde.org/neon/forks/gpgme/-/commit/259cbefd5c5d9fbd2ea3c3cd0b2a7d60af81c52b

Git commit d118b5a2ee1c5d4ff2c01c40b6f5dcd153029ffd by Werner Koch on 04/02/2009 at 16:48..
Fix spawn prototype for w32 glib and qt versions.
https://invent.kde.org/neon/forks/gpgme/-/commit/d118b5a2ee1c5d4ff2c01c40b6f5dcd153029ffd

Git commit f0dccac380b172291e7bea8a43cb0ec44b49c3bf by Werner Koch on 24/02/2009 at 15:13..
Chnaged the op-assuan interface.
https://invent.kde.org/neon/forks/gpgme/-/commit/f0dccac380b172291e7bea8a43cb0ec44b49c3bf

Git commit 9ace1d56423f849b23fecdb77dd7ad6854975460 by Marcus Brinkmann on 06/03/2009 at 22:29..
assuan/
2009-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* assuan/: Update to libassuan SVN 2009-03-06.

src/
2009-03-06  Marcus Brinkmann  <marcus at g10code.de>

	* version.c (do_subsystem_inits): Do not set assuan log level.
	* debug.c (debug_init): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/9ace1d56423f849b23fecdb77dd7ad6854975460

Git commit f8b80c55f41bf341da6a3d95cbc7684457f08d16 by Werner Koch on 13/03/2009 at 14:19..
Fix locale problem, e.g. for et_ET.
https://invent.kde.org/neon/forks/gpgme/-/commit/f8b80c55f41bf341da6a3d95cbc7684457f08d16

Git commit aceb60d4dd12bac405c4fa670e772965903ed04d by Werner Koch on 18/03/2009 at 11:19..
Add GPGME_KEYLIST_MODE_EPHEMERAL.
https://invent.kde.org/neon/forks/gpgme/-/commit/aceb60d4dd12bac405c4fa670e772965903ed04d

Git commit 6f8aa0e29d46f3109a5c3f8f9d7a7dc3e7b6abef by Marcus Brinkmann on 23/03/2009 at 22:23..
2009-03-23  Marcus Brinkmann  <marcus at g10code.de>

	* assuan.h: Add prefix macros for _assuan_close and _assuan_usleep.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f8aa0e29d46f3109a5c3f8f9d7a7dc3e7b6abef

Git commit d255b4bec9a1fdf0864640750161ea12999e43a5 by Marcus Brinkmann on 08/04/2009 at 18:53..
assuan/
2009-04-08  Marcus Brinkmann  <marcus at g10code.de>

	* assuan.h (_gpgme_io_socket): New prototype.
	(_ASSUAN_CUSTOM_IO, _assuan_custom_close, _assuan_custom_read)
	(_assuan_custom_write, _assuan_custom_pipe, _assuan_custom_socket)
	(_assuan_custom_connect): New macros.
	* assuan-socket.c (_assuan_close, _assuan_sock_new)
	(_assuan_sock_connect) [_ASSUAN_CUSTOM_IO]: Use custom I/O function.
	* assuan-buffer.c (assuan_read_line): Do not handle EAGAIN anymore.
	* assuan-client.c (_assuan_read_from_server): Likewise.
	* assuan-handler.c (process_next): Likewise
	* assuan-inquire.c (assuan_inquire): Likewise.

src/
2009-04-08  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c (giochannel_table): New members used, fd, socket.
	(find_channel): Drop CREATE argument.
	(new_dummy_channel_from_fd, new_channel_from_fd)
	(new_channel_from_socket): New functions.
	(_gpgm_io_fd2str): Implement for sockets.
	(_gpgme_io_write, _gpgme_io_read): Translate EAGAIN errors
	correctly.
	(_gpgme_io_pipe): Fix for new channel bookkeeping.
	(_gpgme_io_close, _gpgme_io_dup): Likewise.
	(wsa2errno, _gpgme_io_socket, _gpgme_io_connect): New.
	* w32-io.c (MAX_READERS, MAX_WRITERS): Bump up to 40.
	(wsa2errno, _gpgme_io_socket, _gpgme_io_connect): New.
	* w32-qt-io.cpp (_gpgme_io_socket, _gpgme_io_connect): New stubs.
	* version.c [HAVE_W32_SYSTEM]: Include "windows.h.
	(do_subsystem_inits) [HAVE_W32_SYSTEM]: Call WSAStartup.
	* engine-assuan.c (llass_status_handler): Ignore EAGAIN errors.
https://invent.kde.org/neon/forks/gpgme/-/commit/d255b4bec9a1fdf0864640750161ea12999e43a5

Git commit 2dce8370e75119af7c54397b0c8b9956d9a516e9 by Marcus Brinkmann on 15/04/2009 at 12:04..
2009-04-15  Marcus Brinkmann  <marcus at g10code.de>

	* posix-io.c (_gpgme_io_socket, _gpgme_io_connect): New functions.
	* w32-io.c (_gpgme_io_connect): Fix stupid error.
https://invent.kde.org/neon/forks/gpgme/-/commit/2dce8370e75119af7c54397b0c8b9956d9a516e9

Git commit edf19bbf8f644f8a0553bde0cc4e8ad3855d1a0e by Moritz Schulte on 19/04/2009 at 18:03..
* Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Specify --with-gpg.

* gpg/Makefile.am (EXTRA_DIST): Replaced mkdemodirs with mkdemodirs.in.
(mkdemodirs): New target.
(clean-local): Added command for removing mkdemodirs script.
(./Alpha/Secret.gpg): Added dependency on mkdemodirs.

* gpg/mkdemodirs: Renamed to ...
* gpg/mkdemodirs.in: ... here.
* gpg/mkdemodirs.in (GPG): Derive value from @GPG@ instead of hard-coding "gpg".
https://invent.kde.org/neon/forks/gpgme/-/commit/edf19bbf8f644f8a0553bde0cc4e8ad3855d1a0e

Git commit 065a0a3f6dd4ca6f3a66a8b1f3294cad1e20bc80 by Marcus Brinkmann on 05/05/2009 at 17:03..
2009-05-05  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add infrastructure for compile time check of
	_FILE_OFFSET_BITS.

src/
2009-05-05  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in: Add compile time check for _FILE_OFFSET_BITS.
https://invent.kde.org/neon/forks/gpgme/-/commit/065a0a3f6dd4ca6f3a66a8b1f3294cad1e20bc80

Git commit 6e276210624a7fcc8288480fd81fecb98dc90aa4 by Marcus Brinkmann on 05/05/2009 at 17:19..
2009-05-05  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Engine Information): Replace path by file_name.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e276210624a7fcc8288480fd81fecb98dc90aa4

Git commit 63ebab659e653b4dc57f9e319d06e5737e8b742f by Werner Koch on 14/05/2009 at 07:40..
* gpgme.h.in (gpgme_status_code_t): Explicitly initialize for
  better maintainability and to help debugging.
https://invent.kde.org/neon/forks/gpgme/-/commit/63ebab659e653b4dc57f9e319d06e5737e8b742f

Git commit 2c5d801fc4900cec5b7dc7faa496f8664ab104f4 by Marcus Brinkmann on 18/05/2009 at 17:38..
doc/
2009-05-18  Marcus Brinkmann  <marcus at g10code.de>

        * gpgme.texi (Encrypting a Plaintext): Document                                             
        GPGME_ENCRYPT_NO_ENCRYPT_TO.                                                                
                                                                                                    
src/                                                                                                
2009-05-18  Marcus Brinkmann  <marcus at g10code.de>                                                   
                                                                                                    
        * gpgme.h.in (gpgme_encrypt_flags_t): Add                                                   
        GPGME_ENCRYPT_NO_ENCRYPT_TO.                                                                
        * engine-gpg.c (gpg_encrypt): Pass --no-encrypt-to to gpg if                                
        GPGME_ENCRYPT_NO_ENCRYPT_TO flag is set.
https://invent.kde.org/neon/forks/gpgme/-/commit/2c5d801fc4900cec5b7dc7faa496f8664ab104f4

Git commit bdb7bcf93889c279c48acb0b75792ba310116074 by Marcus Brinkmann on 28/05/2009 at 15:16..
doc/
2009-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Library Version Check): Document selftest error.
	(Creating Contexts): Likewise.

src/
2009-05-28  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in (gpgme_check_version_internal): New prototype.
	(gpgme_check_version): New macro, overriding function of the same
	name.
	* libgpgme.vers, gpgme.def: Add gpgme_check_version_internal.o
	* context.h (_gpgme_selftest): New variable declaration.
	* version.c: Include "context.h".
	(gpgme_check_version): Set _gpgme_selftest on success.
	(gpgme_check_version_internal): New function.
	* gpgme.c (_gpgme_selftest): Define it.
	(gpgme_new): Check the selftest result.
https://invent.kde.org/neon/forks/gpgme/-/commit/bdb7bcf93889c279c48acb0b75792ba310116074

Git commit 4280710f338e79ae282a6dfe0103dc52270af0c3 by Werner Koch on 09/06/2009 at 12:13..
Define error code.
https://invent.kde.org/neon/forks/gpgme/-/commit/4280710f338e79ae282a6dfe0103dc52270af0c3

Git commit 621ffc14aed776ec445acbfbfa0075342f2ec869 by Werner Koch on 09/06/2009 at 12:44..
Do not distribute gpgme.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/621ffc14aed776ec445acbfbfa0075342f2ec869

Git commit caf36ce1ce34e88de870ea4e7586c3133a9f7afa by Werner Koch on 09/06/2009 at 16:01..
Add gpgme_io_write and gpgme_io_read.
Minor cleanups.
https://invent.kde.org/neon/forks/gpgme/-/commit/caf36ce1ce34e88de870ea4e7586c3133a9f7afa

Git commit f4e35be32534c99e0168dfd6620565cfa387957e by Werner Koch on 09/06/2009 at 18:59..
Fix possible assert in the card edit.
https://invent.kde.org/neon/forks/gpgme/-/commit/f4e35be32534c99e0168dfd6620565cfa387957e

Git commit 148f51bb3e6e592333250ef73f2b801a10734083 by Werner Koch on 12/06/2009 at 16:58..
Improved W32 SetForegroundWindow hacks.
https://invent.kde.org/neon/forks/gpgme/-/commit/148f51bb3e6e592333250ef73f2b801a10734083

Git commit 59eecf421e42cb929794f31e6387dbfb5b6a543b by Marcus Brinkmann on 15/06/2009 at 17:05..
2009-06-15  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in (gpgme_result_ref, gpgme_result_unref): Add
	prototypes.
	* gpgme.def, libgpgme.vers (gpgme_result_ref, gpgme_result_unref):
	Add these.
	* context.h (struct ctx_op_data): Add member "references".
	* gpgme.c (gpgme_result_ref, gpgme_result_unref): New functions.
	(_gpgme_release_result): Use gpgme_result_unref.
	* op-support.c (_gpgme_op_data_lookup): Initialize references.
https://invent.kde.org/neon/forks/gpgme/-/commit/59eecf421e42cb929794f31e6387dbfb5b6a543b

Git commit b8726059416659707762f9cf97e3989cc26f6268 by Werner Koch on 16/06/2009 at 11:42..
Add new functions to import and export keys specified by gpgme_key_t.
Allow  exporting keys to a keyserver.
https://invent.kde.org/neon/forks/gpgme/-/commit/b8726059416659707762f9cf97e3989cc26f6268

Git commit 3320cc1742b541e9878dec1f6949f04811292cd3 by Marcus Brinkmann on 16/06/2009 at 14:43..
doc/
2009-06-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.texi (Result Management): New section.

src/
2009-06-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (result_ref_lock): New global variable.
	(gpgme_result_ref, gpgme_result_unref): use it.
https://invent.kde.org/neon/forks/gpgme/-/commit/3320cc1742b541e9878dec1f6949f04811292cd3

Git commit bebd9cbe29cf6db15469502b5c6b1f83c93513ef by Werner Koch on 16/06/2009 at 15:42..
Add support for gpg --fetch-keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/bebd9cbe29cf6db15469502b5c6b1f83c93513ef

Git commit 9c17b3343bfbebdd58b02a95c8a090133228894d by Marcus Brinkmann on 17/06/2009 at 13:42..
2009-06-16  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_result_unref): Hot fix to release a lock.
https://invent.kde.org/neon/forks/gpgme/-/commit/9c17b3343bfbebdd58b02a95c8a090133228894d

Git commit 3ab899f41cda31ab763da9e73e95981dcf3d5b7f by Marcus Brinkmann on 18/06/2009 at 12:38..
2009-06-18  Marcus Brinkmann  <marcus at g10code.de>

	* context.h (CTX_OP_DATA_MAGIC): New macro.
	(struct ctx_op_data): New member MAGIC.
	* op-support.c (_gpgme_op_data_lookup): Initialize magic.
	* gpgme.c (gpgme_result_unref, gpgme_result_ref): Check magic.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ab899f41cda31ab763da9e73e95981dcf3d5b7f

Git commit 0d77c1a3aa9927f0bac6ff1b543f883e1d69753e by Marcus Brinkmann on 18/06/2009 at 13:41..
2009-06-18  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in (GPGME_CONF_PATHNAME): Remove obsolete macro.

	* w32-io.c (_gpgme_io_pipe): Allocate reader/writer thread right
	away.
	(_gpgme_io_read, _gpgme_io_write, _gpgme_io_select)
	(_gpgme_io_dup): Never allocate threads here.
	(find_writer, find_reader): Check return value of thread creation
	function.
https://invent.kde.org/neon/forks/gpgme/-/commit/0d77c1a3aa9927f0bac6ff1b543f883e1d69753e

Git commit e6ff9579ba131e4ef95233285da94b2d48208bc1 by Marcus Brinkmann on 18/06/2009 at 16:51..
2009-06-18  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.def: Fix stupid typo.
	* w32-io.c (_gpgme_io_pipe): Add missing declaration.
https://invent.kde.org/neon/forks/gpgme/-/commit/e6ff9579ba131e4ef95233285da94b2d48208bc1

Git commit 70323bb33a1b3130b7e925a1aad7f20402f0f212 by Marcus Brinkmann on 18/06/2009 at 17:04..
2009-06-18  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in (GPGME_CONF_PATHNAME): Revert last change, it's
	back! (GPA still uses it...).
https://invent.kde.org/neon/forks/gpgme/-/commit/70323bb33a1b3130b7e925a1aad7f20402f0f212

Git commit abb000da8ebf332717c8b6a6bc38b90c07933db5 by Marcus Brinkmann on 18/06/2009 at 17:16..
2009-06-18  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (my_version): Set to 1.2.0.
	(LIBGPGME_LT_CURRENT, LIBGPGME_LT_AGE): Bump.
	(LIBGPGME_LT_REVISION): Reset.
https://invent.kde.org/neon/forks/gpgme/-/commit/abb000da8ebf332717c8b6a6bc38b90c07933db5

Git commit 226b8d0a2971236a054d99aa55d15383415742d1 by Marcus Brinkmann on 18/06/2009 at 17:18..
Fix last change, how did that happen?
https://invent.kde.org/neon/forks/gpgme/-/commit/226b8d0a2971236a054d99aa55d15383415742d1

Git commit b207a32d4ddf03deb457af84d24e443083435d75 by Marcus Brinkmann on 19/06/2009 at 02:04..
2009-06-18  Marcus Brinkmann  <marcus at g10code.de>

	Released GPGME 1.2.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/b207a32d4ddf03deb457af84d24e443083435d75

Git commit 1c454aee81e38ffbc4a615092742ae4b1e37b57f by Marcus Brinkmann on 22/06/2009 at 14:50..
2009-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add AC_TYPE_UINTPTR_T.

	* assuan/assuan.h [_ASSUAN_IN_GPGME_BUILD_ASSUAN]: Declare
	_gpgme_io_connect.

src/
2009-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* debug.h: Everywhere, use %p instead of 0x%x to print pointer.
	[HAVE_STDINT_H]: Include <stdint.h>.
	(_TRACE, TRACE, TRACE0, TRACE1, TRACE2, TRACE3, TRACE6): Cast tag
	to (uintptr_t) before casting it to (void*) to silence GCC
	warning.

	* gpgme.h.in (_GPGME_DEPRECATED_OUTSIDE_GPGME): New macro.
	* sign.c (_GPGME_IN_GPGME): Define it.
	* keylist.c (_GPGME_IN_GPGME): Define it.

	* debug.c (_gpgme_debug_begin, _gpgme_debug_add): Handle error in
	vasprintf and asprintf.

	* priv-io.h: Include <sys/socket.h>.  Declare _gpgme_io_connect.

tests/
2009-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-support.h (passphrase_cb): Implement write() according to
	the book to silence compiler warning.
	* gpgsm/t-support.h (passphrase_cb): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/1c454aee81e38ffbc4a615092742ae4b1e37b57f

Git commit 3bd2d764170d95cf154ec47d22101d46f68c92f5 by Werner Koch on 07/07/2009 at 12:38..
* engine-gpgsm.c (gpgsm_import): Return an error for unknown data

encodings.
https://invent.kde.org/neon/forks/gpgme/-/commit/3bd2d764170d95cf154ec47d22101d46f68c92f5

Git commit dab2485755f9a798e34a1b344769b47612643cc6 by Werner Koch on 07/07/2009 at 12:39..
Typo fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/dab2485755f9a798e34a1b344769b47612643cc6

Git commit 43427b0c91511abf58fab928268fa61d1ad110b9 by Werner Koch on 07/07/2009 at 14:17..
Move gpg test programs to the top test directory.
https://invent.kde.org/neon/forks/gpgme/-/commit/43427b0c91511abf58fab928268fa61d1ad110b9

Git commit b996b0540a0d78f3a3580da7814f0d86264da511 by Werner Koch on 07/07/2009 at 14:33..
Inmplement import from keys for GPGSM.
Add option --cms to run-keylist test program.
https://invent.kde.org/neon/forks/gpgme/-/commit/b996b0540a0d78f3a3580da7814f0d86264da511

Git commit 54719f4937110d23bd1db4cec453eb04052da12c by Werner Koch on 08/07/2009 at 11:49..
Add issing file.
https://invent.kde.org/neon/forks/gpgme/-/commit/54719f4937110d23bd1db4cec453eb04052da12c

Git commit 0fcf3ee915a1c90bd7471ec371924a1ff7a5fcdd by Werner Koch on 06/08/2009 at 17:17..
Fix detection of invalid signer keys.
Support the new INV_SGNR status code.
https://invent.kde.org/neon/forks/gpgme/-/commit/0fcf3ee915a1c90bd7471ec371924a1ff7a5fcdd

Git commit 35b25decde64447eb220961c92eabf7c50d9fc96 by Werner Koch on 06/08/2009 at 19:09..
Better detection for signature creation failure.
https://invent.kde.org/neon/forks/gpgme/-/commit/35b25decde64447eb220961c92eabf7c50d9fc96

Git commit aa747b1575672bf10ae9f164f41ae10c0cba9519 by Werner Koch on 07/10/2009 at 11:17..
Fix last change for Windows.
https://invent.kde.org/neon/forks/gpgme/-/commit/aa747b1575672bf10ae9f164f41ae10c0cba9519

Git commit 06e22ca339ab409ff114db43c2b1986c762b0b10 by Werner Koch on 15/10/2009 at 20:54..
Add new debug helper
https://invent.kde.org/neon/forks/gpgme/-/commit/06e22ca339ab409ff114db43c2b1986c762b0b10

Git commit e782b1ab06a2d3325bc487c28ab678c95d9675b3 by Marcus Brinkmann on 20/10/2009 at 15:39..
2009-10-20  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Replace internal libassuan by external libassuan.
	* m4/libassuan.m4: New file.
	* Makefile.am (assuan): Remove variable.
	(SUBDIRS): Remove ${assuan}.
	* assuan/: Removed.

src/
2009-10-20  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (assuan_cppflags, assuan_libobjs): Removed.
	(gpgsm_components): Move engine-assuan.c to ...
	(assuan_components): ... this new variable.
	(main_sources): Add this new variable.
	(AM_CPPFLAGS): Remove $(assuan_cppflags).
	(AM_CFLAGS): Add @LIBASSUAN_CFLAGS at .
	(libgpgme_la_DEPENDENCIES, libgpgme_pth_la_DEPENDENCIES)
	(libgpgme_glib_la_DEPENDENCIES, libgpgme_qt_la_DEPENDENCIES)
	(libgpgme_pthread_la_DEPENDENCIES): Remove $(assuan_libobjs).
	(libgpgme_la_LIBADD, libgpgme_pth_la_LIBADD)
	(libgpgme_glib_la_LIBADD, libgpgme_qt_la_LIBADD))
	(libgpgme_pthread_la_LIBADD): Replace $(assuan_libobjs) by
	@LIBASSUAN_LIBS at .
	* priv-io.h [!HAVE_W32_SYSTEM]: Declare _gpgme_io_recvmsg,
	_gpgme_io_sendmsg, _gpgme_io_waitpid.
	* engine-backend.h: Define with [ENABLE_ASSUAN] instead
	of [ENABLE_GPGSM].
	* posix-io.c (_gpgme_io_waitpid): Make non-static.
	* util.h (ENABLE_ASSUAN): Declar _gpgme_assuan_system_hooks,
	_gpgme_assuan_malloc_hooks, _gpgme_assuan_log_cb.
	* engine-gpgsm.c: Don't map assuan error codes.  Use
	assuan_release instead of assuan_disconnect.
	(map_assuan_error): Remove function.
	(gpgsm_new): Use new assuan context interface.
	* engine-assuan.c: Use assuan_release instead of
	assuan_disconnect.
	(llass_new): Use new assuan context interface.
https://invent.kde.org/neon/forks/gpgme/-/commit/e782b1ab06a2d3325bc487c28ab678c95d9675b3

Git commit 06d5e93367a1b3fef080b33e597a85021803b4d8 by Marcus Brinkmann on 20/10/2009 at 15:54..
2009-10-20  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-config.in (netlibs): Remove.
	(assuan_cflags, assuan_libs): Add.
https://invent.kde.org/neon/forks/gpgme/-/commit/06d5e93367a1b3fef080b33e597a85021803b4d8

Git commit 890e8b5955337f615baf5655c5b972b3708701e1 by Marcus Brinkmann on 20/10/2009 at 15:54..
Add item on libassuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/890e8b5955337f615baf5655c5b972b3708701e1

Git commit ba99f16240e2b57ca2c51f818e66c4e73bbf44b1 by Marcus Brinkmann on 20/10/2009 at 15:55..
Fix version number.
https://invent.kde.org/neon/forks/gpgme/-/commit/ba99f16240e2b57ca2c51f818e66c4e73bbf44b1

Git commit 93f7269a0fdbb5207f001b2e80f9026a97a17cdf by Marcus Brinkmann on 20/10/2009 at 16:04..
2009-10-20  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (AC_CONFIG_FILES): Remove assuan/Makefile.
https://invent.kde.org/neon/forks/gpgme/-/commit/93f7269a0fdbb5207f001b2e80f9026a97a17cdf

Git commit 9e2397571df145ca404e71d9d4ee77ea56a4eed9 by Marcus Brinkmann on 20/10/2009 at 16:05..
Really add file.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e2397571df145ca404e71d9d4ee77ea56a4eed9

Git commit a6f3857128220cc413434d5fb56cdd7f9a890c4c by Marcus Brinkmann on 22/10/2009 at 16:44..
2009-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add support for G13.

src/
2009-10-22  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am: Remove @NETLIBS@ from LIBADDs.
	(g13_components): New variable.
	(main_sources): Add $(g13_components).
	* g13.c, engine-g13.c: New files.
	* engine.c (engine_ops): Check for assuan for assuan engine, add
	g13 engine.
	* util.h (_gpgme_get_g13_path, _gpgme_encode_percent_string): New
	prototypes.
	* conversion.c (_gpgme_encode_percent_string): New function.
	* gpgme.h.in (gpgme_protocol_t): Add GPGME_PROTOCOL_G13.
	(struct _gpgme_op_g13_result, gpgme_g13_result_t): New types.
	(gpgme_op_g13_mount): New function.
	* gpgme.def, libgpgme.vers: Add gpgme_op_g13_mount.
	* gpgme.c (gpgme_set_protocol): Allow GPGME_PROTOCOL_G13.
	(gpgme_get_protocol_name): Add GPGME_PROTOCOL_G13.
	* posix-util.c (_gpgme_get_g13_path): New function.
	* w32-util.c (_gpgme_get_g13_path): New function.
	* engine-backend.h (_gpgme_engine_ops_g13): New declaration.
https://invent.kde.org/neon/forks/gpgme/-/commit/a6f3857128220cc413434d5fb56cdd7f9a890c4c

Git commit ca67902311b832f8dfe1cabb5bf358890a1d3821 by Marcus Brinkmann on 26/10/2009 at 17:38..
2009-10-26  Marcus Brinkmann  <marcus at g10code.de>

	* debug.h (DEBUG_GLOBAL): New debug level.
	* conversion.c (gnupg_errors, _gpgme_map_gnupg_error): Removed.
	* data-user.c (gpgme_data_new_from_cbs): Add debug output.
	* data-fd.c (gpgme_data_new_from_fd): Likewise.
	* data-stream.c (gpgme_data_new_from_stream): Likewise.
	* decrypt.c (gpgme_op_decrypt_result, gpgme_op_decrypt_start)
	(gpgme_op_decrypt): Likewise.
	* delete.c (gpgme_op_delete_start, gpgme_op_delete): Likewise.
	* decrypt-verify.c (gpgme_op_decrypt_verify_start)
	(gpgme_op_decrypt_verify): Likewise.
	* sign.c (gpgme_op_sign_result): Fix debug message.
	* data-mem.c (gpgme_data_new): Improve debug output.
	* verify.c (parse_trust): Use atoi instead of
	_gpgme_map_gnupg_error.
	* decrypt.c (_gpgme_decrypt_status_handler): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca67902311b832f8dfe1cabb5bf358890a1d3821

Git commit c8e934b2761ded0a7c7fdaaf7f3e2e8af9e3dcaf by Marcus Brinkmann on 26/10/2009 at 18:52..
2009-10-26  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac (NEED_GPG_VERSION_DEFAULT): Bump to 1.4.0 as 1.3.0
	was development versions only.

tests/
2009-10-26  Marcus Brinkmann  <marcus at g10code.de>

	* opassuan/t-command.c: Update to new interface.

src/
2009-10-26  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in (struct gpgme_io_event_done_data)
	(gpgme_io_event_done_data_t): New types.
	(struct _gpgme_op_assuan_result): Deprecate the err member.
	(gpgme_op_assuan_result): Deprecate (for now).
	(gpgme_op_assuan_transact_ext): New prototype.
	(gpgme_op_assuan_transact): Deprecate.
	(struct _gpgme_op_g13_result): Replace with ...
	(struct _gpgme_op_vfs_mount_result): ... this.
	(gpgme_op_g13_mount): Replace with ...
	(gpgme_op_vfs_mount): ... this.
	* gpgme.def (gpgme_op_assuan_transact_ext, gpgme_wait_ext)
	(gpgme_op_vfs_mount_result, gpgme_op_vfs_mount): New.
	(gpgme_op_g13_mount): Remove.
	* libgpgme.vers: Likewise.
	* engine-backend.h (struct engine_ops): Remove RESULT_CB and
	RESULT_CB_VALUE args in opassuan_transact member.  Add CANCEL_OP
	member.
	* ops.h (_gpgme_cancel_with_err, _gpgme_wait_on_condition): Add
	OP_ERR argument.
	(_gpgme_wait_one_ext): New prototype.
	* context.h (ctx_op_data_id_t): Add OPDATA_VFS_MOUNT.
	* engine-g13.c (g13_cancel_op): New function.
	(parse_status): Remove declaration.
	(g13_assuan_simple_command): Do nothing with status lines for now.
	(status_handler): Update opaque value access.
	(_gpgme_engine_ops_g13): Add new cancel_op member.
	* gpgme.c (_gpgme_cancel_with_err): Add new parameter OP_ERR.
	Handle operational errors.
	(gpgme_cancel, gpgme_io_read, gpgme_io_write): Add debug output.
	* data.c (_gpgme_data_inbound_handler)
	(_gpgme_data_outbound_handler): Adjust opaque value access.
	* engine-gpg.c (command_handler, status_handler)
	(colon_line_handler): Likewise.
	* engine-gpgsm.c (status_handler): Likewise.
	* engine-gpg.c (_gpgme_engine_ops_gpg): Add cancel_op member.
	* engine-gpgsm.c (_gpgme_engine_ops_gpgsm): Likewise.
	* g13.c: Rewritten (and will be rewritten again).
	* engine.h (_gpgme_engine_op_assuan_transact): Remove result_cb
	and result_cb_value parameters from prototype.
	(_gpgme_engine_cancel_op): New prototype.
	* engine.c (engine_ops) [! ENABLE_ASSUAN]: Add missing comma.
	(_gpgme_engine_op_assuan_transact): Remove result_cb and
	result_cb_value parameter.
	(_gpgme_engine_cancel_op): New function.
	* wait.h (_gpgme_run_io_cb): Add new argument OP_ERR.
	(struct io_cb_data): New struct to pass opaque data and get a
	op_err return value.  Needed because we can't modify I/O callback
	handler signature because it is exposed to the user.
	* wait.c (_gpgme_run_io_cb): Add OP_ERR parameter.  Handle
	operational errors.
	* wait-user.c (_gpgme_user_io_cb_handler): Handle operational
	errors.
	* wait-private.c (_gpgme_wait_on_condition): New argument to
	retrieve the operational result.  Handle operational errors in
	session based protocols.
	(_gpgme_wait_one_ext): New function.
	(_gpgme_wait_one): Pass argument in invocation of
	_gpgme_wait_on_condition.
	* wait-global.c (struct ctx_list_item): Add member OP_ERR.
	(ctx_done): New argument OP_ERR.
	(ctx_wait): New argument OP_ERR.
	(gpgme_wait_ext): New function based on gpgme_wait but handling
	operational errors.
	(gpgme_wait): Implement in term of gpgme_wait_ext.
	* keylist.c (gpgme_op_keylist_next): Pass argument in invocation
	of _gpgme_wait_on_condition.
	* trustlist.c (gpgme_op_trustlist_next): Pass argument in
	invocation of _gpgme_wait_on_condition.
	* engine-assuan.c (struct engine_llass): Replace members RESULT_CB
	and RESULT_CB_VALUE by LAST_OP_ERR.
	(_gpgme_engine_assuan_last_op_err): Add this hack function.
	(llass_cancel_op): New function.
	(_gpgme_engine_llass_ops): Add cancel_op member.
	(llass_status_handler): Update opaque value access.
	(llass_transact): Remove RESULT_CB and RESULT_CB_VALUE arguments.
	* opassuan.c: Move compat hacks to the end of file.
	(opassuan_start): Do not set OPD->result.err.
	Do not pass RESULT_Cb and CTX to _gpgme_engine_op_assuan_transact.
	(gpgme_op_assuan_transact_ext): New function.
https://invent.kde.org/neon/forks/gpgme/-/commit/c8e934b2761ded0a7c7fdaaf7f3e2e8af9e3dcaf

Git commit 36e2c1a9d1376057fb2b3c4ce016c2707ee49ca7 by Marcus Brinkmann on 27/10/2009 at 19:23..
2009-10-27  Marcus Brinkmann  <marcus at g10code.de>

	* edit.c (gpgme_op_edit_start, gpgme_op_edit)
	(gpgme_op_card_edit_start, gpgme_op_card_edit): Add debug output.
	* encrypt-sign.c (gpgme_op_encrypt_sign_start)
	(gpgme_op_encrypt_sign): Likewise.
	* encrypt.c (gpgme_op_encrypt_start, gpgme_op_encrypt)
	(gpgme_op_encrypt_result): Likewise.
	* export.c (gpgme_op_export_start, gpgme_op_export)
	(gpgme_op_export_ext_start, gpgme_op_export_ext)
	(gpgme_op_export_keys_start, gpgme_op_export_keys): Likewise.
	* genkey.c (gpgme_op_genkey_start, gpgme_op_genkey)
	(gpgme_op_genkey_result): Likewise.
	* getauditlog.c (gpgme_op_getauditlog_start)
	(gpgme_op_getauditlog): Likewise.
	* import.c (gpgme_op_import_result, gpgme_op_import_start)
	(gpgme_op_import): Likewise.
	* keylist.c (gpgme_op_keylist_result, keylist_colon_handler)
	(gpgme_op_keylist_start, gpgme_op_keylist_ext_start)
	(gpgme_op_keylist_next, gpgme_op_keylist_end, gpgme_get_key): Likewise.
	* opassuan.c (gpgme_op_assuan_transact_start)
	(gpgme_op_assuan_transact_ext, gpgme_op_assuan_result)
	(gpgme_op_assuan_transact): Likewise.
	* signers.c (gpgme_signers_add, gpgme_signers_clear): Likewise.
	* trustlist.c (gpgme_op_trustlist_start)
	(gpgme_op_trustlist_next, gpgme_op_trustlist_end): Likewise.
	* verify.c (gpgme_op_verify_start, gpgme_op_verify)
	(gpgme_op_verify_result): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/36e2c1a9d1376057fb2b3c4ce016c2707ee49ca7

Git commit 63200590eafc80fdb7193c101c5381845ce22e66 by Marcus Brinkmann on 28/10/2009 at 16:39..
2009-10-28  Marcus Brinkmann  <marcus at g10code.de>

	* signers.c, encrypt-sign.c, encrypt.c, delete.c, keylist.c,
	edit.c, import.c, export.c: Fix last change in debug output.
https://invent.kde.org/neon/forks/gpgme/-/commit/63200590eafc80fdb7193c101c5381845ce22e66

Git commit 6c3fadef5ed41556b4ef8798bebc7bed989e0c5c by Marcus Brinkmann on 30/10/2009 at 14:13..
Some additions.
https://invent.kde.org/neon/forks/gpgme/-/commit/6c3fadef5ed41556b4ef8798bebc7bed989e0c5c

Git commit 9d3fdd8c96b79ecbd56cf6b1a424bb2e2cd5236d by Marcus Brinkmann on 30/10/2009 at 14:21..
2009-10-30  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Check for argp.h and error_t.

src/
2009-10-30  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (noinst_PROGRAMS): New target gpgme-tool.
	(gpgme_tool_LDADD): New variable.
	* gpgme-tool.c: New file.
	* ops.h (_gpgme_sig_notation_clearm _gpgme_signers_clear): New
	prototypes.
	* gpgme.c (gpgme_set_protocol): Allow GPGME_PROTOCOL_GPGCONF (when
	had that gone missing?).
	(_gpgme_sig_notation_clear): New function without debug output.
	(gpgme_release): Call it and _gpgme_signers_clear.
	* signers.c (_gpgme_signers_clear): New function without debug output.
	* g13.c (gpgme_op_vfs_mount): Add debug output.
	* assuan-support.c (my_spawn): Allow fd_child_list to be NULL.
	* conversion.c (_gpgme_encode_percent_string): Fix infinite loop.
	* debug.h: Put tag in front of debug lines, should make for nicer
	output.
	* engine-assuan.c (llass_new): Use our new system hooks for libassuan.
	* engine-g13.c (g13_new): Remove redundant assuan context allocation.
	* version.c (gpgme_check_version_internal): Delay debug output
	until after gpgme_check_version was called.
https://invent.kde.org/neon/forks/gpgme/-/commit/9d3fdd8c96b79ecbd56cf6b1a424bb2e2cd5236d

Git commit 8c823dd784e5c24399dd3a6707e57689eafb5281 by Marcus Brinkmann on 02/11/2009 at 17:06..
2009-11-02  Marcus Brinkmann  <marcus at g10code.de>

	* opassuan.c (gpgme_op_assuan_transact): Fix return value.
https://invent.kde.org/neon/forks/gpgme/-/commit/8c823dd784e5c24399dd3a6707e57689eafb5281

Git commit 490661821a0bba3b4e37015d8313a3dfb37c3a34 by Marcus Brinkmann on 02/11/2009 at 17:18..
2009-11-02  Marcus Brinkmann  <marcus at g10code.de>

	* debug.h (_gpgme_debug_buffer): Make TAG argument const const.
	* debug.c (_gpgme_debug_buffer): Likewise.
	* gpgme-tool.c (input_notify, output_notify): Adjust type to new
	assuan interface.
	* decrypt.c (gpgme_op_decrypt_result): Remove unused variable.
	* opassuan.c (gpgme_op_assuan_transact): Fix return value.
https://invent.kde.org/neon/forks/gpgme/-/commit/490661821a0bba3b4e37015d8313a3dfb37c3a34

Git commit 97932b102af882a37c2613b0f50dc39369c48723 by Marcus Brinkmann on 03/11/2009 at 19:15..
2009-11-03  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (main_sources): Change g13.c to vfs-mount.c.  Add
	vfs-create.c
	* vfs-create.c: New file.
	* g13.c: Renamed to ...
	* vfs-mount.c: ... this new file.
	* gpgme.h.in (gpgme_op_vfs_create): New prototype.
	* gpgme.def, libgpgme.vers: Add gpgme_op_vfs_create.
	* gpgme-tool.c (gt_vfs_create, cmd_vfs_create): New functions.
	(register_commands): Add VFS_CREATE and CREAET.
https://invent.kde.org/neon/forks/gpgme/-/commit/97932b102af882a37c2613b0f50dc39369c48723

Git commit fc0fd88d7fd66cdf8babfee43736da50201b3a53 by Werner Koch on 03/11/2009 at 20:27..
Prepare for a new protocol.
Comment clarification.
https://invent.kde.org/neon/forks/gpgme/-/commit/fc0fd88d7fd66cdf8babfee43736da50201b3a53

Git commit 574086bf19095c0e73c5360564ebe8eeb9e5e78b by Werner Koch on 04/11/2009 at 10:43..
Adjust for changed assuan_register_command.
https://invent.kde.org/neon/forks/gpgme/-/commit/574086bf19095c0e73c5360564ebe8eeb9e5e78b

Git commit 49693e8e45ec9233f779e8f1d8a30f54b683c6ff by Marcus Brinkmann on 04/11/2009 at 18:13..
2009-11-04  Marcus Brinkmann  <marcus at g10code.de>

	* ath.h (ath_self): New prototype.  Include <stdint.h>
	* ath.c, ath-pth.c, ath-pthread.c (ath_self): New function.
	* debug.h: Rewrite most macros to beautify debug output.
	(_gpgme_debug_buffer): Remove tagname and tag argument.
	(_gpgme_debug_frame_begin, _gpgme_debug_frame_end): New prototypes.
	* debug.c: Include <time.h>.  Don't include assuan.h.
	(frame_nr, FRAME_NR): New thread-specific variable and macro.
	(debug_init): Do not initialize assuan.  Call _gpgme_debug after
	initialization instead using printf directly.
	(_gpgme_debug): Do not call debug_init (we now ensure proper
	initialization by user).  Add timestamp and thread/process ID.
	(_gpgme_debug_buffer): Do not take tagname and tag argument.
	(_gpgme_debug_frame_begin, _gpgme_debug_frame_end): New functions.
	* version.c (gpgme_check_version_internal, gpgme_check_version):
	Fix debug string.  Do not initialize assuan.
	* posix-io.c (get_max_fds): Use 0 not NULL (nicer debug output).
https://invent.kde.org/neon/forks/gpgme/-/commit/49693e8e45ec9233f779e8f1d8a30f54b683c6ff

Git commit 65ecec1abe9ce864060f61f03d025fe98e7cbf55 by Marcus Brinkmann on 05/11/2009 at 02:17..
2009-11-05  Marcus Brinkmann  <marcus at g10code.de>

	* decrypt.c (gpgme_op_decrypt_start): Fix use of debug macro.
	* decrypt-verify.c (gpgme_op_decrypt_verify_start): Likewise.
	* delete.c (gpgme_op_delete_start): Likewise.
	* edit.c (gpgme_op_edit_start, gpgme_op_card_edit_start):
	Likewise.
	* encrypt.c (gpgme_op_encrypt_start): Likewise.
	* encrypt-sign.c (gpgme_op_encrypt_sign_start): Likewise.
	* export.c (gpgme_op_export_start, gpgme_op_export_ext_start)
	(gpgme_op_export_keys_start, gpgme_op_export_keys): Likewise.
	* genkey.c (gpgme_op_genkey_start): Likewise.
	* getauditlog.c (gpgme_op_getauditlog_start): Likewise.
	* import.c (gpgme_op_import_start, gpgme_op_import_keys_start):
	Likewise.
	* opassuan.c (gpgme_op_assuan_transact_start): Likewise.
	* sign.c (gpgme_op_sign_start): Likewise.
	* verify.c (gpgme_op_verify_start): Likewise.
	* vfs-create.c (gpgme_op_vfs_create): Likewise.
	* vfs-mount.c (gpgme_op_vfs_mount): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/65ecec1abe9ce864060f61f03d025fe98e7cbf55

Git commit 59dc98545a2cbd2a6d057b3ec7fe25ebff25f8a4 by Marcus Brinkmann on 05/11/2009 at 02:39..
2009-11-05  Marcus Brinkmann  <marcus at g10code.de>

	* priv-io.h (IOSPAWN_FLAG_NOCLOSE): New flag.
	* w32-io.c (_gpgme_io_spawn): Implement this flag.
	* posix-io.c (_gpgme_io_spawn): Likewise.
	* w32-glib-io.c (_gpgme_io_spawn): Likewise.
	* assuan-support.c (my_spawn): Set this flag.
https://invent.kde.org/neon/forks/gpgme/-/commit/59dc98545a2cbd2a6d057b3ec7fe25ebff25f8a4

Git commit 4babea46e7ca1ee0f04323bf1bd414c120c0bcc6 by Marcus Brinkmann on 05/11/2009 at 12:10..
2009-11-05  Marcus Brinkmann  <marcus at g10code.de>

	* engine-assuan.c (llass_new): Update use of assuan_socket_connect.
	* engine-gpgsm.c (gpgsm_new): Update use of assuan_pipe_connect.
	* engine-g13.c (g13_new): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/4babea46e7ca1ee0f04323bf1bd414c120c0bcc6

Git commit 8acf819d407e80606268770af14980d07540b099 by Marcus Brinkmann on 06/11/2009 at 00:12..
2009-11-05  Marcus Brinkmann  <marcus at g10code.de>

	* engine-g13.c (struct engine_g13): Remove members RESULT_CB and
	RESULT_CB_VALUE.
	(g13_assuan_simple_command, status_handler): Don't use those anymore.
	(g13_transact): Remove them from argument list, too.
	* vfs-mount.c (_gpgme_vfs_mount_status_handler): New function.
	(_gpgme_op_vfs_mount): Pass it to transact.
https://invent.kde.org/neon/forks/gpgme/-/commit/8acf819d407e80606268770af14980d07540b099

Git commit 75f035e9d0d6c2c73b288d7095a3c9ca2a95feb2 by Marcus Brinkmann on 06/11/2009 at 00:44..
2009-11-06  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-tool.c (struct gpgme_tool): New members write_data and
	write_data_hook.
	(gt_write_data): New function.
	(gt_result): Output vfs_mount result.
	(server_write_data): New function.
	(gpgme_server): Initialize write_data members.
https://invent.kde.org/neon/forks/gpgme/-/commit/75f035e9d0d6c2c73b288d7095a3c9ca2a95feb2

Git commit 37c1f0fe544551d630b49b4a810a729c07ac825e by Marcus Brinkmann on 09/11/2009 at 21:17..
2009-11-09  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_new): Close server side FDs.
https://invent.kde.org/neon/forks/gpgme/-/commit/37c1f0fe544551d630b49b4a810a729c07ac825e

Git commit 14f08497ae5cd66fe73f7132da9168a78eeda552 by Marcus Brinkmann on 09/11/2009 at 21:19..
Remove comment.
https://invent.kde.org/neon/forks/gpgme/-/commit/14f08497ae5cd66fe73f7132da9168a78eeda552

Git commit 8435f18d9684398869fddd71b36f1fe7b24d8370 by Marcus Brinkmann on 09/11/2009 at 21:21..
Fix last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/8435f18d9684398869fddd71b36f1fe7b24d8370

Git commit 96cf17b15995c9b925f80a64dbd42c1305ca9895 by Marcus Brinkmann on 10/11/2009 at 09:07..
2009-11-10  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Activate UIServer if FD passing is enabled and
	Assuan is available.

m4/
2009-11-10  Marcus Brinkmann  <marcus at g10code.de>

	* libassuan.m4: Fix LIBASSUAN_VERSION.

src/
2009-11-10  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (uiserver_components): New variable.
	(main_sources): Add it.
	* ops.h, key.c (_gpgme_key_append_name): Take CONVERT argument,
	implement it.  Adjust callers.
	(gpgme_key_from_uid): New function.
	* gpgme.h.in (gpgme_protocol_t): Add GPGME_PROTOCOL_DEFAULT.
	(gpgme_encrypt_flags_t): Add GPGME_ENCRYPT_PREPARE,
	GPGME_ENCRYPT_EXPECT_SIGN.
	(gpgme_set_sub_protocol, gpgme_key_from_uid): New functions.
	* libgpgme.vers, gpgme.def: Add new functions.
	* gpgme.c (gpgme_set_protocol): Add UIServer protocol.
	(gpgme_set_sub_protocol): New function.
	(gpgme_get_protocol_name): Add UIServer and default protocol.
	* assuan-support.c: Return correct error values, implement
	socketpair for POSIX.
	* priv-io.h, posix-io.c, w32-io.c, w32-glib-io.c,
	w32-qt-io.cpp (_gpgme_io_spawn): Add ATFORK and ATFORKVALUE
	arguments.  Implement it for POSIX.  Adjust all callers.
	* engine.h, engine-backend.h (_gpgme_engine_set_protocol)
	(_gpgme_engine_op_decrypt_verify): New prototypes.  Adjust all
	users.
	* engine.c (engine_ops, gpgme_get_engine_info): Add UIServer
	engine.
	(_gpgme_engine_set_protocol, _gpgme_engine_op_decrypt_verify): New
	function.
	* decrypt-verify.c (decrypt_verify_start): Call
	_gpgme_engine_op_decrypt_verify.
	* util.h, posix-util.c,
	w32-util.c (_gpgme_get_uiserver_socket_path): New function.
	* engine-gpgsm.c (gpgsm_set_fd): Fix _gpgme_io_pipe invocation.
	* gpgme-tool.c: Some support for UIServer protocol.
	* engine-uiserver.c: New file.
https://invent.kde.org/neon/forks/gpgme/-/commit/96cf17b15995c9b925f80a64dbd42c1305ca9895

Git commit cda07b9ab4f09ac87bc1aebbbe113f125eedeb02 by Marcus Brinkmann on 10/11/2009 at 14:49..
2009-11-10  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in (gpgme_get_sub_protocol): Add prototype.
	* gpgme.def, libgpgme.vers: Add gpgme_get_sub_protocol.
	* context.h (struct gpgme_context): New member sub_protocol.
	* gpgme.c (gpgme_set_sub_protocol): Set CTX->sub_protocol.
	(gpgme_get_sub_protocol): New function.
	* op-support.c (_gpgme_op_reset): Set sub protocol.
https://invent.kde.org/neon/forks/gpgme/-/commit/cda07b9ab4f09ac87bc1aebbbe113f125eedeb02

Git commit e88c7782bf6917dd01bd55a1ff4275644cae823b by Marcus Brinkmann on 10/11/2009 at 14:54..
2009-11-10  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.c (gpgme_new): Set default sub protocol.
	* gpgme-tool.c: Implement get sub protocol.
https://invent.kde.org/neon/forks/gpgme/-/commit/e88c7782bf6917dd01bd55a1ff4275644cae823b

Git commit 0fae16ae89830bd1317be2b42f28501b077b61fd by Werner Koch on 10/11/2009 at 15:04..
Pass fdpassing flag to assuan_socket_connect.
https://invent.kde.org/neon/forks/gpgme/-/commit/0fae16ae89830bd1317be2b42f28501b077b61fd

Git commit d173e6e010c3447c6ebb1a5999d2e128392ed341 by Werner Koch on 10/11/2009 at 16:32..
Make recipients command work.
https://invent.kde.org/neon/forks/gpgme/-/commit/d173e6e010c3447c6ebb1a5999d2e128392ed341

Git commit aff1ed3fb611e34e257c677fa7d0203fa9dd6f62 by Marcus Brinkmann on 10/11/2009 at 18:05..
2009-11-10  Marcus Brinkmann  <marcus at g10code.de>

	* op-support.c (_gpgme_op_reset): Instead of last change, only set
	sub protocol if it is not the default.
https://invent.kde.org/neon/forks/gpgme/-/commit/aff1ed3fb611e34e257c677fa7d0203fa9dd6f62

Git commit 1cb08a35a6eb214202b196aa2e69dafb0ef5aebd by Werner Koch on 17/11/2009 at 13:06..
Fixes for the UI server engine .
https://invent.kde.org/neon/forks/gpgme/-/commit/1cb08a35a6eb214202b196aa2e69dafb0ef5aebd

Git commit ef640ca8efea293aa725f92fcc33a7b151b2627e by Marcus Brinkmann on 25/11/2009 at 17:57..
2009-11-25  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-tool.c (gpgme_server): Use assuan_fd_t and assuan_fdopen
	on fds.
https://invent.kde.org/neon/forks/gpgme/-/commit/ef640ca8efea293aa725f92fcc33a7b151b2627e

Git commit 56af8b77e678d8a464d6edeec4672965135b65e0 by Marcus Brinkmann on 26/11/2009 at 17:53..
2009-11-26  Marcus Brinkmann  <marcus at g10code.de>

	* opassuan.c (opassuan_start): Allocate result structure before
	beginning operation.
https://invent.kde.org/neon/forks/gpgme/-/commit/56af8b77e678d8a464d6edeec4672965135b65e0

Git commit dce41d1ffaf619e9feeb8827b5f99e5bb8fbaea8 by Werner Koch on 01/12/2009 at 11:00..
Fix segv in printf like functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/dce41d1ffaf619e9feeb8827b5f99e5bb8fbaea8

Git commit c2ee84a87a8b3c4e61563b720b2f1b8f120bc36f by Werner Koch on 01/12/2009 at 11:21..
Add flags to the getauditlog command.
https://invent.kde.org/neon/forks/gpgme/-/commit/c2ee84a87a8b3c4e61563b720b2f1b8f120bc36f

Git commit 2cd1218b9389dadba56d3a2f2ecc170f1b9e6b5f by Werner Koch on 02/12/2009 at 09:49..
Small portability fix
https://invent.kde.org/neon/forks/gpgme/-/commit/2cd1218b9389dadba56d3a2f2ecc170f1b9e6b5f

Git commit 24169052c164a238c5799baaa070a8955176c94c by Marcus Brinkmann on 08/12/2009 at 04:07..
2009-12-08  Marcus Brinkmann  <marcus at g10code.de>

	* ath.c (ath_self) [HAVE_W32_SYSTEM]: Fix typo.
https://invent.kde.org/neon/forks/gpgme/-/commit/24169052c164a238c5799baaa070a8955176c94c

Git commit 0a80f620897355a7b264c8fa1047c47fe2e86970 by Marcus Brinkmann on 08/12/2009 at 21:38..
2009-12-08  Marcus Brinkmann  <marcus at g10code.de>

	Update to libtool 2.2.6a.
	* configure.ac: Invoke AC_CONFIG_MACRO_DIR.
	(AC_LIBTOOL_WIN32_DLL, AC_LIBTOOL_RC): Replace by ...
	(LT_PREREQ, LT_INIT, LT_LANG): ... these.
	* config.guess, config.sub, install-sh, ltmain.sh, m4/libtool.m4:
	Updated to libtool 2.2.6a.
	* m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4,
	m4/lt~obsolete.m4: New files from libtool 2.2.6a.

src/
2009-12-08  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (LTRCCOMPILE): Refactor with ...
	(RCCOMPILE): ... this new macro.
	(SUFFIXES): Add .lo.
	(gpgme_res_ldflag): Removed.
	(gpgme_res): Use libtool object file name here.
	(libgpgme_la_LDFLAGS): Remove gpgme_res_ldflag usage.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a80f620897355a7b264c8fa1047c47fe2e86970

Git commit 02e2f56d1de0cf88711a085d9d95c427c8e0692f by Marcus Brinkmann on 08/12/2009 at 22:39..
Forgotten file.
https://invent.kde.org/neon/forks/gpgme/-/commit/02e2f56d1de0cf88711a085d9d95c427c8e0692f

Git commit 31844d30cd604d3da90a0f773f92c7468a9c5b22 by Werner Koch on 10/12/2009 at 09:49..
Test on sgid process
https://invent.kde.org/neon/forks/gpgme/-/commit/31844d30cd604d3da90a0f773f92c7468a9c5b22

Git commit 1094c0a5d351953c26cb73196e79735c70f82112 by Marcus Brinkmann on 15/12/2009 at 01:01..
2009-12-15  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-support.c (my_spawn): Calloc, not malloc, the fd_items.
https://invent.kde.org/neon/forks/gpgme/-/commit/1094c0a5d351953c26cb73196e79735c70f82112

Git commit bc7e0f63398b42ffb755cbf15df74e09aa781006 by Marcus Brinkmann on 17/12/2009 at 17:36..
2009-12-17  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Make largefile check more robust.
https://invent.kde.org/neon/forks/gpgme/-/commit/bc7e0f63398b42ffb755cbf15df74e09aa781006

Git commit 7eb555370fe4b55bdbf7f682e0b66997dd32b7f0 by Marcus Brinkmann on 22/12/2009 at 13:00..
2009-12-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Do not use echo -n.  Test for __thread.

src/
2009-12-22  Marcus Brinkmann  <marcus at g10code.de>

	* debug.c: Test for TLS, not __GNUC__
https://invent.kde.org/neon/forks/gpgme/-/commit/7eb555370fe4b55bdbf7f682e0b66997dd32b7f0

Git commit 97c5d4d312dbb6d6f70d1d8ea88ab6a03f4e2f2a by Werner Koch on 05/01/2010 at 17:36..
Add an API to change passphrases.  Currently only implemented for
GPGSM.  Requires GnuPG 2.1
https://invent.kde.org/neon/forks/gpgme/-/commit/97c5d4d312dbb6d6f70d1d8ea88ab6a03f4e2f2a

Git commit 77d8ea8916bb415012f438c253876fa75c0b7864 by Marcus Brinkmann on 07/01/2010 at 18:16..
2010-01-07  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-tool.c (result_xml_write_cb_t, struct result_xml_state):
	New types.
	(MAX_TAGS): New macro.
	(result_init, result_xml_indent, result_xml_tag_start)
	(result_xml_tag_data, result_xml_tag_end, result_add_error)
	(result_add_pubkey_algo, result_add_hash_algo, result_add_keyid)
	(result_add_fpr, result_add_timestamp, result_add_sig_mode)
	(result_add_value, result_add_string, result_encrypt_to_xml)
	(result_decrypt_to_xml, result_sign_to_xml)
	(result_verify_to_xml, result_import_to_xml)
	(result_genkey_to_xml, result_keylist_to_xml)
	(result_vfs_mount_to_xml): New functions.
	(gt_result): Rewritten.
https://invent.kde.org/neon/forks/gpgme/-/commit/77d8ea8916bb415012f438c253876fa75c0b7864

Git commit 1b2fb1b737d1a0928cc9f7a210c9dbc5f374adff by Werner Koch on 08/01/2010 at 19:15..
Support gpgme_op_apsswd for GPG.
https://invent.kde.org/neon/forks/gpgme/-/commit/1b2fb1b737d1a0928cc9f7a210c9dbc5f374adff

Git commit 20b19496a82280826e5c650a1c236d80b194de48 by Marcus Brinkmann on 11/01/2010 at 12:30..
2010-01-11  Marcus Brinkmann  <marcus at g10code.de>

	Release 1.3.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/20b19496a82280826e5c650a1c236d80b194de48

Git commit 75116f9dab4b180ce3ae66701d51bcfc8c359860 by Marcus Brinkmann on 11/01/2010 at 12:42..
Post-release fixup.
https://invent.kde.org/neon/forks/gpgme/-/commit/75116f9dab4b180ce3ae66701d51bcfc8c359860

Git commit dbcce0df8f265a5e158c8e489be3dec6e704fd73 by Werner Koch on 25/01/2010 at 16:04..
Allow the native W32 version to properly work with sockets.
https://invent.kde.org/neon/forks/gpgme/-/commit/dbcce0df8f265a5e158c8e489be3dec6e704fd73

Git commit 9fb8b16f886fde518fb7f073edcd12c838126112 by Werner Koch on 16/02/2010 at 19:37..
Convert C++ comments to C90 comments.
https://invent.kde.org/neon/forks/gpgme/-/commit/9fb8b16f886fde518fb7f073edcd12c838126112

Git commit 2281024d4cb29c9c6742f7e9fbb031fe97f076c0 by Werner Koch on 16/02/2010 at 20:07..
Add option GPGME_EXPORT_MODE_MINIMAL
https://invent.kde.org/neon/forks/gpgme/-/commit/2281024d4cb29c9c6742f7e9fbb031fe97f076c0

Git commit 01ad3b756237156282adc865d9c6db0d49b982e4 by Werner Koch on 17/02/2010 at 21:40..
Changed the close notify implementaion to allow for more than 256 fds.
We should write a test case for it, though.
https://invent.kde.org/neon/forks/gpgme/-/commit/01ad3b756237156282adc865d9c6db0d49b982e4

Git commit 113b8e15362665ce127ff4bda14521567a1eebff by Werner Koch on 09/03/2010 at 11:15..
Hack to start the agent as a side-effect of a secret key listing
https://invent.kde.org/neon/forks/gpgme/-/commit/113b8e15362665ce127ff4bda14521567a1eebff

Git commit 6e3602b556b6ac4dc32877a2f800e3322294976d by Werner Koch on 12/03/2010 at 18:03..
Detect old gpg versions not featuring the --passwd command.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e3602b556b6ac4dc32877a2f800e3322294976d

Git commit c9f6151c189ef7287ad278c4943a2d942470c6c4 by Werner Koch on 12/03/2010 at 22:24..
Add constant to the template and not to a built file.
https://invent.kde.org/neon/forks/gpgme/-/commit/c9f6151c189ef7287ad278c4943a2d942470c6c4

Git commit a684c13c55eb0bc81aa823a4f3c6b5968440f33f by Werner Koch on 15/03/2010 at 12:04..
Make generated header file read-only in an emacs buffer.
https://invent.kde.org/neon/forks/gpgme/-/commit/a684c13c55eb0bc81aa823a4f3c6b5968440f33f

Git commit 779823c09cba151c3eb9043bc8ce28adb0dd737d by Werner Koch on 16/04/2010 at 14:08..
More robust detection of handle and sockets
https://invent.kde.org/neon/forks/gpgme/-/commit/779823c09cba151c3eb9043bc8ce28adb0dd737d

Git commit dfefe1b390bb5d15d7ef3e0564378a8139d2d335 by Marcus Brinkmann on 19/04/2010 at 16:59..
2010-04-19  Marcus Brinkmann  <marcus at g10code.de>

	* assuan-support.c (my_spawn): Cast to avoid warning.
	* engine-g13.c (g13_new): Make ARGV array of pointer to const
	char.
	(g13_assuan_simple_command) [!USE_DESCRIPTOR_FUNCTION]: Don't define.
	* ops.h (_gpgme_key_append_name): Same in prototype.
	* key.c (_gpgme_key_append_name): Make SRC argument pointer to
	const char.
	* posix-util.c (_gpgme_get_uiserver_socket_path): Make HOMEDIR
	const.
	* vfs-mount.c (gpgme_op_vfs_transact_start): Never define this
	potentially useful but currently unused function.
	* vfs-create.c (gpgme_op_vfs_transact_start): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/dfefe1b390bb5d15d7ef3e0564378a8139d2d335

Git commit 749325d6c10fd6a8d8fafa3c9c25b6822eaf0dc5 by Marcus Brinkmann on 06/05/2010 at 13:39..
2010-05-06  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Require libgpg-error 1.8.

src/
2010-05-06  Marcus Brinkmann  <marcus at g10code.de>

	* sign.c, data-user.c, conversion.c, debug.c, verify.c, data.c,
	decrypt.c, delete.c, assuan-support.c, import.c, engine-gpgsm.c,
	data-mem.c, op-support.c, w32-io.c, w32-util.c, data-compat.c: Use
	gpg_error_from_syserror instead gpg_error_from_errno, and use
	gpg_err_set_errno to set error number.
	* setenv.c: Include <gpg-error.h> and define __set_errno to use
	gpg_err_set_errno.
	* gpgme-tool.c (ARGP_ERR_UNKNOWN): Define to EDEADLOCK (which is
	mapped in Windows CE) instead of E2BIG (which is not).
	(gt_import_keys): Initialize err.
https://invent.kde.org/neon/forks/gpgme/-/commit/749325d6c10fd6a8d8fafa3c9c25b6822eaf0dc5

Git commit 8203ccefe4474d6a1d7869226fb4a47076b5e9d6 by Marcus Brinkmann on 06/05/2010 at 14:49..
2010-05-06  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Detect Windows CE.
	(HAVE_W32CE_SYSTEM): New symbol and automake conditional.
	* ltmain.sh, m4/libtool.m4: Patch so that it works for Windows CE.
https://invent.kde.org/neon/forks/gpgme/-/commit/8203ccefe4474d6a1d7869226fb4a47076b5e9d6

Git commit 9121a17238f7d740dd01773096a26d5097b95643 by Marcus Brinkmann on 06/05/2010 at 15:16..
2010-05-06  Marcus Brinkmann  <marcus at g10code.de>

	* w32-glib-io.c, w32-io.c, w32-qt-io.cpp, w32-sema.c, w32-util.c:
	Do not include <signal.h>.
https://invent.kde.org/neon/forks/gpgme/-/commit/9121a17238f7d740dd01773096a26d5097b95643

Git commit 97df297ae2b9df6a5717df6949187e27d2eb73de by Marcus Brinkmann on 07/05/2010 at 01:06..
2010-05-07  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_new, start): Cast between int and
	assuan_fd_t.
	* assuan-support.c (my_pipe, my_close, my_read, my_write): Likewise.
	* gpgme-tool.c (server_data_obj, server_reset_fds, gpgme_server),
	(my_recvmsg, my_sendmsg, my_spawn): Likewise.
	* engine-assuan.c (start): Likewise.
	* engine-g13.c (start): Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/97df297ae2b9df6a5717df6949187e27d2eb73de

Git commit be3a828e7057e2ea01772b2a00d2ad3e5c46776c by Marcus Brinkmann on 07/05/2010 at 01:32..
2010-05-07  Marcus Brinkmann  <marcus at g10code.de>

	* engine-g13.c, gpgme.c, engine-gpgsm.c, engine-gpg.c,
	op-support.c, engine-assuan.c, gpgme-tool.c: Include <locale.h>
	only if available with HAVE_LOCALE_H and conditionalize use of
	LC_CTYPE on its definition.
	* engine-gpgconf.c: Do not include <locale.h>.
https://invent.kde.org/neon/forks/gpgme/-/commit/be3a828e7057e2ea01772b2a00d2ad3e5c46776c

Git commit a274f0ea107b0cb89ef67a8833c089dc2b7694f1 by Marcus Brinkmann on 07/05/2010 at 02:14..
2010-05-07  Marcus Brinkmann  <marcus at g10code.de>

	* autogen.sh: Update the thing.
https://invent.kde.org/neon/forks/gpgme/-/commit/a274f0ea107b0cb89ef67a8833c089dc2b7694f1

Git commit 441dd8b5d2626f742a18f6d1dfa65bad65248286 by Werner Koch on 07/05/2010 at 23:22..
Better detection of a missing libassuan
https://invent.kde.org/neon/forks/gpgme/-/commit/441dd8b5d2626f742a18f6d1dfa65bad65248286

Git commit 3da380293d146f74f52ca81db0e31a18b51a1c27 by Marcus Brinkmann on 11/05/2010 at 17:01..
2010-05-11  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme.h.in: Use _WIN32 instead of _MSC_VER.  Include time.h for
	time_t.
https://invent.kde.org/neon/forks/gpgme/-/commit/3da380293d146f74f52ca81db0e31a18b51a1c27

Git commit 383ede75dc9530e6fcbfb2ef111d0e101079c0de by Marcus Brinkmann on 11/05/2010 at 17:20..
2010-05-11  Marcus Brinkmann  <marcus at g10code.de>

	* w32-util.c: Include ath.h
	(HAVE_ALLOW_SET_FOREGROUND_WINDOW) [!HAVE_W32CE_SYSTEM]: Define
	it.
	(RTLD_LAZY, dlopen, dlsym,
	dlclose) [!HAVE_ALLOW_SET_FORGROUND_WINDOW]: Don't define anymore.
	(_gpgme_allow_set_foreground_window) [!HAVE_ALLOW_SET_FOREGROUND_WINDOW]:
	Make it a stub.
	(read_w32_registry_string): Use FooA variants of Windows functions
	instead of Foo (which dispatches depending on UNICODE).
	[!HAVE_W32CE_SYSTEM]: Don't check environment.
	(w32_shgetfolderpath): Remove.
	(find_program_at_standard_place): Call
	SHGetSpecialFolderPath (which is available on all Windows systems
	and also Windows CE).
	(mkstemp): Use ath_self instead of getpid.
	(_gpgme_mkstemp): Use GetTempPathA instead of GetTempPath.
https://invent.kde.org/neon/forks/gpgme/-/commit/383ede75dc9530e6fcbfb2ef111d0e101079c0de

Git commit 88906258ef1ae0c34270afc35d8c5b96b25efbaa by Marcus Brinkmann on 12/05/2010 at 16:55..
2010-05-12  Marcus Brinkmann  <marcus at g10code.de>

	* priv-io.h: Include <sys/types.h>
	* util.h: Likewise.
https://invent.kde.org/neon/forks/gpgme/-/commit/88906258ef1ae0c34270afc35d8c5b96b25efbaa

Git commit ca3e5c63b9c170a1d8e7705ed1343310b92a9bab by Marcus Brinkmann on 12/05/2010 at 17:21..
2010-05-12  Marcus Brinkmann  <marcus at g10code.de>

	* Makefile.am (system_components): Remove custom cppflags from
	RCCOMPILE (because gpg-error adds -idirafter that makes RC bail.
	[HAVE_W32CE_SYSTEM]: Add w32-ce.h and w32-ce.c, clear
	libexec_PROGRAMS.
	* w32-ce.h, w32-ce.c: New files.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca3e5c63b9c170a1d8e7705ed1343310b92a9bab

Git commit 8d27defa02a67ec06f8ce06b14427b5eba8f54e6 by Marcus Brinkmann on 12/05/2010 at 17:40..
2010-05-12  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Check for setlocale.

src/
2010-05-12  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-tool.c (main): Protect call to setlocale with
	HAVE_SETLOCALE.
https://invent.kde.org/neon/forks/gpgme/-/commit/8d27defa02a67ec06f8ce06b14427b5eba8f54e6

Git commit 9f77c2541c7050445743652b5c442b948a932f6b by Marcus Brinkmann on 12/05/2010 at 18:20..
2010-05-12  Marcus Brinkmann  <marcus at g10code.de>

	* conversion.c (_gpgme_timegm) [HAVE_W32_SYSTEM]: New static
	function.
	(_gpgme_parse_timestamp) [HAVE_W32_SYSTEM]: Use it.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f77c2541c7050445743652b5c442b948a932f6b

Git commit 3029f454e32c251b357331c025769559e1e5d643 by Marcus Brinkmann on 09/06/2010 at 13:14..
2010-06-09  Marcus Brinkmann  <marcus at g10code.de>

	* genkey.c (gpgme_op_genkey): Return err with TRACE_ERR.
https://invent.kde.org/neon/forks/gpgme/-/commit/3029f454e32c251b357331c025769559e1e5d643

Git commit 13774269c0710d72732cc91af887a6f9d89ec40e by Marcus Brinkmann on 09/06/2010 at 13:23..
2010-06-09  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-tool.c (result_add_timestamp): Add missing NULL argument.
	(result_sign_to_xml): Protect against NULL fingerprint.
	(struct server): New members input_fd, input_filename,
	input_stream output_fd, output_filename, output_stream,
	message_filename, message_stream.
	(server_reset_fds): Deallocate those.
	(server_parse_fd): New function.
	(server_data_obj): Take optional filename argument and direction
	argument.  Also take new argument to return a filestream that
	needs to be closed after destroying the data object.
	Change all callers, too.
	(input_notify, output_notify): Removed.
	(cmd_input, cmd_output): New functions.
	(gpgme_server): Do not register input and output notifier.
	(register_commands): Use cmd_input and cmd_output.
	(cmd_message): Rewritten to use server_parse_fd.
	(cmd_delete, cmd_keylist): Fix inverted option check.
	(main) [HAVE_W32CE_SYSTEM]: Sleep a bit to work around bug in ssh.
https://invent.kde.org/neon/forks/gpgme/-/commit/13774269c0710d72732cc91af887a6f9d89ec40e

Git commit 9386a5e76016b96f17d2570b314b5d2640d9cdd8 by Marcus Brinkmann on 09/06/2010 at 13:33..
2010-06-09  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c [HAVE_W32CE_SYSTEM]: Include assuan.h and winioctl.h.
	(GPGCEDEV_IOCTL_UNBLOCK) [HAVE_W32CE_SYSTEM]: Define.
	(set_synchronize) [HAVE_W32CE_SYSTEM]: Stub it out.
	(is_socket): Allow to return -1 for auto-detect (old behaviour).
	(is_socket) [HAVE_W32CE_SYSTEM]: Return -1.
	(reader): Handle auto-detect case.  Handle ctx->stop_me before
	checking for EOF.
	(destroy_reader) [HAVE_W32CE_SYSTEM]: Unblock a pending reader.
	(writer): Handle auto-detect case.  Handle ctx->stop_me with
	ERROR_BUSY.
	(destroy_writer) [HAVE_W32CE_SYSTEM]: Unblock a pending writer.
	(_gpgme_io_pipe) [HAVE_W32CE_SYSTEM]: Implement in terms of a
	half-pipe.
	(build_commandline) [HAVE_W32CE_SYSTEM]: New function.
	(_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Implement it differently
	for this platform.
	(_gpgme_io_fd2str) [HAVE_W32CE_SYSTEM]: Implement it for RVIDs.
	(_gpgme_io_dup) [HAVE_W32CE_SYSTEM]: Stub it out.
https://invent.kde.org/neon/forks/gpgme/-/commit/9386a5e76016b96f17d2570b314b5d2640d9cdd8

Git commit b243c4263e4ef28362699727ed90589697991fb2 by Marcus Brinkmann on 10/06/2010 at 13:41..
* debug.h (TRACE_SUC6): New macro.
https://invent.kde.org/neon/forks/gpgme/-/commit/b243c4263e4ef28362699727ed90589697991fb2

Git commit dbb1112da152e0d1474dfb3d1446361cb5d5dcd3 by Marcus Brinkmann on 10/06/2010 at 13:49..
2010-06-10  Marcus Brinkmann  <marcus at g10code.de>

	* debug.h (TRACE_SUC6): New macro.
	* w32-io.c (MAX_SLAFD): New macro.
	(fd_table): New static variable.
	(new_fd, release_fd): New functions.
	(fd_to_handle, handle_to_fd, handle_to_socket): Remove macros.
	(MAX_READERS, MAX_WRITERS): Increase to 64.
	(notify_table): Increase to MAX_SLAFD.
	(struct reader_context_s, struct writer_context_s): Add member
	file_sock.
	(reader, writer): Use file_hd vs file_sock to decide if socket
	operations to use.  Remove auto-detect mode.
	(create_reader, create_writer): Set file_sock.  Unblock pending
	thread only if this is a pipe fd.
	(_gpgme_io_pipe): Allocate fds from table and return slot indices
	instead of windows handles.  This allows to properly handle RVIDs.
	(_gpgme_io_close): Handle dup'ed file descriptors.
	(build_commandline) [HAVE_W32_SYSTEM]: Use RVID from fd table now.
	(_gpgme_io_spawn): Use fd table now.
	(_gpgme_io_fd2str): Use RVID from fd table now.
	(_gpgme_io_dup): Implement using fd table.
	(_gpgme_io_socket): Allocate fds from table.
	(_gpgme_io_connect): Use fd from table.
https://invent.kde.org/neon/forks/gpgme/-/commit/dbb1112da152e0d1474dfb3d1446361cb5d5dcd3

Git commit 99c855353f0575efb27a0e82d4b68db1f160bed6 by Marcus Brinkmann on 10/06/2010 at 16:13..
2010-06-10  Marcus Brinkmann  <marcus at g10code.de>

	* engine-gpgsm.c (gpgsm_new): Translate returned achild_fds back
	to child_fds.
https://invent.kde.org/neon/forks/gpgme/-/commit/99c855353f0575efb27a0e82d4b68db1f160bed6

Git commit f5d82bf1df453a6ad9bfd6df41bfd9272792d5a4 by Marcus Brinkmann on 10/06/2010 at 17:29..
2010-06-10  Marcus Brinkmann  <marcus at g10code.de>

	* gpgme-tool.c (gpgme_server): Use special hack for Windows CE to
	get at stdin and stdout.
https://invent.kde.org/neon/forks/gpgme/-/commit/f5d82bf1df453a6ad9bfd6df41bfd9272792d5a4

Git commit 6181854e4d3fddcbf50d9ee82d69df81642d7d12 by Marcus Brinkmann on 10/06/2010 at 23:29..
2010-06-11  Marcus Brinkmann  <marcus at g10code.de>

	* w32-io.c (_gpgme_io_spawn): Remove debug printf.
https://invent.kde.org/neon/forks/gpgme/-/commit/6181854e4d3fddcbf50d9ee82d69df81642d7d12

Git commit f89d122607004d8c9d4afe526d69e0e17a4f331a by Werner Koch on 29/06/2010 at 17:13..
comment typo fixes
https://invent.kde.org/neon/forks/gpgme/-/commit/f89d122607004d8c9d4afe526d69e0e17a4f331a

Git commit 6e5c9be0b6b569731ceeebdaccf63b2bc6603de3 by Marcus Brinkmann on 03/08/2010 at 09:01..
2010-08-03  Marcus Brinkmann  <marcus at g10code.de>

        * w32-io.c (GPGCEDEV_IOCTL_ASSIGN_RVID): New macro.
        (_gpgme_io_spawn): Use ASSIGN_RVID.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e5c9be0b6b569731ceeebdaccf63b2bc6603de3

Git commit 6aa92258ce59d3657ba6c9c45f811456d044e675 by Marcus Brinkmann on 03/08/2010 at 09:16..
2010-08-03  Marcus Brinkmann  <marcus at g10code.de>

        * gpgme-tool.c (result_encrypt_to_xml, result_sign_to_xml)
	(result_verify_to_xml, result_import_to_xml)
        (result_genkey_to_xml):	Check vigorously for null pointers.
https://invent.kde.org/neon/forks/gpgme/-/commit/6aa92258ce59d3657ba6c9c45f811456d044e675

Git commit cf2d82c41cb9d5d6d83b2cc6891b7d918de136b7 by Marcus Brinkmann on 04/08/2010 at 07:40..
Too embarrassing for a changelog entry.
https://invent.kde.org/neon/forks/gpgme/-/commit/cf2d82c41cb9d5d6d83b2cc6891b7d918de136b7

Git commit bfd550e0d93df26412f88af84d0986d7e009fcd8 by Marcus Brinkmann on 04/08/2010 at 07:47..
Are you ready already?
https://invent.kde.org/neon/forks/gpgme/-/commit/bfd550e0d93df26412f88af84d0986d7e009fcd8

Git commit 15a3f59481e6b134e80cbb9e88fffa0c9f67c8b4 by Marcus Brinkmann on 18/08/2010 at 14:14..
2010-08-18  Marcus Brinkmann  <marcus at g10code.de>

        * gpgme.def: Add gpgme_err_code_from_syserror and gpgme_err_set_errno.
        * libgpgme.vers: Likewise.
        * gpgme.h.in (gpgme_error_from_errno): Fix return type to
        gpgme_error_t.
	(gpgme_err_code_from_syserror, gpgme_err_set_errno): New prototype.
	(gpgme_error_from_syserror): New inline function (why are
        gpgme_err_make_from_errno and gpgme_error_from_errno not inline
        functions?).
        * error.c (gpgme_error_from_errno): Fix return type to gpgme_error_t.
        (gpgme_err_set_errno, gpgme_err_code_from_syserror): New functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/15a3f59481e6b134e80cbb9e88fffa0c9f67c8b4

Git commit a8cf3688eda719a7b5e52f9b8a7cf7574e9d80bf by Werner Koch on 19/08/2010 at 13:41..
Change for gpg-error change.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8cf3688eda719a7b5e52f9b8a7cf7574e9d80bf

Git commit 03c7412e474019dfa71192c05368bc1fddce66cc by Marcus Brinkmann on 01/09/2010 at 00:46..
2010-09-01  Marcus Brinkmann  <marcus at g10code.de>

        * w32-io.c: Revert change from 2009-06-18, as it created a race
        condition.
https://invent.kde.org/neon/forks/gpgme/-/commit/03c7412e474019dfa71192c05368bc1fddce66cc

Git commit c828c9d9a4deaf6326db716d3e38db8ebeae9442 by Marcus Brinkmann on 02/09/2010 at 21:33..
2010-09-02  Marcus Brinkmann  <marcus at g10code.de>

	* error.c (gpgme_err_code_to_errno): Fix cut and paste bug (thanks
	to Marc Mutz).
https://invent.kde.org/neon/forks/gpgme/-/commit/c828c9d9a4deaf6326db716d3e38db8ebeae9442

Git commit bc22c2098db6fec432df1bfe81aeecb736952479 by Werner Koch on 16/09/2010 at 13:39..
Add a new error code.
https://invent.kde.org/neon/forks/gpgme/-/commit/bc22c2098db6fec432df1bfe81aeecb736952479

Git commit b927279603f79dc08f84e117cf0797d2f9db593d by Werner Koch on 16/09/2010 at 14:17..
Return GPG_ERR_MISSING_ISSUER_CERT.
https://invent.kde.org/neon/forks/gpgme/-/commit/b927279603f79dc08f84e117cf0797d2f9db593d

Git commit c2ef39811db27cb28d9ce0eafc64c82d0f66df82 by Werner Koch on 07/10/2010 at 10:58..
Enable debugging feature for W32CE.
kFreeBSD portability fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/c2ef39811db27cb28d9ce0eafc64c82d0f66df82

Git commit de9f0b932e7bbd6d861228e06fdd57af59bebd23 by Werner Koch on 07/10/2010 at 12:54..
Fix last change
https://invent.kde.org/neon/forks/gpgme/-/commit/de9f0b932e7bbd6d861228e06fdd57af59bebd23

Git commit b65638692eb06d9d6770d6a4884165ad07dac5aa by Marcus Brinkmann on 28/10/2010 at 14:00..
2010-10-28  Marcus Brinkmann  <marcus.brinkmann at ruhr-uni-bochum.de>

	* opassuan.c (gpgme_op_assuan_transact_ext): Fix uninitialized
	value use.  Reported by Marc Mutz.
https://invent.kde.org/neon/forks/gpgme/-/commit/b65638692eb06d9d6770d6a4884165ad07dac5aa

Git commit 987993a38d12f6de052683711e673fa6bbbdae86 by Werner Koch on 02/11/2010 at 16:27..
First take on changes to allow building with MSC for W32CE.
Fixed regression in plain W32 build.
https://invent.kde.org/neon/forks/gpgme/-/commit/987993a38d12f6de052683711e673fa6bbbdae86

Git commit 753375ffcf25b63e6f8e0c05aa36bb2fe0094329 by Werner Koch on 02/11/2010 at 20:17..
Might now build for CE using MSC.
https://invent.kde.org/neon/forks/gpgme/-/commit/753375ffcf25b63e6f8e0c05aa36bb2fe0094329

Git commit 21eb91ae3a8578b678d71083f4513de67b2e4e0f by Werner Koch on 03/11/2010 at 09:56..
More include guards.
Provide access for Wince.
Install dummy sehmap.h
https://invent.kde.org/neon/forks/gpgme/-/commit/21eb91ae3a8578b678d71083f4513de67b2e4e0f

Git commit 83d88d444eef15e128dd4080d6b1978b4d8657c2 by Werner Koch on 03/11/2010 at 10:33..
Hopefully last changes for building with MSC.
https://invent.kde.org/neon/forks/gpgme/-/commit/83d88d444eef15e128dd4080d6b1978b4d8657c2

Git commit 44b27022588dd2c1fe495e305ea1e26187805619 by Werner Koch on 04/11/2010 at 08:16..
More changes for W32CE with MSC.
https://invent.kde.org/neon/forks/gpgme/-/commit/44b27022588dd2c1fe495e305ea1e26187805619

Git commit eef49ef4171011dec88156481cc70ee350cbbc92 by Werner Koch on 15/11/2010 at 08:40..
Fixes for the MSC build
https://invent.kde.org/neon/forks/gpgme/-/commit/eef49ef4171011dec88156481cc70ee350cbbc92

Git commit 5164bd8678dba3c3f2173e976a51b9d16a04f5fa by Marcus Brinkmann on 15/11/2010 at 15:01..
2010-11-15  Marcus Brinkmann  <mb at g10code.com>

	* conf-w32ce-msc/stdint.h: New file.
	* conf-w32ce-msc/build.mk (conf_sources): Add stdint.h.
	* conf-w32ce-msc/build.mk (copy-static-source): Revert last change.
https://invent.kde.org/neon/forks/gpgme/-/commit/5164bd8678dba3c3f2173e976a51b9d16a04f5fa

Git commit f2890cc0649729190c16bc390694696ce622be41 by Marcus Brinkmann on 15/11/2010 at 15:02..
2010-11-15  Marcus Brinkmann  <mb at g10code.com>

	* conf-w32ce-msc/io.h: New file.
	* conf-w32ce-msc/build.mk (conf_sources): Add io.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/f2890cc0649729190c16bc390694696ce622be41

Git commit 15ef3c9eebebb2e14945e202175b9ad7760ecce8 by Marcus Brinkmann on 15/11/2010 at 15:11..
2010-11-15  Marcus Brinkmann  <mb at g10code.com>

	* w32-util.c (_gpgme_w32ce_get_debug_envvar): Fix return value.
https://invent.kde.org/neon/forks/gpgme/-/commit/15ef3c9eebebb2e14945e202175b9ad7760ecce8

Git commit 9c605744a68e265bcb0ebe4c4e074184f640a20b by Marcus Brinkmann on 15/11/2010 at 15:29..
2010-11-15  Marcus Brinkmann  <mb at g10code.com>

	* conf-w32ce-msc/fcntl.h: New file.
	* conf-w32ce-msc/build.mk (conf_sources): Add fnctl.h.
	(sources): Remove memrchr.c.
https://invent.kde.org/neon/forks/gpgme/-/commit/9c605744a68e265bcb0ebe4c4e074184f640a20b

Git commit f8e4d353fa70cda37b3d0342a7322bde61b4aa15 by Marcus Brinkmann on 15/11/2010 at 15:30..
2010-11-15  Marcus Brinkmann  <mb at g10code.com>

	* w32-ce.h (strcasecmp, strdup) [_MSC_VER]: Define.
	* genkey.c, passphrase.c: Include util.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/f8e4d353fa70cda37b3d0342a7322bde61b4aa15

Git commit f1527436c422614b6761730e43ea26e35814f8a3 by Marcus Brinkmann on 17/11/2010 at 02:11..
2010-11-17  Marcus Brinkmann  <mb at g10code.com>

        * vasprintf.c (int_vasprintf) [HAVE_W32CE_SYSTEM]: Just use a
        fixed size buffer, as va_copy is not easy to fake.
https://invent.kde.org/neon/forks/gpgme/-/commit/f1527436c422614b6761730e43ea26e35814f8a3

Git commit ed8c52941cf302e879d5cb4af71969a7d9275c2d by Marcus Brinkmann on 19/11/2010 at 16:06..
2010-11-19  Marcus Brinkmann  <mb at g10code.com>

	* engine-gpgconf.c (_gpgme_conf_opt_change): Support
	self-assignment.  Requested by Marc Mutz.
https://invent.kde.org/neon/forks/gpgme/-/commit/ed8c52941cf302e879d5cb4af71969a7d9275c2d

Git commit eff0b7766ac364283f2fff48b5747d37ea1cf4eb by Marcus Brinkmann on 23/11/2010 at 09:46..
2010-11-23  Marcus Brinkmann  <mb at g10code.com>

	* gpgme.h.in (gpgme_conf_arg_new): Make VALUE arg const void *.
	* gpgconf.c (_gpgme_conf_arg_new): Likewise.
	(gpgme_conf_arg_new): Likewise.
	* engine-gpgconf.c (_gpgme_conf_arg_new): Likewise.
	(gpgconf_write): Remove debug hack.
https://invent.kde.org/neon/forks/gpgme/-/commit/eff0b7766ac364283f2fff48b5747d37ea1cf4eb

Git commit e59b0a98bac738787c093f48dc9eebabe0bc0600 by Marcus Brinkmann on 23/11/2010 at 10:47..
2010-11-23  Marcus Brinkmann  <mb at g10code.com>

        * w32-io.c (create_reader, create_writer): Use small stack size on
        Windows CE.
https://invent.kde.org/neon/forks/gpgme/-/commit/e59b0a98bac738787c093f48dc9eebabe0bc0600

Git commit ce1d166ef700a188dcaf1b616f39f6c5750e4e9d by Werner Koch on 08/12/2010 at 09:55..
Allow multiple patterns for KEYLIST.
https://invent.kde.org/neon/forks/gpgme/-/commit/ce1d166ef700a188dcaf1b616f39f6c5750e4e9d

Git commit 5fd3ef55d08e16a082f65ff458041de2281439b4 by Werner Koch on 30/12/2010 at 15:21..
Add a git revision number
https://invent.kde.org/neon/forks/gpgme/-/commit/5fd3ef55d08e16a082f65ff458041de2281439b4

Git commit 1feea0961956d9ac4db43756fce0f2acf7442e13 by Werner Koch on 03/01/2011 at 15:47..
Shorten git revision id
https://invent.kde.org/neon/forks/gpgme/-/commit/1feea0961956d9ac4db43756fce0f2acf7442e13

Git commit b3f04d033b7a154b618fb84005272eb44361c508 by Werner Koch on 07/01/2011 at 12:52..
Typo fixes.  Spotted by Daiki Ueno.
https://invent.kde.org/neon/forks/gpgme/-/commit/b3f04d033b7a154b618fb84005272eb44361c508

Git commit 3a7058cade6caec7ec38ca4b2a8c1826e6df6bb1 by Werner Koch on 07/01/2011 at 13:00..
Typo fixes spotted by Daiki Ueno.
https://invent.kde.org/neon/forks/gpgme/-/commit/3a7058cade6caec7ec38ca4b2a8c1826e6df6bb1

Git commit 1f0f033f552b5cd81f02e761a0e31eb9a2c89ab8 by Marcus Brinkmann on 21/01/2011 at 03:21..
Fix gpgconf option change if not self-assigning.

2011-01-21  Marcus Brinkmann  <mb at g10code.com>

        * engine-gpgconf.c (_gpgme_conf_opt_change): Fix the case that is
        not self-assignment.
https://invent.kde.org/neon/forks/gpgme/-/commit/1f0f033f552b5cd81f02e761a0e31eb9a2c89ab8

Git commit a2b9adafe46c55a2c26dd46163055bbdf3526835 by Marcus Brinkmann on 02/02/2011 at 12:47..
2011-02-02  Marcus Brinkmann  <mb at g10code.com>

        * w32-util.c (mkstemp): Don't use CreateFile instead of open (the
        function is not used on Windows CE, and the callers were not
        adjusted).
https://invent.kde.org/neon/forks/gpgme/-/commit/a2b9adafe46c55a2c26dd46163055bbdf3526835

Git commit de287a7996c85e6c6eb740f110df0f904d4cd867 by Marcus Brinkmann on 02/02/2011 at 12:51..
Merge commit 'a2b9adafe46c55a2c26dd46163055bbdf3526835'
https://invent.kde.org/neon/forks/gpgme/-/commit/de287a7996c85e6c6eb740f110df0f904d4cd867

Git commit 129741d2f713305a862a1505f20738a0ce2ea656 by Marcus Brinkmann on 02/02/2011 at 13:11..
Fix Windows port (spawn and assuan engine).

2011-02-02  Marcus Brinkmann  <mb at g10code.com>

        * configure.ac (NEED_LIBASSUAN_VERSION): Bump to 2.0.2 for system hooks.

src/
2011-02-02  Marcus Brinkmann  <mb at g10code.com>

        * assuan-support.c (my_socket, my_connect): New functions.
        (_gpgme_assuan_system_hooks): Add my_Socket, my_connect.
        * priv-io.h (_gpgme_io_socket): New prototype.
        * w32-io.c (pid_to_handle, handle_to_oid, fd_to_handle): Remove macros.
        (is_socket): Remove function.
        (_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Remove some dead code.
        (_gpgme_io_spawn): Translate handles before DuplicateHandle them.
https://invent.kde.org/neon/forks/gpgme/-/commit/129741d2f713305a862a1505f20738a0ce2ea656

Git commit 2bdbe888228ce09f15be4773800ed13263a8e43e by Marcus Brinkmann on 03/02/2011 at 11:38..
Fix socket implementation on Windows.

2011-02-03  Marcus Brinkmann  <marcus at g10code.com>

        * w32-io.c (_gpgme_io_socket): Return fd, not res.
https://invent.kde.org/neon/forks/gpgme/-/commit/2bdbe888228ce09f15be4773800ed13263a8e43e

Git commit 55ad4d80e278e56bd5bc4fbac837db34edd70bde by Werner Koch on 03/02/2011 at 19:49..
Add support for non-API GnuPG status codes.

As an example stub code for DECRYTPION_INFO has been added.  Note
that the status codes in gpgme.h do only make sense for the edit
interactor interface and thus certain codes don't need to be part of
the public interface.
https://invent.kde.org/neon/forks/gpgme/-/commit/55ad4d80e278e56bd5bc4fbac837db34edd70bde

Git commit b001a8df68c8eb33abbe879f6c7fb4db4909b6f6 by Werner Koch on 03/02/2011 at 19:51..
Merge branch 'master' of git+ssh://playfair.gnupg.org/git/gpgme
https://invent.kde.org/neon/forks/gpgme/-/commit/b001a8df68c8eb33abbe879f6c7fb4db4909b6f6

Git commit 7e547d87d2d3c170f9e035399f4afe56c999a923 by Werner Koch on 06/04/2011 at 11:45..
Insert platform dependent typedefs into gpgme.h

We already modify gpgme.h per playform and thus we can also get rid of
some #ifdefs.  The change does not change anything for current
platforms but should do the right think for W64.

Note that as per MS specs ssize_t is to be defined as LONG_PTR which
translates to a long on 32 bit platforms and to __int64 on 64 bit
Windows platforms.  We already used long in the past.  There seems to
be a problem with some versions of mingw32 which includes a ssize_t
type typedefed to int.  O(n 32 bit W32 platforms int and long are
identically.
https://invent.kde.org/neon/forks/gpgme/-/commit/7e547d87d2d3c170f9e035399f4afe56c999a923

Git commit e54fe47db8862b44a4fb669f55b45d9ec28b244d by Werner Koch on 06/04/2011 at 12:33..
Update gpg-error.m4
https://invent.kde.org/neon/forks/gpgme/-/commit/e54fe47db8862b44a4fb669f55b45d9ec28b244d

Git commit cdefec02b385dcf3302e47d380812c3450e8713c by Werner Koch on 06/04/2011 at 18:10..
gpgme-config cleanups and --host option

gpgme-config.in: Add option --host.  Change options --cflags and
--libs to collapse duplicate include and lib dirs.  Try to put extra
libs at the end.

Note that gpgme.m4 has not yet been extended.
https://invent.kde.org/neon/forks/gpgme/-/commit/cdefec02b385dcf3302e47d380812c3450e8713c

Git commit 3bd6538bf504e49200eed46438a19d385f866a06 by Werner Koch on 06/04/2011 at 18:57..
Add an AC_SUBST_NOTMAKE

Without that the multiline INSERT__TYPEDEFS_FOR_GPGME_H would be
expanded in the Makefiles and mess them up.
https://invent.kde.org/neon/forks/gpgme/-/commit/3bd6538bf504e49200eed46438a19d385f866a06

Git commit 7929e89093dfdae3a97edd48e138ad09f5016bd1 by Werner Koch on 14/04/2011 at 17:23..
Require autoconf 1.11

This is because AM_SUBST_NOTMAKE is only offically supported since
this version of automake.
https://invent.kde.org/neon/forks/gpgme/-/commit/7929e89093dfdae3a97edd48e138ad09f5016bd1

Git commit 43f38db1afe9830b888076adeec1eec21f32335c by Marcus Brinkmann on 27/04/2011 at 16:03..
Update GPGME test suite for use with GnuPG 2.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/43f38db1afe9830b888076adeec1eec21f32335c

Git commit 470899e3a713129d8db3979469c7f711dc9b04d4 by Marcus Brinkmann on 03/05/2011 at 22:52..
Improve import tests for GnuPG 2.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/470899e3a713129d8db3979469c7f711dc9b04d4

Git commit c79d8ad8189ff0a8c24547d4b0646247ca6f9a23 by Marcus Brinkmann on 06/05/2011 at 00:11..
Make sure an existing agent doesn't interfere with test suite generation.
https://invent.kde.org/neon/forks/gpgme/-/commit/c79d8ad8189ff0a8c24547d4b0646247ca6f9a23

Git commit 08ab0a5cdfa4f1b34bcbc27d3bcb37a673861681 by Marcus Brinkmann on 06/05/2011 at 11:26..
Remove unused macro GNUPG_FIX_HDR_VERSION.
https://invent.kde.org/neon/forks/gpgme/-/commit/08ab0a5cdfa4f1b34bcbc27d3bcb37a673861681

Git commit f1ea0d9e3812d38e40a79f5337c2d2e172d387d6 by Marcus Brinkmann on 06/05/2011 at 11:28..
Remove complus (10 years unused).
https://invent.kde.org/neon/forks/gpgme/-/commit/f1ea0d9e3812d38e40a79f5337c2d2e172d387d6

Git commit 90bdbd4aaa29c2618d428273298f1510fe38da17 by Marcus Brinkmann on 06/05/2011 at 15:07..
Remove complus support.
https://invent.kde.org/neon/forks/gpgme/-/commit/90bdbd4aaa29c2618d428273298f1510fe38da17

Git commit 6e32f8f0c12b90e61d94b4c0779b7da4ea0252f5 by Marcus Brinkmann on 06/05/2011 at 15:46..
Update NEWS file.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e32f8f0c12b90e61d94b4c0779b7da4ea0252f5

Git commit d11500a77ef3ae1a9dad789f687d6faeb8f4cfe8 by Marcus Brinkmann on 11/05/2011 at 00:32..
Clean up the tests correctly.
https://invent.kde.org/neon/forks/gpgme/-/commit/d11500a77ef3ae1a9dad789f687d6faeb8f4cfe8

Git commit f61abeb0cf9b820673cfecde6085cfc9e1a3ae58 by Marcus Brinkmann on 12/05/2011 at 12:42..
Correct key-gen example.
https://invent.kde.org/neon/forks/gpgme/-/commit/f61abeb0cf9b820673cfecde6085cfc9e1a3ae58

Git commit 5f3de0bfff43ce4ed9852673ab1a2ed24d1e8628 by Marcus Brinkmann on 12/05/2011 at 12:45..
Fix I/O callback example.
https://invent.kde.org/neon/forks/gpgme/-/commit/5f3de0bfff43ce4ed9852673ab1a2ed24d1e8628

Git commit b34add3fe438a693e236a835135bd11b4e177daa by Marcus Brinkmann on 26/05/2011 at 14:01..
Check context pointers for null pointer on entry points.
https://invent.kde.org/neon/forks/gpgme/-/commit/b34add3fe438a693e236a835135bd11b4e177daa

Git commit 547aca0b24efa34634f23f91f2dc81a63cb4d9bc by Marcus Brinkmann on 16/06/2011 at 12:38..
Release 1.3.1
https://invent.kde.org/neon/forks/gpgme/-/commit/547aca0b24efa34634f23f91f2dc81a63cb4d9bc

Git commit 86a439d1d15d42ed7a2e796902b91e8386f9e1d0 by Marcus Brinkmann on 04/07/2011 at 18:45..
Post-release.
https://invent.kde.org/neon/forks/gpgme/-/commit/86a439d1d15d42ed7a2e796902b91e8386f9e1d0

Git commit 3ddf4c3d4000a9b0b52180c3aa3acf1387a193bf by Marcus Brinkmann on 25/10/2011 at 16:59..
Remove support for libgpgme-pth.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ddf4c3d4000a9b0b52180c3aa3acf1387a193bf

Git commit a4c4ee1aaea4359432bdf60dd572f549ef8dee83 by Werner Koch on 02/12/2011 at 10:36..
Generate the ChangeLog from commit logs.

* build-aux/gitlog-to-changelog: New script.  Taken from gnulib.
* build-aux/git-log-fix: New file.
* build-aux/git-log-footer: New file.
* build-aux/git-hook/commit-msg: New script.
* doc/HACKING: New file.
* ChangeLog: New file.
* Makefile.am (EXTRA_DIST): Add new files.
(gen-ChangeLog): New.
(dist-hook): Run gen-ChangeLog.
* autogen.sh: Install commit-msg hook for git.

Rename all ChangeLog files to ChangeLog-2011.
https://invent.kde.org/neon/forks/gpgme/-/commit/a4c4ee1aaea4359432bdf60dd572f549ef8dee83

Git commit 3ef528b63679df912551d5d21fc36e465cf50c40 by Werner Koch on 19/01/2012 at 13:58..
Add ttyname_r check macro from gnulib.

* m4/gnupg-ttyname.m4: New. Taken from current gnulib.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ef528b63679df912551d5d21fc36e465cf50c40

Git commit 4cfddadcd0a569f0b204dccea3c975ce0bdfb232 by Werner Koch on 19/01/2012 at 14:30..
Update to libtool 2.4.2

* ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltversion.m4,
* m4/lt~obsolete.m4: Update.
https://invent.kde.org/neon/forks/gpgme/-/commit/4cfddadcd0a569f0b204dccea3c975ce0bdfb232

Git commit a0149630ce6d3e17a7475e20e8b2e31ed5ba57fd by Werner Koch on 19/01/2012 at 14:57..
Adjust configure.ac for modern autoconf.

* configure.ac: Minor cleanups.
https://invent.kde.org/neon/forks/gpgme/-/commit/a0149630ce6d3e17a7475e20e8b2e31ed5ba57fd

Git commit 574b087e84f5652cf9d8eba8aa16b8d6bb988035 by Werner Koch on 19/01/2012 at 15:04..
For W32 use a build number instead of abbreviated commit id.

We would need to use a shortened commit id so that it fits into an 16
bit Windows variable.  Further it is a random number and not something
increasing.  Thus a build number made up from the day of the year and
the hour is much more useful to describe a build number for a specific
revision.
* configure.ac [W32]: Replace BUILD_REVISION by BUILD_NUMBER.
* src/versioninfo.rc.in: Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/574b087e84f5652cf9d8eba8aa16b8d6bb988035

Git commit c96778297f5477448a676fcf0c61044bdbccc86d by Werner Koch on 19/01/2012 at 15:05..
Try to make configure.ac a bit smaller.

* configure.ac: Move header checks.
https://invent.kde.org/neon/forks/gpgme/-/commit/c96778297f5477448a676fcf0c61044bdbccc86d

Git commit 2f304957f5122a5d9da643dc9951ee67ece06eaf by Werner Koch on 19/01/2012 at 17:43..
Fix Solaris problems with ttyname_r.

* m4/gnupg-ttyname.m4: New.  Based on ttyname_r from gnulib.
* src/ttyname_r.c (_gpgme_ttyname_r): Rename from ttyname_r.
Implement hacks required for Solaris and possible other non-fully
Posix systems.
* src/util.h: Include unistd.h.  Redefine ttyname_r depending on
REPLACE_TTYNAME_R and put it into the gpgme name space.
--

Unfortunately we cant not use the ttyname_r replacement from gnulib
because we want to keep GPGME LGPLv2+.
https://invent.kde.org/neon/forks/gpgme/-/commit/2f304957f5122a5d9da643dc9951ee67ece06eaf

Git commit 24a10a4af948ebb1c767b69a92fa5bbe933a417c by Werner Koch on 19/01/2012 at 17:44..
Support the mingw-w64 toolchain.

* autogen.sh (build-w32): Add i686-w64-mingw32 to the toolprefix.
https://invent.kde.org/neon/forks/gpgme/-/commit/24a10a4af948ebb1c767b69a92fa5bbe933a417c

Git commit 3f03897cbd223d4a75eb62c3b7bdfeb800661641 by Marcus Brinkmann on 08/02/2012 at 14:18..
Link gpgme-tool directly to libassuan, as it uses its interface.

* src/Makefile.am (gpgme_tool_LDADD): Add @LIBASSUAN_LIBS at .
https://invent.kde.org/neon/forks/gpgme/-/commit/3f03897cbd223d4a75eb62c3b7bdfeb800661641

Git commit 0052a72f89c6830818e354358fdd84702d3494c8 by Marcus Brinkmann on 08/02/2012 at 14:19..
Link the thread test to pthread.

* tests/gpg/Makefile.am (t_thread1_LDADD): Add -lpthread.
https://invent.kde.org/neon/forks/gpgme/-/commit/0052a72f89c6830818e354358fdd84702d3494c8

Git commit dae3073aaa8b7feb1c844fdaf711f79141b9cc65 by Marcus Brinkmann on 08/02/2012 at 14:26..
Use gpgme interface for error handling to avoid linking with gpg-error.

* tests/t-data.c, tests/run-export.c, tests/run-keylist.c,
tests/run-support.h, tests/run-verify.c, tests/gpg/t-decrypt-verify.c,
tests/gpg/t-edit.c, tests/gpg/t-eventloop.c, tests/gpg/t-keylist-sig.c,
tests/gpg/t-keylist.c, tests/gpg/t-support.h, tests/gpg/t-trustlist.c,
tests/gpg/t-verify.c, tests/gpg/t-wait.c, tests/gpgsm/cms-decrypt.c,
tests/gpgsm/cms-keylist.c, tests/gpgsm/t-keylist.c,
tests/gpgsm/t-support.h, tests/gpgsm/t-verify.c,
tests/opassuan/t-command.c: Use gpgme interface for gpg-error functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/dae3073aaa8b7feb1c844fdaf711f79141b9cc65

Git commit 885243e05467e79e2375b3febe7904053ab45dfc by Marcus Brinkmann on 14/02/2012 at 12:34..
Rework status table to be less dynamically generated.

* src/Makefile.am (EXTRA_DIST): Remove mkstatus.
(BUILT_SOURCE, MOSTLYCLEANFILES): Remove.
(main_sources): Remove status-table.h, extra-stati.h.
Add status-table.c.
(status-table.h): Remove rules for built source.
* src/decrypt.c: Don't include extra-stati.h.
* src/engine-gpg.c: Don't include status-table.h.
(status_cmp): Remove function.
(read_status): Use _gpgme_parse_status.
* src/engine-gpgsm.c: Don't include status-table.h.
(status_cmp, parse_status): Remove function.
(gpgsm_assuan_simple_command, status_handler): Use _gpgme_parse_status.
* src/engine-uiserver.c: Don't include status-table.h.
(status_cmp, parse_status): Remove function.
(uiserver_assuan_simple_command, status_handler): Use
_gpgme_parse_status.
* src/gpgme.h.in (gpgme_status_code_t): Add
GPGME_STATUS_DECRYPTION_INFO.
* src/util.h (_gpgme_status_init,_gpgme_parse_status): New declaration.
* src/status-table.c: New file.
* src/extra-stati.h, src/mkstatus: Files removed.
* version.c (do_subsystem_inits): Call _gpgme_status_init.
https://invent.kde.org/neon/forks/gpgme/-/commit/885243e05467e79e2375b3febe7904053ab45dfc

Git commit ced1ad01aed32d1e4c5000f3b901db018ef7bf1e by Marcus Brinkmann on 12/03/2012 at 15:00..
Update config.guess and config.sub to latest version.

* config.guess, config.sub: Update to latest version.
https://invent.kde.org/neon/forks/gpgme/-/commit/ced1ad01aed32d1e4c5000f3b901db018ef7bf1e

Git commit ff0a640a18e7b7457e6c2edfdc8307bf44628b60 by Marcus Brinkmann on 12/03/2012 at 15:37..
Do not rely on glibc name of syscall.

* src/ath.c (ath_self): Use __NR_gettid, not SYS_gettid.
https://invent.kde.org/neon/forks/gpgme/-/commit/ff0a640a18e7b7457e6c2edfdc8307bf44628b60

Git commit 6ec9e21dd1ea2f8509700bce018aef6ad7e9a927 by Marcus Brinkmann (on behalf of W. Trevor King) on 03/04/2012 at 13:10..
Update Werner Koch's distribution signing key in the README.

* README: Update signing key.
https://invent.kde.org/neon/forks/gpgme/-/commit/6ec9e21dd1ea2f8509700bce018aef6ad7e9a927

Git commit bb62104adf78e8416b3c56b8b2621edd723b56cd by Marcus Brinkmann (on behalf of W. Trevor King) on 03/04/2012 at 13:15..
uiserver.texi: fix decryption -> encryption typo in PREP_ENCRYPT discussion.

* doc/uiserver.texi (PREP_ENCRYPT): Fix documentation.
https://invent.kde.org/neon/forks/gpgme/-/commit/bb62104adf78e8416b3c56b8b2621edd723b56cd

Git commit c318e69d8fa5f9e92d4aac3dd44fae5adcaade72 by Marcus Brinkmann (on behalf of W. Trevor King) on 03/04/2012 at 13:20..
gpgme-tool: add help messages for a number of commands.

* src/gpgme-tool.c (hlp_engine, hlp_sub_protocol, hlp_armor, hlp_textmode,
hlp_include_certs, hlp_keylist_mode, hlp_input, hlp_output, hlp_message,
hlp_recipient, hlp_signer, hlp_signers_clear, hlp_decrypt, hlp_decrypt_verify,
hlp_encrypt, hlp_sign_encrypt, hlp_sign, hlp_verify, hlp_import): New strings.
(hlp_protocol): Fix typo.
(register_commands): Add documentation strings.
(doc): Mention Assuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/c318e69d8fa5f9e92d4aac3dd44fae5adcaade72

Git commit 62bbe58280737d73badbe518f140e40480205176 by Werner Koch (on behalf of W. Trevor King) on 13/04/2012 at 08:02..
status-table.c: include string.h for strcmp.

* status-table.c: include string.h to avoid `warning: implicit
declaration of function 'strcmp'`.
https://invent.kde.org/neon/forks/gpgme/-/commit/62bbe58280737d73badbe518f140e40480205176

Git commit 4cb408d33efe80e7d102049dea244d22907d8395 by Marcus Brinkmann (on behalf of W. Trevor King) on 20/04/2012 at 14:05..
.gitignore: flesh out rules and add subdirectory-.gitignores.
https://invent.kde.org/neon/forks/gpgme/-/commit/4cb408d33efe80e7d102049dea244d22907d8395

Git commit 22de98b7a67c3017ae67ffdf4d9eb122f86258b1 by Werner Koch on 30/04/2012 at 15:42..
Remove trailing white space

--
https://invent.kde.org/neon/forks/gpgme/-/commit/22de98b7a67c3017ae67ffdf4d9eb122f86258b1

Git commit 1a21574b48ee91eedbf95251ee600648b377d1e7 by Werner Koch on 30/04/2012 at 15:46..
Fix timestamp parsing for y2038 hack.

* src/conversion.c (_gpgme_parse_timestamp): Set ENDP before year 2038
check.
https://invent.kde.org/neon/forks/gpgme/-/commit/1a21574b48ee91eedbf95251ee600648b377d1e7

Git commit d6402b888fd00b883bbfc00c91a2aa9706e4377e by Werner Koch on 02/05/2012 at 08:30..
Update signature summary for the case of missing X.509 keys.

* src/verify.c (gpgme_op_verify_result): Update summary field.
--

This is actually a hack to solve the problem that GPGME currently does
not emit ERRSIG for a missing public key.
https://invent.kde.org/neon/forks/gpgme/-/commit/d6402b888fd00b883bbfc00c91a2aa9706e4377e

Git commit 475640a52742b333d7c3c8235ee945ba42197883 by Werner Koch on 02/05/2012 at 08:35..
Fix minor documentation problem.

--
Fixes bug#1404.
(There is mentioned data field “recipient”, but actual data field
name is “recipients”.)
https://invent.kde.org/neon/forks/gpgme/-/commit/475640a52742b333d7c3c8235ee945ba42197883

Git commit 295dd3f238fa656493d34e8a718958d62226b56c by Werner Koch on 02/05/2012 at 08:43..
Remove unused pth stuff from gpgme-config.

* src/gpgme-config.in: Remove unused pth stuff.
https://invent.kde.org/neon/forks/gpgme/-/commit/295dd3f238fa656493d34e8a718958d62226b56c

Git commit 9c8608f702ec0f44ae55cd7f33bd8df0a2d48508 by Werner Koch on 02/05/2012 at 09:18..
Release 1.3.2.

* configure.ac: Bump LT version to C19/A8/R1.

* configure.ac (GITLOG_TO_CHANGELOG): Define.
* Makefile.am (gen-ChangeLog): Use it.
https://invent.kde.org/neon/forks/gpgme/-/commit/9c8608f702ec0f44ae55cd7f33bd8df0a2d48508

Git commit 4751a0e1bcd68a0c9f59a2685e3a2bee9d5008a6 by Werner Koch on 02/05/2012 at 09:30..
Post release updates.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/4751a0e1bcd68a0c9f59a2685e3a2bee9d5008a6

Git commit bdbc2dde49704eedaee643e8d4651ab7f07504b7 by Daniel Leidert on 08/07/2012 at 14:39..
Add a directory for gpgme.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@259 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/bdbc2dde49704eedaee643e8d4651ab7f07504b7

Git commit 434b75e64e83c39ae56e7792a8e28c0dccd934fe by Daniel Leidert on 08/07/2012 at 14:43..
Imported Upstream version 1.1.6

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@260 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/434b75e64e83c39ae56e7792a8e28c0dccd934fe

Git commit 4ef1707d98389e71b26e3adeeb3080253bd234c9 by Daniel Leidert on 08/07/2012 at 14:43..
Imported Debian patch 1.1.6-1

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@261 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/4ef1707d98389e71b26e3adeeb3080253bd234c9

Git commit b63f26c9fa6e72d7c9651f813c29193a5c6de82c by Daniel Leidert on 08/07/2012 at 14:44..
Imported Debian patch 1.1.6-2

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@262 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/b63f26c9fa6e72d7c9651f813c29193a5c6de82c

Git commit fd29b86f00fd3556493a66ae5a86b705b6339840 by Daniel Leidert on 08/07/2012 at 14:44..
Imported Upstream version 1.1.7

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@263 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/fd29b86f00fd3556493a66ae5a86b705b6339840

Git commit 081dcbf9d415e051f6ea17b73137d8002984890f by Daniel Leidert on 08/07/2012 at 14:44..
Imported Upstream version 1.1.8

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@264 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/081dcbf9d415e051f6ea17b73137d8002984890f

Git commit ffedc463dfc0e19ac4b5e46da979aab3487b375c by Daniel Leidert on 08/07/2012 at 14:44..
New upstream version

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@265 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/ffedc463dfc0e19ac4b5e46da979aab3487b375c

Git commit f66d1d4d4237063f238b614d017f6541e239bdf1 by Daniel Leidert on 08/07/2012 at 14:44..
Added in new version:
 + Closing of file descriptors in seahorse-agent

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@266 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/f66d1d4d4237063f238b614d017f6541e239bdf1

Git commit 7116c0126c95aeceabbdd34af411e80263613a9e by Daniel Leidert on 08/07/2012 at 14:44..
Patches must have mode 0755

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@267 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/7116c0126c95aeceabbdd34af411e80263613a9e

Git commit 4dd42592e1b36078cdbc1932d83995ae0c23371d by Daniel Leidert on 08/07/2012 at 14:44..
Disable gpgme-config patch as it is included upstream:
 + pthread support is back

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@268 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/4dd42592e1b36078cdbc1932d83995ae0c23371d

Git commit c4e0aeda9de2765aa24bc0ca5399065d76c25f04 by Daniel Leidert on 08/07/2012 at 14:44..
Upstream changelog was moved to src/. Get it from there

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@269 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/c4e0aeda9de2765aa24bc0ca5399065d76c25f04

Git commit c6effcdd527838446fc9500a81bc6aff368b1643 by Daniel Leidert on 08/07/2012 at 14:44..
Bump standards version to 3.8.0

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@270 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/c6effcdd527838446fc9500a81bc6aff368b1643

Git commit c3ee781f7460985643f188efd28dfc570e7df2ed by Daniel Leidert on 08/07/2012 at 14:44..
Version 1.1.7 introduced a new symbol, so we have to bump shlibs info (#510796)

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@271 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/c3ee781f7460985643f188efd28dfc570e7df2ed

Git commit e9a5c4301ae74014c7f0f8aa7f5d20549eba2fef by Daniel Leidert on 08/07/2012 at 14:48..
Empty directory except for debian/ directory.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@272 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/e9a5c4301ae74014c7f0f8aa7f5d20549eba2fef

Git commit df3775b67303965aa3f808b22039655380568c91 by Daniel Leidert on 08/07/2012 at 14:52..
Set mergeWithUpstream.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@273 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/df3775b67303965aa3f808b22039655380568c91

Git commit 262f23c3d8a089a72b8794b66fbfa47a2b05e532 by Daniel Leidert on 08/07/2012 at 14:55..
gpgme (1.3.2-1) UNRELEASED

* New upstream version.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@274 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/262f23c3d8a089a72b8794b66fbfa47a2b05e532

Git commit 0f6b5a55606374ec3b101412c8624bdfa7d269e1 by Daniel Leidert on 08/07/2012 at 17:01..
* debian/compat: Raised compatibility level to 7.
* debian/control: Added myself to Uploaders.
  (Section): Changed to libs. Fixed binary-control-field-duplicates-source.
  (Standards-Version): Bumped to 3.9.3.
  (Vcs-Git, Vcs-Browser): Adjusted to point to subversion tree.
  (Build-Depends, Depends): Added new dependencies including libassuan-dev.
  Fixed debhelper-but-no-misc-depends. Dropped dpatch.
  (Description): Fixed several lintian hints.
* debian/copyright: Fixed copyright-refers-to-versionless-license-file.
* debian/gpgme-config.1: Fixed a few errors/warnings.
* debian/libgpgme11.files: Renamed to debian/libgpgme11.install, adjusted.
* debian/libgpgme11-dev.files: Likewise.
* debian/libgpgme11.dirs, debian/libgpgme11-dev.dirs: Dropped useless files.
* debian/libgpgme11-dev.info: Ditto.
* debian/libgpgme11-dev.doc-base (Section): Fixed.
* debian/rules: Complete rewrite for debhelper 7. Enabled hardening.
* debian/watch: Added.
* debian/patches/gpgme-config.dpatch: Dropped (merged upstream).
* debian/patches/10_relibtoolize.dpatch: Dropped.
* debian/patches/00list: Ditto.
* debian/source/format: Added for format 3.0 (quilt).

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@275 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/0f6b5a55606374ec3b101412c8624bdfa7d269e1

Git commit 9f081da7356288a96e8ea4d81a74ff706c00b0cd by Werner Koch on 13/07/2012 at 08:59..
Make handling of new conf values more robust (bug#1413).

* src/engine-gpgconf.c (arg_to_data): Allow for NULL as value.string.
--

I was not able to replicate the problem.  However this patch makes the
code more robust and tolerates errors by the user.  IT should fix the
problem at hand.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f081da7356288a96e8ea4d81a74ff706c00b0cd

Git commit e7aeaebb01395b170c91f290bf3ff5021023420f by Werner Koch on 13/07/2012 at 12:00..
Do not include the removed file status-table.h

* src/engine-uiserver.c: Remove status-table.h which is not anymore
built.  Fixes bug#1412.
--

The file was actually removed from the code by 885243e0 but for
unknown reasons the missing file was not reported by "make distcheck".
https://invent.kde.org/neon/forks/gpgme/-/commit/e7aeaebb01395b170c91f290bf3ff5021023420f

Git commit eceaad4e6cac976f62f0baa8d0a896d7be609f8c by Daniel Leidert on 13/07/2012 at 18:28..
* debian/gpgme-config.1: Fixed a few errors/warnings. Updated.
* debian/libgpgme11.symbols: Updated.

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@279 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/eceaad4e6cac976f62f0baa8d0a896d7be609f8c

Git commit af70d4392524305328fb7eed8de82d48817a4649 by Daniel Leidert on 13/07/2012 at 20:07..
* debian/control (Build-Depends, Depends): Replaced gnupg by gnupg2.
* debian/libgpgme11.symbols: Removed symbols of libgpgme-pth.so.11.
* debian/rules: Set path to gnupg2 binaries (closes: #563623).


git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@280 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/af70d4392524305328fb7eed8de82d48817a4649

Git commit f1ebf0eb2a94672f5e660a724d3a30c5b3cd8123 by Daniel Leidert on 13/07/2012 at 20:20..
* debian/control (Build-Depends): Dropped obsolete libpth-dev.


git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@281 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/f1ebf0eb2a94672f5e660a724d3a30c5b3cd8123

Git commit 434735f71e6969248651ac01c6bd6f6789a6305d by Marcus Brinkmann on 27/07/2012 at 23:17..
Allow null context on gpgme_set_locale.

* gpgme.c (gpgme_set_locale): Allow CTX to be a null pointer.
https://invent.kde.org/neon/forks/gpgme/-/commit/434735f71e6969248651ac01c6bd6f6789a6305d

Git commit 8384ccbd1a51447dccbd608fc5df3c24cb8999b1 by Marcus Brinkmann on 28/07/2012 at 20:06..
Fix sign error in position calculation for mem_seek.

* data-mem.c (mem_seek): Fix sign error in position calculation.
https://invent.kde.org/neon/forks/gpgme/-/commit/8384ccbd1a51447dccbd608fc5df3c24cb8999b1

Git commit 83e74202cd7c4c975d149c49e2507fdb0e60ef32 by Marcus Brinkmann on 28/07/2012 at 20:11..
Add two recent contributors.
https://invent.kde.org/neon/forks/gpgme/-/commit/83e74202cd7c4c975d149c49e2507fdb0e60ef32

Git commit 139e798c8782b09460052a453142addf1174d878 by Werner Koch on 25/09/2012 at 13:29..
Remove all trailing whitespace from source files

--
Command used:  sed -i 's,[ \t]*$,,' FILE
https://invent.kde.org/neon/forks/gpgme/-/commit/139e798c8782b09460052a453142addf1174d878

Git commit c62b79a1d6e576d94e08cb81c2f5dbcb42ecf8cf by Werner Koch on 25/09/2012 at 13:38..
Add gpgme_set_global_flag to help debugging

* src/gpgme.c (gpgme_set_global_flag): New.
* src/gpgme.h.in (gpgme_set_global_flag): New.
* src/gpgme.def, src/libgpgme.vers: Add new public function.
* src/debug.c (envvar_override): New.:
(_gpgme_debug_set_debug_envvar): New.
(debug_init): Take ENVVAR_OVERRIDE in account.
--

On Android envvars can't be used, thus we need another way to enable
GPGME debugging.  The new function allows this and may be used in the
future to implement similar things.
https://invent.kde.org/neon/forks/gpgme/-/commit/c62b79a1d6e576d94e08cb81c2f5dbcb42ecf8cf

Git commit db33945ab3b8c173a3fc2dd1a0d22d7fc15d8730 by Werner Koch on 25/09/2012 at 17:19..
Document contribution rules.

* doc/HACKING (License policy): New.
* doc/DCO: New.
* AUTHORS: Change maintainer address.
https://invent.kde.org/neon/forks/gpgme/-/commit/db33945ab3b8c173a3fc2dd1a0d22d7fc15d8730

Git commit d230b7c2f9ad5964c92ee22dc9532d9ac119600a by Werner Koch on 25/09/2012 at 17:21..
Add DCO file

--
https://invent.kde.org/neon/forks/gpgme/-/commit/d230b7c2f9ad5964c92ee22dc9532d9ac119600a

Git commit 193eb62538b9413e0dfbd04c075f871d5aa9130b by Werner Koch on 26/09/2012 at 07:37..
gpgme-tool: Fix handling of file descriptors

* src/gpgme-tool.c (server_reset_fds): Use close/CloseHandle instead
of the assuan close functions.
(_cmd_decrypt_verify, _cmd_sign_encrypt, cmd_verify, cmd_import)
(cmd_export, cmd_genkey, cmd_getauditlog): Use SERVER object instead
of assuan_get_*_fd functions.
--

Although we used our own handlers for INPUT and OUTPUT, we still used
assuan_get_input_fd, assuan_get_output_fd and their close functions.
That clearly can't work because libassuan does not have any values for
them.
https://invent.kde.org/neon/forks/gpgme/-/commit/193eb62538b9413e0dfbd04c075f871d5aa9130b

Git commit dda3702a9024a08da7bb949e15b63a47d23d59f5 by Werner Koch (on behalf of W. Trevor King) on 28/09/2012 at 06:25..
gpgme-tool: Initialize input_fd and output_fd

* src/gpgme-tool.c (gpgme_server): Initialize input_fd and output_fd.

Signed-off-by: W. Trevor King <wking at tremily.us>
https://invent.kde.org/neon/forks/gpgme/-/commit/dda3702a9024a08da7bb949e15b63a47d23d59f5

Git commit 3d69b51f7f083193db28f364da4590c33b5e44e6 by Werner Koch (on behalf of W. Trevor King) on 28/09/2012 at 06:31..
gpgme-tool: Return more detailed XML from KEYLIST

src/gpgme-tool.c (cmd_keylist): Convert output from a list of
to more detailed XML.
(xml_preamble1, xml_preamble2, xml_end): Make global.
(result_add_protocol, result_add_validity): New functions for
generating XML from GPGME types.
(result_add_string): Treat NULL strings as "".
(result_xml_tag_data): Make 'data' a 'const char' so we can use the
value returned by gpgme_get_protocol_name directly.
--

This is a first pass at returning most of the gpgme_key_t data from the
KEYLIST call.

Signed-off-by: W. Trevor King <wking at tremily.us>
https://invent.kde.org/neon/forks/gpgme/-/commit/3d69b51f7f083193db28f364da4590c33b5e44e6

Git commit c28ebca9f2e21344d68e9fdcec60553f225c2e54 by Werner Koch (on behalf of W. Trevor King) on 11/10/2012 at 14:18..
gpgme-tool: Fix chain_id -> chain-id in KEYLIST XML.

[[PGP Signed Part:Undecided]]
src/gpgme-tool.c (cmd_keylist): Use <chain-id> instead of <chain_id>.
--
All the other tags map struct attribute underscores to hyphens, so
fixing <chain_id> follows the priciple of least surprise.

Signed-off-by: W. Trevor King <wking at tremily.us>
https://invent.kde.org/neon/forks/gpgme/-/commit/c28ebca9f2e21344d68e9fdcec60553f225c2e54

Git commit 3f1329e1c9b99b1632cc4c4eec2e4399676fd93d by Werner Koch (on behalf of W. Trevor King) on 11/10/2012 at 14:22..
gpgme-tool: escape special characters in output XML data (<, >, and &).

[[PGP Signed Part:Undecided]]
src/gpgme-tool.c (result_xml_escape_replacement, result_xml_escape):
New.
(result_xml_tag_data): Use result_xml_escape() to escape data.
(result_add_error): Use unescaped < and >.
--

This is a general solution for generating valid XML, but the specific
output that inspired the change was from the KEYLIST command:

  <uid>William Trevor King <wking at tremily.us></uid>

Now the uids are properly escaped:

   <uid>William Trevor King <wking at tremily.us></uid>

Signed-off-by: W. Trevor King <wking at tremily.us>
https://invent.kde.org/neon/forks/gpgme/-/commit/3f1329e1c9b99b1632cc4c4eec2e4399676fd93d

Git commit aa30b47aa010bf46876f2335e288f8bd8718e396 by Werner Koch on 11/10/2012 at 14:54..
gpgme-tool: Change license from LPGLv2+ to GPLv3+

* src/gpgme-tool.c: Change license notice.
--

gpgme-tool.c is a standalone program, thus it makes no sense to keep
it under the LGPL.  We already had the manual under GPLv3+.
https://invent.kde.org/neon/forks/gpgme/-/commit/aa30b47aa010bf46876f2335e288f8bd8718e396

Git commit e11e7fc5586613525035c3358e15ae24accb96ea by Werner Koch on 11/10/2012 at 15:02..
gpgme-tool: Use membuf functions to build up strings.

* src/gpgme-tool.c (clear_membuf, init_membuf, put_membuf)
(put_membuf_str, get_membuf, peek_membuf): Add membuf functions.
Take from GnuPG master's common/membuf.[ch] and patch for our use.
(result_xml_escape): Rewrite using new functions.
--

First counting, then allocating, and finally copying data is prone to
errors.  We better use the membuf functions which make it much easier.
https://invent.kde.org/neon/forks/gpgme/-/commit/e11e7fc5586613525035c3358e15ae24accb96ea

Git commit 14a8fd4eec126cad282a85c5aa336a6b55229b52 by Werner Koch on 19/10/2012 at 09:18..
Avoid warning about initialized but not used variable

* src/engine-gpgsm.c (gpgsm_set_fd): Do not set DIR if not needed.
https://invent.kde.org/neon/forks/gpgme/-/commit/14a8fd4eec126cad282a85c5aa336a6b55229b52

Git commit bd24feaa86f8154e550107990392ac9ac05e60d4 by Werner Koch on 19/10/2012 at 09:23..
Trace the use of GPG_ERR_INV_ENGINE.

* src/debug.h: Include "gpgme.h"
(_gpgme_trace_gpgme_error): New.
(trace_gpg_error): New macro.  Use it in all files where we return
GPG_ERR_INV_ENGINE; also "include debug.h" as needed.
--

This is a pretty common error code but often it is hard to figure out
the actual cause.  With debug level 4 we now print the file name and
line number where this error code is generated by gpgme.  Along with
the git revision printed in the first log lines, this should give us
an easier way to track down the problems related to this error code.
https://invent.kde.org/neon/forks/gpgme/-/commit/bd24feaa86f8154e550107990392ac9ac05e60d4

Git commit cc59b75b21516198b39a56950afbcec140d8ba48 by Werner Koch on 24/10/2012 at 14:07..
tests: Adhere to the docs and call gpgme_check_version.

* tests/t-engine-info.c: Call gpgme_check_version.
https://invent.kde.org/neon/forks/gpgme/-/commit/cc59b75b21516198b39a56950afbcec140d8ba48

Git commit 12a0c93433a0b1d7e8019fc35a63476db39327fa by Werner Koch on 24/10/2012 at 14:44..
Fix ttyname problem on Android.

* configure.ac: Define macro and conditional HAVE_ANDROID_SYSTEM.
* m4/gnupg-ttyname.m4: Force use of replacement on Android.
* src/ttyname_r.c: Ditto.
--

Android's bionic lib has no working ttyname_r() nor ttyname().  Using
them anyway will print

  FIX ME! implement ttyname_r() bionic/libc/bionic/stubs.c:466

Thus we force the use of our replacement code which simply return
"/dev/tty".
https://invent.kde.org/neon/forks/gpgme/-/commit/12a0c93433a0b1d7e8019fc35a63476db39327fa

Git commit c97d067f27899d890a99036fcbed9263f4f68875 by Werner Koch on 24/10/2012 at 14:51..
Make local variables configure hack more robust

* configure.ac (emacs_local_vars_begin): Use extra m4 quoting so that
newer Emscasen won't take it up as Local Variables for this file.
https://invent.kde.org/neon/forks/gpgme/-/commit/c97d067f27899d890a99036fcbed9263f4f68875

Git commit 1a17acd8e9b7c0ef924f98bfb1502fe12e83c363 by Werner Koch on 15/11/2012 at 10:14..
Make _gpgme_encode_percent_string work for memory buffers.

* src/conversion.c (D_gpgme_encode_percent_string): Remove stray
semicolon.  Reported by Xi Wang.
--
Obviously this function is not used with a supplied LEN argument != 0.
https://invent.kde.org/neon/forks/gpgme/-/commit/1a17acd8e9b7c0ef924f98bfb1502fe12e83c363

Git commit cd6de92f42cb6e5b85bc376d5544496cb4d6a88a by Werner Koch on 16/11/2012 at 12:45..
Fix non-portable use of chmod in autogen.sh.

* autogen.sh: Remove option -c from chmod.
https://invent.kde.org/neon/forks/gpgme/-/commit/cd6de92f42cb6e5b85bc376d5544496cb4d6a88a

Git commit 322552a88db47896881e55c00ca301137cd160c6 by Werner Koch on 16/11/2012 at 12:50..
Improve parsing of the GIT revision number.

* configure.ac (git_revision): Use git rev-parse.
https://invent.kde.org/neon/forks/gpgme/-/commit/322552a88db47896881e55c00ca301137cd160c6

Git commit 51fd6d8292cb41d743407e6ac9d86a5ab8e68d8c by Werner Koch on 06/02/2013 at 16:35..
Use gpg_error_from_syserror instead of directly accessing errno.

--

Also fixed a couple of minor thing; e.g. save the error before calling
cleanup functions.  Do not save the errno if only free is called
in between.
https://invent.kde.org/neon/forks/gpgme/-/commit/51fd6d8292cb41d743407e6ac9d86a5ab8e68d8c

Git commit 29eced50687dd8a39dafe704102ae09ea8e8533a by Werner Koch on 07/02/2013 at 19:51..
Add public function gpgme_io_writen.

* src/gpgme.c (gpgme_io_read): New.
--

This is a writen style variant for gpgme_io_write.  It is often easier
to use this one in passphrase and edit callbacks.
https://invent.kde.org/neon/forks/gpgme/-/commit/29eced50687dd8a39dafe704102ae09ea8e8533a

Git commit 61a0d92b679f248505f1bf16386bc41a5bf2ba1d by Werner Koch on 07/02/2013 at 19:59..
Add public function gpgme_set_pinentry_mode.

* src/gpgme.c (gpgme_set_pinentry_mode): New.
* src/gpgme.h.in (gpgme_pinentry_t): New.
(gpgme_set_pinentry_mode): New.
* src/context.h (struct gpgme_context): Add field pinentry_mode.
* src/engine-backend.h (struct engine_ops): Add field
set_pinentry_mode.
* src/engine-gpg.c (struct engine_gpg): Add field pinentry_mode.
(build_argv): Implement pinentry_mode.
(gpg_set_pinentry_mode): New.
(_gpgme_engine_ops_gpg): Register gpg_set_pinentry_mode.

--

Note that this new fucntion may only be used with gpg 2.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/61a0d92b679f248505f1bf16386bc41a5bf2ba1d

Git commit 02a2cf0ccb4d01700adf6d18316d7705d519a048 by Werner Koch on 07/02/2013 at 20:03..
gpgme_tool: Support GPG's new pinentry-mode.

* src/gpgme-tool.c (log_error): Do not always print the error source.
(gt_set_pinentry_mode): New.
(server_passphrase_cb): New.
(cmd_pinentry_mode): New.
(register_commands): Add cmd_pinentry_mode.
(options): Add option --gpg-binary.
(struct args): Add field gpg-binary.
(parse_options, main): Implement that option.
https://invent.kde.org/neon/forks/gpgme/-/commit/02a2cf0ccb4d01700adf6d18316d7705d519a048

Git commit 4f381554411ef019d79492f1751543f145604bcf by Werner Koch on 12/02/2013 at 09:42..
Add public function gpgme_get_pinentry_mode.

* src/gpgme.c (gpgme_get_pinentry_mode): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/4f381554411ef019d79492f1751543f145604bcf

Git commit f48f75b1e812d33b76e439412efffa8277ab9abe by Werner Koch on 12/02/2013 at 13:02..
Add macro GPGME_VERSION_NUMBER.

* src/gpgme.h.in (GPGME_VERSION_NUMBER): New.
* configure.ac (my_version_major, my_version_minor)
(my_version_micro): New m4 macros.
(my_version): Build from new m4 macros.
(VERSION_NUMBER): New ac_subst.
https://invent.kde.org/neon/forks/gpgme/-/commit/f48f75b1e812d33b76e439412efffa8277ab9abe

Git commit 9c5733b89f858e947f954c56c00a9fee227ef362 by Werner Koch on 12/02/2013 at 13:06..
Declare next version to be 1.4.0

--
https://invent.kde.org/neon/forks/gpgme/-/commit/9c5733b89f858e947f954c56c00a9fee227ef362

Git commit 967e043ac42330ee692f23d05ce3a0dd457f2119 by Werner Koch on 25/02/2013 at 13:40..
Remove included gitlog-to-changelog.

* build-aux/gitlog-to-changelog: Remove.
* configure.ac (GITLOG_TO_CHANGELOG): Default to just
gitlog-to-changelog.
https://invent.kde.org/neon/forks/gpgme/-/commit/967e043ac42330ee692f23d05ce3a0dd457f2119

Git commit fdcd5736e610cd64e47da73dcafe8bc4a6a67666 by Werner Koch on 26/02/2013 at 15:14..
Update helper scripts.

* configure.ac: Use AC_CONFIG_AUX_DIR.  Remove args from
AM_INIT_AUTOMAKE.  Replace AM_CONFIG_HEADER by AC_CONFIG_HEADER.
* compile, config.guess, config.sub, depcomp, install-sh, ltmain.sh
* mkinstalldirs, texinfo.texi: Move to build-aux/ and update from
gnulib (c042abf).
* build-aux/mdate-sh, build-aux/missing: Install via automake -a -c.
Update autogen.sh for changed config dir.
* autogen.sh: Adjust for scripts dir change.  Update W32 toolprefix
list.
https://invent.kde.org/neon/forks/gpgme/-/commit/fdcd5736e610cd64e47da73dcafe8bc4a6a67666

Git commit 863c0f2a3eaf2a5d46c5518e5ac3486cc1a49bd3 by Werner Koch on 26/02/2013 at 15:15..
Update GnuPG related m4 files.

* m4/gpg-error.m4: Update from libgpg-error.
* m4/libassuan.m4: Update from libassuan.
https://invent.kde.org/neon/forks/gpgme/-/commit/863c0f2a3eaf2a5d46c5518e5ac3486cc1a49bd3

Git commit d8b46c919f45666af0d541e00dcedf57e6c4b66f by Werner Koch on 26/02/2013 at 16:10..
Change the various version numbers to the new scheme.

* configure.ac: Rename my_foo variables to mym4_foo variables to make
clear that they are processed by m4.
(VERSION_NUMBER): New ac_subst.
(AH_BOTTOM): Add CRIGHTBLURB macro.
(BUILD_REVISION, BUILD_FILEVERSION, BUILD_TIMESTAMP): Change them to
work similar to libgpg-error et al.
* src/versioninfo.rc.in: Remove use of BUILD_NUMBER and get it in line
with gpg-error et al.
* src/version.c (cright_blurb): New.
(gpgme_check_version_internal): Add magic to display the above
information.
* tests/t-version.c (main): Add option --verbose.
https://invent.kde.org/neon/forks/gpgme/-/commit/d8b46c919f45666af0d541e00dcedf57e6c4b66f

Git commit 787b5f14b933e5cee2624f79a23a60947f8134c8 by Werner Koch on 26/02/2013 at 16:10..
Improve missing libgpg-error reporting in configure.

* configure.ac (NEED_GPG_ERROR_VERSION): New.  Improve reporting for
missing libgpg-error.
https://invent.kde.org/neon/forks/gpgme/-/commit/787b5f14b933e5cee2624f79a23a60947f8134c8

Git commit cdae524b282ef0ea67c3880b3e0f852c84c351ce by Werner Koch on 26/02/2013 at 16:10..
w32: Hacks for building with 32 bit mingw64.

* configure.ac (INSERT__TYPEDEFS_FOR_GPGME_H): Add hacks for 32 bit
mingw64.
* src/util.h [W32]: Include winsock2.h before windows to make mingw64
happy.
* src/w32-util.c (_WIN32_IE): Need to use 5.1 for mingw64.
--

It is not clear to me what mingw64 wants to achieve with their POSIX
hacks. In particular the off64_t stuff looks quite strange given that
Windows has a pretty stable API for close to 2 decades.  Thus I can't
say whether it will really work when build with that toolchain.
https://invent.kde.org/neon/forks/gpgme/-/commit/cdae524b282ef0ea67c3880b3e0f852c84c351ce

Git commit 5090f6f246bfad2eb80f3cc222963f73996d8028 by Werner Koch on 26/02/2013 at 16:26..
Enable FD passing and thus building of the UI-server.

* configure.ac: Make --enable-fd-passing the default.
* src/engine-uiserver.c (_gpgme_engine_ops_uiserver): Syntax fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/5090f6f246bfad2eb80f3cc222963f73996d8028

Git commit ef5cd38123dfbef7843f374ee697b0b5e8730c46 by Werner Koch on 26/02/2013 at 17:02..
Release 1.4.0.

* configure.ac: Bump LT version to C20/A9/R0.
https://invent.kde.org/neon/forks/gpgme/-/commit/ef5cd38123dfbef7843f374ee697b0b5e8730c46

Git commit 68221577b74fbcf0b43586f6004384fba0959ac5 by Werner Koch on 26/02/2013 at 17:32..
Post release version number bump.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/68221577b74fbcf0b43586f6004384fba0959ac5

Git commit 12374cbecede047accd2d2267bba5927037ed16c by Werner Koch on 16/04/2013 at 16:30..
Explain the GPGME_DEBUG variable.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/12374cbecede047accd2d2267bba5927037ed16c

Git commit 867b950b9306904a0ff522d0ef4a43789393cfc4 by Werner Koch on 29/04/2013 at 07:58..
Fix for i686-w64-mingw32.

* configure.ac (NEED__FILE_OFFSET_BITS): Do not define under Windows.
https://invent.kde.org/neon/forks/gpgme/-/commit/867b950b9306904a0ff522d0ef4a43789393cfc4

Git commit 0ff0aa3fc8440420247fe4cff30c3ac9be1b2f7d by Werner Koch on 30/04/2013 at 16:05..
Syntax fix for gpgme.texi.

--

This fixes commit 12374cbecede047accd2d2267bba5927037ed16c.
https://invent.kde.org/neon/forks/gpgme/-/commit/0ff0aa3fc8440420247fe4cff30c3ac9be1b2f7d

Git commit f623a6b94c527795d0b6f7e66a3966e5d9e1c454 by Werner Koch on 30/04/2013 at 16:09..
Allow reading of long gpgconf output lines.

* src/engine-gpgconf.c (gpgconf_read): Rewrite to allow for line
lengths up to 64k.
https://invent.kde.org/neon/forks/gpgme/-/commit/f623a6b94c527795d0b6f7e66a3966e5d9e1c454

Git commit ef5b4ae37d13142e89a051908dc080cda3d24baa by Werner Koch on 01/05/2013 at 11:47..
Disable fd-passing for Apple.

* configure.ac: Disable fd-passing by default for Apple.
--

We have not yet tracked down the problem, thus we revert to the
pre-1.4 behaviour for Apple.

GnuPG-bug-id: 1483
https://invent.kde.org/neon/forks/gpgme/-/commit/ef5b4ae37d13142e89a051908dc080cda3d24baa

Git commit 5075c0da7c464af2a45cd36db134ed7e88f155af by Werner Koch on 01/05/2013 at 12:16..
Release 1.4.1.

* configure.ac: Bump LT version to C20/A9/R1.
https://invent.kde.org/neon/forks/gpgme/-/commit/5075c0da7c464af2a45cd36db134ed7e88f155af

Git commit de30df9ce359202b2449697c7e16dc0311e9050f by Werner Koch on 01/05/2013 at 12:27..
Post release version bump.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/de30df9ce359202b2449697c7e16dc0311e9050f

Git commit a7e5f1096f02af7bfb678b0bea8da6ccfc28cc79 by Werner Koch on 06/05/2013 at 18:22..
Simplify a debug code function.

* src/debug.c (_gpgme_debug): Remove static space string.
https://invent.kde.org/neon/forks/gpgme/-/commit/a7e5f1096f02af7bfb678b0bea8da6ccfc28cc79

Git commit 10f16a0d720eaf2f1ca83b467c25678511afc463 by Daniel Leidert on 07/05/2013 at 21:55..
gpgme (1.4.1-1) UNRELEASED



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@317 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/10f16a0d720eaf2f1ca83b467c25678511afc463

Git commit 1ff679090c6fd47d9ac2dd623c72561cb52d29b3 by Daniel Leidert on 07/05/2013 at 22:12..
* debian/compat: Raised compatibility level to 9.
* debian/control: Enable multiarch support (closes: #698970). Added gnupg
  team to uploaders.
* debian/libgpgme11.install: Updated.
* debian/libgpgme11-dev.install: Updated.
* debian/libgpgme11.symbols: Updated.

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@318 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/1ff679090c6fd47d9ac2dd623c72561cb52d29b3

Git commit 0cfd022346dd9b411fb0610ce71428fb7ecbe72b by Daniel Leidert on 07/05/2013 at 22:23..
* debian/control (Source): Reverted to gpgme1.0 for the moment.
  (Uploaders): Removed the GnuPG team and decided for an NMU.
  (Standards-Version): Bumped to 3.9.4.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@319 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/0cfd022346dd9b411fb0610ce71428fb7ecbe72b

Git commit 647bec4704317a53e43626174a24380c4bfa68da by Daniel Leidert on 07/05/2013 at 22:39..
* debian/libgpgme11.symbols: Updated.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@320 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/647bec4704317a53e43626174a24380c4bfa68da

Git commit 98f70420d57fca10f6a2a2b80a1647a1d2c0736e by Daniel Leidert on 07/05/2013 at 23:15..
* debian/changelog: Minor update.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@321 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/98f70420d57fca10f6a2a2b80a1647a1d2c0736e

Git commit 2118f497010a9a41c29d062a7605ff2e136f8f4e by Werner Koch on 08/05/2013 at 17:10..
Improve debug output of the I/O reader and writer.

* src/w32-io.c (reader, writer): Also print file_sock.
https://invent.kde.org/neon/forks/gpgme/-/commit/2118f497010a9a41c29d062a7605ff2e136f8f4e

Git commit 9f330be8210d2498fe93d4166b6f6c02fca76475 by Werner Koch on 08/05/2013 at 18:38..
Fix hang in socket closing.

* src/w32-io.c (destroy_reader): Call shutdown.
(reader): Do not print an error in the shutdown case.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f330be8210d2498fe93d4166b6f6c02fca76475

Git commit 9e7df9aa6d81f0abbabb03a2346d80eb5d375f81 by Werner Koch on 11/05/2013 at 13:38..
w32: Change the way the I/O threads are cleaned up.

* src/w32-io.c (reader_context_s, create_reader)
(writer_context_s, create_writer): Rename STOPPED to CLOSE_EV.
(reader, writer): Remove setting of STOPPED.  Wait for CLOSE_EV and
then release the context.
(destroy_reader, destroy_writer): Do not wait but set the CLOSE_EV.
(kill_reader, kill_writer): Remove.
(_gpgme_io_close): Add code from kill_reader and kill_writer.
--

The old code was prone to deadlocks which were actually exhibited at
Kleopatra startup.  The new code is much more straightforward and
easier to understand.  The reason for the complex old code was
probably due to our former idea to allow re-use of the I/O threads.
However we have long given up on this.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e7df9aa6d81f0abbabb03a2346d80eb5d375f81

Git commit e8392c7aa3a81f68468c6d2778c8641e2871e609 by Daniel Leidert on 14/05/2013 at 19:03..
gpgme1.0 (1.4.1-0.1) unstable



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@329 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/e8392c7aa3a81f68468c6d2778c8641e2871e609

Git commit 82d51a57644138b77a56fcebb21f70d6cc14cd8c by Daniel Leidert on 14/05/2013 at 19:04..
gpgme1.0 (1.4.1-0.2) UNRELEASED



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@331 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/82d51a57644138b77a56fcebb21f70d6cc14cd8c

Git commit 6d0d8e7ba0bb989c251545fa8af35b97d1a703ba by Werner Koch on 16/05/2013 at 15:48..
Make definition of off_t robust against misbehaving w32 toolchains.

* configure.ac (NEED__FILE_OFFSET_BITS): Change to define gpgme_off_t
and gpgme_ssize_t.
(API__OFF_T, API__SSIZE_T): New ac_subst.
* src/gpgme.h.in: Replace all ssize_t and off_t by ac_subst macros.
* src/assuan-support.c, src/ath-pthread.c, src/ath.c, src/ath.h
* src/data-compat.c, src/data-fd.c, src/data-mem.c, src/data-stream.c
* src/data-user.c, src/data.c, src/data.h, src/engine-gpgsm.c
* src/engine-uiserver.c, src/gpgme-tool.c, src/gpgme.c: Replace off_t
by gpgme_off_t and sszie_t by gpgme_ssize_t.
* src/ath-pthread.c, src/ath.h: Include gpgme.h.
--

For a detailed description, see the gpgme.texi diff.
https://invent.kde.org/neon/forks/gpgme/-/commit/6d0d8e7ba0bb989c251545fa8af35b97d1a703ba

Git commit e99356306d7bda61802530ebeb07d9ba73c4dec0 by Werner Koch on 18/05/2013 at 11:49..
Improve C++ compatibility of previous patch.

* src/gpgme.h.in: Move gpgme_sssize_t and gpgme_off_t typedefs into
the extern "C" scope.
--

Frankly, this does not help very much because g++ still does not
interpret gpgme_data_seek_cb_t as compatible with the C++ ssize_t.  I
am sorry for that API change but C and C++ are too different to always
get both of them under one umbrella.  However, the ABI should now be
identical to older gpgme versions.
https://invent.kde.org/neon/forks/gpgme/-/commit/e99356306d7bda61802530ebeb07d9ba73c4dec0

Git commit 18254f88f82da7542a986dca60917fb48d5bccd3 by Werner Koch on 22/05/2013 at 13:03..
tests: Print auditlog in plain text format.

* tests/gpgsm/t-verify.c (show_auditlog): Use plain text format.
--

The HTML output is not very helpful on the console and a pain to the
eyes.
https://invent.kde.org/neon/forks/gpgme/-/commit/18254f88f82da7542a986dca60917fb48d5bccd3

Git commit 0c1de7abd57b677998792e6cd5df5ddfb6e451b7 by Werner Koch on 22/05/2013 at 14:20..
gpgme-tool: Allow for symmetric encryption.

* src/gpgme-tool.c (gt_sign_encrypt): Pass NULL for recp if no
recipients are given.
https://invent.kde.org/neon/forks/gpgme/-/commit/0c1de7abd57b677998792e6cd5df5ddfb6e451b7

Git commit 567e6481d767af60390d649897b897a8b0e7e9a5 by Werner Koch on 22/05/2013 at 14:31..
Allow symmetric encryption with gpgme_op_encrypt_sign.

* src/encrypt-sign.c (encrypt_sym_status_handler): New.
(encrypt_sign_start): Handle recp == NULL case.
* src/engine-gpg.c (gpg_encrypt_sign): Implement symmetric encryption.
* tests/gpg/t-encrypt-sign.c (main): Add a test case for this.
--

Co-authored-by: Kyle L. Huff <g10bts at curetheitch.com>
GnuPG-bug-id: 1440
https://invent.kde.org/neon/forks/gpgme/-/commit/567e6481d767af60390d649897b897a8b0e7e9a5

Git commit d4371ed30da2e8b3d9f440613af299a952bde2b1 by Werner Koch on 22/05/2013 at 14:32..
Support --no-encrypt-to also with gpgme_op_encrypt_sign.

* src/engine-gpg.c (gpg_encrypt_sign): Support the
GPGME_ENCRYPT_NO_ENCRYPT_TO flag.
https://invent.kde.org/neon/forks/gpgme/-/commit/d4371ed30da2e8b3d9f440613af299a952bde2b1

Git commit d739d4d8cf9c873b0f3bb7836aaf3d0ba31a7b7f by Werner Koch on 23/05/2013 at 18:15..
Fix libtool 2.4.2 to correctly detect .def files.

* build-aux/ltmain.sh (sed_uncomment_deffile): New.
(orig_export_symbols): Uncomment def file before testing for EXPORTS.
* m4/libtool.m4: Do the same for the generated code.
--

The old code was not correct in that it only looked at the first line
and puts an EXPORTS keyword in front if missing.  Binutils 2.22
accepted a duplicated EXPORTS keyword but at least 2.23.2 is more
stringent and bails out without this fix.

There is no need to send this upstream.  Upstream's git master has a
lot of changes including a similar fix for this problems.  There are
no signs that a libtool 2.4.3 will be released to fix this problem and
thus we need to stick to our copy of 2.4.2 along with this patch.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d739d4d8cf9c873b0f3bb7836aaf3d0ba31a7b7f

Git commit c29dad2315406bed75b9547103650bef642e6aa7 by Werner Koch on 23/05/2013 at 18:18..
w32: Fix installing of .def file.

* src/Makefile.am (install-def-file): Create libdir first.
https://invent.kde.org/neon/forks/gpgme/-/commit/c29dad2315406bed75b9547103650bef642e6aa7

Git commit d34e343487c688303a332869fdd7779e3ea7c0e8 by Werner Koch (on behalf of Hans-Christoph Steiner) on 28/05/2013 at 08:37..
doc: rename gpgme_sub_key_t to gpgme_subkey_t to match gpgme.h

--
https://invent.kde.org/neon/forks/gpgme/-/commit/d34e343487c688303a332869fdd7779e3ea7c0e8

Git commit 2e8feb6016dede400053f76fc3a418e1dd567bef by Werner Koch on 28/05/2013 at 08:55..
Add convenience macro GPGME_PROTOCOL_OPENPGP.

* src/gpgme.h.in (GPGME_PROTOCOL_OPENPGP): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/2e8feb6016dede400053f76fc3a418e1dd567bef

Git commit 009e26a989f8a251563303f155c51fe012af52a4 by Werner Koch on 28/05/2013 at 09:09..
Release 1.4.2.

* configure.ac: Set LT version to C21/A10/R0.
https://invent.kde.org/neon/forks/gpgme/-/commit/009e26a989f8a251563303f155c51fe012af52a4

Git commit 5df596d6ec62c304db9b988b17fcbbed126855b4 by Werner Koch on 28/05/2013 at 10:17..
Post release version bump.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/5df596d6ec62c304db9b988b17fcbbed126855b4

Git commit 6f2af82073ebcf29d8b8941e6a68868d4532488c by Daniel Leidert on 29/05/2013 at 14:33..
gpgme1.0 (1.4.2-0.1) UNRELEASED
 
* New upstream release.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@337 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/6f2af82073ebcf29d8b8941e6a68868d4532488c

Git commit 3d7341a54eb9fe157e3dbd19c8d2dd79f79c7d84 by Daniel Leidert on 29/05/2013 at 17:26..
gpgme1.0 (1.4.2-0.1) unstable



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@338 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/3d7341a54eb9fe157e3dbd19c8d2dd79f79c7d84

Git commit 117fd502b9eaec92df46b00710b5cdfd071c8a97 by Daniel Leidert on 29/05/2013 at 17:27..
gpgme1.0 (1.4.2-0.2) UNRELEASED



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@340 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/117fd502b9eaec92df46b00710b5cdfd071c8a97

Git commit f2eeccbdfaf855a81abb92abe5ab4c702712bac7 by Werner Koch on 18/06/2013 at 08:27..
Add function gpgme_signers_count.

* src/signers.c (gpgme_signers_count): New.
* src/libgpgme.vers, src/gpgme.def: Add as external symbol.
* src/gpgme.h.in: Add prototype.
https://invent.kde.org/neon/forks/gpgme/-/commit/f2eeccbdfaf855a81abb92abe5ab4c702712bac7

Git commit ff84d8d8945f3cb1fd045457282aa98070c9c58b by Werner Koch on 18/06/2013 at 08:46..
doc: Fix variable name.

--
GnuPG-bug-id: 1507
https://invent.kde.org/neon/forks/gpgme/-/commit/ff84d8d8945f3cb1fd045457282aa98070c9c58b

Git commit 393a9471f2f3ac0a5b14f3534a5bfc7ffe948567 by Werner Koch on 31/07/2013 at 15:32..
doc: Add --binary option for the OUTPUT command of an uiserver.
https://invent.kde.org/neon/forks/gpgme/-/commit/393a9471f2f3ac0a5b14f3534a5bfc7ffe948567

Git commit 3881ea4e83d1533ef497b7332398fc1850e29205 by Werner Koch on 02/08/2013 at 10:48..
w32: Try to locate gpg in the gpgme installation dir.

* src/w32-util.c (my_hmodule): New.
(wchar_to_utf8): New.
(DllMain): New.
(_gpgme_get_inst_dir): New.
(find_program_in_dir): New.
(find_program_in_inst_dir): Add arg INST_DIR.
(_gpgme_get_gpg_path): Get inst_dir before acquiring the lock.
(_gpgme_get_gpgconf_path): Ditto.
(_gpgme_get_g13_path): Ditto.
(_gpgme_get_w32spawn_path): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/3881ea4e83d1533ef497b7332398fc1850e29205

Git commit a4c80126ae4754c8478c69a8a24a6ffd975485fc by Werner Koch on 02/08/2013 at 13:25..
Prefer GnuPG-2 engines over GnuPG-1.

* src/util.h: Move some prototypes to ...
* src/sys-util.h: New.
* src/Makefile.am (main_sources): Add sys-util.h.
* configure.ac (AH_VERBATIM): Add DIRSEP_C and DIRSEP_S.
* src/dirinfo.c: Include sys-util.h.
(WANT_GPG_NAME, WANT_GPGSM_NAME, WANT_G13_NAME)
(WANT_UISRV_SOCKET): New.
(dirinfo): Add corresponding fields.
(parse_output): Add arg COMPONENTS and set new fields.
(read_gpgconf_dirs): Add arg components and act upon it.
(get_gpgconf_item): Call read_gpgconf_dirs two times.  Add debug
output.
(_gpgme_get_default_gpg_name): New.
(_gpgme_get_default_gpgsm_name): New.
(_gpgme_get_default_g13_name): New.
(_gpgme_get_default_gpgconf_name): New.
(_gpgme_get_default_uisrv_socket): New.
* src/engine-gpg.c, src/engine-g13.c, src/engine-gpgconf.c
* src/engine-gpgsm.c, src/engine-uiserver.c: Change to use
_gpgme_get_default_ instead of those from sys-util.h.
* src/posix-util.c (_gpgme_get_gpg_path): Include sys-util.h.
(_gpgme_get_uiserver_socket_path): Remove.
* src/w32-util.c (_gpgme_get_gpg_path): Include sys-util.h.
(_gpgme_get_uiserver_socket_path): Remove.
--

The default engines names are now taken from the output of gpgconf.
If gpgconf is not installed gpg 1 is assumed and locate the same was
as gpgconf.
https://invent.kde.org/neon/forks/gpgme/-/commit/a4c80126ae4754c8478c69a8a24a6ffd975485fc

Git commit 8579091c4f6a36e6bb06fcfbd147a776166fd3ea by Werner Koch on 09/08/2013 at 17:19..
Add function gpgme_data_identify.

* src/gpgme.h.in (gpgme_data_type_t): New.
(gpgme_data_identify): New prototype.
* src/data-identify.c: New.
* src/parsetlv.c, src/parsetlv.h: New.  Take from gpa.
* src/libgpgme.vers, src/gpgme.def: Add gpgme_data_identify.
* src/gpgme-tool.c (status): Add STATUS_IDENTIFY_RESULT.
(gt_identify): New.
(cmd_identify): New.

(hlp_passwd): Move close to cmd_passwd.
--

It is often useful to have a way to identify the data which needs
processing.  This is such a common task that it makes sense to
implement this in gpgme to avoid diverging implementations.
https://invent.kde.org/neon/forks/gpgme/-/commit/8579091c4f6a36e6bb06fcfbd147a776166fd3ea

Git commit 069ac580373923f5635b7172ecff79eb189f6944 by Werner Koch on 12/08/2013 at 12:24..
Improve detection of default gpg by configure.

* configure.ac: Move test for gpgconf before test for gpg.
(GPG, GPGSM, G13): Use gpgconf instead of AC_PATH_PROG if possible.
--

This change is required so that the t-engine-info test does not
fail.  In any case, it is a good idea to use gpgconf for these test
because this is how it works at runtime.
https://invent.kde.org/neon/forks/gpgme/-/commit/069ac580373923f5635b7172ecff79eb189f6944

Git commit 3ca7e96e384d5872c71ceb3b2e2a05b0c1b7e1a0 by Werner Koch on 12/08/2013 at 12:32..
Make test suite workable with GnuPG 2.1.

* tests/gpg/start-stop-agent: New.
* tests/gpg/initial.test: New.
* tests/gpg/final.test: New.
* tests/gpg/Makefile.am (c_tests): New.
(TESTS): Move all to c_tests.  Add initial.test, final.test, and
c_tests.
(TESTS_ENVIRONMENT): Add C_ALL=C
(private_keys): New.
(EXTRA_DIST): Add new files.
(./private-keys-v1.d/gpg-sample.stamp): Copy private keys.
(all-local): Depend on gpg-sample.stamp.
* tests/gpg/13CBE3758AFE42B5E5E2AE4CED27AFA455E3F87F: New.
* tests/gpg/13CD0F3BDF24BE53FE192D62F18737256FF6E4FD: New.
* tests/gpg/76F7E2B35832976B50A27A282D9B87E44577EB66: New.
* tests/gpg/7A030357C0F253A5BBCD282FFC4E521B37558F5C: New.
* tests/gpg/A0747D5F9425E6664F4FFBEED20FBCA79FDED2BD: New.
--

GnuPG 2.1 requires that the agent knows the private keys.  Thus we
need to install them.  The code should still work with GnuPG < 2.1.

To make the whole testing using a agent more robust, the way to start
the agent has also be changed.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ca7e96e384d5872c71ceb3b2e2a05b0c1b7e1a0

Git commit d788c35e19df9eade8eb0b880ca1dc47ae7928ad by Werner Koch on 12/08/2013 at 12:33..
Release 1.4.3.

* configure.ac: Change LT version to C22/A11/R0.
https://invent.kde.org/neon/forks/gpgme/-/commit/d788c35e19df9eade8eb0b880ca1dc47ae7928ad

Git commit 664e78348fc61f2e2a4b4ff667cc64543b3cb415 by Daniel Leidert on 12/08/2013 at 19:48..
gpgme1.0 (1.4.3-0.1) UNRELEASED
 
* New upstream release.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@356 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/664e78348fc61f2e2a4b4ff667cc64543b3cb415

Git commit 481164177ea6708c1e9303fd4bb2b822159f2255 by Daniel Leidert on 12/08/2013 at 20:12..
* debian/control (Build-Depends): Dropped dirmngr (closes: #712813). It is
  not necessary for the build.


git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@357 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/481164177ea6708c1e9303fd4bb2b822159f2255

Git commit 32cf65e5950a54ba69a11807fa2ccc07c80a08df by Daniel Leidert on 12/08/2013 at 20:25..
* debian/libgpgme11.symbols: Updated symbols file.


git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@359 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/32cf65e5950a54ba69a11807fa2ccc07c80a08df

Git commit 802bfcfd8941ed09dbe95a38a723cc7e3dff4c96 by Daniel Leidert on 12/08/2013 at 20:26..
* debian/libgpgme11.symbols: Fixed diff.



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@360 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/802bfcfd8941ed09dbe95a38a723cc7e3dff4c96

Git commit 465f1377915aa92f197b65d6fa14f460b33e5c39 by Daniel Leidert on 12/08/2013 at 20:33..
* debian/control (Vcs-Browser, Vcs-Svn): Fixed vcs-field-not-canonical.


git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@361 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/465f1377915aa92f197b65d6fa14f460b33e5c39

Git commit da809ec4cb143850a14c7593d580087dad722657 by Daniel Leidert on 12/08/2013 at 21:12..
gpgme1.0 (1.4.3-0.1) unstable



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@365 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/da809ec4cb143850a14c7593d580087dad722657

Git commit 8ce22d6ced70fd83be369ddf7a7d5fbc73303dbd by Daniel Leidert on 12/08/2013 at 21:13..
gpgme1.0 (1.4.3-0.2) UNRELEASED



git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@367 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/8ce22d6ced70fd83be369ddf7a7d5fbc73303dbd

Git commit eae9c32bd9c80ca4a4ecf794808211808f2ebbdd by Werner Koch on 19/08/2013 at 18:38..
tests: Fix NULL ptr deref in gpgsm/t-verify.

* tests/gpgsm/t-verify.c (check_result): Do not dereference a sig or
sig->fpr if NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/eae9c32bd9c80ca4a4ecf794808211808f2ebbdd

Git commit 372bd439834c69d502668007c8c683233d676bd5 by Werner Koch on 19/08/2013 at 18:40..
Fix possible segv in the gpgme_op_card_edit.

* src/edit.c (gpgme_op_edit_start, gpgme_op_card_edit_start): Do not
deref a NULL KEY in TRACE_BEG.
https://invent.kde.org/neon/forks/gpgme/-/commit/372bd439834c69d502668007c8c683233d676bd5

Git commit b0aaa3f9aef36634b5c391812362f016114f02ba by Werner Koch on 19/08/2013 at 18:43..
Document API change for GPGME_EVENT_DONE from 2009.

* doc/gpgme.texi (I/O Callback Interface): Fix description for the
event arg.
--

With commit c8e934b2 (2009-10-26) gpgme_io_event_done_data_t was
introduced to replace the use of gpg_error_t with GPGME_EVENT_DONE.
Unfortunately this was not documented.  Maybe at that time the event
code was considered internal and its use in GPA was not known.  Too
bad.
https://invent.kde.org/neon/forks/gpgme/-/commit/b0aaa3f9aef36634b5c391812362f016114f02ba

Git commit 02ba35c1b6a2cbb3361b2f2ad507c53564b2be0b by Werner Koch on 27/12/2013 at 15:08..
Locate engine names only at runtime and prefer GnuPG-2.

* configure.ac (NEED_GPG_VERSION, NEED_GPGSM_VERSION)
(NEED_G13_VERSION, NEED_GPGCONF_VERSION): Remove vars and all related
checks.  Do not check for any engine version.
(HAVE_ASSUAN): Remove AM conditional.
* src/Makefile.am: Remove separate component vars and always build all
engines but uiserver.
* src/dirinfo.c (WANT_GPGCONF_NAME): New.
(struct dirinfo): Add field gpgconf_name.
(_gpgme_get_default_gpgconf_name): Use WANT_GPGCONF_NAME.
(get_gpgconf_item): Set gpgconf name and adjust for _gpgme_get_*_path
now returning a malloced string.
* src/engine.c (engine_ops): Always init all engines except for
uiserver.
* src/posix-util.c (_gpgme_get_gpgsm_path, _gpgme_get_g13_path):
Remove unused functions.
(walk_path): New.
(_gpgme_get_gpg_path, _gpgme_get_gpgconf_path ): Re-implement using
walk_path.
* src/w32-util.c (_gpgme_get_gpgsm_path, _gpgme_get_g13_path): Remove
unused functions.
(_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Return a malloced
string.
* src/engine-g13.c (g13_get_req_version): Use a hardwired string with
the required version.  This info belongs into this file.
* src/engine-gpg.c (gpg_get_req_version): Ditto.
* src/engine-gpgconf.c (gpgconf_get_req_version): Ditto.
* src/engine-gpgsm.c (gpgsm_get_req_version): Ditto.
* tests/t-engine-info.c: Replace now useless test by an info output.
* tests/gpg/Makefile.am (GPG, GPG_AGENT): Hardwire gpg and gpg-agent.
* tests/gpgsm/Makefile.am (GPGSM): Hardwire gpgsm.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/02ba35c1b6a2cbb3361b2f2ad507c53564b2be0b

Git commit 6564e5e78e8c6e5a120675a5699b5b75248cfbc7 by Werner Koch on 06/01/2014 at 16:16..
Add global flags disable-gpgconf, gpgconf-name, and gpg-name.

* src/gpgme.c (gpgme_set_global_flag): Add names "disable-gpgconf",
"gpgconf-name", and "gpg-name".
* src/dirinfo.c (_gpgme_dirinfo_disable_gpgconf): New.
(get_gpgconf_item): Minor debug info change.
* src/posix-util.c (default_gpg_name, default_gpgconf_name): Add vars.
(_gpgme_set_default_gpg_name): New.
(_gpgme_set_default_gpgconf_name): New.
(_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Use new vars.
(walk_path): Add debug output on failure.
* src/w32-util.c (default_gpg_name, default_gpgconf_name): Add vars.
(replace_slashes): New.
(get_basename): New.
(_gpgme_set_default_gpg_name): New.
(_gpgme_set_default_gpgconf_name): New.
(_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Use new vars.

* tests/t-engine-info.c (main): Add --verbose and --set-global-flag
options.
--

Note that the Windows part has not been tested.
https://invent.kde.org/neon/forks/gpgme/-/commit/6564e5e78e8c6e5a120675a5699b5b75248cfbc7

Git commit d63058b852b83515e7715103c04a684ecf59838a by Werner Koch on 07/01/2014 at 11:44..
Print the full PATH in the log if gpg was not found.

* src/posix-util.c (walk_path): Keep a copy of PATH.
https://invent.kde.org/neon/forks/gpgme/-/commit/d63058b852b83515e7715103c04a684ecf59838a

Git commit 121efcc5618374a1b4450b1d6a18bb3c35edb1fd by Werner Koch on 07/01/2014 at 12:32..
Make gpgme_new return a proper error if no engines are installed.

* src/engine.c (gpgme_get_engine_info): Improve error handling.
(_gpgme_engine_info_copy): Ditto.
* src/gpgme.c (gpgme_new): Return error GPG_ERR_NO_ENGINE.
https://invent.kde.org/neon/forks/gpgme/-/commit/121efcc5618374a1b4450b1d6a18bb3c35edb1fd

Git commit ab6e718327451e418782990c5a0a4e72588e3f0b by Werner Koch on 07/01/2014 at 16:59..
Make gpgconf engine work again - fixes 02ba35c1.

* src/gpgconf.c: Remove ENABLE_GPGCONF and move prototypes to ...
* src/engine-backend.h: ... here.
--

gpgconf is a required part for gpgme.
https://invent.kde.org/neon/forks/gpgme/-/commit/ab6e718327451e418782990c5a0a4e72588e3f0b

Git commit 74c0075ca2f37758d1c6fb1c59bf3f6e42b42770 by Werner Koch on 07/01/2014 at 17:08..
Set next version to 1.5.0

--
https://invent.kde.org/neon/forks/gpgme/-/commit/74c0075ca2f37758d1c6fb1c59bf3f6e42b42770

Git commit 1a504aab384947c1a6e949affd14bc696297fc8d by Werner Koch on 10/01/2014 at 16:40..
Use the generic autogen.sh script.

* autogen.rc: New.
* Makefile.am (EXTRA_DIST): Add it.
* autogen.sh: Update from GnuPG.

* configure.ac (AM_SILENT_RULES): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/1a504aab384947c1a6e949affd14bc696297fc8d

Git commit f916ab753b7d17210cd455666870038949f72851 by Werner Koch on 12/02/2014 at 19:36..
Fix type inconsistency between gpgme.h and gpgme.c.

* src/gpgme.c (gpgme_set_pinentry_mode): Fix type of MODE.
--

GnuPG-bug-id: 1617
https://invent.kde.org/neon/forks/gpgme/-/commit/f916ab753b7d17210cd455666870038949f72851

Git commit 651d9e1c6bc1cab248024c3850ef64698247588f by Werner Koch on 21/02/2014 at 10:22..
Always pass correct name to argv[0].  Ignore GPG_AGENT_INFO for gpg2.

* src/dirinfo.c (WANT_GPG_ONE_MODE): New.
(struct dirinfo): Add field "gpg_one_mode".
(get_gpgconf_item): Set that field and return it if requested.
(_gpgme_in_gpg_one_mode): New.
* src/engine-gpg.c (build_argv): Check GPG_AGENT_INFO only in gpg-1
mode.

* src/dirinfo.c (_gpgme_get_basename): New.
* src/engine-g13.c (g13_new): Take argv[0] from the pgmname.
* src/engine-gpgsm.c (gpgsm_new): Ditto.
* src/engine-gpg.c (build_argv): Ditto. Add arg PGMNAME.
(start): Pass PGMNAME to buildargv.
https://invent.kde.org/neon/forks/gpgme/-/commit/651d9e1c6bc1cab248024c3850ef64698247588f

Git commit 40938feb3f3393b0cdc6ec61ca2e77ff0b82c69a by Werner Koch (on behalf of Daiki Ueno) on 05/03/2014 at 07:16..
doc: Fix documentation of struct data types

* 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.
https://invent.kde.org/neon/forks/gpgme/-/commit/40938feb3f3393b0cdc6ec61ca2e77ff0b82c69a

Git commit 75a6255935f450d56f3637cbb2b6c8161ace57ab by Werner Koch on 11/03/2014 at 12:54..
Change implementation return type to match the definition.

* src/gpgme.c (gpgme_get_sub_protocol): Change return type to
gpgme_protocol_t.
--

Yet another enum/int mismatch.

Reported-by: Albert Chin.
https://invent.kde.org/neon/forks/gpgme/-/commit/75a6255935f450d56f3637cbb2b6c8161ace57ab

Git commit dd9c8c56719db093b8daa23aa40b2be71bbd1526 by Werner Koch on 11/03/2014 at 12:58..
Avoid pointer arithmetic on void pointer.

* src/gpgme.c (gpgme_io_writen): Use new var buffer.
--

Reported-by: Albert Chin
https://invent.kde.org/neon/forks/gpgme/-/commit/dd9c8c56719db093b8daa23aa40b2be71bbd1526

Git commit 766355b5d4f63261c428531fdbdafb8b67de9369 by Werner Koch on 13/03/2014 at 13:24..
Add configure option --enable-fixed-path.

* configure.ac: Add option --enable-fixed-path.
(FIXED_SEARCH_PATH): New ac_define.
* src/posix-util.c (walk_path): Make use of the option.  Remove
current directory from fallback PATH.
--

Note that using this option PATH is entirely ignored by GPGME and only
the given value is used instead to locate the GnuPG binaries.

On Android the use of PATH is not desirable.  Instead the GnuPG tools
are expected in a fixed directory.  By using

  ./configure --enable-fixed-path="/foo/bar"

gpg et al are expected to be installed as /foo/bar/gpg.  With

  ./configure --enable-fixed-path="/foo/bar:/bin"

gpg is expected as /foo/bar/gpg or /bin/gpg.
https://invent.kde.org/neon/forks/gpgme/-/commit/766355b5d4f63261c428531fdbdafb8b67de9369

Git commit 617d3be629229cbebfdc2d26a4e854bc4fe38a68 by Werner Koch on 10/04/2014 at 09:15..
Make sure a spawned process has all standard fds connected.

* src/posix-io.c (_gpgme_io_spawn): dup /dev/null also to unsued
stdout.
--

Better be sure that stdout of a spawned process is connected to stdout
so that the process does not run into a write error if it writes to
stdout.  AFAICS we always use a connected stdout; thus this is only
for correctness.
https://invent.kde.org/neon/forks/gpgme/-/commit/617d3be629229cbebfdc2d26a4e854bc4fe38a68

Git commit 443f6b76a964b77e2e61c03592a83ffa0a6da4b1 by Werner Koch on 10/04/2014 at 09:39..
Make use of internal iospawn flags more flexible.

* src/priv-io.h (IOSPAWN_FLAG_DETACHED): New. Renumber the others.
* src/w32-io.c (_gpgme_io_spawn): Use DETACHED_PROCESS process only if
IOSPAWN_FLAG_DETACHED is given.
* src/w32-qt-io.cpp (_gpgme_io_spawn): Ditto.
* src/w32-glib-io.c (_gpgme_io_spawn): Ditto.
* src/assuan-support.c (my_spawn): Pass IOSPAWN_FLAG_DETACHED flags.
* src/dirinfo.c (read_gpgconf_dirs): Ditto.
* src/engine-gpg.c (start): Ditto.
* src/engine-gpgconf.c (gpgconf_read, gpgconf_write): Ditto.
* src/version.c (_gpgme_get_program_version): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/443f6b76a964b77e2e61c03592a83ffa0a6da4b1

Git commit b788c36ec05f73da3ca71aab337432adb203ffd9 by Werner Koch on 10/04/2014 at 09:42..
Remove compiler warning from test

--
https://invent.kde.org/neon/forks/gpgme/-/commit/b788c36ec05f73da3ca71aab337432adb203ffd9

Git commit 77931a9a1468b0cfbaafd4153867d90764a6d258 by Werner Koch on 10/04/2014 at 09:48..
Add gpgme_get_dirinfo.

* src/dirinfo.c (gpgme_get_dirinfo): New.
* tests/t-engine-info.c (main): Print results from that function.
https://invent.kde.org/neon/forks/gpgme/-/commit/77931a9a1468b0cfbaafd4153867d90764a6d258

Git commit 4f2d652e60700e03809307a10015ff9003ac3579 by Werner Koch on 10/04/2014 at 11:01..
Add GPGME_PROTOCOL_SPAWN and gpgme_op_spawn.

* 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.
https://invent.kde.org/neon/forks/gpgme/-/commit/4f2d652e60700e03809307a10015ff9003ac3579

Git commit d3bd8fff863f62b6d0e228aea754efbbde861e9a by Werner Koch on 10/04/2014 at 12:17..
Actually implement flags for gpgme_op_spawn.

* 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].
https://invent.kde.org/neon/forks/gpgme/-/commit/d3bd8fff863f62b6d0e228aea754efbbde861e9a

Git commit 2bb26185e3b9a048033c559517d6ba7d2eb47066 by Werner Koch on 15/04/2014 at 10:25..
Fix possible zombie processes.

* src/posix-io.c (_gpgme_io_waitpid): Protect waitpid agains EINTR.
(_gpgme_io_dup): Likewise.
(_gpgme_io_connect): Likewise.
--

GnuPG-bug-id: 1630
https://invent.kde.org/neon/forks/gpgme/-/commit/2bb26185e3b9a048033c559517d6ba7d2eb47066

Git commit 85a07ca7e3dffdefc8ae74beebb59e47a6e6bd1b by Werner Koch on 15/04/2014 at 20:18..
w32: Fix memleak in an error code paths.

* src/w32-io.c (create_writer): Free CTX in cased of bad FD.
* src/w32-util.c (_gpgme_mkstemp): Free TMPNAME in case of a failed
mkstemp.
--

Found by Hans-Christoph Steiner with cppcheck.
https://invent.kde.org/neon/forks/gpgme/-/commit/85a07ca7e3dffdefc8ae74beebb59e47a6e6bd1b

Git commit 62711e5614e44e65a7c7bb7d21493d09d3081271 by Werner Koch on 16/04/2014 at 08:19..
w32: Fix another memleak on error.

* src/w32-io.c (create_reader): free CTX.
--

Found by Hans-Christoph Steiner with cppcheck.
https://invent.kde.org/neon/forks/gpgme/-/commit/62711e5614e44e65a7c7bb7d21493d09d3081271

Git commit 991cde9e79fec70aad093ded383c5574d30f9388 by Werner Koch on 08/05/2014 at 09:31..
Add GPGME_ENCRYPT_NO_COMPRESS flag.

* 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.
https://invent.kde.org/neon/forks/gpgme/-/commit/991cde9e79fec70aad093ded383c5574d30f9388

Git commit d5fb92cdaed21eea2f1a921e4f11df72635a8462 by Werner Koch on 08/05/2014 at 12:11..
Map public key algos returned by gpg to gpgme values.

* 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.
https://invent.kde.org/neon/forks/gpgme/-/commit/d5fb92cdaed21eea2f1a921e4f11df72635a8462

Git commit de4a1ea684e1591975feb801e7651309e1ee2c49 by Werner Koch on 08/05/2014 at 18:35..
Fix a memory access and a double slash bug.

* src/engine-spawn.c (engspawn_start): Allocate space for list
terminator.
* src/posix-util.c (walk_path): Fix trailing slash detection.
--

Kudos to Valgrind for pointing out these two problems.

The first is a plain allocation bug in a code pattern I have written
thousands of times - this time it went wrong.  The allocation is not
user controlled thus not directly exploitable.

The second is missed to do what it intended to do.  Found due to the
access of malloced but not initialized memory.  Not using calloc
again proved to be helpful to detect logical error.
https://invent.kde.org/neon/forks/gpgme/-/commit/de4a1ea684e1591975feb801e7651309e1ee2c49

Git commit 88f15336ec0eadde68ff2618349efb9006b8e801 by Werner Koch on 08/05/2014 at 18:39..
Add field CURVE to the key info.

* 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.
https://invent.kde.org/neon/forks/gpgme/-/commit/88f15336ec0eadde68ff2618349efb9006b8e801

Git commit de6caeed6d6432101c673c35717f152d5facf823 by Werner Koch on 13/05/2014 at 14:08..
Add 6 new GPGME_STATUS_ codes.

* src/status-table.c: Also add missing DECRYPTION_INFO entry.
https://invent.kde.org/neon/forks/gpgme/-/commit/de6caeed6d6432101c673c35717f152d5facf823

Git commit 0eca21113c1d1ab2aea58e1ea21075f472f99c23 by Werner Koch on 21/05/2014 at 07:08..
Release 1.5.0.

* configure.ac: Change LT version to C22/A11/R0.
https://invent.kde.org/neon/forks/gpgme/-/commit/0eca21113c1d1ab2aea58e1ea21075f472f99c23

Git commit ee0f17736ec18074700ae83cdf6821e5f8c19c7c by Werner Koch on 21/05/2014 at 07:43..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/ee0f17736ec18074700ae83cdf6821e5f8c19c7c

Git commit 4dc9af24156b4fd52c7b76e7522b9b7a64e5386a by Werner Koch on 04/06/2014 at 07:57..
Add new keylist mode GPGME_KEYLIST_MODE_WITH_SECRET.

* 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 >= 2.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/4dc9af24156b4fd52c7b76e7522b9b7a64e5386a

Git commit 86260b47c9e306e325103d1af767842357647e60 by Werner Koch on 10/06/2014 at 12:52..
Add new reason codes to the INV_RECP status code.

* src/op-support.c (_gpgme_parse_inv_recp): Add codes 13 and 14.
https://invent.kde.org/neon/forks/gpgme/-/commit/86260b47c9e306e325103d1af767842357647e60

Git commit efaf42205c5578c45bd1249cf777d893623eae35 by Werner Koch on 26/06/2014 at 08:41..
w32: Add comment about a compiler warning

--
https://invent.kde.org/neon/forks/gpgme/-/commit/efaf42205c5578c45bd1249cf777d893623eae35

Git commit 68116fa5f67238a60bb8be375cc959262fa021d3 by Werner Koch on 26/06/2014 at 08:42..
w32: Get IOSPAWN flag back in sync with spawn helper.

* src/gpgme-w32spawn.c: Include priv-io.h.
https://invent.kde.org/neon/forks/gpgme/-/commit/68116fa5f67238a60bb8be375cc959262fa021d3

Git commit 2cbd76f7911fc215845e89b50d6af5ff4a83dd77 by Werner Koch on 30/07/2014 at 09:04..
Fix possible realloc overflow for gpgsm and uiserver engines.

* src/engine-gpgsm.c (status_handler):
* src/engine-uiserver.c (status_handler):
--

After a realloc (realloc is also used for initial alloc) the allocated
size if the buffer is not correctly recorded.  Thus an overflow can be
introduced by receiving data with different line lengths in a specific
order.  This is not easy exploitable because libassuan constructs the
line.  However a crash has been reported and thus it might be possible
to constructs an exploit.

CVE-id: CVE-2014-3564
Reported-by: Tomáš Trnka
https://invent.kde.org/neon/forks/gpgme/-/commit/2cbd76f7911fc215845e89b50d6af5ff4a83dd77

Git commit 16835c3b5d1cea18512b2c93e884d8ca513a2ee7 by Werner Koch on 30/07/2014 at 09:47..
Release 1.5.1

* configure.ac: Change LT version to C24/A13/R0.
https://invent.kde.org/neon/forks/gpgme/-/commit/16835c3b5d1cea18512b2c93e884d8ca513a2ee7

Git commit bfe18a0651177025ff0a6b978a641bdd1472a0b1 by Werner Koch on 30/07/2014 at 10:03..
Post release updates.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/bfe18a0651177025ff0a6b978a641bdd1472a0b1

Git commit f20718dcbbfced4148b8f4f8fa90b10950ba3bc7 by Daniel Kahn Gillmor on 04/08/2014 at 20:44..
check upstream signatures (Closes: #752675)

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@416 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/f20718dcbbfced4148b8f4f8fa90b10950ba3bc7

Git commit 7c0662db26cf043cd577d4d53bfa0cd7c82fc63f by Daniel Kahn Gillmor on 04/08/2014 at 20:44..
mention new symbols from gpgme 1.5.0

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@417 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/7c0662db26cf043cd577d4d53bfa0cd7c82fc63f

Git commit e1918a55b608e3039a2f4a3a53322aaa85149994 by Daniel Kahn Gillmor on 04/08/2014 at 20:44..
add new upstream version 1.5.0 (Closes: #748096, #752683)

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@418 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/e1918a55b608e3039a2f4a3a53322aaa85149994

Git commit 62f463c7f6b6ea4e4a354a460cbdeed228be246d by Daniel Kahn Gillmor on 04/08/2014 at 20:55..
prepare for 1.5.1 release

git-svn-id: svn+ssh://svn.debian.org/svn/pkg-gnupg/gpgme/trunk@419 fd4925b8-9d26-44b1-8ad2-b04c603e9ac8
https://invent.kde.org/neon/forks/gpgme/-/commit/62f463c7f6b6ea4e4a354a460cbdeed228be246d

Git commit e5ab11607281b9838da2728268a8f9f0daa2b04d by Werner Koch on 12/08/2014 at 15:42..
gpgme-tool: Fix segv for external key listing.

* src/gpgme-tool.c (result_xml_escape): Allow for DATA being NULL.
https://invent.kde.org/neon/forks/gpgme/-/commit/e5ab11607281b9838da2728268a8f9f0daa2b04d

Git commit 488e44cdb531035fa8813b95b212f9728abc7e62 by Werner Koch on 12/08/2014 at 15:51..
gpgme-tool: Install gpgme-tool.

* src/Makefile.am (bin_PROGRAMS): New.  Add gpgme-tools.
(noinst_PROGRAMS): Remove.
https://invent.kde.org/neon/forks/gpgme/-/commit/488e44cdb531035fa8813b95b212f9728abc7e62

Git commit 3450bff52baef2c14118958cf79ead46940d58f0 by Werner Koch on 12/08/2014 at 16:47..
Handle modern keyserver output which may emit the fingerprint.

* src/engine-gpg.c (read_colon_line): Split preprocessed lines.
(gpg_keylist_preprocess): Limit keyid field and print fingerprint.
https://invent.kde.org/neon/forks/gpgme/-/commit/3450bff52baef2c14118958cf79ead46940d58f0

Git commit 4160ef90a1b1b778c735f31f98a6966ba3b3ea90 by Werner Koch on 12/08/2014 at 16:50..
gpgme-tool: Print fingerprint and keyid with keyservers.

* src/gpgme-tool.c (cmd_keylist): Print keyid.  Print FPR only if
available.
https://invent.kde.org/neon/forks/gpgme/-/commit/4160ef90a1b1b778c735f31f98a6966ba3b3ea90

Git commit d7487822321cb69f923568ad07ef4d5d49b295b2 by Daniel Kahn Gillmor on 30/08/2014 at 18:19..
Initial upstream branch
https://invent.kde.org/neon/forks/gpgme/-/commit/d7487822321cb69f923568ad07ef4d5d49b295b2

Git commit 988ad797a520b64635830bdeda16fd0db2ca704b by Daniel Kahn Gillmor on 30/08/2014 at 18:20..
Merge tag 'upstream/1.5.1'

Upstream version 1.5.1
https://invent.kde.org/neon/forks/gpgme/-/commit/988ad797a520b64635830bdeda16fd0db2ca704b

Git commit e757fac448ef4fe3fe2c857ce4f05f5ecf2d849e by Daniel Kahn Gillmor on 30/08/2014 at 18:20..
Imported Upstream version 1.5.1
https://invent.kde.org/neon/forks/gpgme/-/commit/e757fac448ef4fe3fe2c857ce4f05f5ecf2d849e

Git commit d1639bbd77da262fe9cdfcfe0d779afea8c472a7 by Daniel Kahn Gillmor on 30/08/2014 at 18:22..
wrap-and-sort for cleaner diffs later
https://invent.kde.org/neon/forks/gpgme/-/commit/d1639bbd77da262fe9cdfcfe0d779afea8c472a7

Git commit 8ca8d83f1e57597cb50f149c76f86c537b9f5ba1 by Daniel Kahn Gillmor on 30/08/2014 at 18:30..
store the upstream tarball in git cleanly
https://invent.kde.org/neon/forks/gpgme/-/commit/8ca8d83f1e57597cb50f149c76f86c537b9f5ba1

Git commit eef34c6948479aaefa9123e9b7aef5fb00a9e208 by Daniel Kahn Gillmor on 30/08/2014 at 20:05..
update Vcs- URLs to inidicate move to git
https://invent.kde.org/neon/forks/gpgme/-/commit/eef34c6948479aaefa9123e9b7aef5fb00a9e208

Git commit 52ae3786fb54b94336d11f545054247c30b4e922 by Daniel Kahn Gillmor on 30/08/2014 at 20:08..
prepare 1.5.1-2 release
https://invent.kde.org/neon/forks/gpgme/-/commit/52ae3786fb54b94336d11f545054247c30b4e922

Git commit dfd6de681d98a322a08175e24e5af0ccb70422c5 by Daniel Kahn Gillmor on 05/09/2014 at 21:20..
switch from autotools-dev to dh-autoreconf (Closes: #752831)
https://invent.kde.org/neon/forks/gpgme/-/commit/dfd6de681d98a322a08175e24e5af0ccb70422c5

Git commit c68e374ad271090a6a5d6d2e5189029617ce614b by Daniel Kahn Gillmor on 06/09/2014 at 21:19..
patch doc/gpl.texi to avoid complaints during rebuild
https://invent.kde.org/neon/forks/gpgme/-/commit/c68e374ad271090a6a5d6d2e5189029617ce614b

Git commit d6337d87831b680dbe17ca48093612dbb12ad2e0 by Daniel Kahn Gillmor on 07/09/2014 at 05:16..
add texinfo to build-depends to deal with the modified .texi
https://invent.kde.org/neon/forks/gpgme/-/commit/d6337d87831b680dbe17ca48093612dbb12ad2e0

Git commit b6ba4da0204686d21ff3451977dc8d33ab47733b by Daniel Kahn Gillmor on 08/09/2014 at 04:29..
sort debian/control properly
https://invent.kde.org/neon/forks/gpgme/-/commit/b6ba4da0204686d21ff3451977dc8d33ab47733b

Git commit a5cce73bb6516151d205d905523dc996780ffb64 by Daniel Kahn Gillmor on 08/09/2014 at 04:44..
require automake1.11 to try to avoid test failures during parallelized build. (Thanks, NIIBE Yutaka)
https://invent.kde.org/neon/forks/gpgme/-/commit/a5cce73bb6516151d205d905523dc996780ffb64

Git commit 8bfe9b9d581cfb1f85c1feece67349eb16b53791 by Daniel Kahn Gillmor on 09/09/2014 at 13:20..
corrected Vcs-Browser
https://invent.kde.org/neon/forks/gpgme/-/commit/8bfe9b9d581cfb1f85c1feece67349eb16b53791

Git commit 2ceed7a4f4948762af9fd63a874fa34e1aa05e9d by Daniel Kahn Gillmor on 09/09/2014 at 13:27..
ensure the same aclocal is used as automake

see http://lists.alioth.debian.org/pipermail/pkg-gnupg-maint/2014-September/001829.html
https://invent.kde.org/neon/forks/gpgme/-/commit/2ceed7a4f4948762af9fd63a874fa34e1aa05e9d

Git commit 63c6d557f450d762ae8e4a42e9d0a638301629c7 by Daniel Kahn Gillmor on 23/09/2014 at 16:34..
indicate that this change should address Andrew Lee's concern.
https://invent.kde.org/neon/forks/gpgme/-/commit/63c6d557f450d762ae8e4a42e9d0a638301629c7

Git commit 36997e0f746ce2d38de997055141542583cc0f52 by Werner Koch (on behalf of Daniel Kahn Gillmor) on 24/09/2014 at 12:44..
Clean up gpgme's tests/gpg when gpg2.1 is available

* tests/gpg/Makefile.am: Clean up .gpg-v21-migrated
--

We also need to gitignore this file.
https://invent.kde.org/neon/forks/gpgme/-/commit/36997e0f746ce2d38de997055141542583cc0f52

Git commit 2e8ecc24cf74f918c303c315da3bb18636a5e288 by Werner Koch on 24/09/2014 at 12:46..
tests: Delay some test file extraction until "make check".

* tests/gpg/Makefile.am (all-local): Change to check-local.
* tests/gpgsm/Makefile.am (all-local): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/2e8ecc24cf74f918c303c315da3bb18636a5e288

Git commit cde19f94d60145309494a929633fc24a8c3d2c9c by Werner Koch on 24/09/2014 at 12:48..
Add ftp and git URLs to AUTHORS.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/cde19f94d60145309494a929633fc24a8c3d2c9c

Git commit 7273ab387a7b4c44cae8d94711c4991e7754bc95 by Werner Koch on 24/09/2014 at 13:24..
Register DCO for Daniel Kahn Gillmor.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/7273ab387a7b4c44cae8d94711c4991e7754bc95

Git commit b3309f997c541d7150827a659bffc38bc9f685fe by Werner Koch (on behalf of Daniel Kahn Gillmor) on 02/10/2014 at 13:20..
Use --no-sk-comments, not --no-sk-comment.

--
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
https://invent.kde.org/neon/forks/gpgme/-/commit/b3309f997c541d7150827a659bffc38bc9f685fe

Git commit 4027a0a89724df3aeef8a964c529548d724b6a5a by Werner Koch on 02/10/2014 at 13:57..
build: Implement SYSROOT feature.

* configure.ac: Document SYSROOT.
* m4/gpg-error.m4: Update from libgpg-error master.
* src/gpgme.m4: Implement SYSROOT stuff.
https://invent.kde.org/neon/forks/gpgme/-/commit/4027a0a89724df3aeef8a964c529548d724b6a5a

Git commit 8031341283f4fcb1f226aa6f66bc5a6042586815 by Werner Koch on 06/11/2014 at 14:59..
Improve the debug output a bit.

* src/debug.h (TRACE_ERR): Include the line number in the output.
https://invent.kde.org/neon/forks/gpgme/-/commit/8031341283f4fcb1f226aa6f66bc5a6042586815

Git commit a9ae0d142864a91d732a8f215e4ccdc791309335 by Werner Koch on 19/11/2014 at 10:53..
doc: Clarify the FILE command.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/a9ae0d142864a91d732a8f215e4ccdc791309335

Git commit 5942b0c7e0593b82b4c4a142c214d7a2649de104 by Werner Koch (on behalf of Ben Kibbey) on 21/11/2014 at 19:25..
Fix returning new signatures when there are none.

* src/sign.c (gpgme_op_sign_result): Test that invalid and valid
signatures add up to gpgme_signers_count().
--

When invalid and valid signatures do not equal gpgme_signers_count() it
means that there was a bad passphrase during signing after the first
signer. This leaves the result.signatures from previous signers intact
which isn't correct since gpg will report:

gpg: number of one-pass packets does not match number of signature
packets
gpg: can't handle this ambiguous signature data

during verify. So when this happens append the valid signatures to the
.invalid_signers list with .reason set to GPG_ERR_GENERAL.
https://invent.kde.org/neon/forks/gpgme/-/commit/5942b0c7e0593b82b4c4a142c214d7a2649de104

Git commit 81ce87111f5a3f966188629abb07a4d0702e6db0 by Werner Koch on 21/11/2014 at 20:12..
Update the previous commit

* src/sign.c (gpgme_op_sign_result): Reformat and take care of failed
malloc.
--

Although _gpgme_debug_trace() is current always true, the code should
be run always and not just in trace mode.  Also added error checking
to malloc and strdup.  And while at replace some while by for loop for
easier readability.
https://invent.kde.org/neon/forks/gpgme/-/commit/81ce87111f5a3f966188629abb07a4d0702e6db0

Git commit c62ce32b9c01ee9ceb1d69e7344fb79a9162d232 by Werner Koch on 21/11/2014 at 20:19..
Release 1.5.2.

* configure.ac: Set LT version to C24/A13/R1.
https://invent.kde.org/neon/forks/gpgme/-/commit/c62ce32b9c01ee9ceb1d69e7344fb79a9162d232

Git commit 162c87f069ebeecec4244fdfe56a19c566641356 by Werner Koch on 21/11/2014 at 20:29..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/162c87f069ebeecec4244fdfe56a19c566641356

Git commit 05258d427513a933f01d4df13aca834d797f91e7 by Werner Koch on 08/12/2014 at 10:19..
Return an error for some export key operations.

* src/context.h (OPDATA_EXPORT): New.
* src/export.c (op_data_t): New.
(release_op_data): New.
(parse_error): New.
(export_status_handler): New.
(export_start, export_ext_start): Prepare op_data.
(gpgme_op_export_ext, gpgme_op_export_keys): Return an error from the
status handler.
--

To support an error return also for the async functions we need to
extend the API.  Until we have done that this new features helps at
least in some cases; in particular for --send-keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/05258d427513a933f01d4df13aca834d797f91e7

Git commit 37d927a9706fff6d8ef8d45073984ea2f92afb31 by Werner Koch on 11/12/2014 at 11:07..
Release 1.5.3.

* configure.ac: Set LT version to C24/A13/R2.
https://invent.kde.org/neon/forks/gpgme/-/commit/37d927a9706fff6d8ef8d45073984ea2f92afb31

Git commit a813c09cc792bfeed945f8573e4fd36da99a88c8 by Werner Koch on 11/12/2014 at 11:56..
Post release updates.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/a813c09cc792bfeed945f8573e4fd36da99a88c8

Git commit c34fa4a342691112fc3235190297a7cb6584be7d by Daniel Kahn Gillmor on 12/12/2014 at 21:56..
making experimental branch for newer versions of libgpgme during the freeze
https://invent.kde.org/neon/forks/gpgme/-/commit/c34fa4a342691112fc3235190297a7cb6584be7d

Git commit 0d140794d501c237d0eaf7f48710715776d8b3b8 by Daniel Kahn Gillmor on 12/12/2014 at 21:56..
Imported Upstream version 1.5.2
https://invent.kde.org/neon/forks/gpgme/-/commit/0d140794d501c237d0eaf7f48710715776d8b3b8

Git commit c8b306a770154c72248b548035e0da0bf6b0e928 by Daniel Kahn Gillmor on 12/12/2014 at 21:56..
Merge tag 'upstream/1.5.2' into experimental

Upstream version 1.5.2
https://invent.kde.org/neon/forks/gpgme/-/commit/c8b306a770154c72248b548035e0da0bf6b0e928

Git commit fde147db8eeed04890735dd9ed9176f330e571bc by Daniel Kahn Gillmor on 12/12/2014 at 21:57..
Imported Upstream version 1.5.3
https://invent.kde.org/neon/forks/gpgme/-/commit/fde147db8eeed04890735dd9ed9176f330e571bc

Git commit 5f0cef8199e82cf2107efaa790dd851b443f9b75 by Daniel Kahn Gillmor on 12/12/2014 at 21:57..
Merge tag 'upstream/1.5.3' into experimental

Upstream version 1.5.3
https://invent.kde.org/neon/forks/gpgme/-/commit/5f0cef8199e82cf2107efaa790dd851b443f9b75

Git commit 214ea4ab2007c547ee7c0cb1aeb1ab14b48413e8 by Daniel Kahn Gillmor on 12/12/2014 at 22:22..
setting up experimental gpgme branch
https://invent.kde.org/neon/forks/gpgme/-/commit/214ea4ab2007c547ee7c0cb1aeb1ab14b48413e8

Git commit 275da66b5600b76833367af7ca240efc91cedbb8 by Daniel Kahn Gillmor on 12/12/2014 at 22:22..
ship /usr/bin/gpgme-tool in the -dev package.
https://invent.kde.org/neon/forks/gpgme/-/commit/275da66b5600b76833367af7ca240efc91cedbb8

Git commit c32fab44f86921ef3f6d42e128e8ba6d287a7718 by Werner Koch (on behalf of Daniel Kahn Gillmor) on 15/12/2014 at 10:55..
doc: Update gpl.texi to match version from gnupg

--

Somehow the doc/gpl.texi from gpgme and gnupg drifted out of sync.
This patch to gpgme's file brings it in line with gnupg's master
branch, and avoids the following errors during make:

./gpl.texi:667: @section seen before @end enumerate
./gpl.texi:724: unmatched `@end enumerate'
./gpl.texi:1: warning: node next `Copying' in menu `Concept Index'
   and in sectioning `Function and Data Index' differ
https://invent.kde.org/neon/forks/gpgme/-/commit/c32fab44f86921ef3f6d42e128e8ba6d287a7718

Git commit 428ea7696585bc24d127b903840554ca659069b6 by Werner Koch on 30/01/2015 at 09:45..
Switch to automake 1.14 and update  build-aux files.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/428ea7696585bc24d127b903840554ca659069b6

Git commit 119f27032b822ace8c012b96f9e41bcf23251a54 by Werner Koch on 16/03/2015 at 12:38..
Fix one byte too short malloc.

* src/engine-spawn.c (add_data): Fix malloc
--

Bummer.  Why did I subtracted one from the size?  Did I assume a
dynamically allocated structure with a string field which was not
going to be used?  Very strange.

Not a real problem though because malloc will anyway round up the
allocation to at least the next word size.

Detected by Stack 0.3.
https://invent.kde.org/neon/forks/gpgme/-/commit/119f27032b822ace8c012b96f9e41bcf23251a54

Git commit 8cfcdfe5564f87362e5ec1bfdca5c14aed9c45f0 by Werner Koch on 16/03/2015 at 12:40..
Fix potential crash in trace macro.

* 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 <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8cfcdfe5564f87362e5ec1bfdca5c14aed9c45f0

Git commit 524dacfbb6bb131f05a4ecab3d7bcd91c1b43d33 by Werner Koch on 13/04/2015 at 13:35..
w32: Use -static-libgcc to avoid linking to libgcc_s_sjlj-1.dll.

* src/Makefile.am (extra_ltoptions): New.
(libgpgme_la_LDFLAGS): Use it.
(libgpgme_pthread_la_LDFLAGS): Ditto.
(libgpgme_glib_la_LDFLAGS): Ditto.
--

Since gcc 4.8 there is a regression in Mingw64 in that plain C
programs may link to libgcc_s.a which has a dependency on
libgcc_s_sjlj.dll.  This is for example triggered by using long long
arithmetic on a 32 bit Windows (e.g symbol __udivdi3).

Note that we don't use this patch for the Qt version which, as C++
programs, actually requires that DLL,

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/524dacfbb6bb131f05a4ecab3d7bcd91c1b43d33

Git commit d2712d9f6f086911184453219a096c61f6829d3b by Werner Koch on 13/04/2015 at 13:43..
Release 1.5.4.
https://invent.kde.org/neon/forks/gpgme/-/commit/d2712d9f6f086911184453219a096c61f6829d3b

Git commit 7dcb65428116e76cba9c5b171a653e791a5efaf1 by Werner Koch on 13/04/2015 at 13:50..
Post release updates.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/7dcb65428116e76cba9c5b171a653e791a5efaf1

Git commit 5e26d336a0fe13a71124906a0e55a957a70eb25c by Daniel Kahn Gillmor on 14/04/2015 at 14:48..
include upstream-vcs for git-importorig
https://invent.kde.org/neon/forks/gpgme/-/commit/5e26d336a0fe13a71124906a0e55a957a70eb25c

Git commit 0d22daf772842c05a4025ae76b0a1dc9706e8817 by Daniel Kahn Gillmor on 14/04/2015 at 14:49..
convert to gbp-pq
https://invent.kde.org/neon/forks/gpgme/-/commit/0d22daf772842c05a4025ae76b0a1dc9706e8817

Git commit 6f8fb39657f98595decfcc6f2a4a5598cae7c91a by Daniel Kahn Gillmor on 14/04/2015 at 14:51..
Imported Upstream version 1.5.4
https://invent.kde.org/neon/forks/gpgme/-/commit/6f8fb39657f98595decfcc6f2a4a5598cae7c91a

Git commit 983150cb9c8c8e7260c82c73808dd33833a5902e by Daniel Kahn Gillmor on 14/04/2015 at 14:51..
Merge tag 'upstream/1.5.4' into experimental

Upstream version 1.5.4
https://invent.kde.org/neon/forks/gpgme/-/commit/983150cb9c8c8e7260c82c73808dd33833a5902e

Git commit f757ffd54bb102bf87de3cd54825621829bdd234 by Daniel Kahn Gillmor on 14/04/2015 at 14:53..
preparing to package 1.5.4 from upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/f757ffd54bb102bf87de3cd54825621829bdd234

Git commit 565f7a8629291837b154ac1b079a95976e698ddf by Daniel Kahn Gillmor on 14/04/2015 at 14:55..
dropped patch applied upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/565f7a8629291837b154ac1b079a95976e698ddf

Git commit 81d327d0e494f02ca844e24046ee72dd6657662d by Daniel Kahn Gillmor on 14/04/2015 at 15:00..
moved to automake 1.14
https://invent.kde.org/neon/forks/gpgme/-/commit/81d327d0e494f02ca844e24046ee72dd6657662d

Git commit 8d57b0f9e3b2186a2d06f2021207057845078b17 by Daniel Kahn Gillmor on 14/04/2015 at 15:01..
moving list of files to clean to debian/clean
https://invent.kde.org/neon/forks/gpgme/-/commit/8d57b0f9e3b2186a2d06f2021207057845078b17

Git commit c6103f6cb656ce1b69caa0e9485e67f9e0c8d0f4 by Daniel Kahn Gillmor on 14/04/2015 at 15:02..
get rid of the agent socket as well
https://invent.kde.org/neon/forks/gpgme/-/commit/c6103f6cb656ce1b69caa0e9485e67f9e0c8d0f4

Git commit b5c2ed013fc8b4a553e06d5cce5347cf89d65cbe by Daniel Kahn Gillmor on 14/04/2015 at 15:26..
remove libpth-dev from libgpgme11-dev dependencies; has not been used since after 1.3
https://invent.kde.org/neon/forks/gpgme/-/commit/b5c2ed013fc8b4a553e06d5cce5347cf89d65cbe

Git commit 8424c6aba7f55616c9965608c9340769842280f1 by Daniel Kahn Gillmor on 14/04/2015 at 15:27..
bump standards version (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/8424c6aba7f55616c9965608c9340769842280f1

Git commit abc35ff7b3fa61f6f1e6924d6056b6be6438ff4e by Daniel Kahn Gillmor on 14/04/2015 at 15:27..
debian/control: updated Homepage
https://invent.kde.org/neon/forks/gpgme/-/commit/abc35ff7b3fa61f6f1e6924d6056b6be6438ff4e

Git commit ebd8734ad705afa4edc409787a00d4968d25e018 by Ben McGinnes on 05/05/2015 at 17:09..
Python 3 port of PyME

* The entirety of the Python 3 port of PyME up to commit
  2145348ec54c6027f2ea20f695de0277e2871405
* The old commit log has been saved as
  lang/py3-pyme/docs/old-commits.log
* Can be viewed as a normal (separate) git repository at
  https://github.com/adversary-org/pyme3
* Utilising the submodule feature of git was deliberately skipped on
  humanitarian grounds (in order to prevent pain and suffering on the
  part of anyone having to manage this repository).
https://invent.kde.org/neon/forks/gpgme/-/commit/ebd8734ad705afa4edc409787a00d4968d25e018

Git commit 90079786c5cde4dd8ceb2e0fcda7605b08ccd021 by Ben McGinnes on 08/05/2015 at 18:53..
String type

* the plain text string must be bytes and not unicode.
* Expect most of the example code to have similar issues at present.
https://invent.kde.org/neon/forks/gpgme/-/commit/90079786c5cde4dd8ceb2e0fcda7605b08ccd021

Git commit 4fc123981514c7087114e08ee8ca63de1a1db59f by Ben McGinnes on 16/05/2015 at 16:30..
Updated string and key data

* Text changed to byte literals.
* Changed key type to RSA/RSA.
* Changed expiry to the future (2020).
https://invent.kde.org/neon/forks/gpgme/-/commit/4fc123981514c7087114e08ee8ca63de1a1db59f

Git commit 8345bf6f43c4f671124eaa1b713a7f5ac5780cbd by Ben McGinnes on 16/05/2015 at 16:35..
example email

* changed joe at foo.bar to joe at example.org as it is only a matter of time
  before ICANN actually creates bar as a gTLD, if they haven't already.
https://invent.kde.org/neon/forks/gpgme/-/commit/8345bf6f43c4f671124eaa1b713a7f5ac5780cbd

Git commit 24c738f5bb5c253a17962c62867d6c847250b41e by Ben McGinnes on 16/05/2015 at 16:38..
Passphrase update

* Changed example passphrase to something that meets the current minimum
  requirements.
https://invent.kde.org/neon/forks/gpgme/-/commit/24c738f5bb5c253a17962c62867d6c847250b41e

Git commit 1c87ecb86ae364b18f69bca726021271fefaa1c1 by Ben McGinnes on 16/05/2015 at 18:03..
Updated encrypt-to-all

* Changed plaintext string to byte literal.
* Nested key selection in a try/except statement in case of
  UnicodeEncodeError instances.
* Tested successfully on over 9,000 keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/1c87ecb86ae364b18f69bca726021271fefaa1c1

Git commit ba3c9f2617955dc828309a4800e4f5b3f1c3a949 by Ben McGinnes on 16/05/2015 at 18:09..
More bytes good

* Another string to byte change.
https://invent.kde.org/neon/forks/gpgme/-/commit/ba3c9f2617955dc828309a4800e4f5b3f1c3a949

Git commit 325b0ca341ae3ac8c3232f557ea2c381b4843969 by Ben McGinnes on 16/05/2015 at 18:22..
More byte changes and passphrase changes

* exportimport works, but will still segfault for an as yet unknown
  reason.
* genkey produces a traceback error, but does create the key as
  intended.
* matched passphrase in signverify.
https://invent.kde.org/neon/forks/gpgme/-/commit/325b0ca341ae3ac8c3232f557ea2c381b4843969

Git commit 40290507bcdc63ab9023393d071167d455d70737 by Ben McGinnes on 16/05/2015 at 18:43..
Strings vs. Bytes

* CLI input must be byte encoded.
https://invent.kde.org/neon/forks/gpgme/-/commit/40290507bcdc63ab9023393d071167d455d70737

Git commit 0e6e6689ef1aea36c1cb3cb47e94f1f2ebbd97cb by Ben McGinnes on 16/05/2015 at 18:57..
No change, note added to explain why.
https://invent.kde.org/neon/forks/gpgme/-/commit/0e6e6689ef1aea36c1cb3cb47e94f1f2ebbd97cb

Git commit c39cea7a07cec9ab34cd2026f47b6fba80fea3c8 by Ben McGinnes on 16/05/2015 at 19:07..
Byte encoding

* More string updates.
* verifydetails.py still fails, but as Bernhard is still contactable, it
  might be worth him checking on it instead.
https://invent.kde.org/neon/forks/gpgme/-/commit/c39cea7a07cec9ab34cd2026f47b6fba80fea3c8

Git commit 29887c9b28c0db14bf75e227a8082d23a2c151d2 by Ben McGinnes on 16/05/2015 at 19:14..
Explaining why not all scripts work

* Some of them cannot be properly tested on OS X, especially with GTK in
  the mix (it works on OS X, but is unlikely to be as easily accessible
  as Cocoa or Qt).
* Most major functions are showcased and do work, albeit sometimes with
  false positives of error messages, at least on OS X.
https://invent.kde.org/neon/forks/gpgme/-/commit/29887c9b28c0db14bf75e227a8082d23a2c151d2

Git commit 90405ac84b78ba7e5458ea09986749594a01195a by Ben McGinnes on 16/05/2015 at 19:31..
Python 3 port of PyME

* Port of PyME 0.9.0 for Python 2 to Python 3 along with most of the
  example scripts.
* Intended to be developed in parallel with the original Python 2
  version until such time as a rewrite of GPGME leads to developing an
  IO API in Python 3 from scratch.
* Python 3 PyME and API maintainer has entered, stage left with current
  GPG key ID 0x321E4E2373590E5D, primary fingerprint is "DB47 24E6 FA42
  86C9 2B4E  55C4 321E 4E23 7359 0E5D" and signing subkey fingerprint is
  "B7F0 FE75 9387 430D D0C5  8BDB 7FF2 D371 35C7 553C" for future
  reference with git commit signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/90405ac84b78ba7e5458ea09986749594a01195a

Git commit edced53627b32442f8505f1ef97827f4f9e077a7 by Daniel Kahn Gillmor on 02/06/2015 at 18:41..
plan upload to unstable instead of experimental
https://invent.kde.org/neon/forks/gpgme/-/commit/edced53627b32442f8505f1ef97827f4f9e077a7

Git commit 85bef80a3238211910d6bc099337aed2ba6bc824 by Daniel Kahn Gillmor on 02/06/2015 at 19:33..
remove attempt to identify tools at runtime

upstream dropped this configuration option between 1.4.3 and 1.5.0 (in
02ba35c1b6a2cbb3361b2f2ad507c53564b2be0b).
https://invent.kde.org/neon/forks/gpgme/-/commit/85bef80a3238211910d6bc099337aed2ba6bc824

Git commit 0d28a696163677d6b34a802b6beddecd805d0fc7 by Werner Koch on 05/06/2015 at 12:25..
Fix segv for userids with a backslash.

* 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 <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0d28a696163677d6b34a802b6beddecd805d0fc7

Git commit 87d713ff41454bd08a345c63605f6fc7ac854dd4 by Werner Koch (on behalf of Matthew Barnes) on 05/06/2015 at 12:58..
Set GPGME_SIGSUM_KEY_REVOKED also for gpg.

* src/verify.c (calc_sig_summary): Handle GPG_ERR_CERT_REVOKED.

--

parse_new_sig() handles a revoked key by setting sig->status to
GPG_ERR_CERT_REVOKED, but then later calc_sig_summary() expects that
code in sig->validity_reason.

Additional comments added by wk.
https://invent.kde.org/neon/forks/gpgme/-/commit/87d713ff41454bd08a345c63605f6fc7ac854dd4

Git commit a5b040cc57c65b3d105666b90c7eb59ee6ff3882 by Werner Koch on 08/06/2015 at 08:43..
Fix test suite for GnuPG 2.1 which uses pubring.kbx.

* tests/gpgsm/final.test: New.
* tests/gpgsm/initial.test: New.
* tests/gpg/start-stop-agent: Move to ../.
* tests/gpgsm/Makefile.am (TESTS_ENVIRONMENT): Export top_srcdir.
(TESTS): Add intial.test and final.test.
(AM_LDFLAGS): Add -no-install.
(clean-local): Use start-stop-agent
(initial.test): Add dependency.
* tests/gpg/Makefile.am (top_srcdir): Export top_srcdir.
(AM_LDFLAGS): Add -no-install.
(check-local): Depend on pubring-stamp instead of pubring.gpg.
(initial.test): Depend on check-local.
(./pubring-gpg): Replace by rule for ./pubring-stamp.
--

There are also a couple of other changes which should make the tests a
bit more robust and the gpg and gpgsm tests more similar.

The -no-install avoids creating wrappers for test programs, which make
debugging easier.

The dependency on check-local guarantees that its rules are run before
the first test.  This is important because conf files are setup by
this rule.  Earlier automake versions seem to have run check-local
always before the tests but today the order of execution is not
defined.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a5b040cc57c65b3d105666b90c7eb59ee6ff3882

Git commit 8b9f84828cd04a7dab37e219123edc1905da8e6b by Werner Koch on 08/06/2015 at 09:08..
Fix compiler warnings about unused value in TRACE macros.

* src/debug.h: Change macros to not have a literal 0 as last
expression of the comma operator.
* src/debug.c (_gpgme_debug_frame_end): Return 0.
(_gpgme_debug): Return 0.
--

Instead of using
   foo(), 0
for the trace macros we let foo() return 0 instead.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8b9f84828cd04a7dab37e219123edc1905da8e6b

Git commit 7addffc0826e7f36afcc7f66268e9ee2a37e2042 by Werner Koch on 08/06/2015 at 10:30..
tests: Add option --secret to run-keylist.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7addffc0826e7f36afcc7f66268e9ee2a37e2042

Git commit ddbd54ef881bd2c3481d62b89bef7241667b64ee by Werner Koch on 08/06/2015 at 10:34..
Fix regression with gpgsm 2.0 due to "OPTION with-secret".

* src/engine-gpgsm.c (gpgsm_assuan_simple_command): Do not terminate
on a status lines.
--

This bug has been with us since the support for gpgsm: If there is no
status line handler but a status line is received anyway the command
handling loop terminates and thus the command/answer order gets out of
sync.  In the case of the bug report this is triggered by sending an
option which starts the agent and that starting emits a "PROGRESS"
status line.

The solution is not to stop reading after a status line but record a
possible error code and return that only after OK or ERR.

GnuPG-bug-id: 1795
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ddbd54ef881bd2c3481d62b89bef7241667b64ee

Git commit 052a9e3c5671d1ab69551f7b0abd0bbf859d4aba by Werner Koch on 08/06/2015 at 13:03..
Release 1.5.5
https://invent.kde.org/neon/forks/gpgme/-/commit/052a9e3c5671d1ab69551f7b0abd0bbf859d4aba

Git commit a5d9e018b8826e97c9fcc548c8e9e797bbc8d6db by Werner Koch on 08/06/2015 at 13:18..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/a5d9e018b8826e97c9fcc548c8e9e797bbc8d6db

Git commit 376adcda2fb8a30f6103d5f49adca40ede4e6a37 by Daniel Kahn Gillmor on 11/06/2015 at 22:17..
Imported Upstream version 1.5.5
https://invent.kde.org/neon/forks/gpgme/-/commit/376adcda2fb8a30f6103d5f49adca40ede4e6a37

Git commit 78bebf68476af2e69110178b342ec1ce398f4fd8 by Daniel Kahn Gillmor on 11/06/2015 at 22:17..
Merge tag 'upstream/1.5.5'

Upstream version 1.5.5
https://invent.kde.org/neon/forks/gpgme/-/commit/78bebf68476af2e69110178b342ec1ce398f4fd8

Git commit 8d3c6bad10d5de00acfbbfe76d80b97d684bff90 by Daniel Kahn Gillmor on 11/06/2015 at 22:17..
all our platforms should support fd-passing, no reason to disable
https://invent.kde.org/neon/forks/gpgme/-/commit/8d3c6bad10d5de00acfbbfe76d80b97d684bff90

Git commit b38683f330043f812b336b5c1435a66cc5a204da by Daniel Kahn Gillmor on 11/06/2015 at 22:18..
preparing 1.5.5-1 for release
https://invent.kde.org/neon/forks/gpgme/-/commit/b38683f330043f812b336b5c1435a66cc5a204da

Git commit b4e4803f310393b6914158eb20c1a8c1e59f2762 by Daniel Kahn Gillmor on 11/06/2015 at 22:29..
use autoreconf
https://invent.kde.org/neon/forks/gpgme/-/commit/b4e4803f310393b6914158eb20c1a8c1e59f2762

Git commit ae843eb4cdcaf1b31f2db8e06931097373559b3b by Daniel Kahn Gillmor on 11/06/2015 at 22:36..
ensure we get a simple manpage for gpgme-tool
https://invent.kde.org/neon/forks/gpgme/-/commit/ae843eb4cdcaf1b31f2db8e06931097373559b3b

Git commit fc01496f78b52db37e8d2a0cc7965d30a6bf592e by Daniel Kahn Gillmor on 17/06/2015 at 12:21..
use installed libgpgme to get help2man to work on minimal build systems.  Thanks, James Cowgill! (Closes: #789042)
https://invent.kde.org/neon/forks/gpgme/-/commit/fc01496f78b52db37e8d2a0cc7965d30a6bf592e

Git commit 6cb5c4a4afe6c9b7b0500845bed96dab92fcadb6 by Daniel Kahn Gillmor on 08/07/2015 at 17:19..
reproducibility: remove BUILD_TIMESTAMP
https://invent.kde.org/neon/forks/gpgme/-/commit/6cb5c4a4afe6c9b7b0500845bed96dab92fcadb6

Git commit c23f8897105ce2bb6e62d9c44ca0779fcc08a919 by Werner Koch on 23/07/2015 at 09:40..
Add option --lib-version to gpgme-tool.

* src/gpgme-tool.c (options, parse_options):  Add --lib-version
(CMD_LIBVERSION): New.
(main): Implement.
https://invent.kde.org/neon/forks/gpgme/-/commit/c23f8897105ce2bb6e62d9c44ca0779fcc08a919

Git commit 157c8be183153ff588f98874a3205aa483d0fd23 by Werner Koch (on behalf of Peter Wu) on 23/07/2015 at 13:05..
build: ignore scissor line for the commit-msg hook

* build-aux/git-hooks/commit-msg: Stop processing more lines when the
  scissor line is encountered.
--
This allows the command `git commit -v` to work even if the code is
longer than 72 characters. Note that comments are already ignored by the
previous line.

Signed-off-by: Peter Wu <peter at lekensteyn.nl>
https://invent.kde.org/neon/forks/gpgme/-/commit/157c8be183153ff588f98874a3205aa483d0fd23

Git commit 08086dd6901740e155e4361212b4e9cff8a47296 by Werner Koch (on behalf of Andre Heinecke) on 31/07/2015 at 13:18..
Add offline mode support for CMS keylisting

* 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 <aheinecke at intevation.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/08086dd6901740e155e4361212b4e9cff8a47296

Git commit 1cd0aef0afb196094d90673002d4c210a04911c9 by Ben McGinnes on 02/08/2015 at 01:01..
Removed GUI examples

* GUI examples written with pygtk, which has not been ported to Python
  3 and won't be as it is for GTK2 and GNOME is moving to GTK3.
* New GUI examples may be required in future using any of several GUI
  frameworks (e.g. wxPython, PyQt, PySide, PyGObject, etc.).
https://invent.kde.org/neon/forks/gpgme/-/commit/1cd0aef0afb196094d90673002d4c210a04911c9

Git commit a7fbd5293ed0ba2c179837a4a2b859376d30e35e by Ben McGinnes on 02/08/2015 at 01:06..
More GTK2 removal

* Missed a couple of files, these 2 go for the same reason as the
  previous 3.
https://invent.kde.org/neon/forks/gpgme/-/commit/a7fbd5293ed0ba2c179837a4a2b859376d30e35e

Git commit 8f28e3caf95d7bc99e9271bfc2b44080166af31f by Ben Kibbey on 11/08/2015 at 01:23..
Check the return value when starting gpg.

* src/engine-gpg.c (gpg_decrypt, gpg_delete, gpg_passwd): Check return
value of start().
https://invent.kde.org/neon/forks/gpgme/-/commit/8f28e3caf95d7bc99e9271bfc2b44080166af31f

Git commit e07d38f5f9f3b94e403f1265ff7fd3d7009dd557 by Ben Kibbey on 12/08/2015 at 10:46..
Also check the return code in gpg_sign().

* src/engine-gpg.c (gpg_sign): Check return value from start().
https://invent.kde.org/neon/forks/gpgme/-/commit/e07d38f5f9f3b94e403f1265ff7fd3d7009dd557

Git commit 2b6ae3dadf4432f7a72fd119144b835f7b1adcc4 by Ben Kibbey on 15/08/2015 at 22:17..
Make use of user passphrase handler during genkey.

* src/genkey.c (genkey_start): set engine passphrase command handler.

--
This allows for inquiring a new passphrase during key generation rather
than requiring a pinentry. Needs a patch to gnupg to make use of
--command-fd with --gen-key.
https://invent.kde.org/neon/forks/gpgme/-/commit/2b6ae3dadf4432f7a72fd119144b835f7b1adcc4

Git commit 4fadcf06ec8b0ebfb05c7622dbc3b73fd3c1bad9 by Ben Kibbey on 15/08/2015 at 22:19..
Add gpgme_set/get_status_cb().

* src/gpgme.h.in (gpgme_set_status_cb): New.
(gpgme_get_status_cb): New.
(gpgme_status_cb_t): New.
* src/gpgme.c (gpgme_set_status_cb): New.
(gpgme_get_status_cb): New.
* src/context.h (status_cb): New.
(status_cb_value): New.
* src/gpgme.def: Export new symbols.
* src/libgpgme.vers: Ditto.
* doc/gpgme.texi: Document these new functions.

--
This callback function is used to forward status messages from gpg back
to the client.
https://invent.kde.org/neon/forks/gpgme/-/commit/4fadcf06ec8b0ebfb05c7622dbc3b73fd3c1bad9

Git commit 6dd24c3c6133ec54f75abd056191a8027fe01de0 by Ben Kibbey on 15/08/2015 at 22:19..
Parse the INQUIRE_MAXLEN status message.

* src/gpgme.h.in: (gpgme_status_code_t): Add INQUIRE_MAXLEN.
* src/status-table.c (status_table_s): Ditto.
* src/genkey.c (genkey_status_handler): Parse INQUIRE_MAXLEN.
* src/decrypt.c (_gpgme_decrypt_status_handler): Ditto.
* src/sign.c (_gpgme_sign_status_handler): Ditto.

This status message informs the client of the maximum length of an
inquired line. It is sent from gpg and forwarded to the client via
gpgme_status_cb_t.
https://invent.kde.org/neon/forks/gpgme/-/commit/6dd24c3c6133ec54f75abd056191a8027fe01de0

Git commit 70b3e5964ea0592bd09d1877d720b2c63f501970 by Ben Kibbey on 15/08/2015 at 22:19..
Fix gpgme_{get,set}_status_cb to match documentation.

* doc/gpgme.texi: Minor fixes.
* src/gpgme.c (gpgme_get_status_cb): Set return variables to NULL and
check for a valid ctx pointer.
https://invent.kde.org/neon/forks/gpgme/-/commit/70b3e5964ea0592bd09d1877d720b2c63f501970

Git commit ccbaccbf2e0ba582d181b9ee4d8543d7c1248b2c by Ben Kibbey on 16/08/2015 at 16:54..
Parse INQUIRE_MAXLEN in the passphrase callback.

* src/passphrase.c (_gpgme_passphrase_status_handler): Parse
GPGME_STATUS_INQUIRE_MAXLEN.
* src/passphrase.c (_gpgme_passphrase_command_handler): Send the
INQUIRE_MAXLEN status message.

--
Fixes passing this status message along when decrypting symmetric data
from gpg.
https://invent.kde.org/neon/forks/gpgme/-/commit/ccbaccbf2e0ba582d181b9ee4d8543d7c1248b2c

Git commit 2b632bbb78eee2b94c122f66d171a7c80e9c4fb0 by Werner Koch on 24/08/2015 at 10:41..
Add an export secret key feature.

* 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 <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2b632bbb78eee2b94c122f66d171a7c80e9c4fb0

Git commit df098d6a437109c57516db75addf3764a6dfda81 by Werner Koch on 24/08/2015 at 13:03..
w32: Print the installation directory in debug mode.

* src/debug.c (debug_init) [W32]: Show libgpgme installation dir.
--

I expect that gpgme will be distributed by applications and thus it
will be helpful to see in the debug log which gpgme is actually used.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/df098d6a437109c57516db75addf3764a6dfda81

Git commit 06d6fd8ca01354c8f7cfc847c4ac1b868268cbaa by Werner Koch on 24/08/2015 at 14:34..
w32: Expect gpgme-w32spawn.exe only in the gpgme installation dir.

* src/w32-util.c (find_program_at_standard_place): Remove.
(_gpgme_get_gpg_path): Make the search order more explicit.
(_gpgme_get_gpgconf_path): Ditto.
(_gpgme_get_w32spawn_path): Search only in the inst_dir.
--

This tries to avoid possible unclear bug reports by removing the
fallback to the current gpg4win installation directory for the gpgme
helper.  It is expected that users of gpgme installing their own gpgme
version also install the matching helper.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/06d6fd8ca01354c8f7cfc847c4ac1b868268cbaa

Git commit a7dbab23ea4976d106d649aa515ffb2968a085ed by Werner Koch on 24/08/2015 at 17:59..
w32: Look for gpgconf in the new GnuPG 2.1 install dir.

* src/w32-util.c (_gpgme_get_gpgconf_path): Try another location of
gpgconf.exe.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a7dbab23ea4976d106d649aa515ffb2968a085ed

Git commit ad46f4f655e653580343c15f1b0b365b7d307d1b by Werner Koch on 24/08/2015 at 19:17..
Call status_cb for an ERROR status seen in the passphrase handler.

* src/passphrase.c (_gpgme_passphrase_status_handler): Call status_cb.
--

Frankly, we should have a more generic way of feeding the status_cb
handler than our current ad-hoc method.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ad46f4f655e653580343c15f1b0b365b7d307d1b

Git commit 491fcd91b84564232d5d061942baa50b99e166c0 by Werner Koch on 25/08/2015 at 07:05..
tests: Allow using run-sign to test loopback pinentry problems.

* tests/run-sign.c: Add options --status and --loopback.
https://invent.kde.org/neon/forks/gpgme/-/commit/491fcd91b84564232d5d061942baa50b99e166c0

Git commit 208f0297466ce68abfc432f4944f81eb8bf47cf8 by Werner Koch on 25/08/2015 at 08:37..
tests: Build test programs in tests/ without wrappers.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/208f0297466ce68abfc432f4944f81eb8bf47cf8

Git commit 8ddc5801ade02297924447df5745c8877a96e5e3 by Werner Koch on 25/08/2015 at 11:23..
Improve error return by checking the FAILURE status.

* src/gpgme.h.in (GPGME_STATUS_FAILURE): New.
* src/status-table.c (FAILURE): New.
* src/op-support.c (_gpgme_parse_failure): New.
* src/passphrase.c (_gpgme_passphrase_status_handler): Forward FAILURE
status line to the status callback.

* src/decrypt.c (op_data_t): Add field failure_code.
(_gpgme_decrypt_status_handler): Parse that code and act upon it on EOF.
* src/encrypt.c (op_data_t): Add field failure_code.
(_gpgme_encrypt_status_handler): Parse that code and act upon it on EOF.
* src/genkey.c (op_data_t): Add field failure_code.
(genkey_status_handler): Parse that code and act upon it on EOF.
* src/passwd.c (op_data_t): Add field failure_code.
(passwd_status_handler): Parse that code and act upon it on EOF.
* src/sign.c (op_data_t): Add field failure_code.
(_gpgme_sign_status_handler): Parse that code and act upon it on EOF.
* src/verify.c (op_data_t): Add field failure_code.
(_gpgme_verify_status_handler): Parse that code and act upon it on EOF.

--

This requires GnuPG 2.1.8 to actually make a difference.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8ddc5801ade02297924447df5745c8877a96e5e3

Git commit 97f1f3e883808743da5ee144abab25de062f34ac by Werner Koch on 25/08/2015 at 16:10..
Cleanup layout of gpgme.h

* src/gpgme.h.in: Reorder prototypes.  Chnage some comments.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/97f1f3e883808743da5ee144abab25de062f34ac

Git commit 028a0ef3336c5180797fb247448683195376c007 by Werner Koch (on behalf of Daiki Ueno) on 25/08/2015 at 17:11..
Relax ttyname_r error checks

* 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 <ueno at gnu.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/028a0ef3336c5180797fb247448683195376c007

Git commit ff91e699f7c14ea6cbc27b487cb40e9f6bd58901 by Werner Koch on 25/08/2015 at 18:40..
Add configure option --enable-build-timestamp.

* configure.ac (BUILD_TIMESTAMP): Set to "<none>" by default.
--

This is based on
libgpg-error commit d620005fd1a655d591fccb44639e22ea445e4554
but changed to be disbaled by default.  Check there for some
background.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ff91e699f7c14ea6cbc27b487cb40e9f6bd58901

Git commit 3f53d3d5d9e73a053b1e89073ef8f7cf01bfc8e6 by Werner Koch on 25/08/2015 at 19:04..
Avoid -Wundef warnings if gpgme.h is used by g++.

* src/gpgme.h.in (_GPGME_INLINE): Move definition into the
extern-C-scope.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3f53d3d5d9e73a053b1e89073ef8f7cf01bfc8e6

Git commit c4f4b5c0a6fc172f7ceedc1a0021169e7f31b941 by Werner Koch on 26/08/2015 at 07:16..
Make use of GPGRT macros is available.

* src/gpgme.h.in (_GPGME_INLINE): Define using GPGRT_INLINE if
possible.  Fix problem with -Wundef by adding an extra "defined()".
(_GPGME_GCC_VERSION): Define using GPGRT_ macro if possible.
https://invent.kde.org/neon/forks/gpgme/-/commit/c4f4b5c0a6fc172f7ceedc1a0021169e7f31b941

Git commit 107bff70edb611309f627058dd4777a5da084b1a by Werner Koch on 26/08/2015 at 08:06..
Release 1.6.0

* configure.ac: Set LT version to C25/A14/R0.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/107bff70edb611309f627058dd4777a5da084b1a

Git commit c8e7870281950ae3b943c819147d4329198c0520 by Werner Koch on 26/08/2015 at 08:16..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/c8e7870281950ae3b943c819147d4329198c0520

Git commit c4b6b35bfa98e478f1d13f4ce3e664771f2604c2 by Werner Koch on 30/08/2015 at 17:04..
Add gpgme_pubkey_algo_string

* src/gpgme.h.in (GPGME_PK_EDDSA): New.
(gpgme_pubkey_algo_string): New.
* src/conversion.c (_gpgme_map_pk_algo): Add new algo.
* src/gpgme.c (gpgme_pubkey_algo_string): New.
(gpgme_pubkey_algo_name): Reformat.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c4b6b35bfa98e478f1d13f4ce3e664771f2604c2

Git commit f0ccce855bd99fca7cfbbcafe3544e3113fedc67 by Werner Koch on 31/08/2015 at 18:34..
gpgme-tool: Switch to argparse.c for option parsing.

* src/argparse.c, src/argparse.h: New. Taken from current gnupg.
* src/Makefile.am (gpgme_tool_SOURCES): New.
* src/gpgme-tool.c: Remove all argp.h stuff.
(my_strusage): New.
(main): Change to use argparse.
--

As a GnuPG related tool the user should get the same experience in
option parsing as with gpg et al.  Thus we use the same parser.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f0ccce855bd99fca7cfbbcafe3544e3113fedc67

Git commit cca294767e0bcbe10f197939161bcb8bf7d0ff73 by Daniel Kahn Gillmor on 17/09/2015 at 07:40..
Imported Upstream version 1.6.0
https://invent.kde.org/neon/forks/gpgme/-/commit/cca294767e0bcbe10f197939161bcb8bf7d0ff73

Git commit 561f19e52c747bbc624fba4b7a640bfdd5653f76 by Daniel Kahn Gillmor on 17/09/2015 at 07:40..
Merge tag 'upstream/1.6.0'

Upstream version 1.6.0
https://invent.kde.org/neon/forks/gpgme/-/commit/561f19e52c747bbc624fba4b7a640bfdd5653f76

Git commit ff8c5ac9390158afcccb5bdb0ba8950c37330e80 by Daniel Kahn Gillmor on 17/09/2015 at 07:41..
New upstream release.
https://invent.kde.org/neon/forks/gpgme/-/commit/ff8c5ac9390158afcccb5bdb0ba8950c37330e80

Git commit e867343747e05e6ac05cadf64a798049bc832e8c by Daniel Kahn Gillmor on 17/09/2015 at 07:44..
update symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/e867343747e05e6ac05cadf64a798049bc832e8c

Git commit 08e9d37f8a5d2514d95d67c3f70e0bf9eafbe0f5 by Daniel Kahn Gillmor on 17/09/2015 at 07:50..
BUILD_TIMESTAMP removed upstream, drop patch for removing it
https://invent.kde.org/neon/forks/gpgme/-/commit/08e9d37f8a5d2514d95d67c3f70e0bf9eafbe0f5

Git commit 4b9a22ddf04951fdbcfa7347eb1cd613d1fcf930 by Daniel Kahn Gillmor on 17/09/2015 at 07:57..
really fix symbols file
https://invent.kde.org/neon/forks/gpgme/-/commit/4b9a22ddf04951fdbcfa7347eb1cd613d1fcf930

Git commit 0d9d0a6b5b0c6f474a079bbaef11078c5df5f3b5 by NIIBE Yutaka on 16/10/2015 at 00:51..
cleanup: Fix type mismatch around gpgme_error_t.

* src/data-compat.c (gpgme_error_to_errno): Use gpg_err_code
to get error code from gpgme_error_t.
* src/gpgme.c (gpgme_new): Don't use gpgme_error.
https://invent.kde.org/neon/forks/gpgme/-/commit/0d9d0a6b5b0c6f474a079bbaef11078c5df5f3b5

Git commit bb600aa8fd2f9575ee7afc64c978e3e7523b1173 by Werner Koch on 28/10/2015 at 15:28..
w32: Add new global flag "w32-inst-dir".

* src/gpgme.c (gpgme_set_global_flag): Add flag "w32-inst-dir";
* src/posix-util.c (_gpgme_set_override_inst_dir): New stub.
* src/w32-util.c (override_inst_dir): New var.
(_gpgme_get_inst_dir): Return this var is set.
(_gpgme_set_override_inst_dir): New.
--

See
https://lists.gnupg.org/pipermail/gnupg-devel/2015-September/030267.html
for background.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bb600aa8fd2f9575ee7afc64c978e3e7523b1173

Git commit a82e9b182f62966207cad0972be6fa284329a5a1 by Werner Koch on 28/10/2015 at 15:28..
w32: Improve locating gpgconf on 64 bit systems.

* src/w32-util.c (find_program_at_standard_place): Fallback to
CSIDL_PROGRAM_FILESX86.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a82e9b182f62966207cad0972be6fa284329a5a1

Git commit bb2d11c1eebd4bcfb0f2cfce728026a7420dca47 by Werner Koch on 28/10/2015 at 15:28..
w32: Add extra diagnostic about possible missing gpgme-w32spawn.exe.

* src/w32-io.c (_gpgme_io_spawn): Add a new diagnostic.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bb2d11c1eebd4bcfb0f2cfce728026a7420dca47

Git commit dfa79f9300b837b0f7f2ea44afa589bfcda1dbd9 by Ben Kibbey on 29/10/2015 at 22:05..
Make use of user passphrase handler during passwd.

* src/passwd.c (passwd_start): set engine passphrase command handler.

--
This allows for inquiring a passphrase when changing a passphrase rather
than requiring a pinentry.
https://invent.kde.org/neon/forks/gpgme/-/commit/dfa79f9300b837b0f7f2ea44afa589bfcda1dbd9

Git commit 8c61cbfb8ff2e1056840ecf8511810ed2482eb1f by Justus Winter on 02/12/2015 at 10:28..
Fix typos found by codespell.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/8c61cbfb8ff2e1056840ecf8511810ed2482eb1f

Git commit 3b6e9a3d0afcdd3c2f1de19f15924c3404c7140a by Werner Koch (on behalf of Daiki Ueno) on 04/12/2015 at 15:25..
doc: Fix minor errors

* doc/gpgme.texi: Fix errors and typos in the cancellation and
gpgme_import_result_t documentation.

Signed-off-by: Daiki Ueno <ueno at gnu.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3b6e9a3d0afcdd3c2f1de19f15924c3404c7140a

Git commit 67d7f7a9383763b01daf877c846bf3e32f647fa5 by Werner Koch (on behalf of Daiki Ueno) on 04/12/2015 at 15:35..
Return on user cancellation of delete operation

* src/delete.c (delete_status_handler): Return on ERROR status, if the
error location is set to "delete_key.secret" and the code is either
CANCELED or FULLY_CANCELED, which indicates a situation that the user
selected "No" on the confirmation dialog.
https://invent.kde.org/neon/forks/gpgme/-/commit/67d7f7a9383763b01daf877c846bf3e32f647fa5

Git commit 83415dffaea53611dbce77b50d8ddfb2a50aed2e by Werner Koch on 09/12/2015 at 10:39..
w32: Avoid conflict with Mingw-w64 version 4.0.4-1

* src/w32-util.c (mkstemp): Rename to my_mkstemp.  Change caller.
--

For some reason the linker seems to use the mkstemp now provided by
mingw instead of our static symbol.  Strange.

Reported-by: Andrej Kacian <andrej at kacian.sk>
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/83415dffaea53611dbce77b50d8ddfb2a50aed2e

Git commit e79199468ac54ce4fe919603ff7bada97267174f by Werner Koch on 15/01/2016 at 15:16..
Fix possible _SC_OPEN_MAX max problem on AIX.

* src/posix-io.c [HAVE_STDINT_H]: Include stdint.h.
(get_max_fds): Limit returned value for too high values.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e79199468ac54ce4fe919603ff7bada97267174f

Git commit 0855a1296a1908016f011eb5e6552854ac53e63a by Andre Heinecke on 22/02/2016 at 18:01..
Initial checkin of gpgmepp sources

Based on git.kde.org/pim/gpgmepp rev. 0e3ebc02

* lang/cpp/src/assuanresult.cpp,
 lang/cpp/src/assuanresult.h,
 lang/cpp/src/callbacks.cpp,
 lang/cpp/src/callbacks.h,
 lang/cpp/src/configuration.cpp,
 lang/cpp/src/configuration.h,
 lang/cpp/src/context.cpp,
 lang/cpp/src/context.h,
 lang/cpp/src/context_glib.cpp,
 lang/cpp/src/context_p.h,
 lang/cpp/src/context_qt.cpp,
 lang/cpp/src/context_vanilla.cpp,
 lang/cpp/src/data.cpp,
 lang/cpp/src/data.h,
 lang/cpp/src/data_p.h,
 lang/cpp/src/decryptionresult.cpp,
 lang/cpp/src/decryptionresult.h,
 lang/cpp/src/defaultassuantransaction.cpp,
 lang/cpp/src/defaultassuantransaction.h,
 lang/cpp/src/editinteractor.cpp,
 lang/cpp/src/editinteractor.h,
 lang/cpp/src/encryptionresult.cpp,
 lang/cpp/src/encryptionresult.h,
 lang/cpp/src/engineinfo.cpp,
 lang/cpp/src/engineinfo.h,
 lang/cpp/src/error.h,
 lang/cpp/src/eventloopinteractor.cpp,
 lang/cpp/src/eventloopinteractor.h,
 lang/cpp/src/exception.cpp,
 lang/cpp/src/exception.h,
 lang/cpp/src/global.h,
 lang/cpp/src/gpgadduserideditinteractor.cpp,
 lang/cpp/src/gpgadduserideditinteractor.h,
 lang/cpp/src/gpgagentgetinfoassuantransaction.cpp,
 lang/cpp/src/gpgagentgetinfoassuantransaction.h,
 lang/cpp/src/gpgmefw.h,
 lang/cpp/src/gpgmepp_export.h,
 lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp,
 lang/cpp/src/gpgsetexpirytimeeditinteractor.h,
 lang/cpp/src/gpgsetownertrusteditinteractor.cpp,
 lang/cpp/src/gpgsetownertrusteditinteractor.h,
 lang/cpp/src/gpgsignkeyeditinteractor.cpp,
 lang/cpp/src/gpgsignkeyeditinteractor.h,
 lang/cpp/src/importresult.cpp,
 lang/cpp/src/importresult.h,
 lang/cpp/src/key.cpp,
 lang/cpp/src/key.h,
 lang/cpp/src/keygenerationresult.cpp,
 lang/cpp/src/keygenerationresult.h,
 lang/cpp/src/keylistresult.cpp,
 lang/cpp/src/keylistresult.h,
 lang/cpp/src/notation.h,
 lang/cpp/src/result.h,
 lang/cpp/src/result_p.h,
 lang/cpp/src/scdgetinfoassuantransaction.cpp,
 lang/cpp/src/scdgetinfoassuantransaction.h,
 lang/cpp/src/signingresult.cpp,
 lang/cpp/src/signingresult.h,
 lang/cpp/src/trustitem.cpp,
 lang/cpp/src/trustitem.h,
 lang/cpp/src/util.h,
 lang/cpp/src/verificationresult.cpp,
 lang/cpp/src/verificationresult.h,
 lang/cpp/src/vfsmountresult.cpp,
 lang/cpp/src/vfsmountresult.h,
 lang/cpp/src/interfaces/assuantransaction.h,
 lang/cpp/src/interfaces/dataprovider.h,
 lang/cpp/src/interfaces/passphraseprovider.h,
 lang/cpp/src/interfaces/progressprovider.h: New.
https://invent.kde.org/neon/forks/gpgme/-/commit/0855a1296a1908016f011eb5e6552854ac53e63a

Git commit 433bb8e84b2d1e50b5c5b9f7f2006b60cd7d7785 by Andre Heinecke on 22/02/2016 at 18:07..
Remove feature check ifdefs

* lang/cpp/src/assuanresult.cpp,
 lang/cpp/src/callbacks.cpp,
 lang/cpp/src/configuration.cpp,
 lang/cpp/src/context.cpp,
 lang/cpp/src/context_glib.cpp,
 lang/cpp/src/context_qt.cpp,
 lang/cpp/src/context_vanilla.cpp,
 lang/cpp/src/data.cpp,
 lang/cpp/src/decryptionresult.cpp,
 lang/cpp/src/defaultassuantransaction.cpp,
 lang/cpp/src/editinteractor.cpp,
 lang/cpp/src/encryptionresult.cpp,
 lang/cpp/src/engineinfo.cpp,
 lang/cpp/src/eventloopinteractor.cpp,
 lang/cpp/src/global.h,
 lang/cpp/src/gpgagentgetinfoassuantransaction.cpp,
 lang/cpp/src/importresult.cpp,
 lang/cpp/src/interfaces/assuantransaction.h,
 lang/cpp/src/key.cpp,
 lang/cpp/src/keygenerationresult.cpp,
 lang/cpp/src/keylistresult.cpp,
 lang/cpp/src/scdgetinfoassuantransaction.cpp,
 lang/cpp/src/signingresult.cpp,
 lang/cpp/src/trustitem.cpp,
 lang/cpp/src/util.h,
 lang/cpp/src/verificationresult.cpp,
 lang/cpp/src/vfsmountresult.cpp: Remove feature checks.
https://invent.kde.org/neon/forks/gpgme/-/commit/433bb8e84b2d1e50b5c5b9f7f2006b60cd7d7785

Git commit f5fd787b5b45cb14d539b5c26f44066eb9ac0f75 by Andre Heinecke on 22/02/2016 at 18:09..
Add buildsystem for Gpgmepp

* configure.ac: Configure Makefiles.
* lang/Makefile.am: Add cpp subdir
* lang/cpp/Makefile.am: New. Add src subdir.
* lang/cpp/src/Makefile.am: New. Basic buildsystem.
https://invent.kde.org/neon/forks/gpgme/-/commit/f5fd787b5b45cb14d539b5c26f44066eb9ac0f75

Git commit 7286fc7f3d51d475f82c7c9821d031290f5b0066 by Andre Heinecke on 22/02/2016 at 18:13..
Add README for gpgmepp

* lang/README: Note down cpp.
* cpp/README: Add README based on original repo version.
https://invent.kde.org/neon/forks/gpgme/-/commit/7286fc7f3d51d475f82c7c9821d031290f5b0066

Git commit a313b3e28cc42785365822519b25d6a87dfdf0c9 by Andre Heinecke on 02/03/2016 at 13:00..
Add enable-languages build option

* acinclude.m4 (LIST_MEMBER): New macro.
* configure.ac (enable-languages): New option. Add info output.
* lang/Makefile.am: Only add enabled language subdirs.
https://invent.kde.org/neon/forks/gpgme/-/commit/a313b3e28cc42785365822519b25d6a87dfdf0c9

Git commit c5291a88913ace8f2115021b69c7aeb59b4f79d4 by Andre Heinecke on 02/03/2016 at 15:23..
Add header installation

* lang/cpp/src/Makefile.am: Add headers as deps and install them.
 (AM_CPPFLAGS): Add BUILDING_GPGMEPP to be used in export macros.
https://invent.kde.org/neon/forks/gpgme/-/commit/c5291a88913ace8f2115021b69c7aeb59b4f79d4

Git commit 98e5b672422ca1e38ca38ff0357cee6cc936aee0 by Andre Heinecke on 02/03/2016 at 15:24..
Fix export header and windows export macros

* lang/cpp/src/gpgme_export.h: Fix variable name. Add Windows ifdefs.
https://invent.kde.org/neon/forks/gpgme/-/commit/98e5b672422ca1e38ca38ff0357cee6cc936aee0

Git commit 77c3fb450c7adf36804a55d76ff49a06a71d22a0 by Andre Heinecke on 02/03/2016 at 17:41..
Add cmake configuration files

* configure.ac: Add libgpgmepp version. Configure cmake files.
* lang/cpp/src/Makefile.am: Add targets for cmake files.
 (EXTRA_DIST): Add cmake files.

--
This should smooth the transition for downstream users that
have worked with KF5::Gpgmepp previously.
https://invent.kde.org/neon/forks/gpgme/-/commit/77c3fb450c7adf36804a55d76ff49a06a71d22a0

Git commit a06603d75e80aba58df58f9a41770c56b6a1f0b8 by Andre Heinecke on 02/03/2016 at 17:56..
Add version info for gpgmepp

* lang/cpp/src/Makefile.am (libgpgmepp_la_LDFLAGS): Add version info.
https://invent.kde.org/neon/forks/gpgme/-/commit/a06603d75e80aba58df58f9a41770c56b6a1f0b8

Git commit 58ed9c17f00f420035ecc6973a6c6ed948757a9a by Andre Heinecke on 08/03/2016 at 13:28..
Remove obsolete w32-qt code

* configure.ac (w32-qt): Remove option and Qt checks.
* src/Makefile.am: Remove BUILD_W32_QT handling.
* src/kdpipeiodevice.cpp,
 src/kdpipeiodevice.h,
 src/kdpipeiodevice.moc,
 src/w32-qt-io.cpp: Removed.

--
This code was intended for Kleopatra but Kleopatra is not using
it anymore. QGpgme/dataprovider is a better replacement for this.
https://invent.kde.org/neon/forks/gpgme/-/commit/58ed9c17f00f420035ecc6973a6c6ed948757a9a

Git commit 8347f3d5fc3e476aa767fbbaf09a1310a6154280 by Andre Heinecke on 08/03/2016 at 14:37..
Add qgpgme as qt language binding

* configure.ac: Add version defines. Check for qt if neccessary.
* lang/README: Mention qt
* lang/cpp/src/GpgmeppConfig.cmake.in.in: Remove comment. Find qgpgme.
* lang/qt/src/Makefile.am: New. Build qgpgme.
* lang/qt/README,
 lang/qt/src/Makefile.am,
 lang/qt/src/QGpgmeConfig.cmake.in.in,
 lang/qt/src/QGpgmeConfigVersion.cmake.in,
 lang/qt/src/dataprovider.cpp,
 lang/qt/src/dataprovider.h,
 lang/qt/src/qgpgme_export.h,
 m4/qt.m4: New.
* lang/cpp/src/GpgmeppConfig.cmake.in.in,
 lang/cpp/src/Makefile.am: Fix generated config file.

--
For now this is just the dataprovider which was part of the
KF5 Gpgmepp QGpgme variant. This is very thin but a useful
class which is used downstream.
https://invent.kde.org/neon/forks/gpgme/-/commit/8347f3d5fc3e476aa767fbbaf09a1310a6154280

Git commit 226e51052ae73efa8d9f30729b28de68d35231af by Andre Heinecke on 02/04/2016 at 15:51..
Add QGpgME code from libkleo

* lang/qt/src/Makefile.am,
lang/qt/src/abstractimportjob.h,
lang/qt/src/adduseridjob.h,
lang/qt/src/changeexpiryjob.h,
lang/qt/src/changeownertrustjob.h,
lang/qt/src/changepasswdjob.h,
lang/qt/src/cryptoconfig.h,
lang/qt/src/decryptjob.h,
lang/qt/src/decryptverifyjob.h,
lang/qt/src/deletejob.h,
lang/qt/src/downloadjob.h,
lang/qt/src/encryptjob.h,
lang/qt/src/exportjob.h,
lang/qt/src/hierarchicalkeylistjob.h,
lang/qt/src/importfromkeyserverjob.h,
lang/qt/src/importjob.h,
lang/qt/src/job.cpp,
lang/qt/src/job.h,
lang/qt/src/keygenerationjob.h,
lang/qt/src/keylistjob.h,
lang/qt/src/listallkeysjob.h,
lang/qt/src/multideletejob.h,
lang/qt/src/qgpgmeadduseridjob.cpp,
lang/qt/src/qgpgmeadduseridjob.h,
lang/qt/src/qgpgmebackend.cpp,
lang/qt/src/qgpgmebackend.h,
lang/qt/src/qgpgmechangeexpiryjob.cpp,
lang/qt/src/qgpgmechangeexpiryjob.h,
lang/qt/src/qgpgmechangeownertrustjob.cpp,
lang/qt/src/qgpgmechangeownertrustjob.h,
lang/qt/src/qgpgmechangepasswdjob.cpp,
lang/qt/src/qgpgmechangepasswdjob.h,
lang/qt/src/qgpgmecryptoconfig.cpp,
lang/qt/src/qgpgmecryptoconfig.h,
lang/qt/src/qgpgmedecryptjob.cpp,
lang/qt/src/qgpgmedecryptjob.h,
lang/qt/src/qgpgmedecryptverifyjob.cpp,
lang/qt/src/qgpgmedecryptverifyjob.h,
lang/qt/src/qgpgmedeletejob.cpp,
lang/qt/src/qgpgmedeletejob.h,
lang/qt/src/qgpgmedownloadjob.cpp,
lang/qt/src/qgpgmedownloadjob.h,
lang/qt/src/qgpgmeencryptjob.cpp,
lang/qt/src/qgpgmeencryptjob.h,
lang/qt/src/qgpgmeexportjob.cpp,
lang/qt/src/qgpgmeexportjob.h,
lang/qt/src/qgpgmeimportfromkeyserverjob.cpp,
lang/qt/src/qgpgmeimportfromkeyserverjob.h,
lang/qt/src/qgpgmeimportjob.cpp,
lang/qt/src/qgpgmeimportjob.h,
lang/qt/src/qgpgmekeygenerationjob.cpp,
lang/qt/src/qgpgmekeygenerationjob.h,
lang/qt/src/qgpgmekeylistjob.cpp,
lang/qt/src/qgpgmekeylistjob.h,
lang/qt/src/qgpgmelistallkeysjob.cpp,
lang/qt/src/qgpgmelistallkeysjob.h,
lang/qt/src/qgpgmenewcryptoconfig.cpp,
lang/qt/src/qgpgmenewcryptoconfig.h,
lang/qt/src/qgpgmerefreshkeysjob.cpp,
lang/qt/src/qgpgmerefreshkeysjob.h,
lang/qt/src/qgpgmesecretkeyexportjob.cpp,
lang/qt/src/qgpgmesecretkeyexportjob.h,
lang/qt/src/qgpgmesignencryptjob.cpp,
lang/qt/src/qgpgmesignencryptjob.h,
lang/qt/src/qgpgmesignjob.cpp,
lang/qt/src/qgpgmesignjob.h,
lang/qt/src/qgpgmesignkeyjob.cpp,
lang/qt/src/qgpgmesignkeyjob.h,
lang/qt/src/qgpgmeverifydetachedjob.cpp,
lang/qt/src/qgpgmeverifydetachedjob.h,
lang/qt/src/qgpgmeverifyopaquejob.cpp,
lang/qt/src/qgpgmeverifyopaquejob.h,
lang/qt/src/refreshkeysjob.h,
lang/qt/src/signencryptjob.h,
lang/qt/src/signjob.h,
lang/qt/src/signkeyjob.h,
lang/qt/src/specialjob.h,
lang/qt/src/threadedjobmixin.cpp,
lang/qt/src/threadedjobmixin.h,
lang/qt/src/verifydetachedjob.h,
lang/qt/src/verifyopaquejob.h: New.
* lang/qt/src/Makefile.am:

--
The ShowErrorMessage calls were removed and are to be replaced
by error signals / error status which the UI should then handle.

This allowed to port away from KMessageBox and KLocalizedstring.

Additionally this removed the old process bases qgpgmeconfigdialog,
and GnuPGProcessBase. Classes using GnuPGProcessbase were changed
to KProcess api.

This is a first compiling version. API is subject to change to
resolve the split between base jobs and qgpgme classes.
https://invent.kde.org/neon/forks/gpgme/-/commit/226e51052ae73efa8d9f30729b28de68d35231af

Git commit a440050fc2c11e4867da9d4707616fa23ac52141 by Andre Heinecke on 02/04/2016 at 16:06..
Add missing files to QGpgME

* lang/qt/src/gpgme_backend_debug.cpp,
 lang/qt/src/gpgme_backend_debug.h,
 lang/qt/src/predicates.h,
 lang/qt/src/stl_util.h: New.
https://invent.kde.org/neon/forks/gpgme/-/commit/a440050fc2c11e4867da9d4707616fa23ac52141

Git commit 576be46f34b42e896a5e3be65560a4b518a758be by Andre Heinecke on 02/04/2016 at 17:12..
Qt: Fix library name in nodist variable

* lang/qt/Makefile.am (nodist_qgpgme_SOURCES): Change to real name.
https://invent.kde.org/neon/forks/gpgme/-/commit/576be46f34b42e896a5e3be65560a4b518a758be

Git commit 63c115b067400e1b02c7d849c99f54dc9f394d68 by Andre Heinecke on 02/04/2016 at 17:14..
Add additional include path in config files

* lang/cpp/src/GpgmeppConfig.cmake.in.in
 lang/qt/src/QGpgmeConfig.cmake.in.in: Include directory above headers.

--
This ensures that code using #inlcude <gpgme++/header.h> still works.
https://invent.kde.org/neon/forks/gpgme/-/commit/63c115b067400e1b02c7d849c99f54dc9f394d68

Git commit 7071b2a9c00b85d434d01b6166269ebf48b01b81 by Andre Heinecke on 03/04/2016 at 09:27..
Qt: Only use GpgME based config class

* lang/qt/src/qgpgmecryptoconfig.cpp,
 lang/qt/src/qgpgmecryptoconfig.h: Removed.
* lang/qt/src/qgpgmebackend.cpp: Return newcryptoconfig.

--
The GpgME based config class is the way forward and the
old class was using KDE Code. Probably needs some bugfixes
as previously the new class was only used for Windows CE
https://invent.kde.org/neon/forks/gpgme/-/commit/7071b2a9c00b85d434d01b6166269ebf48b01b81

Git commit 3e38cc6fc67c420dec3e9e8afd072b4c8a157c85 by Andre Heinecke on 03/04/2016 at 09:27..
Qt: Don't declare showErrorDialog anymore

* cpp/qt/src/job.h: Remove showErrorDialog.

--
If additional error handling is neccessary emitting
signals to a gui application would be better API for qgpgme.
https://invent.kde.org/neon/forks/gpgme/-/commit/3e38cc6fc67c420dec3e9e8afd072b4c8a157c85

Git commit 0cc9006dbc59d87c6bcda88b36d59dcb69ac35cb by Andre Heinecke on 03/04/2016 at 09:30..
Qt: Declare pure virtuals as such

* lang/qt/src/qgpgmebackend.h (Protocol): Make all functions
 pure virtual.

--
Fixes errors when linking with QGpgME.
https://invent.kde.org/neon/forks/gpgme/-/commit/0cc9006dbc59d87c6bcda88b36d59dcb69ac35cb

Git commit b7b9e38399a572cb61a297db552026eac5b2a5e1 by Andre Heinecke on 03/04/2016 at 09:33..
Qt: Add missing MOC includes

* qgpgmeadduseridjob.cpp,
 qgpgmechangeexpiryjob.cpp,
 qgpgmechangeownertrustjob.cpp,
 qgpgmechangepasswdjob.cpp,
 qgpgmedecryptjob.cpp,
 qgpgmedecryptverifyjob.cpp,
 qgpgmedeletejob.cpp,
 qgpgmedownloadjob.cpp,
 qgpgmeencryptjob.cpp,
 qgpgmeexportjob.cpp,
 qgpgmeimportfromkeyserverjob.cpp,
 qgpgmeimportjob.cpp,
 qgpgmekeygenerationjob.cpp,
 qgpgmekeylistjob.cpp,
 qgpgmelistallkeysjob.cpp,
 qgpgmerefreshkeysjob.cpp,
 qgpgmesecretkeyexportjob.cpp,
 qgpgmesignencryptjob.cpp,
 qgpgmesignjob.cpp,
 qgpgmesignkeyjob.cpp,
 qgpgmeverifydetachedjob.cpp,
 qgpgmeverifyopaquejob.cpp: Add missing MOC includes.

--
In the CMake world this was handled by cmake automoc
suppport and not neccessary.
https://invent.kde.org/neon/forks/gpgme/-/commit/b7b9e38399a572cb61a297db552026eac5b2a5e1

Git commit faf987dd62893955251378a2a715edd2892a540c by Andre Heinecke on 03/04/2016 at 09:48..
Qt: Add a unit test for qgpgme

* configure.ac: Configure test Makefile.
* m4/qt.m4: Look up Qt5Test flags.
* lang/qt/tests/t-keylist.cpp: New. Simple keylist check.
* lang/qt/tests/Makefile.am: New. General test framework.

--
This test mostly checks that it basically compiles / works and
adds a test framework.
https://invent.kde.org/neon/forks/gpgme/-/commit/faf987dd62893955251378a2a715edd2892a540c

Git commit 0991485170ca4ef90fd566540522027d0fc59a72 by Andre Heinecke on 03/04/2016 at 10:29..
Qt: Add static factor methods for protocol

* lang/qt/src/qgpgmebackend.cpp (QGpgME::openpgp, QGpgME::smime): New.
* lang/qt/src/qgpgmebackend.h: Declare.
* lang/qt/tests/t-keylist.cpp (KeyListTest::testSingleKeyListSync):
  Use new functions.

--
This replaces the cryptobackendfactory functionality from libkleo.
https://invent.kde.org/neon/forks/gpgme/-/commit/0991485170ca4ef90fd566540522027d0fc59a72

Git commit c07aaef6eb8a9b5e623479f27d562fd1570bf4bb by Andre Heinecke on 03/04/2016 at 12:46..
Cpp: Require c++ 11 if cpp binding requested

* configure.ac: Call ax_cxx_compile_stdcxx
* m4/ax_cxx_compile_stdcxx.m4

--
Depending on c++11 is intended to make the port away from
Boost easier.

The m4 macro was taken from the website mentioned in the License
header of the file.
https://invent.kde.org/neon/forks/gpgme/-/commit/c07aaef6eb8a9b5e623479f27d562fd1570bf4bb

Git commit f98898ab1a6952e0c3a5d235963a27eba2e19e46 by Andre Heinecke on 03/04/2016 at 12:52..
Cpp / Qt: Reduce boost usage (memory and tuple)

* cpp/src/assuanresult.h,
 cpp/src/configuration.cpp,
 cpp/src/configuration.h,
 cpp/src/data.h,
 cpp/src/decryptionresult.h,
 cpp/src/defaultassuantransaction.cpp,
 cpp/src/encryptionresult.cpp,
 cpp/src/encryptionresult.h,
 cpp/src/engineinfo.h,
 cpp/src/gpgagentgetinfoassuantransaction.cpp,
 cpp/src/gpgsignkeyeditinteractor.cpp,
 cpp/src/importresult.cpp,
 cpp/src/importresult.h,
 cpp/src/key.h,
 cpp/src/keygenerationresult.h,
 cpp/src/keylistresult.h,
 cpp/src/notation.h,
 cpp/src/signingresult.cpp,
 cpp/src/signingresult.h,
 cpp/src/verificationresult.cpp,
 cpp/src/verificationresult.h,
 cpp/src/vfsmountresult.h,
 qt/src/dataprovider.cpp,
 qt/src/dataprovider.h,
 qt/src/decryptjob.h,
 qt/src/decryptverifyjob.h,
 qt/src/downloadjob.h,
 qt/src/encryptjob.h,
 qt/src/qgpgmeadduseridjob.cpp,
 qt/src/qgpgmechangeexpiryjob.cpp,
 qt/src/qgpgmechangeownertrustjob.cpp,
 qt/src/qgpgmechangepasswdjob.cpp,
 qt/src/qgpgmedecryptjob.cpp,
 qt/src/qgpgmedecryptjob.h,
 qt/src/qgpgmedecryptverifyjob.cpp,
 qt/src/qgpgmedecryptverifyjob.h,
 qt/src/qgpgmedeletejob.cpp,
 qt/src/qgpgmedownloadjob.cpp,
 qt/src/qgpgmedownloadjob.h,
 qt/src/qgpgmeencryptjob.cpp,
 qt/src/qgpgmeencryptjob.h,
 qt/src/qgpgmeexportjob.cpp,
 qt/src/qgpgmeexportjob.h,
 qt/src/qgpgmeimportfromkeyserverjob.cpp,
 qt/src/qgpgmeimportfromkeyserverjob.h,
 qt/src/qgpgmeimportjob.cpp,
 qt/src/qgpgmeimportjob.h,
 qt/src/qgpgmekeygenerationjob.cpp,
 qt/src/qgpgmekeygenerationjob.h,
 qt/src/qgpgmekeylistjob.cpp,
 qt/src/qgpgmekeylistjob.h,
 qt/src/qgpgmelistallkeysjob.cpp,
 qt/src/qgpgmelistallkeysjob.h,
 qt/src/qgpgmenewcryptoconfig.cpp,
 qt/src/qgpgmenewcryptoconfig.h,
 qt/src/qgpgmesignencryptjob.cpp,
 qt/src/qgpgmesignencryptjob.h,
 qt/src/qgpgmesignjob.cpp,
 qt/src/qgpgmesignjob.h,
 qt/src/qgpgmesignkeyjob.cpp,
 qt/src/qgpgmeverifydetachedjob.cpp,
 qt/src/qgpgmeverifydetachedjob.h,
 qt/src/qgpgmeverifyopaquejob.cpp,
 qt/src/qgpgmeverifyopaquejob.h,
 qt/src/signencryptjob.h,
 qt/src/signjob.h,
 qt/src/threadedjobmixin.h,
 qt/src/verifydetachedjob.h,
 qt/src/verifyopaquejob.h: Reduce boost usage.

--
This was mostly done with search and replace to change the
templates / classes from memory and tuple to their c++11
equivalents.
https://invent.kde.org/neon/forks/gpgme/-/commit/f98898ab1a6952e0c3a5d235963a27eba2e19e46

Git commit cc68ff5f7210ac879fbdf719fcd5944f9ae5602b by Andre Heinecke on 04/04/2016 at 08:59..
Add pthread in gpgmepp config

* lang/cpp/src/GpgmeppConfig.cmake.in.in: Add pthread.
https://invent.kde.org/neon/forks/gpgme/-/commit/cc68ff5f7210ac879fbdf719fcd5944f9ae5602b

Git commit 691950e18cf08a3f9bbc2004501834cd47bea579 by Andre Heinecke on 11/04/2016 at 15:00..
Cpp: Remove last usages of boost

* lang/cpp/src/configuration.cpp: Use std::remove_pointer.
  (Configuration::operator<<): std::for_each.
* lang/cpp/src/context.cpp: Delete manually instead of scoped ptr.
* lang/cpp/src/scdgetinfoassuantransaction.cpp: Use static_assert.
  (to_reader_list): Tokenize with getline.
https://invent.kde.org/neon/forks/gpgme/-/commit/691950e18cf08a3f9bbc2004501834cd47bea579

Git commit 1bb162a54ba480413c4da07f2578efe6860494c0 by Andre Heinecke on 11/04/2016 at 15:06..
Cpp: Add string comparators for keys

* lang/cpp/src/global.h (GPGMEPP_MAKE_STRCMP): New.
  (_gpgmepp_strcmp): NULL save wrapper around std::strcmp.
* lang/cpp/src/key.h: Add comparators for various attributes.

--
This was taken from libkleo predicates.h. Appears generally useful.
https://invent.kde.org/neon/forks/gpgme/-/commit/1bb162a54ba480413c4da07f2578efe6860494c0

Git commit d293bd32293929eeb3f6ec35f916a4678fb51729 by Andre Heinecke on 11/04/2016 at 15:06..
Qt: Remove usage of stl_util.h and predicates.h

* src/lang/qt/qgpgmelistallkeysjob.cpp: Use comperators from
  gpgmepp instead of detail. Remove boost usage.
https://invent.kde.org/neon/forks/gpgme/-/commit/d293bd32293929eeb3f6ec35f916a4678fb51729

Git commit e18256fc5f613da9406da60c3ef2f84f2be04ef0 by Andre Heinecke on 11/04/2016 at 15:14..
Qt: Remove predicates.h and stl_util.h

* src/lang/qt/predicates.h, src/lang/qt/stl_util.h: Removed.

--
The magic is still better placed in libkleo.
https://invent.kde.org/neon/forks/gpgme/-/commit/e18256fc5f613da9406da60c3ef2f84f2be04ef0

Git commit afd8fad6e275e2f74b2ad045dce05d826986e2ec by Andre Heinecke on 11/04/2016 at 15:15..
Qt: Remove remaining boost usage

* lang/qt/src/dataprovider.h,
 lang/qt/src/decryptjob.h,
 lang/qt/src/decryptverifyjob.h,
 lang/qt/src/encryptjob.h,
 lang/qt/src/qgpgmeadduseridjob.cpp,
 lang/qt/src/qgpgmechangeexpiryjob.cpp,
 lang/qt/src/qgpgmechangeownertrustjob.cpp,
 lang/qt/src/qgpgmechangepasswdjob.cpp,
 lang/qt/src/qgpgmedecryptjob.cpp,
 lang/qt/src/qgpgmedecryptverifyjob.cpp,
 lang/qt/src/qgpgmedeletejob.cpp,
 lang/qt/src/qgpgmedownloadjob.cpp,
 lang/qt/src/qgpgmeencryptjob.cpp,
 lang/qt/src/qgpgmeexportjob.cpp,
 lang/qt/src/qgpgmeimportfromkeyserverjob.cpp,
 lang/qt/src/qgpgmeimportjob.cpp,
 lang/qt/src/qgpgmekeygenerationjob.cpp,
 lang/qt/src/qgpgmekeylistjob.cpp,
 lang/qt/src/qgpgmenewcryptoconfig.cpp,
 lang/qt/src/qgpgmenewcryptoconfig.h,
 lang/qt/src/qgpgmesignencryptjob.cpp,
 lang/qt/src/qgpgmesignjob.cpp,
 lang/qt/src/qgpgmesignkeyjob.cpp,
 lang/qt/src/qgpgmeverifydetachedjob.cpp,
 lang/qt/src/qgpgmeverifyopaquejob.cpp,
 lang/qt/src/signencryptjob.h,
 lang/qt/src/signjob.h,
 lang/qt/src/threadedjobmixin.cpp,
 lang/qt/src/threadedjobmixin.h,
 lang/qt/src/verifydetachedjob.h,
 lang/qt/src/verifyopaquejob.h: Remove boost usage.

--
Mostly done with search and replace.
https://invent.kde.org/neon/forks/gpgme/-/commit/afd8fad6e275e2f74b2ad045dce05d826986e2ec

Git commit d9f7a18ed88127e7f05d770d55118d1e928f3b3f by Andre Heinecke on 11/04/2016 at 15:46..
Qt: Fix unit test by adding initial.test dep

* lang/qt/tests/t-keylist.cpp: Verify that GNUPGHOME is set.
* lang/qt/tests/initial.test: New dummy test.
* lang/qt/tests/Makefile.am: Add dependency to initial.test

--
Feels weird but this follows the pattern in tests/gpg/Makefile.am
and solves the problem that the environment is dirty.
https://invent.kde.org/neon/forks/gpgme/-/commit/d9f7a18ed88127e7f05d770d55118d1e928f3b3f

Git commit a1e95f36ce1895cd9894f6d3ca76640c42c2f9fc by Andre Heinecke on 11/04/2016 at 16:10..
Qt: Add doc generation with doxygen

* configure.ac: Look for doxygen if qt is built.
 Configure new files.
* lang/qt/doc/Doxyfile.in: New.
* lang/qt/doc/Makefile.am: New.
* lang/qt/README: Update.

--
Currently this is a standard doxyfile template without much
customization.
https://invent.kde.org/neon/forks/gpgme/-/commit/a1e95f36ce1895cd9894f6d3ca76640c42c2f9fc

Git commit d2b55101195efe9702e855a48fc6e21839fb98cc by Andre Heinecke on 11/04/2016 at 16:16..
Qt / Cpp: Mention coding style in READMES

* src/lang/cpp/README, src/lang/qt/README: Add hacking note.
https://invent.kde.org/neon/forks/gpgme/-/commit/d2b55101195efe9702e855a48fc6e21839fb98cc

Git commit 8e7074dbb8093cc342e330bcd6b172b4f769a0c6 by Andre Heinecke on 11/04/2016 at 16:21..
Qt/Cpp: Bump so version to 6.

* configure.ac (LIBGPGMEPP_LT_CURRENT, LIBQGPGME_LT_CURRENT): Bump.

--
While the KDE Frameworks versions had a different name increasing
the number avoids a conflict with KDE4 versions and is generally
more consistent.
https://invent.kde.org/neon/forks/gpgme/-/commit/8e7074dbb8093cc342e330bcd6b172b4f769a0c6

Git commit 6dba47c3a2c32d7c1e1d91a96030f99f606433ea by Andre Heinecke on 12/04/2016 at 07:42..
Fix configuration without Qt language

* configure.ac: Define HAVE_DOXYGEN also if qt should not be built.
https://invent.kde.org/neon/forks/gpgme/-/commit/6dba47c3a2c32d7c1e1d91a96030f99f606433ea

Git commit d949d711dc1d944a9d627d39a89af74943a5a8c1 by Andre Heinecke on 12/04/2016 at 14:05..
Cpp: Add support for gpgme_data_identify

* lang/cpp/src/data.cpp (Data::type): New.
* lang/cpp/src/data.h (Data::Type): New enum mapping.
https://invent.kde.org/neon/forks/gpgme/-/commit/d949d711dc1d944a9d627d39a89af74943a5a8c1

Git commit 5489532ad6ccf3a9b59405686b8a17352f1ecf06 by Andre Heinecke on 12/04/2016 at 14:08..
Cpp: Add support for pubkey_algo_name

* lang/cpp/src/key.cpp (Subkey::algoName): New.
* lang/cpp/src/key.h: Declare.
https://invent.kde.org/neon/forks/gpgme/-/commit/5489532ad6ccf3a9b59405686b8a17352f1ecf06

Git commit 52b5158781793ca329bcbf09c519b6c657dcfc4b by Daniel Kahn Gillmor on 19/04/2016 at 20:51..
updated debian/watch to version 4
https://invent.kde.org/neon/forks/gpgme/-/commit/52b5158781793ca329bcbf09c519b6c657dcfc4b

Git commit 8ff22caf032e98aad92b820c5180fa86403894a5 by Daniel Kahn Gillmor on 19/04/2016 at 21:03..
wrap-and-sort
https://invent.kde.org/neon/forks/gpgme/-/commit/8ff22caf032e98aad92b820c5180fa86403894a5

Git commit 8dd36bfd692bf091cac8c36b608d86d17a5759ee by Daniel Kahn Gillmor on 19/04/2016 at 21:40..
depend on gnupg from version 2 or later, instead of gnupg2
https://invent.kde.org/neon/forks/gpgme/-/commit/8dd36bfd692bf091cac8c36b608d86d17a5759ee

Git commit 652c656bb349ec50af97451c5d688f30a4bd3eb2 by Daniel Kahn Gillmor on 19/04/2016 at 21:40..
bumped Standards-Version to 3.9.8 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/652c656bb349ec50af97451c5d688f30a4bd3eb2

Git commit ca8e21ee856d1e623f9c85bb7179f9eec1bd3f7a by Daniel Kahn Gillmor on 19/04/2016 at 21:40..
updated Vcs-* fields
https://invent.kde.org/neon/forks/gpgme/-/commit/ca8e21ee856d1e623f9c85bb7179f9eec1bd3f7a

Git commit 516f0eca86283b0cdda3fb036a9b3f228f13b001 by Daniel Kahn Gillmor on 19/04/2016 at 21:40..
prepare for maintenance relase
https://invent.kde.org/neon/forks/gpgme/-/commit/516f0eca86283b0cdda3fb036a9b3f228f13b001

Git commit 178d9b5a363697b822572b78e649dafd26b6d125 by Daniel Kahn Gillmor on 20/04/2016 at 12:36..
change order of gnupg2 | gnupg (>= 2) build-dep so that sbuild is OK (while gnupg (>= 2) is still only in experimental).
https://invent.kde.org/neon/forks/gpgme/-/commit/178d9b5a363697b822572b78e649dafd26b6d125

Git commit 3fad1216770f446a89801d842aa8667356a5ec95 by Andre Heinecke on 06/05/2016 at 11:19..
Cpp: Handle PINENTRY_LAUNCHED status line

* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
Add GPGME_STATUS_PINENTRY_LAUNCHED.

--
PINENTRY_LAUNCHED needs no response in any Job. This fixes
Jobs which errored out on unknown status lines.
https://invent.kde.org/neon/forks/gpgme/-/commit/3fad1216770f446a89801d842aa8667356a5ec95

Git commit cd267791e9bd73505a2a1ea90c85df988e153c19 by Andre Heinecke on 06/05/2016 at 12:17..
Add maybe mode for langs and default to it

* configure.ac (languages): Warn and disable langs for which
requirements are not met.

--
If the languages are explicitly enabled on the command line
missing dependencies for them will still lead to errors.
https://invent.kde.org/neon/forks/gpgme/-/commit/cd267791e9bd73505a2a1ea90c85df988e153c19

Git commit 20b02a7dd49c7ede148245d8a5319b2ba9ce7673 by Andre Heinecke on 06/05/2016 at 12:20..
Qt: Fix library name in Copyright headers

--
Files are not part of libkleopatra anymore.
https://invent.kde.org/neon/forks/gpgme/-/commit/20b02a7dd49c7ede148245d8a5319b2ba9ce7673

Git commit 11ff8d5964bf66f905818514f6a51fc881ea1a56 by Andre Heinecke on 06/05/2016 at 12:41..
Qt: Fix license mentioned in README

* lang/qt/README: License is GPLv2+ and not LGPL.
--
The only part under lgpl is the QByteArray dataprovider.
https://invent.kde.org/neon/forks/gpgme/-/commit/11ff8d5964bf66f905818514f6a51fc881ea1a56

Git commit a579be82c84f0b9732ee3d52ff2142a3decf95d7 by Andre Heinecke on 06/05/2016 at 12:47..
Use common error message style for qt lang checks

* configure.ac: Use common error highliting for qt lang options.
https://invent.kde.org/neon/forks/gpgme/-/commit/a579be82c84f0b9732ee3d52ff2142a3decf95d7

Git commit fc38c15136c87ce971a8381fa87399088dd5a3cc by Werner Koch on 10/05/2016 at 08:27..
Allow cc to detect missing cases in a switch.

* src/delete.c (delete_status_handler): Remove default case from a
switch so that cc can check the use of all enum values.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fc38c15136c87ce971a8381fa87399088dd5a3cc

Git commit 0e3195948ddaba3af07d2415bb496491076edc17 by Andre Heinecke on 10/05/2016 at 10:51..
Qt: Add test for async keylisting

* src/lang/qt/tests/t-keylist.cpp(KeyListTest::testKeyListAsync): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/0e3195948ddaba3af07d2415bb496491076edc17

Git commit f531608539b45f0bbd036f430943b390ec21aa65 by Justus Winter on 10/05/2016 at 11:03..
Merge branch 'master' into justus/pyme3
https://invent.kde.org/neon/forks/gpgme/-/commit/f531608539b45f0bbd036f430943b390ec21aa65

Git commit f4ba16b31ea282d0787a40be3f37b951584143a1 by Justus Winter on 10/05/2016 at 11:19..
python: Rename bindings.

--
Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f4ba16b31ea282d0787a40be3f37b951584143a1

Git commit 000dbb5b9a56f9b9143ca2555999a8f83ec88536 by Justus Winter on 10/05/2016 at 11:21..
python: Drop Debian packaging.

--
Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/000dbb5b9a56f9b9143ca2555999a8f83ec88536

Git commit aade53a12b9716997684b872bc2ac87229f73fb3 by Justus Winter on 10/05/2016 at 11:30..
python: Delete trailing whitespace.

--
Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/aade53a12b9716997684b872bc2ac87229f73fb3

Git commit 740f92a7b83389ee9bde98b7bd25556793500b8b by Andre Heinecke on 10/05/2016 at 12:02..
Qt: Only install public headers

* lang/qt/src/Makefile.am: Do not install all headers.
--
The qgpgme classes hide the implementation and thus make it
easier to change it without ABI breaks. They should not
be installed.
https://invent.kde.org/neon/forks/gpgme/-/commit/740f92a7b83389ee9bde98b7bd25556793500b8b

Git commit 97225bb01cd2ffa1d84c7fedbc577275de4a4893 by Andre Heinecke on 10/05/2016 at 12:02..
Qt: Make doxygen quieter

* lang/qt/doc/Doxyfile.in: Quiet and no undocumented warnings.
https://invent.kde.org/neon/forks/gpgme/-/commit/97225bb01cd2ffa1d84c7fedbc577275de4a4893

Git commit 56c4d9ea9520c95612e525b2fa1359db6fa88f4a by Andre Heinecke on 10/05/2016 at 12:05..
Qt: Make Protocol class public API

* lang/qt/src/Makefile.am (qgpgme_headers): Add protocol.h
(private_qgpgme_headers): Add protocol_p.h
* lang/qt/src/protocol.h: New. From QGpgMEBackend.
* lang/qt/src/protocol_p.h: New. From QGpgMEBackend.
* lang/qt/src/qgpgmebackend.h,
lang/qt/src/qgpgmebackend.cpp (Protocol): Removed.

--
The backend class does not make much sense anymore as we
only have the GpgME backend obviously. It's purpose was
for Libkleo's Backend abstraction.
https://invent.kde.org/neon/forks/gpgme/-/commit/56c4d9ea9520c95612e525b2fa1359db6fa88f4a

Git commit b7d5c2cced796d4092a9f424368fc999165f9d13 by Andre Heinecke on 10/05/2016 at 12:32..
Qt: Fix unkonwn doxygen keyword warnings

--
Reimp is not a keqword and we inherit documentation anyway.
https://invent.kde.org/neon/forks/gpgme/-/commit/b7d5c2cced796d4092a9f424368fc999165f9d13

Git commit 11392a80d9a85bcd8718b105e6d58038e61beaac by Justus Winter on 10/05/2016 at 12:45..
python: PEP8 fixes.

Cherry picked from 0267c151.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/11392a80d9a85bcd8718b105e6d58038e61beaac

Git commit c303292aca26c43b6efe98719edb3ff7b2d6665d by Andre Heinecke on 10/05/2016 at 13:09..
Qt / Cpp: Fix make dist

* lang/cpp/src/Makefile.am (EXTRA_DIST): Fix typo.
(private_gpgmepp_headers): New. Private headers.
(libgpgmepp_la_SOURCES): Add private headers.
* lang/qt/src/Makefile.am (t_keylist_SOURCES): Remove non existent
header.
https://invent.kde.org/neon/forks/gpgme/-/commit/c303292aca26c43b6efe98719edb3ff7b2d6665d

Git commit 34e5c5b33de3608bedc2826be27a06e6eec0ea44 by Andre Heinecke on 10/05/2016 at 14:43..
Merge branch 'gpgmepp'
https://invent.kde.org/neon/forks/gpgme/-/commit/34e5c5b33de3608bedc2826be27a06e6eec0ea44

Git commit a29babd07cf9f9625d2b5aa2eb6b7bc9d1828359 by Justus Winter on 11/05/2016 at 11:33..
python: Integrate into the build system.

* configure.ac: Make Python bindings configurable, add new Makefile.
* lang/python/Makefile.am: New file.
* lang/python/setup.py: Integrate into the build system.
* m4/ax_pkg_swig.m4: New file from the autoconf archive.
* m4/m4_ax_swig_python.m4: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a29babd07cf9f9625d2b5aa2eb6b7bc9d1828359

Git commit bbeee5e1a060f2d1e37a08220eb552cf4673a058 by Justus Winter on 11/05/2016 at 11:51..
python: Fix simple example.

* lang/python/examples/simple.py: Flush stdout, encode name as
UTF-8 before passing it to GPGME.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bbeee5e1a060f2d1e37a08220eb552cf4673a058

Git commit b8de79160b2e05ac84d8feb61ff7ed1f7015a623 by Andre Heinecke on 11/05/2016 at 12:56..
Cpp: Ensure gpgme.h is taken from current build

* lang/cpp/src/Makefile.am (AM_CPPFLAGS): Add gpgme.h location.
--
This fixes the build in case an incompatible gpgme.h is also
installed in other include locations.
https://invent.kde.org/neon/forks/gpgme/-/commit/b8de79160b2e05ac84d8feb61ff7ed1f7015a623

Git commit d60deb8a127fb35c01acc729f33b014840af0e7b by Justus Winter on 12/05/2016 at 09:49..
python: Fix type translation.

* lang/python/gpgme.i: Adjust to Python3's string type being
'Unicode', not 'bytes'.  Fix type checking.
* lang/python/core.py (Data.write): Add docstring mentioning the
expected type of parameter 'buffer'.
(Data.read): Adjust read loop.  Also, use a saner chunk size, and join
all chunks at the end instead of adding them.
* lang/python/examples/simple.py: Adjust example.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d60deb8a127fb35c01acc729f33b014840af0e7b

Git commit c89d3a71ad20ff02755539a44f254b1e59054c4a by Justus Winter on 12/05/2016 at 09:51..
python: Make test case more robust.

* lang/python/examples/t-edit.py: Check if key is found.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c89d3a71ad20ff02755539a44f254b1e59054c4a

Git commit ce5121ad53b0e17fbf9150b354c80da73f7fe190 by Justus Winter on 12/05/2016 at 09:53..
python: Handle interpreter shutdown.

* lang/python/pyme/core.py: Avoid races at interpreter shutdown.  This
silences the most annoying occurrences, however this problem also
affects the SWIG generated code, which might indicate that the real
problem is somewhere else.  If so, this change can be easily reverted.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ce5121ad53b0e17fbf9150b354c80da73f7fe190

Git commit af9371eb63664c92fb67e8e7e03cc984e7d38a7f by Justus Winter on 12/05/2016 at 10:59..
python: Fix name of exception, make slot methods explicit.

* lang/python/pyme/util.py (GpgmeWrapper._getctype): Fix exception,
add docstring.
(GpgmeWrapper._getnameprepend): New function.
(GpgmeWrapper._errorcheck): Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/af9371eb63664c92fb67e8e7e03cc984e7d38a7f

Git commit e3d3d366bd1a1aea8a38ae5dcbf71ea3c784e920 by Justus Winter on 12/05/2016 at 10:59..
python: Fix function invocation.

* lang/python/pyme/core.py (Data.new_from_fd): Fix function
invocation.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e3d3d366bd1a1aea8a38ae5dcbf71ea3c784e920

Git commit ed0ce84fbd2904bf59ac66ae7422716db3624efa by Justus Winter on 12/05/2016 at 12:57..
python: Cache generated wrapper functions.

* lang/python/util.py (GpgmeWrap.__getattr__): Cache generated wrapper
functions.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ed0ce84fbd2904bf59ac66ae7422716db3624efa

Git commit e64bffe0307d14204b00a177a472cd4f99c07561 by Justus Winter on 12/05/2016 at 13:37..
python: Add a test suite.

* configure.ac: Add new Makefile.
* lang/python/Makefile.am: Add subdirectory.
* lang/python/tests/Makefile.am: New file.
* lang/python/tests/t-wrapper.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e64bffe0307d14204b00a177a472cd4f99c07561

Git commit f7094d8358e933f3ce074eade7a40b2a7d291180 by Justus Winter on 12/05/2016 at 15:59..
python: Fix writing to data buffers.

* lang/python/gpgme.i: Add typemap for buffers.
* lang/python/pyme/core.py (Data.write): Fix function.
* lang/python/tests/Makefile.am: Add new test.
* lang/python/tests/t-data.py: New file.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f7094d8358e933f3ce074eade7a40b2a7d291180

Git commit c5d118b2a76e9528df780d11da9566ff7c22e4f5 by Justus Winter on 12/05/2016 at 16:01..
python: Raise exceptions on write errors.

* lang/python/pyme/core.py (Data.write): Handle errors.
* lang/python/pyme/errors.py (GPGMEError.fromSyserror): New function.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c5d118b2a76e9528df780d11da9566ff7c22e4f5

Git commit 11314f0db6e57597e3f56351a86fdb36a7a17dd7 by Justus Winter on 12/05/2016 at 16:29..
python: Share generated methods between objects.

* lang/python/pyme/util.py (GpgmeWrapper.__getattr__): Monkey-patch
the class.
* lang/python/tests/t-wrapper.py: Demonstrate the sharing.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/11314f0db6e57597e3f56351a86fdb36a7a17dd7

Git commit 66ded1a5ce7236254f8541addecd4c3bc7b2878e by Andre Heinecke on 13/05/2016 at 10:52..
Qt: Add missing copyright header in test

* lang/qt/tests/t-keylist.cpp: Add copyright header.
https://invent.kde.org/neon/forks/gpgme/-/commit/66ded1a5ce7236254f8541addecd4c3bc7b2878e

Git commit 52f2295d528029a36a3e0a89c777297762b3fc9b by Andre Heinecke on 13/05/2016 at 11:16..
Qt: Add keyLocateJob and test for it

* configure.ac (LIBQGPGME_LT_REVISION): Bump.
* lang/qt/src/protocol.h (locateKeysJob): Add Job.
* lang/qt/src/protocol_p.h (locateKeysJob): Implement.
* lang/qt/tests/Makefile.am: Add t-keylocate.
* lang/qt/tests/t-keylocate.cpp: New.
https://invent.kde.org/neon/forks/gpgme/-/commit/52f2295d528029a36a3e0a89c777297762b3fc9b

Git commit 9ceaec25918c6c5f2dfafe4e20181b83ce78f6ce by Justus Winter on 17/05/2016 at 12:18..
python: Port more tests.

* lang/python/Makefile.am: Add bits from the c test suite.
* lang/python/support.py: New file.
* lang/python/t-decrypt.py: Likewise.
* lang/python/t-encrypt.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9ceaec25918c6c5f2dfafe4e20181b83ce78f6ce

Git commit 64e5fe767f45e9ccb0fb3fe919171c222132a54c by Justus Winter on 17/05/2016 at 12:18..
python: Import GPGMEError.

* pyme/core.py: Import GPGMEError.

Fixes c5d118b2.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/64e5fe767f45e9ccb0fb3fe919171c222132a54c

Git commit 10328324c8fc9725cd0c885eaebfc80dc32c1ff6 by Justus Winter on 17/05/2016 at 12:22..
python: Clean up examples.

* lang/python/examples/delkey.py: Clean up example.
* lang/python/examples/encrypt-to-all.py: Likewise.
* lang/python/examples/genkey.py: Likewise.
* lang/python/examples/inter-edit.py: Likewise.
* lang/python/examples/sign.py: Likewise.
* lang/python/examples/signverify.py: Likewise.
* lang/python/examples/simple.py: Likewise.
* lang/python/examples/t-edit.py: Likewise.
* lang/python/examples/verifydetails.py: Likewise.
* lang/python/pyme/__init__.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/10328324c8fc9725cd0c885eaebfc80dc32c1ff6

Git commit afc65aa60aa7834ca09e7eca22a2f59a2f12a554 by Werner Koch on 17/05/2016 at 12:33..
Trailing white space cleanup for 2 files in tests/.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/afc65aa60aa7834ca09e7eca22a2f59a2f12a554

Git commit db343325356a73b6899e9580c6f5e32f33544003 by Justus Winter on 17/05/2016 at 13:10..
Merge branch 'justus/pyme3'
https://invent.kde.org/neon/forks/gpgme/-/commit/db343325356a73b6899e9580c6f5e32f33544003

Git commit 09c1e4a85e40514d1ac1e7c8665c3c17a624b736 by Justus Winter on 17/05/2016 at 13:13..
Merge branch 'master' of git+ssh://playfair.gnupg.org/git/gpgme
https://invent.kde.org/neon/forks/gpgme/-/commit/09c1e4a85e40514d1ac1e7c8665c3c17a624b736

Git commit 4711a1e181153a2395e5f523047595abd47965db by Justus Winter on 17/05/2016 at 14:34..
build: Add python autoconf macro.

* m4/ax_python_devel.m4: New file.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4711a1e181153a2395e5f523047595abd47965db

Git commit 9f14a24076e7f93f7762d5d5383281eb593bfea9 by Werner Koch on 17/05/2016 at 14:57..
python: Delete duplicated license texts/

--
https://invent.kde.org/neon/forks/gpgme/-/commit/9f14a24076e7f93f7762d5d5383281eb593bfea9

Git commit 9b36ebf37a3b889c955ba68038bd5b3d9c5cde4e by Andre Heinecke on 17/05/2016 at 15:54..
Qt / Cpp: Port auto_ptr to unique_ptr

* lang/cpp/src/context.cpp,
lang/cpp/src/context.h,
lang/cpp/src/context_p.h (Context::createForEngine),
(Context::edit, Context::startEditing),
(Context::takeLastEditInteractor, Context::cardEdit),
(Context::startCardEditing, Context::takeLastCardEditInteractor),
(Context::assuanTransact, Context::startAssuanTransaction),
(Context::takeLastAssuanTransaction): Port to unique_ptr.
* lang/qt/src/qgpgmeadduseridjob.cpp,
lang/qt/src/qgpgmechangeexpiryjob.cpp,
lang/qt/src/qgpgmechangeownertrustjob.cpp,
lang/qt/src/qgpgmechangepasswdjob.cpp,
lang/qt/src/qgpgmesignkeyjob.cpp: Update accordingly.

--
This is another API break but as we already broke API with GpgME++
and QGpgME from KDE Frameworks this is a good time to do this
to avoid using a deprected C++ class in the API.
https://invent.kde.org/neon/forks/gpgme/-/commit/9b36ebf37a3b889c955ba68038bd5b3d9c5cde4e

Git commit 315fb73d4a774e2c699ac1804f5377559b4d0027 by Werner Koch on 17/05/2016 at 18:23..
Return dedicated error code for all subkeys expired or revoked.

* src/gpgme.h.in (GPGME_STATUS_KEY_CONSIDERED): New.
(GPGME_SIGSUM_TOFU_CONFLICT): New.
* src/status-table.c (KEY_CONSIDERED): New.
* src/op-support.c (_gpgme_parse_inv_recp): Add argc KC_FPR and
KC_FLAGS.  Use calloc.  Detect all expired or revoked subkeys.
(_gpgme_parse_key_considered): New.
* src/sign.c (op_data_t): Add fields KC_FPR and KC_FLAGS.
(release_op_data): Free KC_FPR.
(_gpgme_sign_status_handler): Handle STATUS_KEY_CONSIDERED.
* src/encrypt.c (op_data_t): Add fields KC_FPR and KC_FLAGS.
(release_op_data): Free KC_FPR.
(_gpgme_encrypt_status_handler): Handle STATUS_KEY_CONSIDERED.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/315fb73d4a774e2c699ac1804f5377559b4d0027

Git commit 30b447fcfe0e4f362c2575e1b9388e8144b5b2fd by Werner Koch on 17/05/2016 at 18:23..
tests: New maintenance helper run-encrypt.

* tests/run-encrypt.c: New.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/30b447fcfe0e4f362c2575e1b9388e8144b5b2fd

Git commit f0dca0ab92ed18d80e30d7d39db1596b4112794f by Andre Heinecke on 18/05/2016 at 13:27..
Fix typo in compatibility declaration

* src/op-support.c (GPG_ERR_SUBKEYS_EXP_REV): Change to
GPG_ERR_SUBKEYS_EXP_OR_REV.

--
This fixes the build with libgpg-error < 1.23
https://invent.kde.org/neon/forks/gpgme/-/commit/f0dca0ab92ed18d80e30d7d39db1596b4112794f

Git commit 2c3a5d93e78cfca22785e51c5a65184a47da4bff by Justus Winter on 18/05/2016 at 13:37..
python: Various fixes.

* configure.ac: Fix SWIG detection, bump required Python version.
* lang/python/Makefile.am: Portability fix.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2c3a5d93e78cfca22785e51c5a65184a47da4bff

Git commit 375523ead3a749d77d286c56f10d403c07f2b014 by Andre Heinecke on 19/05/2016 at 08:56..
Qt: Fix compilation of unit tests

* lang/qt/tests/Makefile.am (AM_CPPFLAGS): Add -DBUILDING_QGPGME.

--
Without building QGpgME the headers of gpgme++ are not included
corretly and taken from an already installed gpgme++.
https://invent.kde.org/neon/forks/gpgme/-/commit/375523ead3a749d77d286c56f10d403c07f2b014

Git commit 07f71cd17706093ca6b1507c41609356d479ae9f by Justus Winter on 19/05/2016 at 09:09..
python: Fix import.

* lang/python/helpers.c (pygpgme_exception_init): Make module import
relative.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/07f71cd17706093ca6b1507c41609356d479ae9f

Git commit c1c893e3384a07ff864507902fbac4a7fee4d6f1 by Justus Winter on 19/05/2016 at 09:09..
python: More type conversion fixes.

* lang/python/helpers.c (pyPassphraseCb): Cope with 'uid_hint' being
NULL, convert it to an Unicode object, and cope with the callback
returning both Unicode and bytes objects.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c1c893e3384a07ff864507902fbac4a7fee4d6f1

Git commit 464d404c8816fc93baf945816c93e86bdeb0ea39 by Justus Winter on 19/05/2016 at 09:09..
python: Add more tests.

* lang/python/tests/Makefile.am (py_tests): Add new tests.
* lang/python/tests/support.py (print_data): New function.
* lang/python/tests/t-decrypt.py: Use new function.
* lang/python/tests/t-encrypt.py: Likewise.
* lang/python/tests/t-sign.py: New file.
* lang/python/tests/t-encrypt-sym.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/464d404c8816fc93baf945816c93e86bdeb0ea39

Git commit 2f748b5a2d162be4f23b18782219771ead54cb51 by Andre Heinecke on 19/05/2016 at 09:16..
Qt: Check for graphviz and set HAVE_DOT correctly

* configure.ac: Check for graphviz and define HAVE_DOT.
* lang/qt/doc/Doxyfile.in (HAVE_DOT): Use variable.
https://invent.kde.org/neon/forks/gpgme/-/commit/2f748b5a2d162be4f23b18782219771ead54cb51

Git commit d90857a08c4fe5b73b6d6d46fd6200efdd72db44 by Justus Winter on 19/05/2016 at 13:58..
python: Robust exception handling in callbacks.

* lang/python/helpers.c (pygpgme_stash_callback_exception): New
function.
(pygpgme_raise_callback_exception): Likewise.
(pyPassphraseCb): Stash python errors.
* lang/python/helpers.h (pygpgme_raise_callback_exception): New
prototype.
* lang/python/pyme/core.py ({Context,Data}.__init__): Move common
initialization to superclass.
(Context.set_progress_cb): Hand in 'self'.
* lang/python/pyme/util.py (GpgmeWrapper.__init__): New function.
(GpgmeWrapper.__getattr__): Raise stashed exceptions.
* lang/python/tests/Makefile.am (py_tests): Add new test.
* lang/python/tests/t-callbacks.py: New file.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d90857a08c4fe5b73b6d6d46fd6200efdd72db44

Git commit 0d4e95621e05d50cd454049a424bb9ee098a5db6 by Justus Winter on 19/05/2016 at 14:08..
python: Improve progress callbacks.

* lang/python/helpers.c (pyProgressCb): Stash python errors, convert
'what' to Unicode object.
* lang/python/pyme/core.py (Context.set_progress_cb): Hand in 'self'.
* lang/python/tests/t-callbacks.py: Test progress callbacks.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0d4e95621e05d50cd454049a424bb9ee098a5db6

Git commit 5aa8e588e166abeef2e3d677ab6830f2d7af1b5d by Werner Koch on 19/05/2016 at 15:02..
api: Remove arbitrary restriction from gpgme_op_verify.

* src/verify.c (verify_start): Do not return GPG_ERR_INV_VALUES when
when SIGNED_TEXT is not given.
--

The original idea behind this restriction probably was that it is
useless to verify a non-detached signatures without also returning the
signed text.  However, it is sometimes useful to just check the
signature, for example to see who signed it.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5aa8e588e166abeef2e3d677ab6830f2d7af1b5d

Git commit 88f2c1c0d16eee6bb36a901623ea65ac69499f03 by Werner Koch on 19/05/2016 at 15:04..
api: Add new function gpgme_set_ctx_flag.

* src/gpgme.h.in (gpgme_set_ctx_flag): New prototype.
* src/gpgme.c (gpgme_set_ctx_flag): New.
* src/gpgme.def, src/libgpgme.vers: Add new function.
* src/context.h (struct gpgme_context): Add FULL_STATUS.
* src/decrypt.c (_gpgme_decrypt_status_handler): Do not call the
  status callback if FULL_STATUS is set.
* src/genkey.c (genkey_status_handler): Ditto.
* src/passphrase.c (_gpgme_passphrase_status_handler): Ditto.
* src/sign.c (_gpgme_sign_status_handler): Ditto.

* src/engine-backend.h (struct engine_ops): Add SET_STATUS_CB and add
adjust all definitions of that variable.
* src/engine.c (_gpgme_engine_set_status_cb): New.
* src/op-support.c (_gpgme_op_reset): Call this function.

* src/engine-gpg.c (struct engine_gpg): Add fields MON_CB and
MON_CB_VALUE.
(gpg_set_status_cb): New.
(_gpgme_engine_ops_gpg): Register that function.
(read_status): Call the monitor callback.

* src/engine-gpgsm.c (struct engine_gpgsm): Add fields MON_CB and
MON_CB_VALUE.
(_gpgme_engine_ops_gpgsm): Register that function.
(gpgsm_assuan_simple_command): Change first arg to be an engine
context and adjust call callers.  Call the monitor callback.

* src/engine-uiserver.c (struct engine_uiserver): Add fields MON_CB
and MON_CB_VALUE.
(_gpgme_engine_ops_uiserver): Register that function.
(uiserver_assuan_simple_command): Change first arg to be an engine
context and adjust call callers.  Call the monitor callback.

* tests/run-verify.c (status_cb): New.
(print_result): Print algo names.
(main): Add option --status.
--

This new feature is mainly intended for bug tracking.  Having access
to the raw status lines might also be useful for applications, though.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/88f2c1c0d16eee6bb36a901623ea65ac69499f03

Git commit 5df858cbf196b2a53d600b7f45655f7b35c1fe93 by Andre Heinecke on 20/05/2016 at 14:03..
Cpp: Ignore STATUS_KEY_CONSIDERED when editing

* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
Handle GPGME_STATUS_KEY_CONSIDERED.
https://invent.kde.org/neon/forks/gpgme/-/commit/5df858cbf196b2a53d600b7f45655f7b35c1fe93

Git commit eaf2d018e63c15cd9a81e5c1fd2fedbf8829f7b9 by Andre Heinecke on 20/05/2016 at 14:04..
Qt: Add test for changeownertrust

* lang/qt/tests/t-ownertrust.cpp: New test.
* lang/qt/tests/Makefile.am: Add test.

--
This test would have catched the issue created by not handling
GPGME_STATUS_KEY_CONSIDERED.
https://invent.kde.org/neon/forks/gpgme/-/commit/eaf2d018e63c15cd9a81e5c1fd2fedbf8829f7b9

Git commit a92946a8cacc44f655249d84b316deae59e62671 by Werner Koch on 21/05/2016 at 08:31..
core: New functions to help parsing of status lines.

* src/conversion.c (_gpgme_split_fields): New.
(_gpgme_strtoul_field): New.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a92946a8cacc44f655249d84b316deae59e62671

Git commit dac2c5441d418536632f014c8b0e1359580279d1 by Werner Koch on 21/05/2016 at 08:31..
api: Add new context flag "raw-description".

* src/context.h (struct gpgme_context): Add field raw_description.
* src/gpgme.c (gpgme_set_ctx_flag): New flag.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dac2c5441d418536632f014c8b0e1359580279d1

Git commit 10df06ee8f9192309bf124872438f7c32457e1c6 by Werner Koch on 21/05/2016 at 08:32..
api: Return Tofu info for signatures.

* src/gpgme.h.in (gpgme_tofu_policy_t): New.
(gpgme_status_code_t): Add status codes for TOFU.
(struct _gpgme_tofu_info, gpgme_tofu_info_t): New.
(struct _gpgme_signature): Add field 'tofu'.
* src/status-table.c (status_table): Add new codes.
* src/verify.c: Include limits.h.
(release_tofu_info): New.
(release_op_data): Call that.
(parse_tofu_user): New.
(parse_tofu_stats): New.
(parse_tofu_stats_long): New.
(_gpgme_verify_status_handler): Handle TOFU status lines.

* tests/run-verify.c (print_description): New.
(print_result): print tofu info.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/10df06ee8f9192309bf124872438f7c32457e1c6

Git commit c9cc0412e940c78c3e9bacb6ff1459b5bb5bb9ad by Justus Winter on 23/05/2016 at 13:41..
python: Translate list of strings.

* lang/python/gpgme.i: Add typemap translating list of strings.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c9cc0412e940c78c3e9bacb6ff1459b5bb5bb9ad

Git commit a42d814a65fdc29a3be6efa97433997495696a88 by Justus Winter on 23/05/2016 at 13:43..
python: Port more tests.

* lang/python/tests/Makefile.am (TESTS_ENVIRONMENT): Set
LD_LIBRARY_PATH.
(pytests): Add new tests.
* lang/python/tests/t-callbacks.py: Trim imports.
* lang/python/tests/t-encrypt-sign.py: New file.
* lang/python/tests/t-export.py: Likewise.
* lang/python/tests/t-signers.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a42d814a65fdc29a3be6efa97433997495696a88

Git commit 5476ca6813fc9d8833d5224f19d4bb7515380ab5 by Justus Winter on 23/05/2016 at 16:09..
python: Move edit callback function.

* lang/python/gpgme.i (pyEditCb): Move...
* lang/python/helpers.c: ... here.
* lang/python/helpers.h (pyEditCb): New prototype.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5476ca6813fc9d8833d5224f19d4bb7515380ab5

Git commit 283f0bdc3d32624dac93d02ba3df516e69d8d4ba by Justus Winter on 23/05/2016 at 16:23..
python: Fix hook.

* lang/python/helpers.c (pyProgressCb): Fix getting hook data.
* lang/python/tests/t-callbacks.py: Show that this works.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/283f0bdc3d32624dac93d02ba3df516e69d8d4ba

Git commit 09803c4a81b9431fd4c8f30abb1c60c4c735f0cb by Justus Winter on 24/05/2016 at 11:13..
python: Improve support for edit callbacks.

* lang/python/helpers.c (pyEditCb): Stash exceptions.
* lang/python/pyme/core.py (Context.op_edit): Hand in 'self'.
* lang/python/tests/Makefile.am (py_tests): Add new test.
* lang/python/tests/t-callbacks.py: Test edit callbacks.
* lang/python/tests/t-edit.py: New file.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/09803c4a81b9431fd4c8f30abb1c60c4c735f0cb

Git commit b107fc8a92bd16bc0d868c771b6334d6594e6395 by Andre Heinecke on 24/05/2016 at 12:13..
Cpp: Set -std=c++11 also if CXXCPP is already set

* m4/ax_cxx_compile_stdxx.m4 (AX_CXX_COMPILE_STDCXX): Set CXXCPP if
neccessary.

--
This fixes the build with scan-build where CXXCPP is already set but
does not include stdc++11. While this deviates from the
autotools-archive version of the script it does not make sense
to me first to check if stdc++11 needs to be set and then not
set it.
https://invent.kde.org/neon/forks/gpgme/-/commit/b107fc8a92bd16bc0d868c771b6334d6594e6395

Git commit 00e93b2cae0585ff10425421d9097a846943b21c by Andre Heinecke on 24/05/2016 at 14:00..
Qt: Fix test build with clang

* lang/qt/tests/Makefile.am (LDADD): Explicitly add -lstdc++

--
g++ does not need that but clang does need it explicitly
https://invent.kde.org/neon/forks/gpgme/-/commit/00e93b2cae0585ff10425421d9097a846943b21c

Git commit 72afb68f8c2f0cb326f20b289215402fd849339d by Justus Winter on 24/05/2016 at 16:00..
python: Improve docstring.

* lang/python/pyme/core.py (Context.set_progress_cb): Improve
docstring.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/72afb68f8c2f0cb326f20b289215402fd849339d

Git commit 8b57f06e0c04f5c9b87a3c76618230d757412076 by Justus Winter on 24/05/2016 at 16:00..
python: Support status callbacks.

* lang/python/helpers.c (pyStatusCb): New function.
(pygpgme_set_status_cb): Likewise.
* lang/python/helpers.h (pygpgme_set_status_cb): New prototype.
* lang/python/pyme/core.py (Context.__init__): Initialize
'last_statuscb'.
(Context._free_statuscb): New function.
(Context.set_status_cb): Likewise.
* lang/python/tests/t-callbacks.py: Test status callbacks.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8b57f06e0c04f5c9b87a3c76618230d757412076

Git commit 0ebd6a1b43a96bffa78da89dc8629edac0a74d35 by Justus Winter on 24/05/2016 at 16:00..
python: Move the base wrapper class.

* python/lang/pyme/util.py (GpgmeWrapper): Move...
* python/lang/pyme/core.py: ... here.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0ebd6a1b43a96bffa78da89dc8629edac0a74d35

Git commit 7bc9cc717e428f48d4b27016f44c9f3900b1fba6 by Justus Winter on 24/05/2016 at 16:00..
python: Make all GnuPG errors available.

* lang/python/Makefile.am (errors.i): Generate file.
* lang/python/gpgme.i: Include generated file.
* lang/python/pyme/errors.py: Pull in all errors and error sources.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7bc9cc717e428f48d4b27016f44c9f3900b1fba6

Git commit 00ff6d07330028da370c869e3ec442eb76f8cbb8 by Justus Winter on 24/05/2016 at 16:00..
python: Improve and test Context.wait.

* lang/python/pyme/core.py (Context.wait): Improve docstring.  As the
context passed to 'gpgme_wait' is never NULL, it is pointless to look
at the returned context.  Always raise exceptions.
* lang/python/tests/Makefile.am (pytests): Add new test.
* lang/python/tests/t-wait.py: New file.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/00ff6d07330028da370c869e3ec442eb76f8cbb8

Git commit ce73ae9d0cbf782cd3a1949fc4f568f0d1da60d9 by Justus Winter on 25/05/2016 at 10:45..
src: Fix trace string.

* src/data-compat.c (gpgme_data_new_from_file): Fix trace string.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ce73ae9d0cbf782cd3a1949fc4f568f0d1da60d9

Git commit bf188e280b8b4fc775f33c47e2e1e275ed044004 by Justus Winter on 27/05/2016 at 10:18..
python: Fix reading data from existing files.

* lang/python/pyme/core.py (Data.__init__): Add 'copy' kwargument, and
pass it to functions supporting it.  PEP8 fix.
(Data.new_from_fd): PEP8 fix.
(Data.new_from_file): Give a more helpful error message if copy is
False.  PEP8 fix.
(Data.new_from_fd): Hand the file descriptor to
'gpgme_data_new_from_fd', not a stream.  Fix docstring.
* lang/python/tests/t-data.py: Add tests for this.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bf188e280b8b4fc775f33c47e2e1e275ed044004

Git commit e74cd9fb80f12b764d5e4561e73d55644147e9e7 by Justus Winter on 27/05/2016 at 10:19..
Improve comments.

* src/gpgme.h.in (gpgme_data_seek_cb_t, gpgme_data_seek): Clarify that
these functions return the new offset.
(gpgme_data_release_cb_t): Fix name of parameter.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e74cd9fb80f12b764d5e4561e73d55644147e9e7

Git commit ebfe2300c33a3bad311e9ac1530e6c92636a08a4 by Justus Winter on 27/05/2016 at 10:25..
python: Fix object deallocation.

Handing a reference to the wrapper object created a non-trivial
circular reference that Pythons garbage collector is unable to break.
Explicitly break it by using a weak reference.

* lang/python/helpers.c (pygpgme_stash_callback_exception): Retrieve
object from weak reference.
* lang/python/pyme/core.py (Context.__del__): Free status callback.
(Context.set_passphrase_cb): Use a weak reference.
(Context.set_progress_cb): Likewise.
(Context.set_status_cb): Likewise.
(Context.op_edit): Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ebfe2300c33a3bad311e9ac1530e6c92636a08a4

Git commit 2ae847c02731994d99e69d3d025ff01f41406452 by Justus Winter on 27/05/2016 at 12:04..
python: Implement data callbacks.

* lang/python/gpgme.i (object_to_gpgme_t): Set exception on error.
* lang/python/helpers.c (pyDataReadCb): New function.
(pyDataWriteCb): Likewise.
(pyDataSeekCb): Likewise.
(pyDataReleaseCb): Likewise.
(pygpgme_data_new_from_cbs): Likewise.
* lang/python/helpers.h (pygpgme_data_new_from_cbs): New prototype.
* lang/python/pyme/core.py (Data.__init__): Fix docstring, fix read
callbacks.
(Data.__del__): Fix read callbacks.
(Data._free_readcb): Drop function.
(Data._free_datacbs): New function.
(Data.new_from_cbs): Fix setting the callbacks.
(Data.write): Raise stashed exceptions.
(Data.read): Likewise.
* lang/python/tests/t-callbacks.py: Test new functionality.
* lang/python/tests/t-data.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2ae847c02731994d99e69d3d025ff01f41406452

Git commit e3dfd0a5ed53043a2fb1ceb23fc3aff03c47708d by Justus Winter on 27/05/2016 at 13:27..
tests: Fix test.

--
Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e3dfd0a5ed53043a2fb1ceb23fc3aff03c47708d

Git commit 5265017d58e72b99b953932da2683522bb7bc741 by Justus Winter on 27/05/2016 at 13:46..
src: Fix typo.

--
Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5265017d58e72b99b953932da2683522bb7bc741

Git commit 3915842657f0849a038752fd7445f96081a89dd9 by Justus Winter on 27/05/2016 at 15:24..
python: Port more tests.

* lang/python/pyme/core.py (Data._error_check): Add
'gpgme_data_get_file_name' to the list of functions not returning an
error code.
* lang/python/tests/Makefile.am (pytests): Add new tests.
* lang/python/tests/support.py (verbose): New variable.
* lang/python/tests/t-data.py: Test setting and getting the filename.
* lang/python/tests/t-encrypt-large.py: New file.
* lang/python/tests/t-file-name.py: Likewise.
* lang/python/tests/t-trustlist.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3915842657f0849a038752fd7445f96081a89dd9

Git commit 89d22f9229f2ecd559ac6ea91dae60eeff940fa5 by Werner Koch on 27/05/2016 at 20:19..
Speedup closing of fds before exec.

* src/posix-io.c [__linux__]: Include dirent.h.
(get_max_fds) [__linux__]: Try to figure out the highest used fd.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/89d22f9229f2ecd559ac6ea91dae60eeff940fa5

Git commit 18ad4413be7bda99521403568da6da98100bc402 by Justus Winter on 31/05/2016 at 09:01..
build: Fix URL.

--
Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/18ad4413be7bda99521403568da6da98100bc402

Git commit afa0dd56e1cce64fe08bff3c64b12aecce54fd2d by Justus Winter on 31/05/2016 at 14:22..
python: Port more tests.

* lang/python/gpgme.i: Hide length fields of notations.
* lang/python/tests/Makefile.am (pytests): Add new tests.
* lang/python/tests/t-decrypt-verify.py: New file.
* lang/python/tests/t-sig-notation.py: Likewise.
* lang/python/tests/t-verify.py: Likewise.

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/afa0dd56e1cce64fe08bff3c64b12aecce54fd2d

Git commit 8ad17f402f6420880dcf06a13a54feadb52c0208 by Justus Winter (on behalf of Tobias Mueller) on 31/05/2016 at 14:35..
python: use GPG_ERROR_CONFIG variable

instead of calling gpg-error-config.
This is useful when configuring with --with-gpgerror-prefix
because then GPG_ERROR_CONFIG contains the correct
/path/to/bin/gpg-error-config whereas calling gpg-error-config
directly would look in the user's PATH (and not in the prefix
where gpg-error-config was installed).

Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8ad17f402f6420880dcf06a13a54feadb52c0208

Git commit 1cacd7d00a7b3de4a5e11ccce5ee6c50e0a5516d by Werner Koch on 01/06/2016 at 09:11..
core: Set notation flags for verify.

* src/gpgme.h.in (GPGME_STATUS_NOTATION_FLAGS): New.
* src/status-table.c (status_table): Add new status.
* src/verify.c (parse_notation): Handle flags.  Also fix NOTATION_DATA
in case gpg would not percent-escape spaces.
(_gpgme_verify_status_handler): Handle flags.
* tests/run-verify.c (print_result): Print notaion data.
--

Note that this does only work with the soon to be released GnuPG
2.1.13.
https://invent.kde.org/neon/forks/gpgme/-/commit/1cacd7d00a7b3de4a5e11ccce5ee6c50e0a5516d

Git commit c88c9ef384b6f7bda9a61b58f26c2f89ae25f684 by Justus Winter on 01/06/2016 at 10:50..
tests: Fix notation tests.

* lang/python/tests/t-sig-notation.py (check_result): Check critical
flag.
* tests/gpg/t-sig-notation.c (check_result): Likewise.

Fixes-commit: 1cacd7d0
Signed-off-by: Justus Winter <justus at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c88c9ef384b6f7bda9a61b58f26c2f89ae25f684

Git commit 9d6f85bd25e51445f1776b498875e77b529311b1 by Andre Heinecke on 01/06/2016 at 11:48..
Qt: Fix debug output in t-ownertrust

* lang/qt/tests/t-ownertrust.cpp (testChangeOwnerTrust): Remove
general debug of trust level. Add debug output for error.
https://invent.kde.org/neon/forks/gpgme/-/commit/9d6f85bd25e51445f1776b498875e77b529311b1

Git commit 54314a9c7d7ad52981c836ca742644a1fa69b518 by Andre Heinecke on 01/06/2016 at 11:48..
Cpp: Use whitelist for status messages

* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
Use whitelist instead of blacklist.

--
This should be more robust when new status messages are added.
The whitelist is the same GPA uses. Fixes Qt's t-ownertrust.
https://invent.kde.org/neon/forks/gpgme/-/commit/54314a9c7d7ad52981c836ca742644a1fa69b518

Git commit 73c47535b631a55687ecc5eff1d1d9a9fd71021e by Justus Winter on 01/06/2016 at 12:18..
python: Improve build system integration, fix warnings.

* lang/python/Makefile.am: Pass CFLAGS to python build system.
* lang/python/helpers.c (pyPassphraseCb): Use correct type for length.
(pygpgme_data_new_from_cbs): Drop unused variable.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/73c47535b631a55687ecc5eff1d1d9a9fd71021e

Git commit 1607aa7fe5dd686ba3bfb6de4a2b602d6a458c86 by Justus Winter on 01/06/2016 at 13:33..
python: Make Python detection more robust.

Previously, missing Python development packages made configure fail
instead of merely disabling the bindings.

* configure.ac: Check for 'PYTHON_VERSION'.
* m4/ax_python_devel.m4: Make test non-fatal.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1607aa7fe5dd686ba3bfb6de4a2b602d6a458c86

Git commit bbf19124bbec9eb6298cef2914baae7ac74382fe by Justus Winter on 01/06/2016 at 13:40..
python: Fix test suite with GnuPG prior to 2.1.12.

* lang/python/tests/Makefile.am (gpg-agent.conf): Use
'allow-loopback-pinentry'.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/bbf19124bbec9eb6298cef2914baae7ac74382fe

Git commit 2055a63605207bbf3b5ce1aa7bf159e7b83e87e6 by Justus Winter on 06/06/2016 at 12:16..
python: Drop obsolete VCS keywords.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/2055a63605207bbf3b5ce1aa7bf159e7b83e87e6

Git commit ae06f7c2fe0e49baeab5a827dc38ba8c57a6404c by Justus Winter on 06/06/2016 at 12:16..
python: Initialize GPGME for the user.

* lang/python/pyme/core.py: Call 'check_version' and explain why.
* lang/python/tests/support.py (init_gpgme): Drop call here.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ae06f7c2fe0e49baeab5a827dc38ba8c57a6404c

Git commit 89eb0cd4d65bc033ed6342810b26232797482d64 by Justus Winter on 06/06/2016 at 12:16..
python: Fix error handling.

* lang/python/gpgme.i (object_to_gpgme_t): Properly propagate
exceptions.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/89eb0cd4d65bc033ed6342810b26232797482d64

Git commit 26c3accc95ab77ddbe60db822e2938ad5f480d41 by Justus Winter on 06/06/2016 at 12:16..
python: Move helper function.

* lang/python/gpgme.i (object_to_gpgme_t): Move...
* lang/python/helpers.c: ... here.
* lang/python/helpers.h (object_to_gpgme_t): New prototype.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/26c3accc95ab77ddbe60db822e2938ad5f480d41

Git commit 8196edf9ca5c8f2f02553e7f22d9c79dbd229882 by Justus Winter on 06/06/2016 at 12:16..
python: Wrap file-like objects on demand.

* lang/python/gpgme.i (gpgme_data_t): Use new function to create
wrapper objects if necessary, and deallocate them after the function
call.
* lang/python/helpers.c (object_to_gpgme_data_t): New function.
* lang/python/helpers.h (object_to_gpgme_data_t): New prototype.
* lang/python/tests/Makefile.am (pytests): Add new test.
* lang/python/tests/t-idiomatic.py: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/8196edf9ca5c8f2f02553e7f22d9c79dbd229882

Git commit f8f9bf06bc3190968ba6613032d60a3bf2c8a6d9 by Justus Winter on 07/06/2016 at 17:34..
python: Fix error handling.

* lang/python/gpgme.i: Fix freeing an uninitialized pointer in the
error handling of generated wrapper functions by explicitly storing
the pointer in a local variable which can be initialized.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/f8f9bf06bc3190968ba6613032d60a3bf2c8a6d9

Git commit e3c5913a33edcbd7329b8d154c669f95ce782038 by Justus Winter on 08/06/2016 at 11:44..
python: Implement the context manager protocol.

* lang/python/pyme/core.py (Context.__del__): Make function
idemptotent.
(Context.{__enter__,__exit__}): Implement the context manager
protocol.
(Data.__del__): Make function idemptotent, drop debug print.
(Data.{__enter__,__exit__}): Implement the context manager
protocol.
* lang/python/tests/t-idiomatic.py: Demonstrate this.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/e3c5913a33edcbd7329b8d154c669f95ce782038

Git commit 990492ea4f7dafbb75de15ea91c30cbf090034b5 by Justus Winter on 08/06/2016 at 15:12..
python: Fix type.

* lang/python/gpgme.i: Use correct Python type for size.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/990492ea4f7dafbb75de15ea91c30cbf090034b5

Git commit 8426304b67a0b0a5630db500abf740b0e0b9e43c by Justus Winter on 08/06/2016 at 15:12..
python: Fix stripping deprecated functionality.

* lang/python/Makefile.am (gpgme.h): Add script as input.
* lang/python/gpgme-h-clean.py (deprec_func): Also match struct
members.
(line_break): Fix matching on struct members.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/8426304b67a0b0a5630db500abf740b0e0b9e43c

Git commit 5ebc205439cac266685d2532466df8b3457dea23 by Justus Winter on 08/06/2016 at 15:54..
python: Add function to raise exceptions from c.

* lang/python/helpers.c (pygpgme_raise_exception): New function.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/5ebc205439cac266685d2532466df8b3457dea23

Git commit 77d149e8614c381458e07808a7930ce3fb92cdc3 by Justus Winter on 08/06/2016 at 16:12..
python: Improve error handling.

* lang/python/helpers.c (pyPassphraseCb): Handle write errors.
(pyEditCb): Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/77d149e8614c381458e07808a7930ce3fb92cdc3

Git commit 8173c4f1f8a145c4b1d454f6f05e26950e23d675 by Werner Koch on 14/06/2016 at 06:38..
core: Make sure FD_SET is not used with an out of range fd.

* src/posix-io.c (_gpgme_io_select): Check for FD out of range.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8173c4f1f8a145c4b1d454f6f05e26950e23d675

Git commit 3bacce03e60dc45cc2da99a2f5c504612202e802 by Justus Winter on 16/06/2016 at 12:07..
python: Fix license.

Other parts of the build system are also LGPLed.

* lang/python/Makefile.am: Fix license.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3bacce03e60dc45cc2da99a2f5c504612202e802

Git commit a852f99a0ac9dc7f7493b403f811f5f7518fae40 by Justus Winter on 16/06/2016 at 12:07..
python: Fix exception leak.

* lang/python/helpers.c (pygpgme_stash_callback_exception): Fix leak.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a852f99a0ac9dc7f7493b403f811f5f7518fae40

Git commit 7eef399d89d4c3877cb795ed5ba45ecb241e67be by Justus Winter on 16/06/2016 at 12:07..
python: Get version information from the build system.

* configure.ac: Generate 'setup.py' and 'version.py'.
* lang/python/Makefile.am: Use generated setup script.
* lang/python/pyme/version.py: Turn it into a template, and get
version information from the build system.  Also drop some variables.
* lang/python/setup.py: Likewise.  This way we can avoid importing the
version module, which is frowned upon and actually caused a problem.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/7eef399d89d4c3877cb795ed5ba45ecb241e67be

Git commit 5492853d7b84b4e1d0b11b234e32252ba8d1608d by Justus Winter on 16/06/2016 at 12:07..
python: Improve the documentation.

* lang/python/Makefile.am: Copy the README file.
* lang/python/README: Rename, convert to org, and update.
* lang/python/pyme/__init__.py: Move license out of the docstring,
update docstring.
* lang/python/pyme/core.py: Add and update docstrings.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/5492853d7b84b4e1d0b11b234e32252ba8d1608d

Git commit 5464060baef2da8f5ea377118758e451c55e3787 by Justus Winter on 16/06/2016 at 12:19..
python: Add properties to wrapped object.

* lang/python/pyme/core.py (GpgmeWrapper.__repr__): Saner
representation.
(GpgmeWrapper.__str__): Construct a nicer human readable string.
(GpgmeWrapper._boolean_properties): New field.
(GpgmeWrapper.__wrap_boolean_property): New function.
(GpgmeWrapper.__getattr__): Wrap functions using properties.
(GpgmeWrapper.__setattr__): New method.  Likewise wrap functions.
(Context.signers): New property.
(Context.pinentry_mode): Likewise.
(Context._boolean_properties): List boolean properties.
(Context.__init__): Add keyword arguments for properties and apply
them.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/5464060baef2da8f5ea377118758e451c55e3787

Git commit 616929b6edf00b4a774b727385d39b785a112b90 by Justus Winter on 16/06/2016 at 12:19..
python: Wrap objects implementing the buffer protocol.

* lang/python/Makefile.am: Add the toplevel source directory to CFLAGS
when compiling the bindings so that we can use private header files.
* lang/python/gpgme.i (gpgme_data_t): Rework the object wrapping.  Do
not create a Python wrapper object, merely a gpgme_data_t object, and
keep references to buffer objects, if any.  If necessary, update the
buffer after the function call.
(pygpgme_wrap_gpgme_data_t): New function.
* lang/python/helpers.c (object_to_gpgme_data_t): Rework object
wrapping.  Also wrap objects implementing the buffer protocol.
* lang/python/helpers.h (object_to_gpgme_data_t): Update prototype.
(pygpgme_wrap_gpgme_data_t): New prototype.
* lang/python/tests/t-idiomatic.py: Demonstrate this.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/616929b6edf00b4a774b727385d39b785a112b90

Git commit f3618bc615e3eff1f52fb5849cbf0f0b95515a61 by Justus Winter on 16/06/2016 at 12:19..
python: Rework callbacks.

Simplify how the lifetime of callback arguments is managed.

* lang/python/gpgme.i (gpgme_edit_cb_t): Check arguments.
(PyObject_p_p, void_p_p): Drop rather dangerous interface.
(pygpgme_unwrap_gpgme_ctx_t): New function.
* lang/python/helpers.c (pygpgme_clear_generic_cb): Drop dangerous
function.
(pyPassphraseCb): Assert contract.
(pygpgme_set_passphrase_cb): Use Python's calling convention so that
we can raise exceptions.  Hand in 'self', get the wrapped object, and
simply store the hook data as attribute of the wrapper object.
(pyProgressCb, pygpgme_set_progress_cb): Likewise.
(pygpgme_set_status_cb): Likewise.
(pygpgme_data_new_from_cbs): Likewise.
* lang/python/helpers.h (pygpgme_clear_generic_cb): Drop prototype.
(pygpgme_set_passphrase_cb): Update prototype.
(pygpgme_set_progress_cb): Likewise.
(pygpgme_set_status_cb): Likewise.
(pygpgme_data_new_from_cbs): Likewise.
(pygpgme_unwrap_gpgme_ctx_t): New prottotype.
* lang/python/pyme/core.py (Context, Data): Update callsites.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/f3618bc615e3eff1f52fb5849cbf0f0b95515a61

Git commit 6641c7814b30e3e8f18105b2636545cc1bd07552 by Justus Winter on 16/06/2016 at 12:19..
python: Simplify wrapping glue.

* lang/python/pyme/core.py: Rename '_getctype' to '_ctype' and turn it
  into a string.  Likewise rename '_getnameprepend' to '_cprefix'.
* lang/python/helpers.c: Adapt accordingly.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/6641c7814b30e3e8f18105b2636545cc1bd07552

Git commit 856bcfe2934237011984fab0bc69800a7c25c34b by Justus Winter on 16/06/2016 at 12:19..
python: Avoid creating SWIG proxy classes.

* lang/python/Makefile.am (gpgme_wrap.c): Use '-builtin' to make SWIG
generate builtin types for c types.
* lang/python/gpgme.i (pygpgme_wrap_gpgme_data_t): Adapt slightly.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/856bcfe2934237011984fab0bc69800a7c25c34b

Git commit a324d0cffe93cab955698c2c065b2f2227e379e4 by Justus Winter on 16/06/2016 at 12:19..
python: Make result objects more robust.

Results returned by the GPGME are fragile, i.e. they are only valid
until the next operation is performed in the context.

We cannot arbitrarily constrain the lifetime of Python objects, we
therefore create deep copies of the results.

* lang/python/gpgme.i (gpgme_tofu_info_t): Turn these into a list.
(gpgme_*_result_t): Create deep copies of these objects.
* lang/python/helpers.c (pygpgme_wrap_fragile_result): New function.
* lang/python/helpers.h (pygpgme_wrap_fragile_result): New prototype.
* lang/python/pyme/results.py: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a324d0cffe93cab955698c2c065b2f2227e379e4

Git commit 8997d88bf97d1784706becbf8e9dc74e4656e311 by Justus Winter on 16/06/2016 at 12:19..
python: Improve autmatically generated docstrings.

* lang/python/gpgme.i: Add comment.
* lang/python/pyme/core.py (__getattr__): Rewrite automatically
generated doctrings for the wrapper methods.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/8997d88bf97d1784706becbf8e9dc74e4656e311

Git commit 32d4bbf5e3e5f88e4a6852d72a35ee30df9d5279 by Werner Koch on 21/06/2016 at 14:18..
core: Enhance gpgme_data_identify to detect binary PGP messages.

* src/gpgme.h.in (GPGME_DATA_TYPE_PGP_ENCRYPTED): New.
(GPGME_DATA_TYPE_PGP_SIGNATURE): New.
* src/data-identify.c: Add enum for OpenPGP packet types.
(buf32_to_ulong): New.
(next_openpgp_packet): New.  Based on the gnupg/kbx/keybox-openpgp.c
implementation and relicensed to LGPL by g10 Code.
(pgp_binary_detection): New.
(basic_detection): Call pgp_binary_detection instead of returning
unknown.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/32d4bbf5e3e5f88e4a6852d72a35ee30df9d5279

Git commit 5905e8bbd809c1408edad4fa4eb0527fa51cbea3 by Werner Koch on 21/06/2016 at 14:18..
tests: Add new test tool run-identify.

* src/gpgme-tool.c (gt_identify): Add new strings.
* tests/run-identify.c: New.
* tests/Makefile.am (noinst_PROGRAMS): Add run-identify.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5905e8bbd809c1408edad4fa4eb0527fa51cbea3

Git commit bb8cf6236582fc9eb6564046599989af52779a26 by Werner Koch on 22/06/2016 at 16:43..
core: Detect compressed signed OpenPGP data.

* src/data-identify.c (next_openpgp_packet): Allow partial encoding.
(pgp_binary_detection): Handle compressed packets.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bb8cf6236582fc9eb6564046599989af52779a26

Git commit f8b8027ae63c957557ed6bdc7e5a30ef1bdd8e77 by Werner Koch on 23/06/2016 at 07:51..
core: Add a base 64 decoder.

* src/b64dec.c: New. Taken from gnupg.  Prefix function names with
_gpgme_ and change to use standard C malloc functions.
* src/util.h.h (struct b64state): New.
* src/Makefile.am (main_sources): Add file.

--

The file b64dec.c has been taken from gnupg commit
e430ff6ad0b7dcfcebd92b825dd5168205447ff3

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f8b8027ae63c957557ed6bdc7e5a30ef1bdd8e77

Git commit cf37a57d28c43ec36277e84ca44458b7287b940b by Werner Koch on 23/06/2016 at 08:14..
core: Add closer inspection of "PGP MESSAGE".

* src/data-identify.c (inspect_pgp_message): New.
(basic_detection): Un-const arg DATA. Call inspect_pgp_message.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/cf37a57d28c43ec36277e84ca44458b7287b940b

Git commit 3364549c19682f56d4d9c52ab7f76862c5a456cf by Andre Heinecke on 24/06/2016 at 09:33..
tests: Add new test tool run-decrypt

* tests/run-decrypt.c: New.
* tests/Makefile.am (noinst_PROGRAMS): Add run-decrypt.
https://invent.kde.org/neon/forks/gpgme/-/commit/3364549c19682f56d4d9c52ab7f76862c5a456cf

Git commit 82d484c852d07958ac93efb3d2d7b7726fbb5231 by Andre Heinecke on 27/06/2016 at 12:47..
Cpp: Do not treat KEYEXPIRED as error

* lang/cpp/src/editinteractor.cpp (status_to_error): No error
for KEYEXPIRED.

--
As keyexpired status is sent even if a subkey is expired
we can not treat it as a global error.
https://invent.kde.org/neon/forks/gpgme/-/commit/82d484c852d07958ac93efb3d2d7b7726fbb5231

Git commit 15fc5c34c88ecbb61272705af60f7054b41c57f7 by Andre Heinecke on 27/06/2016 at 13:50..
Cpp: Expose new data_identify values

* lang/cpp/src/data.cpp (GpgME::Data::type): Handle PGP Encrypted
 and Signature.
* lang/cpp/src/data.h: Add values accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/15fc5c34c88ecbb61272705af60f7054b41c57f7

Git commit 62d10c2a38160ef539a784b96960a6b5e3d8d6b6 by Justus Winter on 27/06/2016 at 16:14..
tests: Fix trivial memory leaks.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/62d10c2a38160ef539a784b96960a6b5e3d8d6b6

Git commit 570bf2a648f14b34c4c45d3890b7300529a82d37 by Andre Heinecke on 01/07/2016 at 08:56..
core: Fix identify for armored detached sigs

* src/data-identify.c (basic_detection): Return signature for
signature.

--
This causes identify to return signature for both binary and
ascii armored detached signatures where previously it would
have returned signed for armored signatures and signature for
binary signatures.

GnuPG-Bug-Id: 2314
https://invent.kde.org/neon/forks/gpgme/-/commit/570bf2a648f14b34c4c45d3890b7300529a82d37

Git commit 948ce7d1edf12ecb5080a4816ca15f495d6393f5 by Andre Heinecke on 01/07/2016 at 14:47..
core: Clarify documentation of tofu_stats address

* src/gpgme.h.in: Mention that Address is not always in addr-spec.

--
The old comment made it look like you could always expect the
address to be parsable as a mailbox address.
https://invent.kde.org/neon/forks/gpgme/-/commit/948ce7d1edf12ecb5080a4816ca15f495d6393f5

Git commit 93c5d420fcfe275aeff2b3d5ce99629edbe6625d by Andre Heinecke on 01/07/2016 at 14:52..
Cpp: Add TofuInfo to signatures

* lang/cpp/src/tofuinfo.cpp, lang/cpp/src/tofuinfo.h: New class.
* lang/cpp/src/verificationresult.cpp (Signature::tofuInfo): New.
(VerificationResult::Private): Handle tofu info.
(GpgME::operator<<(std::ostream &os, const Signature &sig)): Include
TofuInfo in dump.
* lang/cpp/src/verificationresult.h (Signature::tofuInfo): New.
* lang/cpp/src/Makefile.am (main_sources, gpgmepp_headers): Add
new files.
* configure.ac (LIBGPGMEPP_LT_REVISION): Bump for new API.
https://invent.kde.org/neon/forks/gpgme/-/commit/93c5d420fcfe275aeff2b3d5ce99629edbe6625d

Git commit fbd6ac4655ebf56d91ebd9a4ff499c8319fcd087 by Andre Heinecke on 01/07/2016 at 14:55..
Qt: Add test for TofuInfo

* lang/qt/tests/t-tofuinfo.cpp: New.
* lang/qt/tests/Makefile.am: Update accordingly.

--
The test currently contains a workaround for GnuPG-Bug-Id 2405
https://invent.kde.org/neon/forks/gpgme/-/commit/fbd6ac4655ebf56d91ebd9a4ff499c8319fcd087

Git commit d75c118aae18e20f08dbbb69c7998e1f3694ccd0 by Andre Heinecke on 04/07/2016 at 09:44..
Cpp: Add support for pinentry_mode

* lang/cpp/src/context.cpp (Context::pinentryMode): Return mode.
(Context::setPinentryMode): Set mode.
* lang/cpp/src/context.h (PinentryMode): Add enum.
https://invent.kde.org/neon/forks/gpgme/-/commit/d75c118aae18e20f08dbbb69c7998e1f3694ccd0

Git commit 80498ab662238a31325e78c0037ea6752f680a37 by Andre Heinecke on 04/07/2016 at 09:44..
Cpp: Add support for TOFU_CONFLICT sigsum

* lang/cpp/src/verificationresult.cpp (GpgME::Signature::Summary):
Handle TOFU_CONFLICT.
* lang/cpp/src/verificationresult.h (Summary): Add TofuConflict.
https://invent.kde.org/neon/forks/gpgme/-/commit/80498ab662238a31325e78c0037ea6752f680a37

Git commit efb5059b9b6e81db7b0c016aa9fb70abe98308ea by Andre Heinecke on 04/07/2016 at 09:44..
Qt: Add test passphrase provider

* lang/qt/tests/t-support.h (TestPassphraseProvider): New.
* lang/qt/tests/Makefile.am (t_tofuinfo_SOURCES): Add t-support.h
https://invent.kde.org/neon/forks/gpgme/-/commit/efb5059b9b6e81db7b0c016aa9fb70abe98308ea

Git commit 8fa9b5696ca9f8386971e6f36646536f9579ceaa by Andre Heinecke on 04/07/2016 at 09:44..
Qt: Add testTofuSignCount

* src/lang/qt/tests/t-tofuinfo.cpp(testTofuSignCount): New.
(initTestCase): Set gpg-agent loopback pinentry config.
(signAndVerify): Helper for tofuTestSignCount.

--
Also needs the wait code because of GnuPG-Bug-Id: 2405
https://invent.kde.org/neon/forks/gpgme/-/commit/8fa9b5696ca9f8386971e6f36646536f9579ceaa

Git commit 329ab93f7ed862d7f4c0501fca5355936a74ac52 by Andre Heinecke on 04/07/2016 at 09:46..
Doc: Document pinentry mode

* doc/gpgme.texi (Passphrase Callback): Document as context
attribute.
(gpgme_set_passphrase_cb): Note that this requires LOOPBACK mode
with GnuPG 2.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/329ab93f7ed862d7f4c0501fca5355936a74ac52

Git commit 72b83ffc4d7581f4efef3bd7c261d7d7424bcf0e by Andre Heinecke on 05/07/2016 at 19:51..
w32: Fallback to 2.1 reg key for gpgconf search

* src/w32-util.c (_gpgme_get_gpgconf_path): Fallback to 2.1 installer
 registry key.

--
Finding gpgconf is utterly important so we should be as compatible
as possible.
https://invent.kde.org/neon/forks/gpgme/-/commit/72b83ffc4d7581f4efef3bd7c261d7d7424bcf0e

Git commit 47bfbc9026b49b9918359af5fcc1621aab0d1065 by Andre Heinecke on 05/07/2016 at 20:10..
Qt: More robust lookup of Cpp's context.h

* lang/qt/src/threadedjobmixin.h: When building qgpgme look for
context.h in the full cpp subdirectory.

--
Gpgme core also contains a context.h that can lead to confusion
otherwise.
https://invent.kde.org/neon/forks/gpgme/-/commit/47bfbc9026b49b9918359af5fcc1621aab0d1065

Git commit 49a6ee50587c9d4b6f07e60ce1a939c863e7f15c by Andre Heinecke on 05/07/2016 at 20:11..
Qt: Fix test build with Qt < 5.4.0

* lang/qt/tests/t-keylist.cpp,
lang/qt/tests/t-keylocate.cpp,
lang/qt/tests/t-ownertrust.cpp: Use old style SIGNAl syntax for
QSignalSpy
https://invent.kde.org/neon/forks/gpgme/-/commit/49a6ee50587c9d4b6f07e60ce1a939c863e7f15c

Git commit 7a8c04f66d382dc49d962ad18c46d7ad332ccc0f by Andre Heinecke on 06/07/2016 at 09:22..
Revert "Qt: More robust lookup of Cpp's context.h"

* lang/qt/src/threadedjobmixin.h: Revert using full path
for context.h

--
This reverts commit 47bfbc9026b49b9918359af5fcc1621aab0d1065 as
it causes problems depending on the include path. The proper
fix will be to ensure that cpp/src is included before gpgme/src.
https://invent.kde.org/neon/forks/gpgme/-/commit/7a8c04f66d382dc49d962ad18c46d7ad332ccc0f

Git commit 4934893e27a50f5715dcd4d2907ecbe629921b32 by Andre Heinecke on 06/07/2016 at 09:28..
Qt: Fix include order when buildin test

* lang/qt/tests/Makefile.am (AM_CPPFLAGS): Include cpp before
gpgme src directory.

--
This fixes a problem where context.h would be picked up from gpgme/src
instead of including the context.h from gpgme++.
https://invent.kde.org/neon/forks/gpgme/-/commit/4934893e27a50f5715dcd4d2907ecbe629921b32

Git commit c28007d0407bcc3621b8266d6d77eb0d069aec35 by Andre Heinecke on 06/07/2016 at 11:38..
Cpp: Add PubkeyAlgo enum

* lang/cpp/src/key.h (Subkey::PubkeyAlgo): New enum.
(Subkey::publicKeyAlgorithm): Change return type.
* lang/cpp/src/key.cpp (Subkey::publicKeyAlgorithm): Use enum.
https://invent.kde.org/neon/forks/gpgme/-/commit/c28007d0407bcc3621b8266d6d77eb0d069aec35

Git commit 9f93346d21271b916f15d80420669f5d659a40de by Andre Heinecke on 06/07/2016 at 11:39..
Qt: Add check for pubkeyAlgo in t-keylist

* lang/qt/tests/t-keylist.cpp (testSingleKeyListSync): Check
pubkeyAlgo.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f93346d21271b916f15d80420669f5d659a40de

Git commit e41ae4db9e70d9aebf80ebbd4ce03977435c2ccf by Andre Heinecke on 06/07/2016 at 13:07..
Cpp: Expose gpgme_pubkey_algo_name

* lang/cpp/src/key.cpp (Subkey::publicKeyAlgorithmAsString): New
static variant.
* lang/cpp/src/key.h: Declare function. Clarify comment about name
mismatch.
https://invent.kde.org/neon/forks/gpgme/-/commit/e41ae4db9e70d9aebf80ebbd4ce03977435c2ccf

Git commit fc0267233239b42e9fb74a8acd7511503e287a9e by Andre Heinecke on 06/07/2016 at 13:09..
Qt: Add test for publicKeyAlgorithmAsString

* lang/qt/tests/t-keylist.cpp (testPubkeyAlgoAsString): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/fc0267233239b42e9fb74a8acd7511503e287a9e

Git commit 49286ac1c82c480e2c718f828c57da9778ccd0b9 by Justus Winter on 07/07/2016 at 11:56..
cpp: Fix distcheck.

* lang/cpp/src/Makefile.am (CLEANFILES): Remove generated file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/49286ac1c82c480e2c718f828c57da9778ccd0b9

Git commit 38c408560c6ebc3ea5eeeade01d38750bf5799e5 by Justus Winter on 07/07/2016 at 11:56..
qt: Fix distcheck.

* lang/qt/src/Makefile.am (qgpgme_headers): Add missing file.
(CLEANFILES): Add generated file.
* lang/qt/tests/Makefile.am (clean-local): Remove private keys.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/38c408560c6ebc3ea5eeeade01d38750bf5799e5

Git commit 52efcf1ee9fc8ba4c6bd23d8fe4f5f7993ba9fb1 by Justus Winter on 07/07/2016 at 12:10..
python: Fix distcheck.

* lang/python/INSTALL: Drop obsolete file.
* lang/python/Makefile.am (EXTRA_DIST): Add missing files.
(CLEANFILES): Remove generated files.
(clean-local): Fix permissions of copied files.
* lang/python/tests/Makefile.am (TESTS): Use our own setup and
teardown scripts.
(EXTRA_DIST): Add missing files.
* lang/python/tests/final.py: New file.
* lang/python/tests/initial.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/52efcf1ee9fc8ba4c6bd23d8fe4f5f7993ba9fb1

Git commit 8a93f345b701332270c9829a4d0a93537f98a8d8 by Justus Winter on 08/07/2016 at 09:45..
python: Fix raising stashed exceptions.

Fixes an issue with newer versions of Python.

* lang/python/helpers.c (pygpgme_raise_callback_exception): Be more
careful when restoring the exception.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/8a93f345b701332270c9829a4d0a93537f98a8d8

Git commit de74fe59feef9adc858ac04004880bfd44315d0d by Justus Winter on 08/07/2016 at 16:03..
src: Fix error handling.

* src/encrypt.c (encrypt_status_handler): Fix error handling, ||
conflates errors.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/de74fe59feef9adc858ac04004880bfd44315d0d

Git commit 02babb29612d554c37b63a49f78acc45653b557e by Andre Heinecke on 11/07/2016 at 10:03..
Qt: Disable t-tofuinfo tests

* lang/qt/tests/t-tofuinfo.cpp: Disable tests.

--
Even with the wait this test could fail and anyway the delay
was not nice. So we remove the wait hack and just wait for
the bug (2405) to be fixed in GnuPG or GpgME core.
https://invent.kde.org/neon/forks/gpgme/-/commit/02babb29612d554c37b63a49f78acc45653b557e

Git commit b1f42e8f25ada220ec8e4762cfebc3a49b1f7d56 by Andre Heinecke on 11/07/2016 at 14:47..
Qt: Add some general Protocol documentation

* lang/qt/src/protocol.h (Protocol): Add doc.

--
This explicitly documents that syncs run with exec need deletion.
https://invent.kde.org/neon/forks/gpgme/-/commit/b1f42e8f25ada220ec8e4762cfebc3a49b1f7d56

Git commit bfa8ac7e02c16790ee5bd3b42c26699f4821d72e by Andre Heinecke on 11/07/2016 at 14:51..
Qt: Fix memleaks in tests

* lang/qt/tests/t-keylist.cpp(cleanupTestCase): Ensure that
posted events are handled for autodeletion.
(testSingleKeylistSync): delete job.
* lang/qt/tests/t-ownertrust.cpp(cleanupTestCase): Ditto
* lang/qt/tests/t-ownertrust.cpp(testChangeOwnerTrust): Delete
keylistjobs.
* lang/qt/tests/t-keylocate.cpp(cleanupTestCase): Ditto
https://invent.kde.org/neon/forks/gpgme/-/commit/bfa8ac7e02c16790ee5bd3b42c26699f4821d72e

Git commit c53f87c5f9ca63119152f41dcebfb175d4df2cef by Justus Winter on 11/07/2016 at 15:50..
python: Make result wrapping backwards compatible.

* lang/python/pyme/results.py (Result.__init__): Skip missing fields.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/c53f87c5f9ca63119152f41dcebfb175d4df2cef

Git commit 98cba522c906115efcba1f8cc0bec7e5edb51ecd by Justus Winter on 11/07/2016 at 15:50..
python: Do not depend on access to internal data structures.

* lang/python/gpgme.i (gpgme_data_t): Rework so that it works without
access to the definition of 'struct gpgme_data'.
* lang/python/helpers.c (object_to_gpgme_data_t): Add assertion.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/98cba522c906115efcba1f8cc0bec7e5edb51ecd

Git commit 007382ce94a6318557370c440f7d609a030a119e by Justus Winter on 11/07/2016 at 16:09..
python: Enable out-of-tree build of pyme bindings.

* lang/python/MANIFEST.in: Update manifest template.
* lang/python/Makefile.am: Copy more files, move generation of files
to Python build script, add 'sdist' target to build a Python source
distribution.
* lang/python/gpgme-h-clean.py: Add code to build 'errors.i'.
* lang/python/setup.py.in: Generate files, enable out-of-tree builds.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/007382ce94a6318557370c440f7d609a030a119e

Git commit ed070313155a1c79a57ba69f4299f2aefc65fad7 by Andre Heinecke on 11/07/2016 at 16:48..
m4: Add compile / link check for qt

* m4/qt.m4 (FIND_QT): Check if a qt application can be compiled and
linked.

--
In case gpgme is cross compiled pkg-config may pick up qt
for the build system and not for the host system. To avoid that
we check that we can compile a qt program for host.
https://invent.kde.org/neon/forks/gpgme/-/commit/ed070313155a1c79a57ba69f4299f2aefc65fad7

Git commit ce662891373eba6cce1cf8df516cb2370970737e by Justus Winter on 11/07/2016 at 17:42..
python: Fix distcheck.

* lang/python/Makefile.am (EXTRA_DIST): Add missing files.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ce662891373eba6cce1cf8df516cb2370970737e

Git commit 362b8cdf4e0d5cd54ec2b325508dcdefac686f2c by Andre Heinecke on 12/07/2016 at 09:35..
Qt/Cpp: Add license blurb to export headers

* lang/cpp/src/gpgmepp_export.h,
lang/qt/src/qgpgme_export.h: Add license blurb.
https://invent.kde.org/neon/forks/gpgme/-/commit/362b8cdf4e0d5cd54ec2b325508dcdefac686f2c

Git commit b03c48cfb06faae7d7033a0532f319cbcf13f18a by Andre Heinecke on 12/07/2016 at 09:35..
Qt/Cpp: Add version headers

* lang/cpp/src/gpgmepp_version.h.in,
lang/qt/src/qgpgme_version.h.in: New. Version information.
* lang/qt/src/Makefile.am, lang/cpp/src/Makefile.am: Add them.
* configure.ac: Configure them.

--
The version headers are common practice in KDE Frameworks and
were installed for KF5Gpgmepp and Libkleo respectively.
https://invent.kde.org/neon/forks/gpgme/-/commit/b03c48cfb06faae7d7033a0532f319cbcf13f18a

Git commit 86ab2ee2d603111d24500b8d64a9a1dd82f8bdc0 by Andre Heinecke on 12/07/2016 at 09:47..
Qt: Export VerifyDetachedJob

* lang/qt/src/verifydetachedjob.h (VerifyDetachedJob): Export it.
https://invent.kde.org/neon/forks/gpgme/-/commit/86ab2ee2d603111d24500b8d64a9a1dd82f8bdc0

Git commit fd87c4679c4bfe19390fa2047dff23bb213a4b18 by Andre Heinecke on 12/07/2016 at 09:47..
Qt: Install CamelCase forward includes

* lang/qt/src/Makefile.am (camelcase_headers): New. Create and install
CamelCase headers.

--
For Qt Libraries it is a common pattern that headers are installed
additionally under their Namespace / Class Name so that automated
inclusion works once a class is used in code. This was also
done for QGpgME headers when they lived in Libkleo so this increases
compatibility.
https://invent.kde.org/neon/forks/gpgme/-/commit/fd87c4679c4bfe19390fa2047dff23bb213a4b18

Git commit bf742fb88545689addfca18192baf2f56a1895e1 by Andre Heinecke on 12/07/2016 at 10:28..
Bump version to 1.7.0

* configure.ac(mym4_version_minor),
(mym4_version_micro): Next release will be 1.7.0

--
This was already mentioned in NEWS but acidentally not changed
in configure.ac
https://invent.kde.org/neon/forks/gpgme/-/commit/bf742fb88545689addfca18192baf2f56a1895e1

Git commit 744978cce8f9dfb2363b9d274ee99f25cfcf0e40 by Andre Heinecke on 12/07/2016 at 13:10..
m4: Use LIBS instead of LDFLAGS for Qt libs

* m4/qt.m4: Modify LIBS instead of LDFLAGS for link test.

--
The test would otherwise fail when building for windows because the
link order was wrong.
https://invent.kde.org/neon/forks/gpgme/-/commit/744978cce8f9dfb2363b9d274ee99f25cfcf0e40

Git commit 938f7e9c8b466594d05c0347fe627b225263a6a6 by Andre Heinecke on 12/07/2016 at 13:26..
m4: Don't set fpic for qt on windows

* m4/qt.m4 (FIND_QT): Do not set fpic for windows.

--
Otherwise each compile call will result in a warning that
fpic is ignored for windows.
https://invent.kde.org/neon/forks/gpgme/-/commit/938f7e9c8b466594d05c0347fe627b225263a6a6

Git commit 57b51685528153f5a50ab0999feec25c83190501 by Justus Winter on 12/07/2016 at 16:34..
python: Improve python packaging.

* lang/python/Makefile.am: Sign source releases, and upload them.
* lang/python/setup.py.in: Add categories.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/57b51685528153f5a50ab0999feec25c83190501

Git commit 1bff47ee58bcf9d0016fb7ac7e37cbf075abd059 by Justus Winter on 12/07/2016 at 16:34..
python: Port more tests.

* lang/python/pyme/core.py (Context.op_keylist_all): Add missing
'op_keylist_end'.
(Context.op_trustlist_all): Fix function. Add missing
'op_trustlist_end'.
* lang/python/tests/Makefile.am (pytests): Add new files.
* lang/python/tests/t-import.py: New file.
* lang/python/tests/t-keylist.py: Likewise.
* lang/python/tests/t-trustlist.py: Check alternate interface.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1bff47ee58bcf9d0016fb7ac7e37cbf075abd059

Git commit 537cb871fd59f3a20c697a046715e6339ff6633b by Andre Heinecke on 13/07/2016 at 09:56..
Cpp: Add feature enum for new identify

* lang/cpp/src/context.cpp (supported_features2): Add
BinaryAndFineGrainedIdentify
* lang/cpp/src/global.h (Feature2): ditto.

--
This is mostly for compatible code with KF5::Gpgmepp where there
is no hard requirement against gpgme 1.7. With 1.7 a version
check would also suffice.
https://invent.kde.org/neon/forks/gpgme/-/commit/537cb871fd59f3a20c697a046715e6339ff6633b

Git commit 2095b1573a8196ba3efdf817324d1b3ee05cbb93 by Werner Koch on 13/07/2016 at 11:57..
core: Pass the engine's version string to the engine's new function.

* src/engine-backend.h (engine_ops): Add arg 'version' to NEW.
* src/engine-assuan.c (llass_new): Add dummy arg 'version'.
* src/engine-g13.c (g13_new): Ditto.
* src/engine-gpgconf.c (gpgconf_new): Ditto.
* src/engine-gpgsm.c (gpgsm_new): Ditto.
* src/engine-spawn.c (engspawn_new): Ditto.
* src/engine-uiserver.c (uiserver_new): Ditto.
* src/engine.c (_gpgme_engine_new): Pass version string to the new
function.
* src/engine-gpg.c (struct engine_gpg): Add field 'version'.
(gpg_new): Add arg 'version'.
(gpg_release): Free VERSION.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2095b1573a8196ba3efdf817324d1b3ee05cbb93

Git commit d8d5f5a16712244fe6eff860b6ac5f007b1bf870 by Werner Koch on 13/07/2016 at 12:45..
core: New GPGME_DATA_ENCODING_MIME.

* src/gpgme.h.in (GPGME_DATA_ENCODING_MIME): New.
* src/data.c (gpgme_data_set_encoding): Adjust check.
* src/engine-gpg.c (have_gpg_version): New.
(gpg_encrypt, gpg_encrypt_sign): Pass flag '--mimemode'.
(gpg_sign): Ditto.

* lang/cpp/src/data.h (GpgME): Add MimeEncoding.
* lang/cpp/src/data.cpp (encoding, setEncoding): Support MimeEncoding.

* src/gpgme-tool.c (server_data_encoding): Add flag --mime.
--

This feature allows an application to declare that the encrypted or
signed data is a valid MIME part.

What is missing is a way to return that information to the application
after decryption/verification.  This can be done by setting the
encoding of the output data object; however this requires some
internal additions to our processing model.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d8d5f5a16712244fe6eff860b6ac5f007b1bf870

Git commit a9670d152a4598aef1ae0960a79fb6f5d8db55ad by Werner Koch on 13/07/2016 at 17:07..
build: Update config.{guess,sub} to {2016-05-15,2016-06-20}.

* build-aux/config.guess: Update.
* build-aux/config.sub: Update.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a9670d152a4598aef1ae0960a79fb6f5d8db55ad

Git commit b68700d2276f92756e556b3257ad5796db1c2aff by Justus Winter on 14/07/2016 at 11:34..
python: Drop bad category.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/b68700d2276f92756e556b3257ad5796db1c2aff

Git commit fddcc62abd57cb04e84861abd3991c7d529c2464 by Justus Winter on 14/07/2016 at 11:34..
python: Fix test.

* lang/python/tests/t-keylist.py: Do not assume key alpha is trusted
yet.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/fddcc62abd57cb04e84861abd3991c7d529c2464

Git commit e4c0645c1eea9380d80a20895eb83c9dd7228776 by Andre Heinecke on 14/07/2016 at 13:33..
Qt: Fix tests if gpg2 is gpg

* lang/qt/tests/Makefile.am (pubring-stamp): Loopback and provide
passphrase on command line when importing.
https://invent.kde.org/neon/forks/gpgme/-/commit/e4c0645c1eea9380d80a20895eb83c9dd7228776

Git commit e7f4c364732660c6cda25720b7dbc5b1c917e368 by Andre Heinecke on 14/07/2016 at 14:32..
Qt: Fix usage of ignore-invalid-option in tests

* Makefile.am (pubring-stamp): Fix config.
https://invent.kde.org/neon/forks/gpgme/-/commit/e7f4c364732660c6cda25720b7dbc5b1c917e368

Git commit 41de1ab904eaddffb2de17b1de8ef41e462daabe by Andre Heinecke on 14/07/2016 at 15:02..
Cpp: Add EngineInfo::Version class

* lang/cpp/src/engineinfo.cpp (EngineInfo::engineVersion): New.
* lang/cpp/src/engineinfo.h (EngineInfo::engineVersion): Declare.
(EngineInfo::Version): Small helper to work with versions.
https://invent.kde.org/neon/forks/gpgme/-/commit/41de1ab904eaddffb2de17b1de8ef41e462daabe

Git commit d2f2cbd297c4d2f2c3264ecc3ffb7a2b3a70bd55 by Andre Heinecke on 14/07/2016 at 15:03..
Qt: Disable keylocate test for gnupg < 2.0.10

* lang/qt/tests/t-keylocate.cpp: Disable test for gnupg < 2.0.10
https://invent.kde.org/neon/forks/gpgme/-/commit/d2f2cbd297c4d2f2c3264ecc3ffb7a2b3a70bd55

Git commit 1f318b7aaaa77672fab117d54fe75221780df83c by Justus Winter on 15/07/2016 at 16:28..
python: Add an idiomatic interface.

* configure.ac: Bump required Python version.
* lang/python/pyme/__init__.py: Update docstring.  Import Context and
Data.
* lang/python/pyme/core.py (Context.encrypt): New function.
(Context.decrypt): Likewise.
(Context.sign): Likewise.
(Context.verify): Likewise.
* lang/python/pyme/errors.py: Add new errors.
* lang/python/pyme/util.py (process_constants): Rework and return the
inserted keys.
* lang/python/tests/Makefile.am (EXTRA_DIST): Add new keys.
* lang/python/tests/encrypt-only.asc: New file.
* lang/python/tests/sign-only.asc: Likewise.
* lang/python/tests/initial.py: Mark key 'Alpha' as trusted, import
new keys.
* lang/python/tests/support.py: Add fingerprints of known keys.
(in_srcdir): New function.
(print_data): Handle bytes too.
(mark_key_trusted): New function.
* lang/python/tests/t-decrypt-verify.py: Adjust test.  Test idiomatic
interface.
* lang/python/tests/t-decrypt.py: Test idiomatic interface.
* lang/python/tests/t-encrypt-sign.py: Likewise.
* lang/python/tests/t-encrypt-sym.py: Likewise.
* lang/python/tests/t-encrypt.py: Likewise.
* lang/python/tests/t-idiomatic.py: Simplify.
* lang/python/tests/t-keylist.py: Adjust to newly trusted key.
* lang/python/tests/t-sign.py: Likewise.  Test idiomatic interface.
* lang/python/tests/t-signers.py: Likewise.
* lang/python/tests/t-verify.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1f318b7aaaa77672fab117d54fe75221780df83c

Git commit e545ca3f682b615ce447c186a2c73489a32b0592 by Justus Winter on 15/07/2016 at 16:28..
python: Make GPGME's version easily accessible.

* lang/python/pyme/version.py.in (gpgme_versionstr): New variable.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/e545ca3f682b615ce447c186a2c73489a32b0592

Git commit 6a7ee33abd5059f5ae2f70a7dd9f610c16552f8e by Justus Winter (on behalf of Ben Kibbey) on 19/07/2016 at 09:14..
Fix including nil bytes in keylist output.

* src/gpgme-tool.c (cmd_keylist,gt_result): use strlen().

Signed-off-by: Ben Kibbey <bjk at luxsci.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/6a7ee33abd5059f5ae2f70a7dd9f610c16552f8e

Git commit 3d4dc3f0218234a27103bdb6f93b17c0703b71a2 by Justus Winter on 28/07/2016 at 08:23..
python: Expose less functions to the Python world.

* lang/python/Makefile.am (EXTRA_DIST, COPY_FILES): Add new file.
* lang/python/gpgme.i: Include new file and add comments.
* lang/python/helpers.c: Include new file.
* lang/python/helpers.h: Move functions we do not need to expose...
* lang/python/private.h: ... here.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3d4dc3f0218234a27103bdb6f93b17c0703b71a2

Git commit 78f7bf4dcf75206faae5776c2ee4166628313532 by Justus Winter on 28/07/2016 at 08:59..
python: Add accessors for the protocol.

* lang/python/pyme/core.py (Context.__init__): Add 'protocol'
parameter.
(Context.protocol): New accessors.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/78f7bf4dcf75206faae5776c2ee4166628313532

Git commit 355d7072863ac1f0f725e77141a59f3ed8a5e4af by Justus Winter on 28/07/2016 at 09:16..
python: Improve engine information handling.

* lang/python/gpgme.i (gpgme_engine_info_t): Wrap engine infos.
* lang/python/pyme/core.py (Context.engine_info): New property.
(Context.{g,s}et_engine_info): Improve docstrings.
* lang/python/pyme/results.py (EngineInfo): New class.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/355d7072863ac1f0f725e77141a59f3ed8a5e4af

Git commit de69fa496c09386d5e99747670d6887cf52dd09e by Justus Winter on 28/07/2016 at 12:23..
python: Support the Assuan engine.

* lang/python/gpgme.i: Add typemaps for the Assuan protocol callbacks.
* lang/python/helpers.c (_pyme_assuan_{data,inquire,status}_cb): New
functions.
* lang/python/private.h (_pyme_assuan_{data,inquire,status}_cb): New
prototypes.
* lang/python/pyme/core.py (Context.assuan_transact): New method.
* lang/python/pyme/util.py (percent_escape): New function.
* lang/python/tests/Makefile.am (py_tests): Add new test.
* lang/python/tests/t-protocol-assuan.py: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/de69fa496c09386d5e99747670d6887cf52dd09e

Git commit 1d2f22aae668ce136cacd254875e118dc1faa6a2 by Justus Winter on 28/07/2016 at 13:26..
python: Rename private functions.

Avoid the name pygpgme, as this is the name of another popular Python
binding for GPGME.

This commit renames all functions that are not exported to the Python
world.

* lang/python/gpgme.i: Rename all private functions.
* lang/python/helpers.c: Likewise.
* lang/python/helpers.h: Likewise.
* lang/python/private.h: Likewise.  Also move the SWIG runtime helper
prototypes here.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1d2f22aae668ce136cacd254875e118dc1faa6a2

Git commit b5aa05c3b261c3846ebbcf76e7505cff5459f918 by Justus Winter on 28/07/2016 at 13:26..
python: Rename exported functions.

Avoid the name pygpgme, as this is the name of another popular Python
binding for GPGME.

This commit renames all functions that are exported to the Python
world.

* lang/python/helpers.c: Rename all exported functions.
* lang/python/helpers.h: Likewise.
* lang/python/pyme/core.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/b5aa05c3b261c3846ebbcf76e7505cff5459f918

Git commit 2f754440f28e8f81babdf7efa6186edbc8ad99fd by Justus Winter on 28/07/2016 at 14:49..
python: Rename compiled SWIG module.

Avoid the name pygpgme, as this is the name of another popular Python
binding for GPGME.

This commit renames the compiled Python module produced by SWIG.

* lang/python/Makefile.am: Rename the compiled Python module.
* lang/python/gpgme.i: Likewise.
* lang/python/pyme/core.py: Likewise.
* lang/python/pyme/errors.py: Likewise.
* lang/python/pyme/util.py: Likewise.
* lang/python/pyme/version.py.in: Likewise.
* lang/python/setup.py.in: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/2f754440f28e8f81babdf7efa6186edbc8ad99fd

Git commit 2ff58fcbd5c060dac3a7feec478819d2c5a164ec by Justus Winter on 28/07/2016 at 14:50..
python: Drop superfluous imports and trim public interface.

* lang/python/pyme/__init__.py: Avoid leaking low-level 'gpgme', make
sure the main module looks nice and tidy, appease pyflakes.
* lang/python/pyme/errors.py: Appease pyflakes.
* lang/python/pyme/util.py: Avoid leaking low-level 'gpgme' into the
module namespace.
* lang/python/pyme/version.py.in: Likewise.
* lang/python/tests/t-keylist.py: Drop superfluous imports.
* lang/python/tests/t-sig-notation.py: Likewise.
* lang/python/tests/t-sign.py: Likewise.
* lang/python/tests/t-signers.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/2ff58fcbd5c060dac3a7feec478819d2c5a164ec

Git commit b9e6eacd06ffeb36854c208aa4325cff3e3dfbbe by Justus Winter on 28/07/2016 at 15:50..
src: Fix dummy engine versions.

Previously, 'gpgme_engine_check_version' failed for these protocols
because the version parser failed to parse the dummy versions.

* src/engine-assuan.c (llass_get_version): Use a version triple that
the parser can understand.
(llass_get_req_version): Likewise.
* src/engine-spawn.c (engspawn_get_version): Likewise.
(engspawn_get_req_version): Likewise.
* src/engine-uiserver.c (uiserver_get_version): Likewise.
(uiserver_get_req_version): Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/b9e6eacd06ffeb36854c208aa4325cff3e3dfbbe

Git commit 5a7c7a86f7e8eaf10e37138617a2d838f9d4466f by Justus Winter on 28/07/2016 at 15:50..
python: Improve error handling.

* lang/python/pyme/core.py (Context.protocol): Check that the engine
is usable before setting the protocol.
(Context._errorcheck): Add missing functions.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/5a7c7a86f7e8eaf10e37138617a2d838f9d4466f

Git commit 4e728de8421e2ade2061786aaebcdae3f60da3b8 by Justus Winter on 28/07/2016 at 16:14..
python: Fix out-of-tree build.

* lang/python/MANIFEST.in: Add 'private.h'.

Fixes-commit: 3d4dc3f0
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/4e728de8421e2ade2061786aaebcdae3f60da3b8

Git commit e11c65cfb56adce949cf3888545c56fbb6f5ab42 by Justus Winter on 02/08/2016 at 14:50..
doc: Fix formatting.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/e11c65cfb56adce949cf3888545c56fbb6f5ab42

Git commit 135185b7ef2225aa5e8c54a6cf1265d3e6cbbe48 by Justus Winter on 02/08/2016 at 14:51..
doc: Document the Assuan protocol.

* doc/gpgme.texi: Document the Assuan protocol.

GnuPG-bug-id: 2407
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/135185b7ef2225aa5e8c54a6cf1265d3e6cbbe48

Git commit 0bd7d8c1977183abc414e11aafa26a4f834ca2a5 by Justus Winter on 02/08/2016 at 16:42..
python: Fix build system integration.

* lang/python/Makefile.am: Be more careful when cleaning the build
directory, we must not delete the generated file 'pyme/version.py'.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/0bd7d8c1977183abc414e11aafa26a4f834ca2a5

Git commit 4c8265d32ddff5960a464b8d4e8d7d2258495b2e by Justus Winter on 02/08/2016 at 16:45..
python: Add a flag identifying in-tree builds.

* lang/python/helpers.c (pyme_in_tree_build): New variable.
* lang/python/helpers.h (pyme_in_tree_build): New declaration.
* lang/python/pyme/version.py.in (in_tree_build): New variable.
* lang/python/setup.py.in: Rework macro handling, set 'IN_TREE_BUILD'
as appropriate.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/4c8265d32ddff5960a464b8d4e8d7d2258495b2e

Git commit 56e26b54da9f16961209275d7a61883d3ea898ca by Justus Winter on 03/08/2016 at 14:32..
python: Add a nicer interface to list keys.

* lang/python/pyme/core.py (Context.keylist): New method.
* lang/python/tests/t-keylist.py: Test new method.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/56e26b54da9f16961209275d7a61883d3ea898ca

Git commit 6f3dc66634e30d86aa6250c4ac22f9b8f7ec1be9 by Werner Koch on 04/08/2016 at 14:17..
core: Extend gpgme_subkey_t to carry the keygrip.

* src/gpgme.h.in (struct _gpgme_subkey): Add file 'keygrip'.
* src/key.c (gpgme_key_unref): Free KEYGRIP.
* src/keylist.c (keylist_colon_handler): Parse GRP records.
* src/engine-gpg.c (gpg_keylist_build_options): Do not use
--with-fingerprint options for gpg versions >= 2.1.15.

* tests/run-keylist.c (main): Print subkeys and keygrips.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6f3dc66634e30d86aa6250c4ac22f9b8f7ec1be9

Git commit 2a613e87156b23c4aa6aa5ce38505cb285de6a18 by Justus Winter on 05/08/2016 at 12:05..
python: Clean up and modernize examples.

* lang/python/examples/Examples.rst: Delete file.
* lang/python/examples/t-edit.py: Likewise.  This is actually a test
case and has been moved to 'tests'.
* lang/python/examples/assuan.py: New file.
* lang/python/examples/decryption-filter.py: Likewise.
* lang/python/examples/delkey.py: Modernize.
* lang/python/examples/encrypt-to-all.py: Likewise.
* lang/python/examples/exportimport.py: Likewise.
* lang/python/examples/genkey.py: Likewise.
* lang/python/examples/inter-edit.py: Likewise.
* lang/python/examples/sign.py: Likewise.
* lang/python/examples/signverify.py: Likewise.
* lang/python/examples/simple.py: Likewise.
* lang/python/examples/testCMSgetkey.py: Likewise.
* lang/python/examples/verifydetails.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/2a613e87156b23c4aa6aa5ce38505cb285de6a18

Git commit ab6f66d676581cb497e581e4af40e2fe5bff507b by Andre Heinecke on 08/08/2016 at 13:04..
Prepend LD_LIBRARY_PATH for python tests

* lang/python/tests/Makefile.am (TESTS_ENVIRONMENT): Prepend path
instead of setting the value.

--
This fixes the case where tools / libararies are needed for
a working GnuPG system that are pointed to by LD_LIBRARY_PATH.
E.g. GnuPG itself is installed in a custom prefix and PATH /
LD_LIBRARY_PATH is set accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/ab6f66d676581cb497e581e4af40e2fe5bff507b

Git commit b5e16b036f0045524a583d8a366d8a3366fc0005 by Werner Koch on 08/08/2016 at 15:02..
core: Let GPGME_PROTOCOL_ASSUAN pass Assuan comments through.

* src/engine-assuan.c (llass_new): Set ASSUAN_CONVEY_COMMENTS,
--

GnuPG-bug-id: 2429
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b5e16b036f0045524a583d8a366d8a3366fc0005

Git commit 3d2f027d0f40e7ec4ab48cee89ff0ee10b423566 by Andre Heinecke on 09/08/2016 at 12:23..
core: Add support for mixed symmetric and asym enc

* src/gpgme.h.in (gpgme_encrypt_flags_t): New flag
GPGME_ENCRYPT_SYMMETRIC.
* src/engine-gpg.c (gpg_encrypt): Also add --symmetric if the flag
is given.
* NEWS: Mention new flag.
* tests/run-encrypt.c (show_usage): Extend for --symmetric.
(main): Handle --symmetric.
(main): Set passphrase_cb in loopback mode.
(main): Fix encrypt call if no recipients are given.
* tests/gpg/t-encrypt-mixed.c: New.
* tests/gpg/Makefile.am (c_tests): Add new test.
* doc/gpgme.texi: Document new flag.
https://invent.kde.org/neon/forks/gpgme/-/commit/3d2f027d0f40e7ec4ab48cee89ff0ee10b423566

Git commit bf776ce94cf454f1b3f1645b1cde09cd1c54324b by Andre Heinecke on 09/08/2016 at 12:23..
Cpp: Fix simple symmetric encryption

* lang/cpp/src/context.cpp (Context::encrypt): If no recipients
are provided encrypt with NULL and not an empty array.

--
Sending an empty array leads to an invalid argument error.
https://invent.kde.org/neon/forks/gpgme/-/commit/bf776ce94cf454f1b3f1645b1cde09cd1c54324b

Git commit 17372393798ea5e2d6838f3dd1e001dd4a66c941 by Andre Heinecke on 09/08/2016 at 12:23..
Cpp: Add support for all EncryptionFlags

* lang/cpp/src/context.h (EncryptionFlags): Extend.
* lang/cpp/src/context.cpp (encryptflags2encryptflags): Ditto.
https://invent.kde.org/neon/forks/gpgme/-/commit/17372393798ea5e2d6838f3dd1e001dd4a66c941

Git commit 34b456c3fb9e59788b07a75441da482bb28bda87 by Andre Heinecke on 09/08/2016 at 12:23..
Qt: Add support for EncryptJobs with generic flags

* lang/qt/src/encryptjob.h, lang/qt/src/signencryptjob.h,
lang/qt/src/qgpgmeencryptjob.h, lang/qt/src/qgpgmeencryptjob.cpp,
lang/qt/src/qgpgmesignencryptjob.cpp,
lang/qt/src/qgpgmeencryptjob.cpp: Add start and exec overloads
that accept generic EncryptFlags.

--
While this technically is an ABI break (vtable change) there
are no known classes outside qgpgme that inherit encryptjob
or signencryptjob. And the new functions should be added
to the bottom of the vtable.
https://invent.kde.org/neon/forks/gpgme/-/commit/34b456c3fb9e59788b07a75441da482bb28bda87

Git commit f209ec8f581ae597b37f2e3a5e452e4b53b2d4c7 by Andre Heinecke on 09/08/2016 at 12:23..
Qt: Add encryption test and refactor testsuite

* lang/qt/tests/Makefile.am: Add t-encrypt and t-support.
* lang/qt/tests/t-support.cpp, lang/qt/tests/t-support.c (QGpgMETest):
New. Class to handle common cleanup / init.
* lang/qt/tests/t-keylist.cpp,
lang/qt/tests/t-keylocate.cpp,
lang/qt/tests/t-ownertrust.cpp,
lang/qt/tests/t-tofuinfo.cpp: Inherit QGpgMETest.
* lang/qt/tests/t-encrypt.cpp: New. Test Symetric and Asymectric
encryption. Mixed encryption test is disabled.
https://invent.kde.org/neon/forks/gpgme/-/commit/f209ec8f581ae597b37f2e3a5e452e4b53b2d4c7

Git commit 969f223d8de21d7c8b0f7646bbf8dbb5864e8d03 by Andre Heinecke on 09/08/2016 at 16:39..
Qt: Clean up debug output in tests

* lang/qt/tests/t-support.cpp: Remove accidentally commited
debug output.
https://invent.kde.org/neon/forks/gpgme/-/commit/969f223d8de21d7c8b0f7646bbf8dbb5864e8d03

Git commit 0c222e1b3cabe1a8b84a2877420cdd5df56171b5 by Andre Heinecke on 10/08/2016 at 07:50..
Qt: Fix t-keylist moc include

* lang/qt/tests/t-keylist.cpp: Don't include t-support.moc

--
Accidental leftover from trying to generate t-support moc from
another cpp file. This was solved instead by a new rule to generate
moc files from the header.
https://invent.kde.org/neon/forks/gpgme/-/commit/0c222e1b3cabe1a8b84a2877420cdd5df56171b5

Git commit 270887309f4b673b13e58c29ea3989c56989590e by Andre Heinecke on 10/08/2016 at 08:27..
core: Ensure err is initalized in gpg_encrypt

* src/engine-gpg.c (gpg_encrypt): Initialize err.
https://invent.kde.org/neon/forks/gpgme/-/commit/270887309f4b673b13e58c29ea3989c56989590e

Git commit 04f994d5db6db0575dc73c2356c7d51424e2d9fe by Justus Winter on 10/08/2016 at 08:37..
tests: Fix memory leak.

* tests/gpg/t-encrypt-mixed.c (main): Free 'text2'.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/04f994d5db6db0575dc73c2356c7d51424e2d9fe

Git commit 21d5e71d486da8e37cf53f2b968646b39a6daa72 by Andre Heinecke on 10/08/2016 at 10:07..
Cpp: Clarify ownership of provider classes

* lang/cpp/src/context.h: Note that the context does not take
ownership of providers.
https://invent.kde.org/neon/forks/gpgme/-/commit/21d5e71d486da8e37cf53f2b968646b39a6daa72

Git commit a27d7755d071aad42efc2aa4ea3899ba7b17f8bf by Andre Heinecke on 10/08/2016 at 10:07..
Qt: Create TestPassphraseProvider on stack

* lang/qt/tests/t-encrypt.cpp, lang/qt/tests/t-tofuinfo.cpp: Create
TestPassphraseProvider on stack.

--
Context does not delete the provider. This fixes ASAN errors.
https://invent.kde.org/neon/forks/gpgme/-/commit/a27d7755d071aad42efc2aa4ea3899ba7b17f8bf

Git commit d467018ce36f5be36751267c3b6079e8c1ee5d8a by Andre Heinecke on 10/08/2016 at 10:07..
Qt: Remove unused variable

* lang/qt/src/qgpgmerefreshkeysjob.cpp (slotStatus): Remove
unused variable typ.
https://invent.kde.org/neon/forks/gpgme/-/commit/d467018ce36f5be36751267c3b6079e8c1ee5d8a

Git commit b602d8bc7bd726afb52dc60cc07e4609e88d4511 by Andre Heinecke on 10/08/2016 at 12:01..
core: Handle ENCRYPT_SYMMETRIC also for sig & enc

* src/engine-gpg.c (gpg_encrypt_sign): Handle ENCRYPT_SYMMETRIC
flag.
https://invent.kde.org/neon/forks/gpgme/-/commit/b602d8bc7bd726afb52dc60cc07e4609e88d4511

Git commit 09667a6006986a782af98ca1de4d6521e1b8f353 by Andre Heinecke on 10/08/2016 at 12:12..
Cpp: Handle empty recipients consistently

* lang/cpp/src/context.cpp (Context::getKeysFromRecipients):
New helper.
(Context::encrypt, Context::startEncryption, Context::signAndEncrypt)
(Context::startCombinedSigningAndEncryption): Use new helper.
* lang/cpp/src/context.h (Context::getKeysFromRecipients): Add
as private helper.

--
bf776ce was incomplete as the code to handle recpients
was duplicated four times. This is now unified and constently
uses a nullptr instead of an empty array.
https://invent.kde.org/neon/forks/gpgme/-/commit/09667a6006986a782af98ca1de4d6521e1b8f353

Git commit a9168185ba97aa1d827315cd8017899bf904aded by Werner Koch on 10/08/2016 at 13:35..
core: Do not identify PNG files as PGP signatures.

* src/data-identify.c (next_openpgp_packet): Blacklist PNG files.
--

GnuPG-bug-id: 2314
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a9168185ba97aa1d827315cd8017899bf904aded

Git commit 48691db97b759d67aa7b49c36bb704b5806ade2e by Werner Koch on 10/08/2016 at 14:28..
build: Declare all languages for make dist.

* lang/Makefile.am (DIST_SUBDIRS): New.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/48691db97b759d67aa7b49c36bb704b5806ade2e

Git commit b7d99e02188b7907b09fec3032fc1fd82fc2668a by Werner Koch on 10/08/2016 at 14:33..
doc: Get rid of version.texi

* configure.ac (CC_FOR_BUILD): New.
* doc/mkdefsinc.c: New.  Taken from GnuPG and modified for gpgme.
* doc/Makefile.am (EXTRA_DIST): Add defsincdate and mkdefsinc.c
(BUILT_SOURCES): new.
(gpgme.texi): New dependency.
(mkdefsinc, defsincdate, defs.inc): New rules.
(dist-hook): New.
* doc/gpgme.texi: Include defs.inc.  Remove version.texi.
--

GnuPG-bug-id: 2352

That new system should also yield more approriate date infos for the
manual.
https://invent.kde.org/neon/forks/gpgme/-/commit/b7d99e02188b7907b09fec3032fc1fd82fc2668a

Git commit 8c5abc8d932affab4bc79a85e3f98f6f6b982ae8 by Andre Heinecke on 11/08/2016 at 16:00..
Qt: Add KeyForMailboxJob

* lang/qt/src/job.cpp: Include moc and make subclass.
* lang/qt/src/keyformailboxjob.h,
lang/qt/src/qgpgmekeyformailboxjob.cpp,
lang/qt/src/qgpgmekeyformailboxjob.h: New.
* lang/qt/tests/run-keyformailboxjob.cpp: New manual test.
* lang/qt/tests/Makefile.am: Add run-keyformailboxjob.
* lang/qt/src/Makefile.am: Update accordingly.
* lang/qt/src/protocol.h, lang/qt/src/protocol_p.h: Add
keyformailboxjob.

--
The KeyForMailboxjob can be used to determine the best key to
use to encrypt something to a given mail address.
https://invent.kde.org/neon/forks/gpgme/-/commit/8c5abc8d932affab4bc79a85e3f98f6f6b982ae8

Git commit 59e2251a083b0ed61b3ab6d47015cef7cc6ceb05 by Andre Heinecke on 11/08/2016 at 16:00..
Qt: Ensure all public classes are exported

* src/abstractimportjob.h,
src/cryptoconfig.h,
src/deletejob.h,
src/exportjob.h,
src/importfromkeyserverjob.h,
src/importjob.h,
src/keygenerationjob.h,
src/keylistjob.h,
src/listallkeysjob.h,
src/refreshkeysjob.h,
src/signencryptjob.h,
src/specialjob.h,
src/verifydetachedjob.h: Export classes.

--
This is an adoption of kde's libkleo commit: d6a71a4e
Thanks dvratil at kde.org
https://invent.kde.org/neon/forks/gpgme/-/commit/59e2251a083b0ed61b3ab6d47015cef7cc6ceb05

Git commit 105f5446e69db00291164397cf0d8e68374cf420 by Andre Heinecke on 11/08/2016 at 16:00..
Qt: Add DefaultKeyGenerationJob

* lang/qt/src/defaultkeygenerationjob.cpp,
lang/qt/src/defaultkeygenerationjob.h: New.
* lang/qt/src/Makefile.am: Update accordingly.

--
The defaultkeygenerationjob makes it easier to just generate a key
in the future this should probably use quick-gen key but since this
is not exposed in gpgme we hardcode the defaults and do it with
the params file.

This is also the first job that uses a new and better architecture
without backend abstraction and the pimpl pattern instead of
a specialized subclass.

This is an adoption of kde's libkleo commit f49b7157
Thanks dvratil at kde.org
https://invent.kde.org/neon/forks/gpgme/-/commit/105f5446e69db00291164397cf0d8e68374cf420

Git commit 75c974c4e0a31981325f7d151bd13f2523f5df20 by Andre Heinecke on 12/08/2016 at 06:17..
Qt: Fix defaultkeygenerationjob build

* lang/qt/src/defaultkeygenerationjob.cpp: Include moc.
https://invent.kde.org/neon/forks/gpgme/-/commit/75c974c4e0a31981325f7d151bd13f2523f5df20

Git commit 06e601ad1a169ec8e941125afe698e722eca657d by Justus Winter on 12/08/2016 at 10:28..
Add Python bindings to NEWS.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/06e601ad1a169ec8e941125afe698e722eca657d

Git commit 293d1736911fd5e77b8cec305168b35b2420c612 by Werner Koch on 12/08/2016 at 13:21..
core: Add gpgme_data_set_flag to add more meta data to data objects.

* src/gpgme.h.in (gpgme_data_set_flag): New public function.
* src/data.c (gpgme_data_set_flag): New.
(_gpgme_data_get_size_hint): New.
* src/data.h (strucy gpgme_data): Add field 'size_hint'.
* src/gpgme.def, src/libgpgme.vers: Add new function.
* src/conversion.c (_gpgme_string_to_off): New.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/293d1736911fd5e77b8cec305168b35b2420c612

Git commit fe1e8e71aa18b4ac6471292b2894b8859f42f7c8 by Werner Koch on 12/08/2016 at 13:32..
core: Make use of the "size-hint" in engine-gpg.

* src/engine-gpg.c: Include data.h.
(add_input_size_hint): New.
(gpg_decrypt, gpg_encrypt, gpg_encrypt_sign, gpg_sign)
(gpg_verify): Call new function,

* tests/run-encrypt.c (status_cb): Print to stderr.
(progress_cb): New.o
(main): Add option --progress.  Print full-status lines.  Provide a
size for the input data.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fe1e8e71aa18b4ac6471292b2894b8859f42f7c8

Git commit df7bbf5a66576a5a320b54c8f6ad52bc84f0e833 by Andre Heinecke on 12/08/2016 at 14:51..
Cpp: Provide size-hint for seekable and mem data

* lang/cpp/src/data.cpp (GpgME::Data::Data): Set size-hint for
mem and DataProvider based Data.

--
This fixes the case that QGpgME did not have a total value for
progress as the size was unknown.
https://invent.kde.org/neon/forks/gpgme/-/commit/df7bbf5a66576a5a320b54c8f6ad52bc84f0e833

Git commit 391e55411cda11446ca9de4dd0dc2b54d3e6fff5 by Andre Heinecke on 12/08/2016 at 14:55..
Qt: Add test for progress signal of encryptjob

* lang/qt/tests/t-encrypt.cpp (testProgress): New.

--
This tests that a ByteArray IODevice now gives proper progress
signals.
https://invent.kde.org/neon/forks/gpgme/-/commit/391e55411cda11446ca9de4dd0dc2b54d3e6fff5

Git commit b7b0e7b5bfefd51c8092ea54f262b18aebf78128 by Werner Koch on 16/08/2016 at 16:49..
core: Simplify setting of dummy versions.

* src/engine.c (_gpgme_engine_info_release): Do not assert but free
FILE_NAME.
(gpgme_get_engine_info): Provide default for VERSION and REQ_VERSION.
Use calloc instead of malloc.
(_gpgme_set_engine_info): Ditto.
* src/engine-assuan.c (llass_get_version): Return NULL.
(llass_get_req_version): Ditto.
* src/engine-spawn.c (engspawn_get_version): Ditto.
(engspawn_get_req_version): Ditto.
* src/engine-uiserver.c (uiserver_get_version): Ditto.
(uiserver_get_req_version): Ditto.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b7b0e7b5bfefd51c8092ea54f262b18aebf78128

Git commit 8c09dd9989bcd434a8cb5997770cb8414b96bd5c by Werner Koch on 16/08/2016 at 16:53..
core: New global flag "require-gnupg".

* src/gpgme.c (gpgme_set_global_flag): Add flag.
* src/engine.c (engine_minimal_version): New variable.
(_gpgme_set_engine_minimal_version): New function.
(gpgme_get_engine_info): Check that flag.

* tests/run-keylist.c (main): New option --require-gnupg.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8c09dd9989bcd434a8cb5997770cb8414b96bd5c

Git commit 64194b0f8df1afe6135cd119fd3216fc8db68033 by Andre Heinecke on 17/08/2016 at 05:23..
Cpp: Fix some pedantic warnings

* lang/cpp/src/context.cpp,
lang/cpp/src/context.h (Context::getKeysFromRecipients): Remove
ignored / invalid const qualifier.
* lang/cpp/src/result.h: Don't shadow error function in ctor.
https://invent.kde.org/neon/forks/gpgme/-/commit/64194b0f8df1afe6135cd119fd3216fc8db68033

Git commit 9cf983b0199950c8f8cccee2cb8e45aafcba9fd1 by Andre Heinecke on 18/08/2016 at 15:09..
core: Fail loudly in case w32 spawner not found

* src/w32-io.c (_gpgme_io_spawn): Show a message box in
case gpgme-w32spawn.exe not found.

--
Otherwise every engine call will just fail with unsupported
protocol. Even in the debug output the problem was not made
clear because CreateProcess will fail with error code 87
(Invalid Parameter) because spawnhelper is NULL. The helpful
error message for ERROR_INVALID_PARAMETER would have been:
"is 'NULL' correctly installed"

As GpgME basically becomes useless on Windows without the
spawnhelper we want to fail very loud in that case.
https://invent.kde.org/neon/forks/gpgme/-/commit/9cf983b0199950c8f8cccee2cb8e45aafcba9fd1

Git commit 30f156280f18500ee522db58aecd40711c8af685 by Andre Heinecke on 18/08/2016 at 15:14..
core: Remove (now) useless diagnostic

* src/w32-io.c(_gpgme_io_spawn): Remove spawnhelper not found
diagnostic.

--
When spawnhelper is not found the error is now catched before
the CreateProcess call so the added diagnostic in bb2d11c
(which was not helpful because the value for spawnhelper
would be NULL in that case) is now no longer needed.
https://invent.kde.org/neon/forks/gpgme/-/commit/30f156280f18500ee522db58aecd40711c8af685

Git commit 3e60788810f93cfcd7f08e5882aff32ed7b6f831 by Werner Koch on 21/08/2016 at 13:49..
core: New commands --lang and --have-lang for gpgme-config

* configure.ac (GPGME_CONFIG_AVAIL_LANG): New ac_subst.
* src/gpgme-config.in (avail_lang): Add commands --lang and
--have-lang.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3e60788810f93cfcd7f08e5882aff32ed7b6f831

Git commit c9e7dcb100d807583d8e312da459561138231376 by Werner Koch on 22/08/2016 at 14:32..
core: Base gpgme_get_dirinfo(uiserver-socket) on the socket dir.

* src/dirinfo.c (dirname_len): New.
(parse_output): Change computation of UISRV_SOCKET.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c9e7dcb100d807583d8e312da459561138231376

Git commit 24e61984c9532924135c57b8ff98489a2d3bd4a3 by Werner Koch on 22/08/2016 at 14:57..
core: Add new items for gpgme_get_dirinfo.

* src/dirinfo.c (WANT_SYSCONFDIR, WANT_LIBEXECDIR, WANT_LIBDIR): New.
(WANT_DATADIR, WANT_LCOALEDIR, WANT_AGENT_SSH_SOCKET): New
(WANT_DIRMNGR_SOCKET): New.
(dirinfo): Add fields 'sysconfdir', 'bindir', 'libexecdir', 'libdir',
'datadir', 'localedir', 'agent_ssh_socket', and 'dirmngr_socket'.
(parse_output): Set these fields.
(get_gpgconf_item): Return them.
(gpgme_get_dirinfo): Likewise.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/24e61984c9532924135c57b8ff98489a2d3bd4a3

Git commit 26c5ba528ce1411d96655952ec48359105695c0f by Werner Koch on 22/08/2016 at 18:51..
core: New code for parsing mail addresses.

* src/mbox-util.c: New.
* src/mbox-util.h: New.
--

The files haven been copied verbatim from
GnuPG 2.1.15 commit 54245979e691129ed9d3a6c642087fb8d3227449
after the license has been changed in GnuPG.

We need this file too match GnuPG's idea of a mail address.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/26c5ba528ce1411d96655952ec48359105695c0f

Git commit 3955dce06e9d056599e5ec7d40301e66b9305195 by Werner Koch on 23/08/2016 at 04:48..
core: Extend gpgme_user_id_t with 'address'.

* src/mbox-util.c, src/mbox-util.h: Adjust for use in gpgme.
* src/Makefile.am (main_sources): Add mbox-util.
* src/key.c (_gpgme_key_append_name): Set 'address' field of uid.
(gpgme_key_unref): Free it.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3955dce06e9d056599e5ec7d40301e66b9305195

Git commit be4ff75d7d5ac6ed15feb245ef3cec59b4bad561 by Werner Koch on 23/08/2016 at 13:24..
core: Change the way TOFU information are represented.

* src/gpgme.h.in (struct _gpgme_signature): Remove field 'tofu'.  Add
field 'key'.
(struct _gpgme_key): Add field 'fpr'.
(struct _gpgme_user_id): Add field 'tofu'.
(struct _gpgme_tofu_info): Remove fields 'address' and 'fpr'.
* src/key.c (gpgme_key_unref): Release TOFU and FPR.
* src/keylist.c (keylist_colon_handler): Store the fingerprint of the
first subkey also in KEY.
* src/verify.c (release_tofu_info): Remove.
(release_op_data): Release KEY.
(parse_tofu_user): Rewrite for new data structure.
(parse_tofu_stats): Ditto.
(parse_tofu_stats_long): Ditto.
* tests/run-verify.c (print_result): Ditto.
* tests/run-keylist.c (main): Print more fields.
--

TOFU information are now associated with the user ID and not with a
separate object.

Note that this breaks code relying on the former non-released TOFU
feature.  The C++ bindings won't work right now.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/be4ff75d7d5ac6ed15feb245ef3cec59b4bad561

Git commit 2972c44bd7e97b2169dea9c4a49d9754afdae3f0 by Werner Koch on 23/08/2016 at 13:55..
core: Put the protocol into a TOFU created key object.

* src/verify.c (parse_tofu_user): Add arg 'protocol' and store it in
the KEY.
(_gpgme_verify_status_handler): Pass protocol.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2972c44bd7e97b2169dea9c4a49d9754afdae3f0

Git commit 799b168243e6499ac01bf59e0656547f353a2589 by Andre Heinecke on 23/08/2016 at 14:44..
Cpp: Move tofuinfo from signature to userid

* lang/cpp/src/key.cpp (UserID::tofuInfo): New.
* lang/cpp/src/key.h: Update accordingly.
* lang/cpp/src/tofuinfo.cpp: Remove dropped fields.
* lang/cpp/src/tofuinfo.h: Update accordingly.
* lang/cpp/src/verificationresult.cpp,
lang/cpp/src/verificationresult.h: Remove tofu info.
* lang/qt/tests/t-tofuinfo.cpp: Disable for now.

--
With be4ff75d7 Tofu info now lives with a UserID
Object. While this breaks API it was not yet released.
https://invent.kde.org/neon/forks/gpgme/-/commit/799b168243e6499ac01bf59e0656547f353a2589

Git commit 40ea1c85773cbe324557c34b3a4282f609fcdaf6 by Andre Heinecke on 24/08/2016 at 11:57..
Cpp: Use fpr field for primaryFingerprint

* lang/cpp/src/key.cpp (Key::primaryFingerprint): Return
fpr value if available.

--
Should not be necessary but we might have an incomplete
key without subkeys but the fingerprint already set in
gpgme's data type.
https://invent.kde.org/neon/forks/gpgme/-/commit/40ea1c85773cbe324557c34b3a4282f609fcdaf6

Git commit 7c5a4974b71c30e824cbfcb3a0a70064e5ed5adb by Andre Heinecke on 24/08/2016 at 11:59..
Cpp: Add Key to signature

* lang/cpp/src/verificationresult.cpp,
lang/cpp/src/verificationresult.h (Signature::key): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/7c5a4974b71c30e824cbfcb3a0a70064e5ed5adb

Git commit d2e40fb7adf667f3e2d2457ee4c646ea4d4d88b3 by Andre Heinecke on 24/08/2016 at 12:00..
Qt: Adapt (disabled) tofuinfo test to new API

* lang/qt/tests/t-tofuinfo.cpp: Switch to UID based API.

--
Test is still disabled as GnuPG still returns unexpected
results.
https://invent.kde.org/neon/forks/gpgme/-/commit/d2e40fb7adf667f3e2d2457ee4c646ea4d4d88b3

Git commit e20b0f0201543834f15c5d50cd3b2ece69a35d70 by Andre Heinecke (on behalf of Werner Koch) on 24/08/2016 at 12:15..
cpp: Get rid of AssuanResult due to its deprecation.

* lang/cpp/src/assuanresult.cpp: Remove.
* lang/cpp/src/assuanresult.h: Remove.
* lang/cpp/src/Makefile.am: Remove these files.
* lang/cpp/src/context.cpp: Remove header assuanresult.h
(assuanTransact): Change return type to Error.  Use
gpgme_op_assuan_transact_ext.
(startAssuanTransaction): Change return type to Error.
(assuanResult): Remove
* lang/cpp/src/context.h (assuanResult): Adjust for changes.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e20b0f0201543834f15c5d50cd3b2ece69a35d70

Git commit 1eefc2d43c0adb2ce516f8e3509ace2fb562e401 by Werner Koch on 24/08/2016 at 14:04..
core: Set the 'encrcount' field in gpgme_tofu_info_t.

* src/verify.c (parse_tofu_stats): Set ENCRCOUNT field.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1eefc2d43c0adb2ce516f8e3509ace2fb562e401

Git commit 38798fee5b539d6153a8a7856152959412ee59b5 by Werner Koch on 24/08/2016 at 18:10..
core: Adjust for TOFU_STATS change in gnupg 2.1.16.

* src/gpgme.h.in (_gpgme_tofu_info): Change 'firstseen' and 'lastseen'
to a timestamp value.
* src/verify.c (parse_tofu_stats): Do not cap these values at UINT_MAX.
--

Using an unsigned long here is okay: We will never get an error and
even on machines where unsigned long is 32 bit (e.g. Windows64) this
allows us to operate until 2106.  By then Windows will be a footnote
in history or Windows128 has changed that type to something larger
than 32 bit ;-)

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/38798fee5b539d6153a8a7856152959412ee59b5

Git commit 9ee103957e4136337b92d238283f8ef30fd4a7c5 by Werner Koch on 25/08/2016 at 09:38..
core: Add GPGME_KEYLIST_MODE_WITH_TOFU.

* src/gpgme.h.in (GPGME_KEYLIST_MODE_WITH_TOFU): New.
* src/engine-gpg.c (gpg_keylist_build_options): Use that.
* src/keylist.c: Include limits.h.
(parse_tfs_record): New.
(keylist_colon_handler): Support TFS record.
* tests/run-keylist.c: Include time.h.
(isotimestr): New.
(main): Add option --tofu.  Print TOFU info.
* tests/run-verify.c: Include time.h.
(isotimestr): New.
(print_result): Use isotimestr for TOFU dates.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9ee103957e4136337b92d238283f8ef30fd4a7c5

Git commit ece8b02a839d6fc566fea7b6e59fabff164f6cf5 by Andre Heinecke on 25/08/2016 at 09:41..
Cpp: Add support for spawn engine

* lang/cpp/src/context.cpp (Context::spawn, Context::spawnAsync): New.
* lang/cpp/src/context.h: Add prototypes.
(SpawnFlags): New.
* lang/cpp/src/global.h (SpawnEngine): Added.
https://invent.kde.org/neon/forks/gpgme/-/commit/ece8b02a839d6fc566fea7b6e59fabff164f6cf5

Git commit abcd9a283ee8f81870622c8e1dbdc7aad38c0358 by Andre Heinecke on 25/08/2016 at 09:41..
Cpp: Add wrapper for gpgme_get_dirinfo

* lang/cpp/src/context.cpp (dirInfo): New.
* lang/cpp/src/global.h (dirInfo): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/abcd9a283ee8f81870622c8e1dbdc7aad38c0358

Git commit de7b67f9b2e6bd43a036fa0bcc6a8ca4f5b10986 by Andre Heinecke on 25/08/2016 at 09:41..
Cpp: Change firstSeen / lastSeen return values

* lang/cpp/src/tofuinfo.cpp,
lang/cpp/src/tofuinfo.h (TofuInfo::firstSeen, TofuInfo::lastSeen):
Change return values to unsigned long and update doc.
https://invent.kde.org/neon/forks/gpgme/-/commit/de7b67f9b2e6bd43a036fa0bcc6a8ca4f5b10986

Git commit 94420b05775122b25885c66ac67f77c59d01644d by Andre Heinecke on 25/08/2016 at 12:29..
qt: Add WKSPublishJob

* lang/qt/src/Makefile.am: Add new files.
* lang/qt/src/job.cpp: Include moc / subclass stub.
* lang/qt/src/protocol.h: Add virtual for new job.
* lang/qt/src/protocol_p.h: Add job.
* lang/qt/src/wkspublishjob.h: Interface for WKSPublishJob.
* lang/qt/src/qgpgmewkspublishjob.cpp,
lang/qt/src/qgpgmewkspublishjob.h: New.

--
The Job was originally intended to be used with a SpawnEngine
Context but QProcess was a better fit for the job.

Usage is similar to the client tool. check, create, recieve.
https://invent.kde.org/neon/forks/gpgme/-/commit/94420b05775122b25885c66ac67f77c59d01644d

Git commit df04b232b8897f030534f8c3fbc87064edf8ae7d by Andre Heinecke on 25/08/2016 at 12:40..
qt: Add test for wkspublishjob

* lang/qt/tests/t-wkspublish.cpp: New.
* lang/qt/tests/Makefile.am: Update accordingly.

--
Most tests are disabled by default as tey require
an online connection.
Define DO_ONLINE_TESTS to enable the tests.
https://invent.kde.org/neon/forks/gpgme/-/commit/df04b232b8897f030534f8c3fbc87064edf8ae7d

Git commit f08904b810d77d87c66d9c7875c4e7f2bde5dd92 by Andre Heinecke on 25/08/2016 at 13:02..
qt: Remove unused variable in test

* t-wkspublish.cpp (testWKSPublishCreate): Remove context.
https://invent.kde.org/neon/forks/gpgme/-/commit/f08904b810d77d87c66d9c7875c4e7f2bde5dd92

Git commit 053e6e0a7b8ea38ad9d4160c84814867bbb9fcf6 by Andre Heinecke on 25/08/2016 at 13:20..
qt: Fix tofuinfo test when gpg is gpg2

* lang/qt/tests/t-support.cpp (QGpgMETest::copyKeyrings): New helper.
* lang/qt/tests/t-support.h: Declare.
* lang/qt/tests/t-encrypt.cpp: use it
* lang/qt/tests/t-tofuinbo.cpp: ditto.

--
New helper takes care of copying the correct files for either
keybox or keyring.
https://invent.kde.org/neon/forks/gpgme/-/commit/053e6e0a7b8ea38ad9d4160c84814867bbb9fcf6

Git commit f311b92ceaedb12c9e00a722b6b47bbe6b50871e by Andre Heinecke on 25/08/2016 at 14:17..
cpp: Add WithTofu Keylist Mode

* lang/cpp/src/context.cpp: Handle WithTofu.
* lang/cpp/src/global.h (KeyListMode): Add WithTofu.
* lang/cpp/src/util.h (add_to_gpgme_keylist_mode_t): Handle WithTofu.
https://invent.kde.org/neon/forks/gpgme/-/commit/f311b92ceaedb12c9e00a722b6b47bbe6b50871e

Git commit 5a92cc96da183ebb19867a2a910f53ba41e76ae9 by Andre Heinecke on 25/08/2016 at 14:20..
qt: Ensure that current src dir is included first

* lang/qt/src/Makefile.am: Reorder include directives.

--
This fixes the problem that QGpgME would pick up gpgme or
gpgme++ headers from an installed version.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a92cc96da183ebb19867a2a910f53ba41e76ae9

Git commit 4e37d0bb1255558ce20e1a5ac83a2d06a37f8b0b by Andre Heinecke on 25/08/2016 at 14:22..
qt: Add generic flag support for keylistjobs

* lang/qt/src/keylistjob.h (addMode): New.
* lang/qt/src/qgpgmekeylistjob.h (addMode): New.
* lang/qt/src/qgpgmekeylistjob.cpp (addMode: New.

--
Instead of new API for each new thing lets be a bit more
generic / open.
https://invent.kde.org/neon/forks/gpgme/-/commit/4e37d0bb1255558ce20e1a5ac83a2d06a37f8b0b

Git commit c875f07e559a7c53fc173b4c3f9f5715f3fbb8f8 by Andre Heinecke on 25/08/2016 at 14:23..
qt: Fix keyring copy in tests

* lang/qt/test/t-encrypt.cpp,
lang/qt/test/t-tofuinfo.cpp: Assert on copy failure.
* lang/qt/test/t-support.cpp (copyKeyrings): Fix path.
https://invent.kde.org/neon/forks/gpgme/-/commit/c875f07e559a7c53fc173b4c3f9f5715f3fbb8f8

Git commit 9fc72e928bf2cf239bd3b0facdf33ceb1acc975b by Andre Heinecke on 25/08/2016 at 14:25..
qt: Fix and extend TofuInfo test.

* lang/qt/tests/t-tofuinfo.cpp: Delete executed jobs.
(testTofuKeyList): New.
(testSupported): Activate for 2.1.16
(signAndVerify): Disable sigcount tests.
https://invent.kde.org/neon/forks/gpgme/-/commit/9fc72e928bf2cf239bd3b0facdf33ceb1acc975b

Git commit 05570bd3d05fb3d7934c1122f0d5ef5fdbaa7974 by Andre Heinecke on 25/08/2016 at 15:16..
qt: Fix 2.1 t-support copy

* lang/qt/src/t-support.cpp (copyKeyring): Fix seckey copy.
https://invent.kde.org/neon/forks/gpgme/-/commit/05570bd3d05fb3d7934c1122f0d5ef5fdbaa7974

Git commit e3a4697894cc5a93c295e84bb10c743bc7fdc87e by Andre Heinecke on 05/09/2016 at 08:42..
qt: Include cpp before core directory

* lang/qt/src/Makefile.am (AM_CPPFLAGS): Include cpp before core.

--
Both core and cpp have headers that have the same names, this
can lead to the wrong headers beeing included when qt bindings
are built.
https://invent.kde.org/neon/forks/gpgme/-/commit/e3a4697894cc5a93c295e84bb10c743bc7fdc87e

Git commit 8a39a595eb802b80a6ad756b0ee8939e9733e86f by Andre Heinecke on 05/09/2016 at 08:44..
qt: Add missing header redirection

* lang/qt/src/keyformailboxjob.h,
lang/qt/src/qgpgmekeyformailboxjob.h: Fix includes.

--
This ensures that when building qgpgme you do not need an installed
gpgme++.
https://invent.kde.org/neon/forks/gpgme/-/commit/8a39a595eb802b80a6ad756b0ee8939e9733e86f

Git commit 444d85ace0dddff5c511961927052d9946035b00 by Andre Heinecke on 05/09/2016 at 09:57..
cpp: Add ostream operators for key and uid

* lang/cpp/src/key.cpp (Key, UserID): Add ostream operator.
* lang/cpp/src/key.h: Update accordingly.

--
This is helpful debugging / showing the state of a key / uid and
tofuinfo.
https://invent.kde.org/neon/forks/gpgme/-/commit/444d85ace0dddff5c511961927052d9946035b00

Git commit 79439e76cc5b302222874a1f9e93665cb12801ac by Andre Heinecke on 05/09/2016 at 10:53..
cpp: Add convenience update function to a key

* lang/cpp/src/key.cpp (Key::update): New.
* lang/cpp/src/key.h: Update accordingly.

--
This function helps if you have an incomplete key or want
to make sure all info in a key is complete (e.g. validity / tofuinfo)
https://invent.kde.org/neon/forks/gpgme/-/commit/79439e76cc5b302222874a1f9e93665cb12801ac

Git commit 965b842fad6ec6fbd8902f3a32119abcd0728fe4 by Andre Heinecke on 05/09/2016 at 10:58..
qt: Enable signcount checks in tofuinfo test

* lang/qt/tests/t-tofuinfo.cpp: Enable checks for signcount.

--
Signcount for userIDs works now as expected with gnupg 2.1.16.
https://invent.kde.org/neon/forks/gpgme/-/commit/965b842fad6ec6fbd8902f3a32119abcd0728fe4

Git commit ab3fbdbd05cfd1b039bb5b1eb3941fbb4bcf6307 by Andre Heinecke on 05/09/2016 at 14:54..
qt: Clarify comment and strings in tofuinfo test

* lang/qt/tests/t-tofuinfo.cpp (testTofuSignCount)
(testTofuKeyList): Ensure distinct messages. Clarify comment.
https://invent.kde.org/neon/forks/gpgme/-/commit/ab3fbdbd05cfd1b039bb5b1eb3941fbb4bcf6307

Git commit efe7e11dfa2ff911b477ce748292e53e7a50347e by Andre Heinecke on 06/09/2016 at 14:28..
core: Fix passphrase cb for mixed sym encrypt

* src/encrypt.c (encrypt_start): Handle SYMMETRIC flag.
* src/encrypt-sign.c (encrypt_sign_start): Ditto.

--
This causes the passphrace command handler to be properly
registered which in turn will result in the passphrase
callback beeing called.
https://invent.kde.org/neon/forks/gpgme/-/commit/efe7e11dfa2ff911b477ce748292e53e7a50347e

Git commit e8cb143c8337b122a6790f769ddb0a97c4baccd3 by Andre Heinecke on 06/09/2016 at 14:30..
core: Check for gpg version for loopback mode

* src/engine-gpg.c (build_argv): Check for version 2.1.0
before adding pinentry-mode.

--
This is a compatibility fix for older versions that don't support
this flag which would otherwise result in an invalid argument
error.
https://invent.kde.org/neon/forks/gpgme/-/commit/e8cb143c8337b122a6790f769ddb0a97c4baccd3

Git commit 151da95470f174dc770b2111890ad650a1697276 by Andre Heinecke on 06/09/2016 at 14:32..
tests: Set passphrase cb in t-encrypt-mixed

* tests/gpg/t-encrypt-mixed.c (main): Set passphrase cb.

--
This fixes the test when run without an agent and our
faked pinentry program.
https://invent.kde.org/neon/forks/gpgme/-/commit/151da95470f174dc770b2111890ad650a1697276

Git commit 120b14783c0312d782dc08ce4949a6209d5ccc7b by Werner Koch on 07/09/2016 at 07:26..
core,cpp: Extend the TOFU information.

* src/gpgme.h.in (struct _gpeme_tofu_info): Rename FIRSTSEEN to
SIGNFIRST and LASTSEEN to SIGNLAST.  Add ENCRFIST and ENCRLAST.
* src/keylist.c (parse_tfs_record): Parse to ENCRFIRST and ENCRLAST.
* src/verify.c (parse_tofu_stats): Ditto.
* tests/run-keylist.c (main): Adjust and print encrypt stats.
* tests/run-verify.c (print_result): Ditto.

* lang/cpp/src/tofuinfo.h (TofuInfo): Rename firstSeen to signFirst
and lastSeen to signLast.  Add encrCount, encrFirst and encrLast.
* lang/cpp/src/tofuinfo.cpp (encrCount, encrFirst, encrLast): New.
--

The latest GnuPG commits have the needed changes but we also allow the
use of currently released GnuPG version.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/120b14783c0312d782dc08ce4949a6209d5ccc7b

Git commit 7b9e6ea376d04fb4694ed22369abaae92ce3ec86 by Justus Winter on 12/09/2016 at 08:11..
qt: Fix tofu test.

* lang/qt/tests/t-tofuinfo.cpp: Adjust member names.

Fixes-commit: 120b1478
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/7b9e6ea376d04fb4694ed22369abaae92ce3ec86

Git commit d480f6b701894f78f3f4016d69c0e3b87939930b by Andre Heinecke on 12/09/2016 at 08:52..
qt: Fix some includes

* lang/qt/src/qgpgmekeyformailboxjob.cpp: Explicitly include
QStringList.
* lang/qt/tests/t-support.h, lang/qt/tests/t-support.cpp: Move
includes into impl. Explicitly include QDir.

--
This fixes build against Qt versions where the includes are less
implicit.
https://invent.kde.org/neon/forks/gpgme/-/commit/d480f6b701894f78f3f4016d69c0e3b87939930b

Git commit a0263ad282d350b548cbbc27e96f196d9217d040 by Justus Winter on 12/09/2016 at 12:56..
tests: Make signature notation test compatible with older GnuPGs.

* lang/python/tests/t-sig-notation.py: Only check the critical flag
when GnuPG >= 2.1.13 is used.
* tests/gpg/t-sig-notation.c: Likewise.

Fixes-commit: c88c9ef3
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a0263ad282d350b548cbbc27e96f196d9217d040

Git commit dfd99ab50c3bc1d6745b6f682791e4885e8d8a9a by Justus Winter on 12/09/2016 at 13:42..
tests: Fix version comparison.

* tests/gpg/t-sig-notation.c: Fix version comparison.

Fixes-commit: a0263ad2
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/dfd99ab50c3bc1d6745b6f682791e4885e8d8a9a

Git commit b48b852a846129914d6c63ec7b47388cdcf6acca by Justus Winter on 12/09/2016 at 14:18..
python: Do not rely on subprocess.DEVNULL.

* lang/python/setup.py.in: Do not rely on subprocess.DEVNULL.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/b48b852a846129914d6c63ec7b47388cdcf6acca

Git commit 70999d81618b3d3ae6b61a43be2ce703ad284275 by Justus Winter on 12/09/2016 at 14:19..
python: Avoid hardcoding the interpreter.

* lang/python/setup.py.in: Avoid hardcoding the interpreter.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/70999d81618b3d3ae6b61a43be2ce703ad284275

Git commit 1d5bbbf1185a0d1f82750f10b69dad3999f7ef4c by Justus Winter on 12/09/2016 at 15:11..
python: Make type translation compatible with Python 2.7.

* lang/python/gpgme.i: Avoid functions not available in Python 2.7.
* lang/python/helpers.c: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1d5bbbf1185a0d1f82750f10b69dad3999f7ef4c

Git commit c0c50318bd8ef6c8119ad9fdc53ad9087ded4c32 by Justus Winter on 12/09/2016 at 15:24..
python: Avoid Python3-only form of super().

* lang/python/pyme/core.py (GpgmeWrapper.__repr__): Use more
compatible form of super.
(GpgmeWrapper.__setattr__): Likewise.
(Context.__init__): Likewise.
(Data.__init__): Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/c0c50318bd8ef6c8119ad9fdc53ad9087ded4c32

Git commit 4abff7d750a1abf5b388a4c87ec321fc3e4aed10 by Justus Winter on 13/09/2016 at 11:29..
python: Fix types and error handling.

* lang/python/helpers.c (_pyme_edit_cb): Drop the const.
(_pyme_assuan_{data,inquire,status}_cb): Fix error handling.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/4abff7d750a1abf5b388a4c87ec321fc3e4aed10

Git commit 70a3be27a509a1b5ea7372bee93d83c5019427ff by Justus Winter on 13/09/2016 at 11:29..
python: Handle slight differences between Python 2 and 3.

* lang/python/helpers.c (pyDataWriteCb): Handle Python integers being
returned on Python 2.
(pyDataSeekCb): Likewise.
* lang/python/pyme/core.py (Data.__init__): Fix testing for string
argument.
(Data.new_from_filepart): Likewise.
* lang/python/pyme/util.py (is_a_string): New function.
* lang/python/tests/t-encrypt-large.py (read_cb): Force evaluation of
generator.
* lang/python/tests/t-idiomatic.py: Partly skip test on Python 2.
* lang/python/tests/t-verify.py (check_result): Here, the difference
between 2 and 3 really matters.  We cannot change the char *
conversion in Python 2 without breaking all existing applications, and
using bytestrings in Python 3 would be very inconvenient.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/70a3be27a509a1b5ea7372bee93d83c5019427ff

Git commit 00c501d296da287bec2fd6a0e3912abfbde90a98 by Werner Koch on 13/09/2016 at 16:59..
core: New function gpgme_op_create_key.

* src/engine-backend.h (engine_ops): Change prototype of genkey.
* src/engine-gpgsm.c (gpgsm_genkey): Change accordingly.
* src/engine-gpg.c (gpg_genkey): Change it to a dispatcher.
(gpg_createkey_from_param): New for the old functionality.
(gpg_createkey_legacy): New.  Stub for now.
(gpg_createkey): New.
(gpg_addkey): New.  Stub for now.
(gpg_adduid): New.  Stub for now.
* src/engine.c (_gpgme_engine_op_genkey): Add new args.
* src/genkey.c (op_data_t): Add field ERROR_CODE.
(parse_error): New.
(genkey_status_handler): Parse ERROR status line.
(genkey_start): Use NULL/0 for the new args.
(createkey_start): New.
(gpgme_op_createkey_start, gpgme_op_createkey): New.
* src/gpgme.def, src/libgpgme.vers: Add gpgme_op_createkey_start and
gpgme_op_createkey.
* src/gpgme.h.in (_gpgme_op_genkey_result): Add fields PUBKEY and
SECKEY.
(GPGME_CREATE_SIGN): New.
(GPGME_CREATE_ENCR): New.
(GPGME_CREATE_CERT): New.
(GPGME_CREATE_AUTH): New.
(GPGME_CREATE_NOPASSWD): New.
(GPGME_CREATE_SELFSIGNED): New.
(GPGME_CREATE_NOSTORE): New.
(GPGME_CREATE_WANTPUB): New.
(GPGME_CREATE_WANTSEC): New.
(GPGME_CREATE_FORCE): New.

* tests/run-genkey.c: New.
* tests/Makefile.am (noinst_PROGRAMS): Add it.
--

This function uses the new --quick-gen-key API of gpg.  A limited
compatibility mode to use older gpg versions and gpgsm will eventually
be provided.  Not all flags are currently implemented.

 ./run-genkey --unprotected --force test at example.com

Create a new standard key with the given user id.  --force is used to
allow creating more than one key with that user id in the keyring.

 ./run-genkey --unprotected --force \
      test at example.com default default 2145826800

Creates a new standard key with an expiration date of 2037-12-31.

 ./run-genkey --unprotected --force \
      test at example.com future-default default 2145826800

Create a standard key using the fugure default algorithms.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/00c501d296da287bec2fd6a0e3912abfbde90a98

Git commit 0510591c36591816a6ff3f87a04451001b7ed46f by Werner Koch on 13/09/2016 at 18:41..
build: Use more compiler warnings

* configure.ac: Add useful compiler warnings.
--

It is strange that this seems to be the only GnuPG package which does
not use modern warning.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0510591c36591816a6ff3f87a04451001b7ed46f

Git commit 3972f476e00f27d41a0aeabcb66600905b6737bd by Werner Koch on 13/09/2016 at 18:44..
core: Do not pass const char* to functions taking a char*.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3972f476e00f27d41a0aeabcb66600905b6737bd

Git commit 4491ef0a9a15d3b307d1ade37ff620ef9fcb2478 by Werner Koch on 13/09/2016 at 18:46..
tests: Use gpgme_io_write in passhrase callbacks.

* tests/gpg/t-support.h (passphrase_cb): Use gpgme_io_write.
* tests/gpgsm/t-support.h (passphrase_cb): Ditto.
* tests/run-support.h (passphrase_cb): Ditto.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4491ef0a9a15d3b307d1ade37ff620ef9fcb2478

Git commit 9064eebdc05e7149c2c8cc899fbd7874622fb769 by Werner Koch on 13/09/2016 at 18:48..
tests: Mark lots of unused vars and fix const mismatches.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9064eebdc05e7149c2c8cc899fbd7874622fb769

Git commit 4a200146b602349eebb4eac2e102357748d7ba5b by Werner Koch on 13/09/2016 at 18:53..
core: Mark unused function args.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4a200146b602349eebb4eac2e102357748d7ba5b

Git commit 3009e6162eaa39adaaf45f06fc4f88c7153360ee by Werner Koch on 13/09/2016 at 18:54..
core: Fix condition-always-true warning in trace macro.

* src/data-compat.c (old_user_read): Cast AMT.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3009e6162eaa39adaaf45f06fc4f88c7153360ee

Git commit 686a065f639ef006e33c164e282d787bcd169754 by Werner Koch on 13/09/2016 at 18:57..
core: Cast away the common const problem with spawn and argv.

* src/dirinfo.c (read_gpgconf_dirs): Use a cast to assignd to ARGV.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/686a065f639ef006e33c164e282d787bcd169754

Git commit 51f9acbca935c5287d9a28205037b0923e9a65f5 by Werner Koch on 13/09/2016 at 18:59..
core: Use const char * where appropriate.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/51f9acbca935c5287d9a28205037b0923e9a65f5

Git commit cc353701b0fde4c811ddc1e9a91b852dfe9f4e06 by Werner Koch on 14/09/2016 at 07:51..
core: New function gpgme_op_createsubkey.

* src/genkey.c (createsubkey_start): New.
(gpgme_op_createsubkey_start, gpgme_op_createsubkey): New.
* src/gpgme.def, src/libgpgme.vers: Add them.
* src/engine-gpg.c (gpg_createkey): Factor some code out to ...
(gpg_add_algo_usage_expire): new.
(gpg_addkey): Implement.
* tests/run-genkey.c: Add option --addkey.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/cc353701b0fde4c811ddc1e9a91b852dfe9f4e06

Git commit 3210f3e4725afc5ee2810b9a1361918ec9c42ca4 by Werner Koch on 14/09/2016 at 09:40..
core: New function gpgme_op_adduid.

* src/genkey.c: Replace most error codes GPG_ERR_INV_VALUE by
GPG_ERR_INV_ARG.
(struct op_data_t): Add field UIDMODE.
(genkey_status_handler): Use UIDMODE.
(adduid_start): New.
(gpgme_op_adduid_start, gpgme_op_adduid): New.
* src/gpgme.def, src/libgpgme.vers: Add them.
* tests/run-genkey.c: Add option --adduid.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3210f3e4725afc5ee2810b9a1361918ec9c42ca4

Git commit 3b37c4efcf68657a856dbce60c0bd0fc78dd0770 by Justus Winter on 14/09/2016 at 10:15..
python: Use more generic shebang.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3b37c4efcf68657a856dbce60c0bd0fc78dd0770

Git commit dc23fdf55561659f9e9cff51668ac9c6c027c885 by Justus Winter on 14/09/2016 at 10:15..
python: Import from __future__ to align behavior of Python 2.7.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/dc23fdf55561659f9e9cff51668ac9c6c027c885

Git commit 24b4162d908b48a92660020be0b776c2874fb05a by Justus Winter on 14/09/2016 at 10:18..
python: Build for both Python2 and Python3.

* NEWS: Update.
* configure.ac: Check for multiple Python versions.
* lang/python/Makefile.am: Build and install for both Python versions.
* lang/python/tests/Makefile.am: Test both versions.
* lang/python/tests/run-tests.py: New test runner.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/24b4162d908b48a92660020be0b776c2874fb05a

Git commit c22f5884c50557f54704f4becc5a8c1ee0749547 by Werner Koch on 14/09/2016 at 10:42..
core: Change a parameter for the engine's genkey function.

* src/engine.h (GENKEY_EXTRAFLAG_ARMOR): New.
* src/engine-backend.h (engine_ops): Rename USE_ARMOR in genkey to
EXTRAFLAGS.
* src/engine.c (_gpgme_engine_op_genkey): Ditto.
* src/engine-gpg.c (gpg_createkey_from_param): Ditto and test the
flags.
(gpg_createkey_legacy): Ditto.
(gpg_createkey): Ditto.
(gpg_addkey): Ditto.
(gpg_genkey): Ditto.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c22f5884c50557f54704f4becc5a8c1ee0749547

Git commit c943380b7a2cc9b32f81c22224fc6f92e8ea8469 by Werner Koch on 14/09/2016 at 10:42..
core: New function gpgme_op_revuid.

* src/engine.h (GENKEY_EXTRAFLAG_REVOKE): New.
* src/genkey.c (adduid_start): Rename to addrevuid_start.  Add arg
REVOKE and pass it as extraflags.  Remove useless ARMOR extraflag.
Adjust callers.
(gpgme_op_revuid_start, gpgme_op_revuid): New.
* src/gpgme.def, src/libgpgme.vers: Add them.

* tests/run-genkey.c: Add option --revuid.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c943380b7a2cc9b32f81c22224fc6f92e8ea8469

Git commit 99db351288d5bb075f124ef10e540e25bc36b70a by Justus Winter on 14/09/2016 at 11:10..
python: Improve build system integration.

* configure.ac: Try to compile a Python module for each version.
* m4/m4_ax_swig_python.m4: Drop unused file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/99db351288d5bb075f124ef10e540e25bc36b70a

Git commit f6cd560ca74248dd719a37cfb34386148727a92d by Justus Winter on 14/09/2016 at 12:32..
python: Adapt to TOFU changes.

* lang/python/pyme/results.py (TofuInfo): Drop.
(Signature): The TOFU information moved to the key.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/f6cd560ca74248dd719a37cfb34386148727a92d

Git commit 44d18200d5ffe8691e18d93ce6c534660702b982 by Justus Winter on 14/09/2016 at 12:34..
python: Improve error handling.

* lang/python/gpgme.i (gpgme_engine_info_t): Improve error handling.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/44d18200d5ffe8691e18d93ce6c534660702b982

Git commit 4011b2b2a1050f0837e989da3db9b5459e71ccd6 by Justus Winter on 14/09/2016 at 12:35..
python: Trim imports.

* lang/python/examples/encrypt-to-all.py: Drop unused import of 'os'.
* lang/python/examples/signverify.py: Likewise.
* lang/python/examples/simple.py: Likewise.
* lang/python/examples/verifydetails.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/4011b2b2a1050f0837e989da3db9b5459e71ccd6

Git commit 594c3b8b052e60b6be77ed532fe46549133a9726 by Justus Winter on 14/09/2016 at 12:36..
python: Clarify that we support Python 2.7 too.

* lang/python/README: Use 'Python' instead of 'Python 3'.
* lang/python/pyme/version.py.in: Likewise.
* lang/python/setup.py.in: Add classifier for 2.7, drop 3 only.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/594c3b8b052e60b6be77ed532fe46549133a9726

Git commit bfd2bd0ccc9fed8284ef932ac788d4ca0dba0336 by Werner Koch on 14/09/2016 at 16:59..
core: New function gpgme_op_keysign.

* src/gpgme.h.in (gpgme_op_keysign_start, gpgme_op_keysign): New.
(GPGME_KEYSIGN_LOCAL): New.
(GPGME_KEYSIGN_LFSEP): New.
(GPGME_KEYSIGN_NOEXPIRE): New.
* src/context.h (ctx_op_data_id_t): Add OPDATA_KEYSIGN.
* src/keysign.c: New.
* src/Makefile.am (main_sources): Add keysig.
* src/libgpgme.vers, src/gpgme.def: Add gpgme_op_keysign_start.
* src/engine.c (_gpgme_engine_op_keysign): New.
* src/engine-backend.h (engine_ops): Add 'keysign' and adjust all
engine initializers.
* src/engine-gpg.c (_add_arg): Add args PREFIX and ARGLEN and change
callers to set them.
(add_arg_pfx): New.
(add_arg_len): New.
(gpg_keysign): New.
(_gpgme_engine_ops_gpg): Set keysign to gpg_keysign.
* tests/run-keysign.c: New.
* tests/Makefile.am (noinst_PROGRAMS): Add run-keysign.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bfd2bd0ccc9fed8284ef932ac788d4ca0dba0336

Git commit d79dcb78d867aaf55b85aea117c4ae6035a1531a by Werner Koch on 14/09/2016 at 17:02..
core: Defer implementation of gpgme_op_createkey with gpg < 2.1

* src/engine-gpg.c (gpg_createkey_legacy): Mark unused variables.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d79dcb78d867aaf55b85aea117c4ae6035a1531a

Git commit 7c37719d79345a665ec2f4570e3f257033b58c62 by Werner Koch on 14/09/2016 at 18:21..
core: New function gpgme_op_tofu_policy

* src/gpgme.h.in (gpgme_op_tofu_policy_start): New function.
(gpgme_op_tofu_policy): New function.
* src/libgpgme.vers, src/gpgme.def: Add new functions.
* src/tofupolicy.c: New.
* src/Makefile.am (main_sources): Add that file.
* src/context.h (ctx_op_data_id_t): Add OPDATA_TOFU_POLICY.
* src/engine.c (_gpgme_engine_op_tofu_policy): New.
* src/engine-backend.h (engine_ops): Add funcptr 'tofu_policy'.
Adjust all engine initializations.
* src/engine-gpg.c (gpg_tofu_policy): New.
(_gpgme_engine_ops_gpg): Register this function.

* tests/run-tofu.c: New.
* tests/Makefile.am (noinst_PROGRAMS): Add it.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7c37719d79345a665ec2f4570e3f257033b58c62

Git commit d2b72d3cc19fe2a7d548dac38d55e069e0c9a904 by Werner Koch on 15/09/2016 at 07:24..
core: Minor change of the gpgme_op_edit semantics.

* src/edit.c (command_handler): Handle special error code.
* src/engine-gpg.c (read_status): Ditto.
* src/engine-gpgsm.c (status_handler): Ditto.
* src/engine-uiserver.c (status_handler): Ditto.
* src/util.h (GPG_ERR_FALSE): Define for older libgpg-error versions.
--

An edit callback may now simply return GPG_ERR_FALSE to indicate that
it did not handled the status code.  GPGME will the do the appropriate
action, which is to send an empty line.

Note that it is highly unlikely that GPG_ERR_FALSE has ever been used
by an application as return value from an edit interactor.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d2b72d3cc19fe2a7d548dac38d55e069e0c9a904

Git commit ed1f2700a73060e2615697491ea9e49ded4293e6 by Werner Koch on 15/09/2016 at 09:39..
core: New function gpgme_op_interact, deprecate gpgme_op_edit.

* src/gpgme.h.in (gpgme_interact_cb_t): New.
(GPGME_INTERACT_CARD): New.
(gpgme_op_interact_start, gpgme_op_interact): New.
* src/libgpgme.vers, src/gpgme.def: Add new functions.
* src/edit.c (op_data_t): Rename fnc to fnc_old and change users.  Add
fnc.
(edit_status_handler): Call old or new callback.
(command_handler): Ditto.
(interact_start): New.
(gpgme_op_interact_start, gpgme_op_interact_start): New.
* src/status-table.c (_gpgme_status_to_string): New.

* tests/gpg/t-edit.c (edit_fnc): Rename to interact_fnc and change
type of STATUS.  Use gpgme_io_writen.
(main): s/gpgme_op_edit/gpgme_op_interact/.
--

This change will eventually allow us to remove all those status codes
from gpgme.h.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ed1f2700a73060e2615697491ea9e49ded4293e6

Git commit 1f9641dd0fb08e4a3df3b507b974a3f78887920f by Werner Koch on 16/09/2016 at 09:43..
core: Fix setting og the verification result.

* src/verify.c (parse_new_sig): Proberly handle the RC in an ERRSIG
status.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1f9641dd0fb08e4a3df3b507b974a3f78887920f

Git commit 268e251b802cc7c19831722d7e3a52777a0f412f by Werner Koch on 16/09/2016 at 09:45..
core: Remove stub to try implementing gpg < 2.1 support for createkey.

* src/engine-gpg.c (gpg_createkey_legacy): Remove.
(gpg_genkey): Remove call.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/268e251b802cc7c19831722d7e3a52777a0f412f

Git commit e6405df62495300b13340fc9d1961a2934b0a749 by Werner Koch on 16/09/2016 at 09:48..
doc: Document the recently added --quick-foo related functions.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/e6405df62495300b13340fc9d1961a2934b0a749

Git commit 00f95e0fad2ef438f78eabb7881b56568466f666 by Werner Koch on 16/09/2016 at 10:20..
doc: Move description of most deprecated functions to a new appendix.

--
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/00f95e0fad2ef438f78eabb7881b56568466f666

Git commit 5259f9de465d683d93268359cf19ce3a8d151566 by Justus Winter on 16/09/2016 at 11:02..
core: Fix typos.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/5259f9de465d683d93268359cf19ce3a8d151566

Git commit a458e7fe2006d92bd5a838e2747fb66bbac4b1b8 by Justus Winter on 16/09/2016 at 12:56..
python: Adapt to 'gpgme_op_interact'.

* lang/python/examples/inter-edit.py: Update example.
* lang/python/gpgme.i (gpgme_edit_cb_t): Turn into
'gpgme_interact_cb_t'.
* lang/python/helpers.c (_pyme_edit_cb): Turn into
'_pyme_interact_cb_t'.
* lang/python/private.h (_pyme_edit_cb): Likewise.
* lang/python/pyme/constants/__init__.py: Replace numeric status codes
with the keywords.
* lang/python/pyme/constants/status.py: Likewise.
* lang/python/pyme/core.py (Context.interact): New method.
(Context.op_edit): Deprecate, update docstring, implement using
Context.interact.
* lang/python/tests/t-edit.py: Test both interfaces.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a458e7fe2006d92bd5a838e2747fb66bbac4b1b8

Git commit 6af7bee076bacbc0cdfe7de342bce43ca5671b3b by Justus Winter on 16/09/2016 at 13:56..
python: Release the GIL during calls into GPGME.

* lang/python/helpers.c (pyme_raise_callback_exception): Re-acquire
the Global Interpreter Lock.
(pyPassphraseCb, pyme_set_passphrase_cb, pyProgressCb,
pyme_set_progress_cb, pyStatusCb, pyme_set_status_cb,
_pyme_interact_cb, pyDataReadCb, pyDataWriteCb, pyDataSeekCb,
pyDataReleaseCb, pyme_data_new_from_cbs, _pyme_assuan_data_cb,
_pyme_assuan_inquire_cb, _pyme_assuan_status_cb): Likewise.
* lang/python/setup.py.in: Make 'gpgme-config' emit the correct
cflags, and SWIG generate code to release the GIL before calling us.

Co-authored-by: Kai Michaelis <kai at gnupg.org>
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/6af7bee076bacbc0cdfe7de342bce43ca5671b3b

Git commit 3d6340e8c59ee11a95e03fb213ad9b228be47833 by Werner Koch on 16/09/2016 at 14:00..
core: Map GPGME_STATUS_EOF to the empty string.

* src/status-table.c (_gpgme_status_to_string): Return "" for EOF.
* src/engine-gpg.c (read_status): Ditto.  The old code accidently used
GPGME_STATUS_EOF which is the integer 0 and neiteyr NULL nor a string.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3d6340e8c59ee11a95e03fb213ad9b228be47833

Git commit b615316168f4d33311909d4056b236d13c69488f by Werner Koch on 16/09/2016 at 14:00..
core: Document the version a function has been deprecated.

* src/gpgme.h.in (_GPGME_DEPRECATED): Change to take versio numbers
for documentation.  Change all places.
(_GPGME_DEPRECATED_OUTSIDE_GPGME): Ditto.
* lang/python/gpgme-h-clean.py: Adjust RE.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b615316168f4d33311909d4056b236d13c69488f

Git commit bd24db313d860ae46d37776dcf1067455d1b9880 by Werner Koch on 16/09/2016 at 14:00..
cpp: Silence use of deprecated function warning.

* lang/cpp/src/context.cpp (GpgME): Use pragma to silence wardning.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bd24db313d860ae46d37776dcf1067455d1b9880

Git commit 32baac8cdec6fee51bdfc3c55cb2ee141e086df4 by Andre Heinecke on 16/09/2016 at 14:58..
cpp: Declare sizes of tofu-info enums

* lang/cpp/src/tofuinfo.h (Policy, Validity): Declare sizes.

--
This is a quick ABI break before the release so that we can
easier extend them in the future. All new enums in public API
should be declared with a size from now on.
https://invent.kde.org/neon/forks/gpgme/-/commit/32baac8cdec6fee51bdfc3c55cb2ee141e086df4

Git commit 4d384d7bfef044094695271576ca233625bb520a by Andre Heinecke on 16/09/2016 at 14:58..
cpp: Add support for gpgme_op_tofu_policy

* src/context.cpp, src/context.h (setTofuPolicy, setTofuPolicyStart):
New.
https://invent.kde.org/neon/forks/gpgme/-/commit/4d384d7bfef044094695271576ca233625bb520a

Git commit 77aecfb5c97cea1a99f1ff627748cf71767bac5c by Andre Heinecke on 16/09/2016 at 14:58..
qt: Add job for tofupolicy

* lang/qt/src/job.cpp, lang/qt/src/protocol.h,
lang/qt/src/protocol_p.h: Register job.
* lang/qt/src/qgpgmetofupolicyjob.cpp,
lang/qt/src/qgpgmetofupolicyjob.h,
lang/qt/src/tofupolicyjob.h: New.
* lang/qt/src/Makefile.am: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/77aecfb5c97cea1a99f1ff627748cf71767bac5c

Git commit a8ff34fc3025af4079cede7f8f9fdf40189b8638 by Andre Heinecke on 16/09/2016 at 14:58..
qt: Add test for setting tofu policy

* lang/qt/tests/t-tofuinfo.cpp (testTofuPolicy): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8ff34fc3025af4079cede7f8f9fdf40189b8638

Git commit 9d62bacac7826cb73bb18fac7268f3d2df662d7b by Werner Koch (on behalf of Ben Kibbey) on 19/09/2016 at 06:35..
core: Check for GPG_TTY as well as DISPLAY.

* src/engine-assuan.c (llass_new): Update --ttyname from GPG_TTY.
* src/engine-g13.c (g13_new): Ditto.
* src/engine-gpg.c (gpg_new): Ditto.
* src/engine-uiserver.c (uiserver_new): Ditto.
* src/engine-gpgsm.c (gpgsm_new): Ditto.

--
Useful when no DISPLAY is set and there is no attached terminal to the
current process.

Signed-off-by: Ben Kibbey <bjk at luxsci.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/9d62bacac7826cb73bb18fac7268f3d2df662d7b

Git commit db2398512796f28f0f92e32e0de3180d93f76a26 by Werner Koch on 19/09/2016 at 07:06..
doc: Mention language bindings in the manual.

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/db2398512796f28f0f92e32e0de3180d93f76a26

Git commit d438cb59a068b6f076e6bd70d3a2c46bc05ccb5c by Andre Heinecke on 19/09/2016 at 08:01..
qt: Add debug output for testTofuPolicy

* lang/qt/tests/t-tofuinfo.cpp (testTofuPolicy): Add
debug output.

--
The debug output is only emitted before a failure of the
test in case a keylisting of bravo at example.net fails which
it should never do.
https://invent.kde.org/neon/forks/gpgme/-/commit/d438cb59a068b6f076e6bd70d3a2c46bc05ccb5c

Git commit 65f6f68f0966346bf48475a04ca5c73a2828b6c4 by Justus Winter on 19/09/2016 at 10:49..
python: Improve metadata and READMEs.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/65f6f68f0966346bf48475a04ca5c73a2828b6c4

Git commit 66febf9942c321d30b8770f6aa6cd6ce2315d34f by Andre Heinecke on 19/09/2016 at 12:09..
cpp: Improve README

* lang/cpp/README: Add more content, move license to bottom.
https://invent.kde.org/neon/forks/gpgme/-/commit/66febf9942c321d30b8770f6aa6cd6ce2315d34f

Git commit 3f92253e0e476d77aa11463bc51ade367985855f by Andre Heinecke on 19/09/2016 at 12:09..
qt: Improve README

* lang/qt/README: Add more content. Clearly note license difference.
https://invent.kde.org/neon/forks/gpgme/-/commit/3f92253e0e476d77aa11463bc51ade367985855f

Git commit e89279442e3199a433468dd6e7ef9c38f57fece0 by Andre Heinecke on 19/09/2016 at 12:21..
Add NEWS entry for qt/cpp

--
https://invent.kde.org/neon/forks/gpgme/-/commit/e89279442e3199a433468dd6e7ef9c38f57fece0

Git commit e3c35147d6adb754d4eb0781a54af2a8f0803663 by Andre Heinecke on 19/09/2016 at 12:29..
core: Remove moc artifact

* src/moc_kdpipeiodevice.cpp: Removed.
* src/Makefile.am (EXTRA_DIST): Remove moc_kdpipeiodevice.cpp.

--
This file was overlooked in 58ed9c17 which removed the unused
and obsolete w32-qt code. See lang/qt QIODeviceDataProvider which
replaced kdpipeiodevice.
https://invent.kde.org/neon/forks/gpgme/-/commit/e3c35147d6adb754d4eb0781a54af2a8f0803663

Git commit ef99b74eb12463db7da5806a316e3b55f8097c5c by Justus Winter on 20/09/2016 at 09:10..
python: Fix detection of Python available versions.

* configure.ac: Test for 'PYTHON_VERSION' as 'AX_PYTHON_DEVEL' sets
'PYTHON' but clears the former.

Fixes-commit: 99db3512
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ef99b74eb12463db7da5806a316e3b55f8097c5c

Git commit df7e92b4d585b7dce919c5a3aab9524f6e183cbe by Werner Koch on 20/09/2016 at 17:43..
build: Create swdb file.

* Makefile.am (distcheck-hook): New.
(dist-hook): s/VERSION/PACKAGE_VERSION/ for future compatibility.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/df7e92b4d585b7dce919c5a3aab9524f6e183cbe

Git commit 29207bcd3bf4de7264197db6758130375b16d9bb by Werner Koch on 20/09/2016 at 17:46..
tests: Improve portability.

* lang/qt/tests/Makefile.am (clean-local): Avoid non-portable "--"
* lang/python/Makefile.am (copystamp): Use well defined cp -R instead
of cp -r.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/29207bcd3bf4de7264197db6758130375b16d9bb

Git commit bfb6890ded99f040fe8ecf910f927a136e4acfda by Werner Koch on 20/09/2016 at 17:51..
tests: Use --batch for gpg import.

* lang/python/tests/Makefile.am (./pubring-stamp): Use --batch with
GPG to avoid Pinentries during import when using GnuPG >= 2.1.
Replace touch by echo.
* tests/gpg/Makefile.am (./pubring-stamp): Ditto.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bfb6890ded99f040fe8ecf910f927a136e4acfda

Git commit 0763357e39d140b068ee9838a5da08be75426d9f by Werner Koch on 20/09/2016 at 17:58..
tests: Make "make -j distcheck" work in Python.

* lang/python/Makefile.am (SUBDIRS): Make current dir fist.
* lang/python/tests/Makefile.am (xcheck): Depend on pubring-stamp.
(CLEANFILES): Remove private-keys-v1.d/gpg-sample.stamp.
(check-local): Remove.
(initial.py): Remove dependency.
(./pubring-stamp): Depend on conf files and the
private-keys-v1.d/gpg-sample.stamp file.  Also replace use of
basename.

--

This addresses the problem that two rules might run the private keys
copy rule and due to the files being chmod -w during make discheck the
second process running that rule's cp would get a permission error.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0763357e39d140b068ee9838a5da08be75426d9f

Git commit 936928632b02d7cc2ac645543bb03e4c94285f05 by Werner Koch on 21/09/2016 at 07:18..
python: Create install dir.

* lang/python/Makefile.am (install-exec-local): Create dir.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/936928632b02d7cc2ac645543bb03e4c94285f05

Git commit e7ab75379feadcc2894d9d4cde0f16ad0044780d by Werner Koch on 21/09/2016 at 07:18..
Release 1.7.0

* configure.ac: Bump LT vesion to C26/A15/R0.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e7ab75379feadcc2894d9d4cde0f16ad0044780d

Git commit 0b78bc7ba40972402f8ab7919313c000ef1f6385 by Werner Koch on 21/09/2016 at 07:40..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/0b78bc7ba40972402f8ab7919313c000ef1f6385

Git commit ae324b51ffa338b891387bff2657d60c1fd3ae40 by Andre Heinecke (on behalf of Andreas Stieger) on 21/09/2016 at 14:46..
cpp: Avoid missing returns in non-void functions

* lang/cpp/src/context.cpp
  (Context::signaturePolicyURL): return nullptr on default
  (to_tofu_policy_t): add default case for unknown
* lang/cpp/src/key.cpp
  (Key::primaryFingerprint): return nullptr on default
* lang/cpp/src/tofuinfo.cpp
  (GpgME::TofuInfo::policy): add default case for unknown

Signed-off-by: Andreas Stieger <astieger at suse.com>
Signed-off-by: Andre Heinecke <aheinecke at intevation.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/ae324b51ffa338b891387bff2657d60c1fd3ae40

Git commit 7ca6b099bad6ed32e4b200638aad842c3ed93297 by Daniel Kahn Gillmor on 21/09/2016 at 17:51..
avoid rebuilt files during import-orig
https://invent.kde.org/neon/forks/gpgme/-/commit/7ca6b099bad6ed32e4b200638aad842c3ed93297

Git commit 0aaf1dedd629446ab991fff76581b4b58e4872a0 by Werner Koch (on behalf of Daiki Ueno) on 22/09/2016 at 07:12..
doc: Fix minor errors in I/O callback example

* gpgme.texi (I/O Callback Example): Fix typos, add timeout to select,
and initialize mutex as recursive.

Signed-off-by: Daiki Ueno <ueno at gnu.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0aaf1dedd629446ab991fff76581b4b58e4872a0

Git commit d0cf6b15121c9b42dbcef243e5ce30c9996a449c by Werner Koch (on behalf of Daiki Ueno) on 22/09/2016 at 07:12..
tests: Fix select usage in t-eventloop

* tests/gpg/t-eventloop.c (do_select): Supply timeout value to select.

Signed-off-by: Daiki Ueno <ueno at gnu.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d0cf6b15121c9b42dbcef243e5ce30c9996a449c

Git commit dee56820cabde60c43c9bf8281b8d411cb2ad644 by Werner Koch (on behalf of Daiki Ueno) on 22/09/2016 at 07:12..
gpg: Add option --exit-on-status-write-error

* src/engine-gpg.c (gpg_new): Add --exit-on-status-write-error if the
engine version is latest enough to expect progress output from gpg.

--
GnuPG-bug-id: 1415
Signed-off-by: Daiki Ueno <ueno at gnu.org>

Changed the version test from the patch to use the newer
have_gpg_version.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dee56820cabde60c43c9bf8281b8d411cb2ad644

Git commit 7a6543c2dfeef874a34086c8f3eeb1dbdf1ce822 by Werner Koch (on behalf of Daiki Ueno) on 22/09/2016 at 07:12..
tests: Add test for cancellation

* tests/gpg/t-cancel.c: New file.
* tests/gpg/Makefile.am (tests_skipped): New variable, default to
t-genkey and t-cancel.
(noinst_PROGRAMS): Add $(tests_skipped).
* tests/gpg/.gitignore: Add t-cancel.

Signed-off-by: Daiki Ueno <ueno at gnu.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7a6543c2dfeef874a34086c8f3eeb1dbdf1ce822

Git commit dc39552d01094eff2bef5f9fcd1c16928909d20e by Werner Koch on 22/09/2016 at 10:42..
core: New helper function _gpgme_strconcat.

* src/conversion.c: Include stdarg.h.
(do_strconcat): New.
(_gpgme_strconcat): New.
* src/util.h: Provide fallback for GPGRT_ATTR_SENTINEL.
(_gpgme_strconcat): New with sentinel.

* src/w32-util.c (find_program_in_dir): Replace malloc and stpcpy by
_gpgme_strconcat.
(find_program_at_standard_place): Ditto.
(_gpgme_set_default_gpg_name): Ditto.
(_gpgme_set_default_gpgconf_name): Ditto.
(_gpgme_mkstemp): Ditto.
(_gpgme_set_override_inst_dir): Repalce malloc and strcpy by strdup.
--

The function has been taken from gnupg/common/stringhelp.c and license
changed to LPGLv2.1+.  I am the original author of that code.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dc39552d01094eff2bef5f9fcd1c16928909d20e

Git commit c447b64d5989845a2ae2cf8fb30a92d2a0bd05af by Werner Koch on 22/09/2016 at 10:46..
core: Fix error checking in _gpgme_mkstemp.

* src/w32-util.c (_gpgme_mkstemp): Fix error checking.
(dlopen): Mark FLAGS as unused.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c447b64d5989845a2ae2cf8fb30a92d2a0bd05af

Git commit 583aafdd6870a7fb12a34d90993fd0f46928592c by Werner Koch on 22/09/2016 at 10:58..
w32: Silence some warnings about unused parameters.

* src/assuan-support.c (my_recvmsg, my_sendmsg, my_waitpid)
(my_socketpair) [W32]: Mark unused parameters.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/583aafdd6870a7fb12a34d90993fd0f46928592c

Git commit e6ff3e25e6ce75c2271923ebd2c43fa953e5ed61 by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
prune non-beta patch
https://invent.kde.org/neon/forks/gpgme/-/commit/e6ff3e25e6ce75c2271923ebd2c43fa953e5ed61

Git commit c8207f4cb4eb2780c71b4df324ebf3641782dd25 by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
wrap-and-sort -ast
https://invent.kde.org/neon/forks/gpgme/-/commit/c8207f4cb4eb2780c71b4df324ebf3641782dd25

Git commit 6ca05c9e02d1567fa8a4f21c53d4e409bec45778 by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
remove other autogenned files during import and clean
https://invent.kde.org/neon/forks/gpgme/-/commit/6ca05c9e02d1567fa8a4f21c53d4e409bec45778

Git commit e9f7c035fbf6dd232f204b37acea7be4f67a5b0d by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
avoid building language bindings for the moment
https://invent.kde.org/neon/forks/gpgme/-/commit/e9f7c035fbf6dd232f204b37acea7be4f67a5b0d

Git commit 2a7b8225c2838c41e6f126a7c23a8f52a00dce32 by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
add new symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/2a7b8225c2838c41e6f126a7c23a8f52a00dce32

Git commit f5f381046f2a6c57423449bfe35019d5b4bb2748 by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
use https for debian/watch
https://invent.kde.org/neon/forks/gpgme/-/commit/f5f381046f2a6c57423449bfe35019d5b4bb2748

Git commit 9d4f48a85088850c2534702437ee9815b6cc9855 by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
avoid importing byte-compiled python also
https://invent.kde.org/neon/forks/gpgme/-/commit/9d4f48a85088850c2534702437ee9815b6cc9855

Git commit 9c4c0a6a915afa53d93543d98e4884fd819e528c by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
hand-write gpg-tool(1) rather than relying on help2man
https://invent.kde.org/neon/forks/gpgme/-/commit/9c4c0a6a915afa53d93543d98e4884fd819e528c

Git commit 1941e9df404f761136f148d6b469145567a15842 by Daniel Kahn Gillmor on 22/09/2016 at 18:42..
improvements in gpgme-config(1)
https://invent.kde.org/neon/forks/gpgme/-/commit/1941e9df404f761136f148d6b469145567a15842

Git commit ee9f9b54709b52865d0baab7014d9a830f4be3f1 by Daniel Kahn Gillmor on 22/09/2016 at 18:44..
New upstream version 1.7.0
https://invent.kde.org/neon/forks/gpgme/-/commit/ee9f9b54709b52865d0baab7014d9a830f4be3f1

Git commit aa4cc2f502248ca3363d908d8eff527f72fbb293 by Daniel Kahn Gillmor on 22/09/2016 at 18:44..
Merge tag 'upstream/1.7.0'

Upstream version 1.7.0
https://invent.kde.org/neon/forks/gpgme/-/commit/aa4cc2f502248ca3363d908d8eff527f72fbb293

Git commit 768006c99fe700b8143f601a300e50ab013b2175 by Daniel Kahn Gillmor on 22/09/2016 at 21:02..
updated debian/copyright to DEP5
https://invent.kde.org/neon/forks/gpgme/-/commit/768006c99fe700b8143f601a300e50ab013b2175

Git commit 1217e4d5974a7c9518f118f3aac1d57e676ba15d by Daniel Kahn Gillmor on 22/09/2016 at 21:10..
use hardening flags
https://invent.kde.org/neon/forks/gpgme/-/commit/1217e4d5974a7c9518f118f3aac1d57e676ba15d

Git commit 828c1154b062e1d57b706493baed76fd475db879 by Daniel Kahn Gillmor on 22/09/2016 at 21:14..
imported small documentation and test patches from upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/828c1154b062e1d57b706493baed76fd475db879

Git commit a3600fe483a0553b718bf7c1e8cb02324fc07520 by Daniel Kahn Gillmor on 22/09/2016 at 21:15..
refer to "info gpgme" in manpages
https://invent.kde.org/neon/forks/gpgme/-/commit/a3600fe483a0553b718bf7c1e8cb02324fc07520

Git commit f9e880a563f192982e9af85813c01e1ea924ce68 by Daniel Kahn Gillmor on 22/09/2016 at 21:19..
prepare release to unstable
https://invent.kde.org/neon/forks/gpgme/-/commit/f9e880a563f192982e9af85813c01e1ea924ce68

Git commit e0b9a58d74b5c74d89f0b22abeac38886382e9e2 by Daniel Kahn Gillmor on 22/09/2016 at 21:24..
avoid "arithmetic expression" errors during autoreconf
https://invent.kde.org/neon/forks/gpgme/-/commit/e0b9a58d74b5c74d89f0b22abeac38886382e9e2

Git commit a142f187b7ddb2728ec3e1743da4a0c4538ab40a by Andre Heinecke on 23/09/2016 at 13:25..
cpp, qt: Include config.h

lang/cpp/src/callbacks.cpp,
lang/cpp/src/configuration.cpp,
lang/cpp/src/context.cpp,
lang/cpp/src/context_glib.cpp,
lang/cpp/src/context_qt.cpp,
lang/cpp/src/context_vanilla.cpp,
lang/cpp/src/data.cpp,
lang/cpp/src/decryptionresult.cpp,
lang/cpp/src/defaultassuantransaction.cpp,
lang/cpp/src/editinteractor.cpp,
lang/cpp/src/encryptionresult.cpp,
lang/cpp/src/engineinfo.cpp,
lang/cpp/src/eventloopinteractor.cpp,
lang/cpp/src/exception.cpp,
lang/cpp/src/gpgadduserideditinteractor.cpp,
lang/cpp/src/gpgagentgetinfoassuantransaction.cpp,
lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp,
lang/cpp/src/gpgsetownertrusteditinteractor.cpp,
lang/cpp/src/gpgsignkeyeditinteractor.cpp,
lang/cpp/src/importresult.cpp,
lang/cpp/src/key.cpp,
lang/cpp/src/keygenerationresult.cpp,
lang/cpp/src/keylistresult.cpp,
lang/cpp/src/scdgetinfoassuantransaction.cpp,
lang/cpp/src/signingresult.cpp,
lang/cpp/src/tofuinfo.cpp,
lang/cpp/src/trustitem.cpp,
lang/cpp/src/verificationresult.cpp,
lang/cpp/src/vfsmountresult.cpp,
lang/qt/src/dataprovider.cpp,
lang/qt/src/defaultkeygenerationjob.cpp,
lang/qt/src/gpgme_backend_debug.cpp,
lang/qt/src/job.cpp,
lang/qt/src/qgpgmeadduseridjob.cpp,
lang/qt/src/qgpgmebackend.cpp,
lang/qt/src/qgpgmechangeexpiryjob.cpp,
lang/qt/src/qgpgmechangeownertrustjob.cpp,
lang/qt/src/qgpgmechangepasswdjob.cpp,
lang/qt/src/qgpgmedecryptjob.cpp,
lang/qt/src/qgpgmedecryptverifyjob.cpp,
lang/qt/src/qgpgmedeletejob.cpp,
lang/qt/src/qgpgmedownloadjob.cpp,
lang/qt/src/qgpgmeencryptjob.cpp,
lang/qt/src/qgpgmeexportjob.cpp,
lang/qt/src/qgpgmeimportfromkeyserverjob.cpp,
lang/qt/src/qgpgmeimportjob.cpp,
lang/qt/src/qgpgmekeyformailboxjob.cpp,
lang/qt/src/qgpgmekeygenerationjob.cpp,
lang/qt/src/qgpgmekeylistjob.cpp,
lang/qt/src/qgpgmelistallkeysjob.cpp,
lang/qt/src/qgpgmenewcryptoconfig.cpp,
lang/qt/src/qgpgmerefreshkeysjob.cpp,
lang/qt/src/qgpgmesecretkeyexportjob.cpp,
lang/qt/src/qgpgmesignencryptjob.cpp,
lang/qt/src/qgpgmesignjob.cpp,
lang/qt/src/qgpgmesignkeyjob.cpp,
lang/qt/src/qgpgmetofupolicyjob.cpp,
lang/qt/src/qgpgmeverifydetachedjob.cpp,
lang/qt/src/qgpgmeverifyopaquejob.cpp,
lang/qt/src/qgpgmewkspublishjob.cpp,
lang/qt/src/threadedjobmixin.cpp,
lang/qt/tests/run-keyformailboxjob.cpp,
lang/qt/tests/t-encrypt.cpp,
lang/qt/tests/t-keylist.cpp,
lang/qt/tests/t-keylocate.cpp,
lang/qt/tests/t-ownertrust.cpp,
lang/qt/tests/t-support.cpp,
lang/qt/tests/t-tofuinfo.cpp,
lang/qt/tests/t-wkspublish.cpp: Include config.h

--
This fixes problems with mismatching definitions. Most
notably _FILE_OFFSET_BITS is now always set correctly.
https://invent.kde.org/neon/forks/gpgme/-/commit/a142f187b7ddb2728ec3e1743da4a0c4538ab40a

Git commit 9b38817968b90caf73f123255fe427691e82fec4 by Andre Heinecke on 23/09/2016 at 14:04..
tests: Check data after decryption

* tests/gpgsm/t-decrypt.c (main): Check data matches expected.
Only print result if it does not.
https://invent.kde.org/neon/forks/gpgme/-/commit/9b38817968b90caf73f123255fe427691e82fec4

Git commit a11450eb048df79a3f2b00ebef6d7cab07ad5054 by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 23/09/2016 at 14:08..
move some file encodings to UTF-8

* THANKS, doc/ChangeLog-2011, tests/ChangeLog-2011,
  tests/gpg/geheim.txt: convert from iso 8859-1 to utf-8.
* lang/qt/src/dataprovider.cpp, lang/qt/src/qgpgmerefreshkeysjob.cpp,
  lang/qt/src/qgpgmesecretkeyexportjob.cpp: replace U+FFFD REPLACEMENT
  CHARACTER with proper U+00E4 LATIN SMALL LETTER A WITH DIAERESIS.

--
Note that src/versioninfo.rc.in is still ISO-8859-1.  I don't know
whether Windows will properly handle UTF-8 in this file or not, so i
have not touched it.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/a11450eb048df79a3f2b00ebef6d7cab07ad5054

Git commit 95f38652f696476b38a040644eac40b4511d2b32 by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 23/09/2016 at 14:09..
Fix spelling

 * lang/cpp/src/context.h, lang/qt/src/protocol.h,
   lang/qt/src/wkspublishjob.h, src/data-identify.c, src/engine-gpg.c:
   minor spelling cleanup.
--

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/95f38652f696476b38a040644eac40b4511d2b32

Git commit 3703a4723899d7563937b4b99f5bbe4dd8d3dfed by Justus Winter on 26/09/2016 at 14:54..
python: Include 'config.h'.

* lang/python/Makefile.am: Pass 'top_builddir' to 'setup.py'.
* lang/python/gpgme.i: Include 'config.h'.
* lang/python/helpers.c: Likewise.
* lang/python/helpers.h: Likewise.
* lang/python/setup.py.in: Make sure that 'config.h' can be found.
--
Fixes build on 32 bit platforms with large file support.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3703a4723899d7563937b4b99f5bbe4dd8d3dfed

Git commit 1d80e7374aa3150306c86afe7acdc8e8eb05143f by Justus Winter on 26/09/2016 at 14:54..
python: Correctly translate off_t.

* lang/python/gpgme.i: Improve int/long translations, correctly handle
off_t with large file support.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1d80e7374aa3150306c86afe7acdc8e8eb05143f

Git commit c38fabfea0601ed5f61e27e0bf43f8e74c67ce2a by Justus Winter on 26/09/2016 at 14:54..
python: Correctly translate to size_t.

* lang/python/gpgme.i: Correctly translate Python number to size_t.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/c38fabfea0601ed5f61e27e0bf43f8e74c67ce2a

Git commit c9934bb1eecae28abeb361db9f5eb73e7e02ecb6 by Justus Winter on 26/09/2016 at 14:54..
python: Get rid of the last C++-style comments.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/c9934bb1eecae28abeb361db9f5eb73e7e02ecb6

Git commit a423603f80d9eb653ce9c171662db2175d7456f5 by Justus Winter on 27/09/2016 at 10:31..
tests: Fix check for gpg versions not reporting the critical flag.

* lang/python/tests/t-sig-notation.py: Also blacklist 2.0.x.
* tests/gpg/t-sig-notation.c: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a423603f80d9eb653ce9c171662db2175d7456f5

Git commit 145392f07f42ef23ebcb83a917b4d8e2964e7aa8 by Justus Winter (on behalf of Daniel Kahn Gillmor) on 27/09/2016 at 10:41..
Clarify licensing

* src/b64dec.c, src/mbox-util.c, src/mbox-util.h: These three files
  are explicitly licensed under LGPL, but their comments suggest that
  details about the warranty can be found in the GPL.  Adjust comments
  to refer to the correct license.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/145392f07f42ef23ebcb83a917b4d8e2964e7aa8

Git commit a6e9eefb23e57e14afaead5c896452360bdaeb6f by Justus Winter on 27/09/2016 at 10:49..
tests: Fix blunder.

--
Fixes-commit: a423603f
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a6e9eefb23e57e14afaead5c896452360bdaeb6f

Git commit 7302791c0d308c3284ac24a743035d27a0c0b6ba by Andre Heinecke on 29/09/2016 at 10:46..
cpp, qt: Handle modified includedir installation

* lang/cpp/src/Makefile.am,
lang/qt/src/Makefile.am: Replace resolved_includedir.
* lang/cpp/src/GpgmeppConfig.cmake.in.in,
lang/qt/src/QGpgmeConfig.cmake.in.in: Use resolved_includedir
instead of relying on a common installation prefix.

--
This fixes usage of the config files in case gpgme
is configured with a custom --includedir.
We have to do the replacement manually like for libdir
because configure would include variables in the replacement.
https://invent.kde.org/neon/forks/gpgme/-/commit/7302791c0d308c3284ac24a743035d27a0c0b6ba

Git commit d1509428f30c278ee7e99e2bca5559c5b2536721 by Justus Winter (on behalf of Alon Bar-Lev) on 30/09/2016 at 12:46..
python: Make generated 'setup.py' executable.

--
Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/d1509428f30c278ee7e99e2bca5559c5b2536721

Git commit 68fb8371a1dd5f4e05e50b1733f9996d139cbf38 by Justus Winter (on behalf of Alon Bar-Lev) on 30/09/2016 at 12:46..
python: Add 'prepare' target.

* lang/python/Makefile.am: Add 'prepare' target.
--
This enables preparing the package using autoconf then build using
distutils as separate stage.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/68fb8371a1dd5f4e05e50b1733f9996d139cbf38

Git commit 453ab9d24ca48c9e01d21e1454d6b08de1938b76 by Justus Winter (on behalf of Alon Bar-Lev) on 30/09/2016 at 12:47..
python: Link 'data.h' and 'config.h' into the builddir.

* lang/python/Makefile.am: Link to the files.
* lang/python/gpgme.i: Update path.
* lang/python/setup.py.in: Do not add the top builddir to the include
path.
--
To make it easy to build the subpackage using standard tools without
altering environment or CFLAGS, symlink the required artifacts from
source tree into subpackage directory when preparing sources.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/453ab9d24ca48c9e01d21e1454d6b08de1938b76

Git commit 52a91ccc6a25425d4374b77040e30efb6816940f by Andre Heinecke on 05/10/2016 at 14:01..
qt: Disable t-wkspublish test

* lang/qt/tests/Makefile.am (TESTS): Remove t-wkspublish.

--
Even the only enabled test did a connection to localhost this
might fail if it is stalled and is an outside factor. It also might
be disturbing other services locally.
https://invent.kde.org/neon/forks/gpgme/-/commit/52a91ccc6a25425d4374b77040e30efb6816940f

Git commit 39dd7585f5a7d801942efcb375d6dd46d01d2968 by Andre Heinecke on 05/10/2016 at 14:27..
cpp: Fix gcc diagnostic push / pop

* lang/cpp/src/context.cpp: Fix pragmas.

--
This fixes an error with -Werror=unknown-pragmas
https://invent.kde.org/neon/forks/gpgme/-/commit/39dd7585f5a7d801942efcb375d6dd46d01d2968

Git commit 370ee1aa802ec6a4030a39b2df7d24a0c47e5ac7 by Andre Heinecke on 05/10/2016 at 14:43..
cpp: Add support for URL Data encodings

* lang/cpp/src/data.h (Data::Encoding): Extend enum.
* lang/cpp/src/data.cpp (Data::encoding),
Data::setEncoding): Support new values.
https://invent.kde.org/neon/forks/gpgme/-/commit/370ee1aa802ec6a4030a39b2df7d24a0c47e5ac7

Git commit 9d1df990386010e0581b542a76a4f5d85d8d11b5 by Andre Heinecke on 05/10/2016 at 14:44..
qt: Fix unused variable warnings

* qt/src/qgpgmenewcryptoconfig.cpp,
qt/src/threadedjobmixin.h,
qt/tests/t-encrypt.cpp,
qt/tests/t-support.h,
qt/tests/t-wkspublish.cpp: Mark additional variables as unused.
https://invent.kde.org/neon/forks/gpgme/-/commit/9d1df990386010e0581b542a76a4f5d85d8d11b5

Git commit 4984cc93db6b55f2420a9abd844c074a5fb4ed0c by Andre Heinecke on 05/10/2016 at 14:55..
Add warning flags for c++ compiler, too

* configure.ac (CXXFLAGS): Add Wall and Wextra.
https://invent.kde.org/neon/forks/gpgme/-/commit/4984cc93db6b55f2420a9abd844c074a5fb4ed0c

Git commit 24779c9e2301bd17fd328d65b0383e1cbc944119 by Andre Heinecke on 05/10/2016 at 15:19..
qt: Disable tests that require a password for 2.0

* lang/qt/tests/t-encrypt.cpp: Disable tests that require
a password for 2.0.

--
The passphrase_cb apparently does not work with 2.0 so we would
need a fake pinentry to get this to work. We just disable the
test instead as this is a rarely used feature and works with
1.4 and 2.1.
https://invent.kde.org/neon/forks/gpgme/-/commit/24779c9e2301bd17fd328d65b0383e1cbc944119

Git commit 88c7e84ede4b6017cac3a396e8c87c2bd3a2bf58 by Andre Heinecke on 05/10/2016 at 15:36..
qt: Fix spelling error in WKSPublishJob

* src/qgpgmewkspublishjob.cpp,
src/qgpgmewkspublishjob.h,
src/wkspublishjob.h,
tests/t-wkspublish.cpp: Fix spelling of received.
* src/configure.ac (LIBQGPGME_LT_CURRENT): Bump
accordingly.

--
While this is an API break I've decided to fix this now
instead of deprecating / keeping it around forever in the API.

The only known users of QGpgME are KDE Applications and
there it is not yet used.
https://invent.kde.org/neon/forks/gpgme/-/commit/88c7e84ede4b6017cac3a396e8c87c2bd3a2bf58

Git commit 8033cff441e9ea185531290273ec343f3402703c by Andre Heinecke on 05/10/2016 at 15:38..
cpp: Bump Revision

* configure.ac (LIBGPGMEPP_LT_REVISION): Bump revision.

--
The Data::Encoding enum now supports more encodings so
this should have been done then.
https://invent.kde.org/neon/forks/gpgme/-/commit/8033cff441e9ea185531290273ec343f3402703c

Git commit 857592041b8355cd58a7068c9f2446cf8dc0968f by Justus Winter on 06/10/2016 at 11:12..
Add missing includes.

* lang/cpp/src/key.cpp: Include <strings.h> for 'strcasecmp'.
* tests/gpg/t-cancel.c: Include <sys/select.h> for 'fd_set' and
friends.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/857592041b8355cd58a7068c9f2446cf8dc0968f

Git commit 0ea2ff67900c243fff9f689658dcb23d1c0961cd by Werner Koch on 08/10/2016 at 19:17..
core: New helper function gpgme_addrspec_from_uid.

* src/gpgme.h.in: Add gpgme_addrspec_from_uid.
* src/gpgme.def, src/libgpgme.vers: Ditto.
* src/mbox-util.c (gpgme_addrspec_from_uid): New.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0ea2ff67900c243fff9f689658dcb23d1c0961cd

Git commit 098a2da15b1b46b145add623dec0488abd39bd74 by Andre Heinecke on 10/10/2016 at 10:19..
core: Fix w32 crash in find_program_in_dir

* src/w32-util.c (find_program_in_dir): Fix call to _gpgme_strconcat.

--
This fixes a crash introduced by dc39552d0 because it tried
to concat a strlen.
https://invent.kde.org/neon/forks/gpgme/-/commit/098a2da15b1b46b145add623dec0488abd39bd74

Git commit f131a5e72b0881cafcc3b0a91da8f050af2684a6 by Andre Heinecke on 10/10/2016 at 15:34..
qt: Add simple verify test

* lang/qt/tests/t-verify.cpp: New. Small test if a signature
returns a key with fingerprint.
* lang/qt/tests/Makefile.am: Add new test.
https://invent.kde.org/neon/forks/gpgme/-/commit/f131a5e72b0881cafcc3b0a91da8f050af2684a6

Git commit 34e9dfee81958160f6604849b63369ae4de67417 by Andre Heinecke on 10/10/2016 at 15:36..
cpp: Return null key if the signature had no key

* lang/cpp/src/verificationresult.cpp (Private): Add null key
to list when there is no key associated with the signature.

--
This fixes an out of bounds read when a verification did
not have a key.
https://invent.kde.org/neon/forks/gpgme/-/commit/34e9dfee81958160f6604849b63369ae4de67417

Git commit b6b820bff14a9aa8fa67755b246c90062ffdba14 by Andre Heinecke on 10/10/2016 at 15:38..
Add convenience function to get key from sig

* lang/cpp/src/verificationresult.cpp (Signature::key(bool, bool)):
New. Can be used to search / update the key associcated with this
signature.

--
By using update a caller can ensure that an incomplete key
obtainable through the new key() function is fully loaded.
With search the key can be looked up in the internal keyring.

As the results are cached this can be done in the crypto thread
and the result then better used in the UI thread.
https://invent.kde.org/neon/forks/gpgme/-/commit/b6b820bff14a9aa8fa67755b246c90062ffdba14

Git commit e7ceb83a5969581f5e1b0b6a69d18a93b594f6d4 by Andre Heinecke on 10/10/2016 at 15:42..
Add NEWS for cpp and qt, bump cpp version

* NEWS: Add entries for cpp and qt changes.
* configure.ac: Bump cpp version because of added API.
https://invent.kde.org/neon/forks/gpgme/-/commit/e7ceb83a5969581f5e1b0b6a69d18a93b594f6d4

Git commit 54f94b14e2bb9b38ffd89f509406bfbd012da632 by Andre Heinecke on 11/10/2016 at 12:13..
cpp: Add API for gpgme_addrspec_from_uid

* lang/cpp/src/key.cpp (UserID::addrSpecFromString): New static
function to expose addrspec from uid.
(UserID::addrSpec): New. Get addrSpec from Userid.
* NEWS: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/54f94b14e2bb9b38ffd89f509406bfbd012da632

Git commit ce7385caabb57e5435695cc912acffe2815770b7 by Andre Heinecke (on behalf of Daniel Vrátil) on 11/10/2016 at 17:43..
qt: Install abstractimportjob.h

* lang/cpp/src/Makefile.am: Install abstractimportjob.h since it's
included from importjob.h

--
Fixes build when someone inclues importjob.h in their code.
https://invent.kde.org/neon/forks/gpgme/-/commit/ce7385caabb57e5435695cc912acffe2815770b7

Git commit e5a35af5573651b96a90ef4a537b040333595472 by Andre Heinecke (on behalf of Daniel Vrátil) on 11/10/2016 at 17:56..
qt: Add missing implementation of MultiDeleteJob

* lang/qt/src/multideletejob.h: Fix include, cryptobackend.h is now
called protocol.h
* lang/qt/src/multideletejob.cpp: New file.
* lang/qt/src/Makefile.am: Add multideletejob.cpp.
https://invent.kde.org/neon/forks/gpgme/-/commit/e5a35af5573651b96a90ef4a537b040333595472

Git commit 5f64018af89e07dd0494775d6dfc82564536d6e0 by Andre Heinecke on 11/10/2016 at 17:57..
Mention Qt API fixes in news

--
https://invent.kde.org/neon/forks/gpgme/-/commit/5f64018af89e07dd0494775d6dfc82564536d6e0

Git commit adda4cb896b6fee423dd966e552586cae27215bb by Daniel Kahn Gillmor on 12/10/2016 at 08:18..
avoid -pie since it conflicts with -fpic when building
https://invent.kde.org/neon/forks/gpgme/-/commit/adda4cb896b6fee423dd966e552586cae27215bb

Git commit 5be562d6c53df67506df084c79bdc92978317256 by Daniel Kahn Gillmor on 12/10/2016 at 09:49..
add python3-pyme and python-pyme binary packages
https://invent.kde.org/neon/forks/gpgme/-/commit/5be562d6c53df67506df084c79bdc92978317256

Git commit 90d2f8d655f376e4e01645ada75dfeb475a5823f by Daniel Kahn Gillmor on 12/10/2016 at 09:49..
clean up autogenerated files

autogenerated files and dynamically-created sockets (e.g. from running
tests) should be removed during package cleanup
https://invent.kde.org/neon/forks/gpgme/-/commit/90d2f8d655f376e4e01645ada75dfeb475a5823f

Git commit aa799c59a1a2730fd6a9ab7584b8e521d714f8e8 by Daniel Kahn Gillmor on 12/10/2016 at 09:49..
bump to debhelper 10
https://invent.kde.org/neon/forks/gpgme/-/commit/aa799c59a1a2730fd6a9ab7584b8e521d714f8e8

Git commit 40e907aff15018140ce7571c1a592a4acb8d901d by Daniel Kahn Gillmor on 12/10/2016 at 09:49..
rename binary package from libgpgme11-dev to libgpgme-dev

and we're dropping Breaks: libgpgme10-dev since it's not even in
debian oldoldstable afaict.
https://invent.kde.org/neon/forks/gpgme/-/commit/40e907aff15018140ce7571c1a592a4acb8d901d

Git commit 2b72446ae7d605dda7c05242b9144fdad06411a5 by Daniel Kahn Gillmor (on behalf of Sandro Knauß) on 12/10/2016 at 10:53..
Enable cpp and qt lang support
https://invent.kde.org/neon/forks/gpgme/-/commit/2b72446ae7d605dda7c05242b9144fdad06411a5

Git commit b9e4112d398bd95adf56f7dc4c5acf77b5a1d74a by Daniel Kahn Gillmor on 12/10/2016 at 10:53..
avoid lintian warnings about executable cmake files
https://invent.kde.org/neon/forks/gpgme/-/commit/b9e4112d398bd95adf56f7dc4c5acf77b5a1d74a

Git commit 259fb541632b428293e0477d071759a82bb6463e by Daniel Kahn Gillmor on 12/10/2016 at 11:13..
preparing new libgpgmepp-dev package
https://invent.kde.org/neon/forks/gpgme/-/commit/259fb541632b428293e0477d071759a82bb6463e

Git commit f4e7ca7fbda90a109a97de924da2121705ece965 by Daniel Kahn Gillmor on 12/10/2016 at 11:30..
prepare release
https://invent.kde.org/neon/forks/gpgme/-/commit/f4e7ca7fbda90a109a97de924da2121705ece965

Git commit 6d6602e446bc15d4a610950404944b7b50e5a52a by Daniel Kahn Gillmor on 12/10/2016 at 13:43..
improve dependencies for libgpgmepp-dev package
https://invent.kde.org/neon/forks/gpgme/-/commit/6d6602e446bc15d4a610950404944b7b50e5a52a

Git commit 3fa20cea5d7157bec88fbdc1a21523793870d822 by Daniel Kahn Gillmor on 12/10/2016 at 13:49..
fix Vcs-Browser link
https://invent.kde.org/neon/forks/gpgme/-/commit/3fa20cea5d7157bec88fbdc1a21523793870d822

Git commit 3392c0e204c30948317b4de136fa3d15a783eec0 by Daniel Kahn Gillmor on 12/10/2016 at 13:53..
fix debian/watch
https://invent.kde.org/neon/forks/gpgme/-/commit/3392c0e204c30948317b4de136fa3d15a783eec0

Git commit f36dcdaf8c66e82421db66010de1d272e58f7bc2 by Daniel Kahn Gillmor on 12/10/2016 at 22:59..
Add an epoch to python-pyme

The older versions of python-pyme already have an epoch in their
version number in debian unstable, so we need to introduce an epoch
to the binary package so that it is upgradable.
https://invent.kde.org/neon/forks/gpgme/-/commit/f36dcdaf8c66e82421db66010de1d272e58f7bc2

Git commit 06ada4a72114fac6d7ae907aadfeff513966cbb7 by Daniel Kahn Gillmor on 12/10/2016 at 23:40..
ship documentation as well in an arch:all package
https://invent.kde.org/neon/forks/gpgme/-/commit/06ada4a72114fac6d7ae907aadfeff513966cbb7

Git commit bc923f67cb8ee408964220cd53d33c49aaf39fcc by Daniel Kahn Gillmor on 12/10/2016 at 23:40..
avoid irreproducible html documentation
https://invent.kde.org/neon/forks/gpgme/-/commit/bc923f67cb8ee408964220cd53d33c49aaf39fcc

Git commit d88c1ec0949626a933653eaff8d56c3256e5b01d by Daniel Kahn Gillmor on 12/10/2016 at 23:40..
prepare another release
https://invent.kde.org/neon/forks/gpgme/-/commit/d88c1ec0949626a933653eaff8d56c3256e5b01d

Git commit a3cf30f89418c8a6bc9456533d95ba7fc2a33a4c by Andre Heinecke on 13/10/2016 at 07:13..
qt, cpp: Fix expected targets in Config files

* lang/cpp/src/GpgmeppConfig.cmake.in.in,
lang/qt/src/QGpgmeConfig.cmake.in.in: Remove KF5 variants.
https://invent.kde.org/neon/forks/gpgme/-/commit/a3cf30f89418c8a6bc9456533d95ba7fc2a33a4c

Git commit 2538c12fa0728f4113f83f69f8c8ec9efb163872 by Andre Heinecke on 13/10/2016 at 07:13..
qt: Install SpecialJob

* lang/qt/src/Makefile.am: Install SpecialJob
* NEWS: mention it.

--
SpecialJob was and is public API. So it needs to be installed.
https://invent.kde.org/neon/forks/gpgme/-/commit/2538c12fa0728f4113f83f69f8c8ec9efb163872

Git commit a274c7590aa0e38d682d5177904983632f471cb0 by Andre Heinecke on 13/10/2016 at 07:35..
qt, cpp: Fix permissions of Config files

* lang/cpp/src/Makefile.am,
lang/qt/src/Makefile.am: Do not install config files as executable.
https://invent.kde.org/neon/forks/gpgme/-/commit/a274c7590aa0e38d682d5177904983632f471cb0

Git commit 56302e7bb6a694a7c570f389f9a7883efdfdaf42 by Andre Heinecke on 13/10/2016 at 08:13..
cpp: Fix version number

* configure.ac (LIBGPGMEPP_LT_CURRENT): Bump.
--
Added API so it should have been correct to bump current
and age and not to bump age.
https://invent.kde.org/neon/forks/gpgme/-/commit/56302e7bb6a694a7c570f389f9a7883efdfdaf42

Git commit cabd4c74e52c8983d624b6877cddc7f8912eff04 by Justus Winter on 13/10/2016 at 11:19..
python: Fix example.

* lang/python/examples/inter-edit.py: Fix example.

Fixes-commit: a458e7fe
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/cabd4c74e52c8983d624b6877cddc7f8912eff04

Git commit 1e6073ffa98db2c265adbcf0dbbe70c067a910f0 by Justus Winter on 13/10/2016 at 11:19..
python: Return public keys by default.

* lang/python/pyme/core.py (Core.get_key): Return public keys by
default, improve docstring.
* lang/python/examples/testCMSgetkey.py: Update example.
* lang/python/examples/verifydetails.py: Likewise.

GnuPG-bug-id: 2751
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1e6073ffa98db2c265adbcf0dbbe70c067a910f0

Git commit f526d0e22e8b881ccbca66b46a0e1b68bbc4cd6b by Justus Winter on 13/10/2016 at 11:19..
python: Make 'get_key' more idiomatic.

* lang/python/pyme/core.py (Context.get_key): Raise errors.KeyNotFound
if the key is not found.  This error is both a KeyError for idiomatic
error handling as well as a GPGMEError so we don't break existing
code.
* lang/python/pyme/errors.py (KeyNotFound): New class.
* lang/python/tests/support.py (no_such_key): New variable.
* lang/python/tests/t-keylist.py: Test the new behavior.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/f526d0e22e8b881ccbca66b46a0e1b68bbc4cd6b

Git commit 1e8c34a9192956bb2fe96a7a6a76ff59de8d1c0c by Andre Heinecke on 14/10/2016 at 14:23..
cpp: Fix init of string from null

* lang/cpp/src/key.cpp (UserID::addrSpecFromString): Check return
value before creating the string.
https://invent.kde.org/neon/forks/gpgme/-/commit/1e8c34a9192956bb2fe96a7a6a76ff59de8d1c0c

Git commit c6cab5a2bd6e7ed226c6c3f0b78b3f48b47db74c by Werner Koch on 14/10/2016 at 14:32..
python: Call ln(1) in a portable way.

* lang/python/Makefile.am: Specify target dir for ln.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c6cab5a2bd6e7ed226c6c3f0b78b3f48b47db74c

Git commit 05e8e1260baa5cbc6f1d6e387e642c1f6c188d44 by Werner Koch on 14/10/2016 at 14:32..
tests: Make t-cancel more portable.

* tests/gpg/t-cancel.c: Include sys/time.h and protect sys/select.h.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/05e8e1260baa5cbc6f1d6e387e642c1f6c188d44

Git commit aae6b63b7e8042b36d20f4fe1434e55e02f7d9aa by Daniel Kahn Gillmor on 14/10/2016 at 17:38..
avoid failures on 32-bit platforms
https://invent.kde.org/neon/forks/gpgme/-/commit/aae6b63b7e8042b36d20f4fe1434e55e02f7d9aa

Git commit 5cdf49d4e0cf2d895dbb6b35453e1d831e63d820 by Daniel Kahn Gillmor on 14/10/2016 at 17:40..
avoid shipping unready pdf documentation

see the thread at:
https://lists.gnupg.org/pipermail/gnupg-devel/2016-October/031818.html
where Andre says this pdf documentation isn't ready or useful for
public consumption.
https://invent.kde.org/neon/forks/gpgme/-/commit/5cdf49d4e0cf2d895dbb6b35453e1d831e63d820

Git commit 7501c2a52460fbf45b0d331d073741bdcda1b3dd by Daniel Kahn Gillmor on 14/10/2016 at 20:04..
pull in more upstream python fixes
https://invent.kde.org/neon/forks/gpgme/-/commit/7501c2a52460fbf45b0d331d073741bdcda1b3dd

Git commit c71a8a6902d02a9ebaa823c3fe5f566b903a10a6 by Daniel Kahn Gillmor on 14/10/2016 at 20:19..
ensure that python-pyme-dbgsym has the right versioning
https://invent.kde.org/neon/forks/gpgme/-/commit/c71a8a6902d02a9ebaa823c3fe5f566b903a10a6

Git commit 2d58d7dedfe8a322b379c34bf170f0b852c04def by Daniel Kahn Gillmor on 14/10/2016 at 20:29..
prepare another release
https://invent.kde.org/neon/forks/gpgme/-/commit/2d58d7dedfe8a322b379c34bf170f0b852c04def

Git commit 18ee96ae72c6ffe86f3bd18a256c78d437339dc8 by Daniel Kahn Gillmor on 15/10/2016 at 01:25..
apply debian patches ahead of upstream patches.
https://invent.kde.org/neon/forks/gpgme/-/commit/18ee96ae72c6ffe86f3bd18a256c78d437339dc8

Git commit 11775b04d8a951dba701c3012ef511942e83cd27 by Daniel Kahn Gillmor on 15/10/2016 at 01:36..
more fixes from upstream for 32-bit platforms
https://invent.kde.org/neon/forks/gpgme/-/commit/11775b04d8a951dba701c3012ef511942e83cd27

Git commit 50e45de66c28209f1ed3c159433b1f786a155bc9 by Daniel Kahn Gillmor on 15/10/2016 at 01:36..
prepare release
https://invent.kde.org/neon/forks/gpgme/-/commit/50e45de66c28209f1ed3c159433b1f786a155bc9

Git commit 2c490cdb3e50761c498357982445ebb01f18dc1e by Werner Koch on 18/10/2016 at 17:23..
Release 1.7.1.

* configure.ac: Set LT version to C27/A16/R0.  Note that the LT
versions for cpp and Qt have already been updated.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2c490cdb3e50761c498357982445ebb01f18dc1e

Git commit cffa9240641e1e176ec96ff4c1b5ab261eb96276 by Werner Koch on 18/10/2016 at 17:40..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/cffa9240641e1e176ec96ff4c1b5ab261eb96276

Git commit 26cbba3c9cb04a68b95f3a6000ac9bd93fe76dd7 by Andre Heinecke on 19/10/2016 at 13:17..
qt: Improve WKSPublishJob apidoc

* lang/qt/src/wkspublishjob.h: Improve doc.
https://invent.kde.org/neon/forks/gpgme/-/commit/26cbba3c9cb04a68b95f3a6000ac9bd93fe76dd7

Git commit b88bd8424db367ddf5d7f67b0811c9b9f39a7b3e by Daniel Kahn Gillmor on 20/10/2016 at 03:55..
New upstream version 1.7.1
https://invent.kde.org/neon/forks/gpgme/-/commit/b88bd8424db367ddf5d7f67b0811c9b9f39a7b3e

Git commit 4f6e92e8408881df5f52ac90f833313d1625fcf0 by Daniel Kahn Gillmor on 20/10/2016 at 03:56..
Merge branch 'upstream' into experimental
https://invent.kde.org/neon/forks/gpgme/-/commit/4f6e92e8408881df5f52ac90f833313d1625fcf0

Git commit 6edef395bce03493261ee464e8ac6f79057a41f0 by Daniel Kahn Gillmor on 20/10/2016 at 04:01..
drop upstream patches
https://invent.kde.org/neon/forks/gpgme/-/commit/6edef395bce03493261ee464e8ac6f79057a41f0

Git commit 920d3c8be96b376ac1a6f4af74f9e83db167263a by Daniel Kahn Gillmor on 20/10/2016 at 04:06..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/920d3c8be96b376ac1a6f4af74f9e83db167263a

Git commit 00e80e97bb001b722f85523c2d5ec4724293212f by Daniel Kahn Gillmor on 24/10/2016 at 18:29..
move from libqgpgme6 to libqgpgme7
https://invent.kde.org/neon/forks/gpgme/-/commit/00e80e97bb001b722f85523c2d5ec4724293212f

Git commit 1d342620efc19d2db658eecfce7776240e228a7c by Daniel Kahn Gillmor on 24/10/2016 at 19:05..
fix up symbols files
https://invent.kde.org/neon/forks/gpgme/-/commit/1d342620efc19d2db658eecfce7776240e228a7c

Git commit 46adc1a1f4ffbbca484163e2c8acab6c948c5ce0 by Daniel Kahn Gillmor on 24/10/2016 at 19:16..
prepare for release
https://invent.kde.org/neon/forks/gpgme/-/commit/46adc1a1f4ffbbca484163e2c8acab6c948c5ce0

Git commit 0c6522697194441af4983530bd501f86398719ab by Daniel Kahn Gillmor on 24/10/2016 at 19:24..
strip all auto-generated QT "*Job" files on import
https://invent.kde.org/neon/forks/gpgme/-/commit/0c6522697194441af4983530bd501f86398719ab

Git commit b8159eadb5636cd9d93ee60c41e75d5978927870 by Werner Koch on 25/10/2016 at 15:28..
core: New API functions gpgme_set_sender, gpgme_get_sender.

* src/context.h (struct gpgme_context): Add field 'sender'.
* src/gpgme.c: Include mbox-util.h.
(gpgme_release): Free SENDER.
(gpgme_set_sender): New.
(gpgme_get_sender): New.
* src/gpgme.def, src/libgpgme.vers: Add new functions.

* src/engine-gpg.c (append_args_from_sender): New.
(gpg_encrypt_sign, gpg_sign): Call append_args_from_sender.
(gpg_verify): Add arg CTX.  Call append_args_from_sender/
* src/engine-gpgsm.c (gpgsm_verify): Add dummy arg CTX.
* src/engine-uiserver.c (uiserver_verify): Ditto.
* src/engine.c (_gpgme_engine_op_verify): Add arg CTX.
* src/verify.c (verify_start): Pass CTX to engine function.

* tests/gpg/t-verify.c (main): Add some checks for new functions.
* tests/run-sign.c (main): Add option --sender.
* tests/run-verify.c (main): Ditto.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b8159eadb5636cd9d93ee60c41e75d5978927870

Git commit 5699817dff31f1e849134cf5d10ae7fb05c49ea7 by Daniel Kahn Gillmor on 25/10/2016 at 16:21..
ensure that source version makes it through to python-pyme-dbgsym
https://invent.kde.org/neon/forks/gpgme/-/commit/5699817dff31f1e849134cf5d10ae7fb05c49ea7

Git commit 42c2f151e3d06fb53cf78839fdb0bdfc1bef136f by Daniel Kahn Gillmor on 25/10/2016 at 17:07..
prepare another release
https://invent.kde.org/neon/forks/gpgme/-/commit/42c2f151e3d06fb53cf78839fdb0bdfc1bef136f

Git commit 33a2dbb58136f911c436fda3e96111318cf579a4 by Daniel Kahn Gillmor on 25/10/2016 at 21:53..
libgpgmepp-dev Breaks+Replaces: kdepimlibs5 (Closes: #842061)

See the discussion in the thread at
  https://lists.alioth.debian.org/pipermail/
     pkg-gnupg-maint/2016-October/004343.html
https://invent.kde.org/neon/forks/gpgme/-/commit/33a2dbb58136f911c436fda3e96111318cf579a4

Git commit 2fac017618a76882605125b05ff1f7393fe99860 by Justus Winter (on behalf of Daniel Kahn Gillmor) on 31/10/2016 at 14:42..
python: Rename Python module from PyME to gpg.

This follows weeks of discussion on the gnupg-devel mailing list.
Hopefully it will make it easier for people using Python to use GnuPG
in the future.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/2fac017618a76882605125b05ff1f7393fe99860

Git commit 70b7064e5c4f3eff9c296c00156724bc0cdaa64f by Justus Winter on 31/10/2016 at 14:42..
python: Improve constants module.

* lang/python/gpg/constants/__init__.py: Import all modules below
'constants/'.  Interface hygiene: delete 'util'.
* lang/python/gpg/constants/data/encoding.py: Delete 'util'.
* lang/python/gpg/constants/event.py: Likewise.
* lang/python/gpg/constants/import.py: Likewise.
* lang/python/gpg/constants/keylist/mode.py: Likewise.
* lang/python/gpg/constants/md.py: Likewise.
* lang/python/gpg/constants/pk.py: Likewise.
* lang/python/gpg/constants/protocol.py: Likewise.
* lang/python/gpg/constants/sig/mode.py: Likewise.
* lang/python/gpg/constants/sigsum.py: Likewise.
* lang/python/gpg/constants/validity.py: Likewise.
* lang/python/gpg/errors.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/70b7064e5c4f3eff9c296c00156724bc0cdaa64f

Git commit 20dc37a0e7e1531b0e568a6ec29b1c2d18de59c3 by Justus Winter on 31/10/2016 at 14:42..
python: Import the topmost module in tests and examples.

* examples/verifydetails.py: Only import the topmost module 'gpg' and
update the code accordingly.
* tests/support.py: Likewise.
* tests/t-callbacks.py: Likewise.
* tests/t-data.py: Likewise.
* tests/t-decrypt-verify.py: Likewise.
* tests/t-decrypt.py: Likewise.
* tests/t-edit.py: Likewise.
* tests/t-encrypt-large.py: Likewise.
* tests/t-encrypt-sign.py: Likewise.
* tests/t-encrypt-sym.py: Likewise.
* tests/t-encrypt.py: Likewise.
* tests/t-export.py: Likewise.
* tests/t-file-name.py: Likewise.
* tests/t-import.py: Likewise.
* tests/t-keylist.py: Likewise.
* tests/t-sig-notation.py: Likewise.
* tests/t-sign.py: Likewise.
* tests/t-signers.py: Likewise.
* tests/t-trustlist.py: Likewise.
* tests/t-verify.py: Likewise.
* tests/t-wait.py: Likewise.
* tests/t-wrapper.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/20dc37a0e7e1531b0e568a6ec29b1c2d18de59c3

Git commit 4b3264345084a0c9bf9f97fb233df700d7608e66 by Justus Winter on 31/10/2016 at 14:42..
python: Use vanity modules for constants in tests and examples.

* lang/python/gpg/constants/sig/notation.py: New file.
* lang/python/gpg/constants/sig/__init__.py: Import new module.

* lang/python/examples/assuan.py: Use more specific module for
constants, e.g. 'protocol.ASSUAN' instead of 'PROTOCOL_ASSUAN'.
* lang/python/examples/testCMSgetkey.py: Likewise.
* lang/python/tests/initial.py: Likewise.
* lang/python/tests/t-callbacks.py: Likewise.
* lang/python/tests/t-decrypt-verify.py: Likewise.
* lang/python/tests/t-decrypt.py: Likewise.
* lang/python/tests/t-edit.py: Likewise.
* lang/python/tests/t-encrypt-large.py: Likewise.
* lang/python/tests/t-encrypt-sign.py: Likewise.
* lang/python/tests/t-encrypt-sym.py: Likewise.
* lang/python/tests/t-encrypt.py: Likewise.
* lang/python/tests/t-export.py: Likewise.
* lang/python/tests/t-file-name.py: Likewise.
* lang/python/tests/t-idiomatic.py: Likewise.
* lang/python/tests/t-import.py: Likewise.
* lang/python/tests/t-keylist.py: Likewise.
* lang/python/tests/t-protocol-assuan.py: Likewise.
* lang/python/tests/t-sig-notation.py: Likewise.
* lang/python/tests/t-sign.py: Likewise.
* lang/python/tests/t-signers.py: Likewise.
* lang/python/tests/t-trustlist.py: Likewise.
* lang/python/tests/t-verify.py: Likewise.
* lang/python/tests/t-wait.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/4b3264345084a0c9bf9f97fb233df700d7608e66

Git commit 0fcd0838af318c82076410b82b68efad7c8a5c2f by Sandro Knauß on 31/10/2016 at 18:09..
Add pkgkde-symbolshelper to handle c++ bindings
https://invent.kde.org/neon/forks/gpgme/-/commit/0fcd0838af318c82076410b82b68efad7c8a5c2f

Git commit 6bc6984fbf06809659627b62e244229e4b47871f by Sandro Knauß on 31/10/2016 at 18:13..
consolidate main dh rule
https://invent.kde.org/neon/forks/gpgme/-/commit/6bc6984fbf06809659627b62e244229e4b47871f

Git commit b8c6cafe2085c6ab2a506b464d1840d935570bdf by Daniel Kahn Gillmor on 01/11/2016 at 08:19..
convert C++ symbols files to something readable

I used the following hackish python script to convert each .symbols
file:

--------

import sys
from subprocess import check_output

for line in sys.stdin.readlines():
      pieces = line.split('_Z', maxsplit=1)
      if len(pieces) == 2:
            if (pieces[0] == ' '):
                  prefix = ' (c++)"'
            elif (pieces[0].strip() == '(optional=templinst)'):
                  prefix = ' (c++|optional=templinst)"'
            (sym, suffix) = pieces[1].strip().split('@', maxsplit=1)
            conv = check_output(['c++filt', '_Z' + sym])
            conv = conv.decode('ascii').strip()
            (section, version) = suffix.split(' ', maxsplit=1)
            print(prefix, conv, '@', section, '" ', version, sep='')
      else:
            print(line, end='')
https://invent.kde.org/neon/forks/gpgme/-/commit/b8c6cafe2085c6ab2a506b464d1840d935570bdf

Git commit 6a4d35e3e3514bd1910362ad7ea744feb5933db8 by Daniel Kahn Gillmor on 01/11/2016 at 08:25..
prepare release
https://invent.kde.org/neon/forks/gpgme/-/commit/6a4d35e3e3514bd1910362ad7ea744feb5933db8

Git commit 567123de21247cab05762d799400739a12eb67ae by Andre Heinecke on 01/11/2016 at 09:18..
qt, cpp: Install version headers in subdirs

* lang/cpp/src/Makefile.am,
lang/qt/src/Makefile.am: Install version headers in include
subdirs.

--
This change was requested on the gnupg-devel mailing list to
avoid placing these headers into the top level include directories.
There is currently no known user of these headers so changing it
now should not break things downstream.
https://invent.kde.org/neon/forks/gpgme/-/commit/567123de21247cab05762d799400739a12eb67ae

Git commit 627c5deed84b4481710b6c0de06b26e886679bbe by Andre Heinecke on 01/11/2016 at 17:28..
qt: Add Distinguished Name parser from libkleo

* lang/qt/src/dn.cpp (DN, DN::Attribute): New public API.
* lang/qt/src/dn.h: New.
* lang/qt/src/Makefile.am: Update accordingly.

--
This is a general useful API to work with X509 distinguished
names and is useful when doing CMS with GpgME.

Adding this class from libkleo allows kmails messagelib to
avoid any KDE UI Frameworks and so can be used more versatile
in the future.

This class can be combined with libkleos DNAttributeMapper
to have the same bevavior as before in libkleo when using
DN::prettyDN calls can be converted from:

    Kleo::DN(uid).prettyDN();

to:
    QGpgME::DN dn(uid);
    uid.setAttributeOrder(
        Kleo::DNAttributeMapper::instance()->attributeOrder());
    dn.prettyDN();
https://invent.kde.org/neon/forks/gpgme/-/commit/627c5deed84b4481710b6c0de06b26e886679bbe

Git commit 8486f213423311174ebff5cba74127cbd9bb3c2a by Andre Heinecke on 02/11/2016 at 11:24..
qt, cpp: Add all generated files to cleanfiles

* cpp/src/Makefile.am (CLEANFILES),
qt/src/Makefile.am (CLEANFILES): Add all generated files
to cleanfiles.
https://invent.kde.org/neon/forks/gpgme/-/commit/8486f213423311174ebff5cba74127cbd9bb3c2a

Git commit 4149194d2e2f2f4d142926ba4d4efbd336b543f2 by Andre Heinecke on 02/11/2016 at 13:31..
qt: Require gpgmepp from cmake config script

* lang/qt/src/QGpgmeConfig.cmake.in.in: Require cpp.

--
This fixes an error if a user only does find_package(QGpgme)
https://invent.kde.org/neon/forks/gpgme/-/commit/4149194d2e2f2f4d142926ba4d4efbd336b543f2

Git commit b5c4d56cfdcafade3467be100fca6f1c89ecab73 by Andre Heinecke on 02/11/2016 at 13:36..
qt: Install cmake config into qgpgme subdir

* lang/qt/src/Makefile.am: Install cmake config file in qgpgme subdir.

--
Putting it together with Gpgmepp was done for historic reasons
but the proper way is for each library to have its own subdir.
https://invent.kde.org/neon/forks/gpgme/-/commit/b5c4d56cfdcafade3467be100fca6f1c89ecab73

Git commit bf9aa0ccf7b0165aa3a1af2bdb18daca7c02ce74 by Andre Heinecke on 02/11/2016 at 13:43..
qt, cpp: Fix versioning in cmake config and header

* configure.ac (VERSION_MAJOR, VERSION_MINOR, VERSION_MICRO): New
subst variables for the version header.
* lang/cpp/src/GpgmeppConfigVersion.cmake.in,
lang/cpp/src/gpgmepp_version.h.in,
lang/qt/src/QGpgmeConfigVersion.cmake.in,
lang/qt/src/qgpgme_version.h.in: Use new variables.

--
Using the LT_* variables was just wrong. Reporting the
package version also makes more sense then the library version.
Having different versions might make ABI breaks more visible
by increasing the major version number, but to have different
versions in the same package is too confusing imo and gpgme
uses a versioning that is unrelated to the library version number.
https://invent.kde.org/neon/forks/gpgme/-/commit/bf9aa0ccf7b0165aa3a1af2bdb18daca7c02ce74

Git commit b4658f6a1110bb0b54bd5dfc9df8e8b390e38d61 by Andre Heinecke (on behalf of Andras Mantia) on 02/11/2016 at 13:53..
qt: Fix build with g++ 4.8.x

* lang/qt/src/defaultkeygenerationjob.cpp
(DefaultKeyGenerationJob::start): Explicitly connect pointer
in the QPointer.

--
Commit message written by Andre Heinecke <aheinecke at intevation.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/b4658f6a1110bb0b54bd5dfc9df8e8b390e38d61

Git commit 0c2038c0043c1e79547b55e79c3d3e267dae801c by Werner Koch on 03/11/2016 at 08:31..
core: Make use of --homedir in gpgconf.

* src/engine-gpgconf.c (struct engine_gpgconf): Add field 'version'.
(have_gpgconf_version): New.
(gpgconf_release): Free VERSION.
(gpgconf_new): Set VERSION.
(gpgconf_read, gpgconf_write): Use --homedir with recent gnupg.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0c2038c0043c1e79547b55e79c3d3e267dae801c

Git commit 34a4e8017be452e8ead6b9c2da84be1ec7929cae by Andre Heinecke on 03/11/2016 at 09:09..
qt: Change license of export / version header

* lang/qt/src/qgpgme_export.h,
lang/qt/src/qgpgme_version.h: Change license to GPLv2+

--
These files were based on copies from the cpp version/export
headers. This change is meant to clarify the licensing by
bringing it in line with the overall licesense of the
qgpgme library.
https://invent.kde.org/neon/forks/gpgme/-/commit/34a4e8017be452e8ead6b9c2da84be1ec7929cae

Git commit aad94cb7c313d4501bed748f48830cbb93c67e20 by Werner Koch on 03/11/2016 at 16:32..
core: Add gpgme_op_query_swdb and helper.

* src/gpgme.h.in (gpgme_query_swdb_result_t): New.
(gpgme_op_query_swdb): New.
(gpgme_op_query_swdb_result): New.
* src/libgpgme.vers, src/gpgme.def: Add the two new functions.
* src/queryswdb.c: New.
* src/Makefile.am (main_sources): Add new file.
* src/context.h (OPDATA_QUERY_SWDB): New.
* src/engine-backend.h (struct engine_ops): Add field 'query_swdb'.
Adjust all initializer.
* src/engine.c (_gpgme_engine_op_query_swdb): New.
* src/engine-gpgconf.c (parse_swdb_line): New.
(gpgconf_query_swdb): New.
(_gpgme_engine_ops_gpgconf): Register that function.

* src/util.h (GPG_ERR_TOO_OLD): Define for older libgpg-error.
(GPG_ERR_ENGINE_TOO_OLD): Ditto.

* tests/run-swdb.c: New.
* tests/Makefile.am (noinst_PROGRAMS): Add new debug tool.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/aad94cb7c313d4501bed748f48830cbb93c67e20

Git commit df08a0ca3f029b06b7e3a6bd63330df5cb96585a by Werner Koch on 04/11/2016 at 07:12..
w32: Fix locating gpgconf on 64 bit systems.

* src/w32-util.c (find_program_at_standard_place): Use access to check
whether the binary is at CSIDL_PROGRAM_FILES before testing
CSIDL_PROGRAM_FILESX86.
--

Suggested-by: ticho
Fixes-commit: a82e9b182f62966207cad0972be6fa284329a5a1
GnuPG-bug-id: 2814
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/df08a0ca3f029b06b7e3a6bd63330df5cb96585a

Git commit 23979b9be5a6028e3e9cafc3aff632bc720b81f2 by Andre Heinecke on 04/11/2016 at 11:26..
cpp: Extend gpgmefw for tofuinfo and swdb query

* lang/cpp/src/gpgmefw.h (gpgme_tofu_info_t)
(gpgme_query_swdb_result_t): New forwards.
https://invent.kde.org/neon/forks/gpgme/-/commit/23979b9be5a6028e3e9cafc3aff632bc720b81f2

Git commit 4d3f33d0e9d960df2c34fb4d215987ab4d36111c by Andre Heinecke on 04/11/2016 at 11:26..
cpp: Don't include gpgme.h in tofuinfo header

* lang/cpp/src/tofuinfo.h: Don't include gpgme.h

--
No public header should include gpgme.h
https://invent.kde.org/neon/forks/gpgme/-/commit/4d3f33d0e9d960df2c34fb4d215987ab4d36111c

Git commit 512de91f9a8da8f491e09653eb4b5bdd0a027198 by Andre Heinecke on 04/11/2016 at 11:29..
cpp: Add more EngineInfo::Version ctors

* lang/cpp/src/engineinfo.h
(EngineInfo::Version::Version(const char*)),
(EngineInfo::Version::Version()): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/512de91f9a8da8f491e09653eb4b5bdd0a027198

Git commit 3509cf2f9846360848b6c08d36cbca18373c935e by Andre Heinecke on 04/11/2016 at 11:41..
cpp: Add API for swdb queries

* lang/cpp/src/swdbresult.cpp,
 lang/cpp/src/swdbresult.h (SwdbResult): New.
* lang/cpp/src/Makefile.am: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/3509cf2f9846360848b6c08d36cbca18373c935e

Git commit 10f2e1c30be651e74a03f4563a9f212d7416adb3 by Werner Koch on 09/11/2016 at 07:34..
w32: Better protect the IO-system's fd_table

* src/w32-io.c (fd_table_lock): New.
(new_fd): Lock allocation of a new slot.
(release_fd): Lock deallocation of a slot.
--

Note that we lock only the allocation but not the sanitiy checks we do
further down in the code.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/10f2e1c30be651e74a03f4563a9f212d7416adb3

Git commit f1f341062e24724e26928d893dd5769d3ccf5fa2 by Justus Winter on 09/11/2016 at 12:57..
python: Require at least GPGME 1.7 for out-of-tree builds.

* lang/python/setup.py.in: Bump required version to 1.7.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/f1f341062e24724e26928d893dd5769d3ccf5fa2

Git commit 09b64554328445e99a8cc78fc34ea49c2ea2e7f9 by Andre Heinecke on 10/11/2016 at 12:33..
core: Use gpgrt locking for thread safeness

* configure.ac: Require libgpg-error 1.17. No longer
check for pthread.
* doc/gpgme.texi: Document removed neccessity for thread
safe gpgme flavours.
* src/sema.h (DEFINE_GLOBAL_LOCK),
(DEFINE_STATIC_LOCK, INIT_LOCK, DECLARE_LOCK)
(DESTROY_LOCK, LOCK, UNLOCK): Change to gpgrt equivalents.
* src/posix-sema.c, src/w32-sema.c: Removed.
* src/Makefile.am: Remove libpthread and
Update accordingly.
* src/ath.c, src/ath.h (ath_mutex_init)
(ath_mutex_destroy, ath_mutex_lock, ath_mutex_unlock): Removed.
* src/ath.h (ATH_MUTEX_INITIALIZER): Removed.
* src/version.c (do_subsystem_inits): sema_subsystem_init is
no longer required.
* tests/gpg/Makefile.am: Add new threading tests.
(t_thread1_LDADD, t_cancel_LDADD):
Use just gpgme.
* tests/gpg/t-thread-keylist-verify.c,
tests/gpg/t-thread-keylist.c: New.
* src/gpgme-config.in: Use -lgpgme for thread-model pthread.

--
Using gpgrt locks instead of pthread locks removes
the neccessity to link pthread directly to gpgme and
have a different, thread safe flavor of gpgme. Now
gpgme is thread-safe if the conditions mentioned
in the doc are met.

As the cpp bindings linked against libgpgme
and not libgpgme-pthread this fixes threading problems
with them.

libgpgme-pthread is removed but gpgme-config still supports
--thread=pthread for compatibility with find scripts.
https://invent.kde.org/neon/forks/gpgme/-/commit/09b64554328445e99a8cc78fc34ea49c2ea2e7f9

Git commit 4d5174e4a83dcd524f8085f6646145f81b50a02a by Andre Heinecke on 10/11/2016 at 13:14..
tests: Improve new thread tests

* tests/gpg/t-thread-keylist-verify.c (start_keylist): Mark
arg as unused. Release context.
(start_verify): Ditto.
(main): Mark args as unused.
* tests/gpg/t-thread-keylist.c (start_keylist):  Mark
arg as unused. Release context.
(main): Mark args as unused.
https://invent.kde.org/neon/forks/gpgme/-/commit/4d5174e4a83dcd524f8085f6646145f81b50a02a

Git commit d0030efb45ec8436dd84a9623d2f66b80c6b9e10 by Andre Heinecke on 10/11/2016 at 14:04..
tests: Fix additional memleaks in thread tests

* tests/gpg/t-thread-keylist-verify.c (start_verify): Release
data.
(start_keylist): Unref keys.
* tests/gpg/t-thread-keylist.c (start_keylist): Unref keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/d0030efb45ec8436dd84a9623d2f66b80c6b9e10

Git commit 2a39bd6c30d21c43c86645a7908ce6c57dad5e20 by Werner Koch on 10/11/2016 at 16:13..
core: Detect unreadable keyrings.

* src/keylist.c (op_data_t): Add field keydb_search_err.
(keylist_status_handler): Parse STATUS_ERROR into that var.
(gpgme_op_keylist_next): Use that err instead of GPG_ERR_EOF.
--

With a recent GnuPG version this allows to detect a keyring with wrong
permissions (i.e. no read access).  GPG_ERR_OPEN_KEYRING will be
returned instead of GPG_ERR_EOF.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2a39bd6c30d21c43c86645a7908ce6c57dad5e20

Git commit e166724dcce29b2c9c98e421d07876ece2a63699 by Werner Koch on 10/11/2016 at 16:28..
doc: s/Multi Threading/Multi-Threading/

--
https://invent.kde.org/neon/forks/gpgme/-/commit/e166724dcce29b2c9c98e421d07876ece2a63699

Git commit ddd0a3cf90ac4b0a27ea610ebd7b9b8016ff43c4 by Andre Heinecke on 10/11/2016 at 17:35..
tests: Reduce thread count in new thread tests

* gpg/t-thread-keylist-verify.c,
gpg/t-thread-keylist.c: Reduce threads to 100

--
Due to the limit of FD_SETSIZE the
number of parallel threads is limited. So some systems
run into this problem when running the testsuite.
https://invent.kde.org/neon/forks/gpgme/-/commit/ddd0a3cf90ac4b0a27ea610ebd7b9b8016ff43c4

Git commit 6e57379c8e37c0863f7d12819a5a7d0781bd76d2 by Werner Koch on 10/11/2016 at 18:49..
core: Use better error code when using select with a too high fd.

* src/posix-io.c (_gpgme_io_select): Return EMFILE instead of EBADF.
--

Also EBADF seem more correct, EMFILE (Too man open files) gives
a clearer message to the user that there are somehow too many files
open.  The problem can be exhibited by running lots of threads,

We should eventually move to poll but that would be a large change and
so we better fix it with the planned migration of the I/O subsystem to
libgpgrt (currently known as libgpg-error).

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6e57379c8e37c0863f7d12819a5a7d0781bd76d2

Git commit 41d8c7e51a8989be633b9ada124c58a01fae7d54 by Werner Koch (on behalf of Alon Bar-Lev) on 11/11/2016 at 08:09..
tests,python: Atomic directory creation

* lang/python/tests/Makefile.am:  Use MIDIR_P.
* tests/gpg/Makefile.am: Ditto.
* tests/gpgsm/Makefile.am: Ditto.

--
Solves race in parallel build when mkdir fails if directory exists.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>

- Tweaked the ChangeLog

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/41d8c7e51a8989be633b9ada124c58a01fae7d54

Git commit 05775b52485a0d37033b26d696f36c622a4aa32e by Werner Koch on 11/11/2016 at 14:10..
doc: Fix regression in macro handling

--

The way macros are handled seem to have changed since 2008.  Fix that:

Reported-by: dkg at fifthhorseman.net
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/05775b52485a0d37033b26d696f36c622a4aa32e

Git commit da035768bd9a880becee5d0d553dfe12299f96eb by Werner Koch (on behalf of Daniel Kahn Gillmor) on 11/11/2016 at 14:14..
core: Non-zero values should set _armor, _textmode, and _online.

* src/gpgme.c (gpgme_set_armor, gpgme_set_textmode,
gpgme_set_offline): Ensure that non-zero values actually set the
appropriate internal bit.

--

The documentation for these functions says things like "disabled if
YES is zero, and enabled otherwise", where YES is an integer.
However, if you pass an even integer, it will be aliased back to 0
because the context member variables are declared as single bits.

This should make the implementation match the documentation.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/da035768bd9a880becee5d0d553dfe12299f96eb

Git commit d50bdb269e86db36a443958e3bfc6816a44d468e by Werner Koch (on behalf of Daniel Kahn Gillmor) on 11/11/2016 at 14:16..
doc: Correct text about gpgme_cancel_async.

* doc/gpgme.texi: Documentation about gpgme_cancel_async should refer
to the correct name.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/d50bdb269e86db36a443958e3bfc6816a44d468e

Git commit 16a30205064914eef578d84d07141b5d51d82838 by Werner Koch (on behalf of Daniel Kahn Gillmor) on 11/11/2016 at 14:17..
doc: Correct deftypefun for gpgme_op_decrypt_verify_start.

* doc/gpgme.texi: Documentationabout gpgme_op_decrypt_verify_start was
stored under the name gpgme_op_decrypt_verify instead.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/16a30205064914eef578d84d07141b5d51d82838

Git commit b91c383386fe9eadd90afdb9bb1f8ec6c528173b by Andre Heinecke on 14/11/2016 at 16:38..
w32: Fix build of w32-glib

* src/Makefile.am (main_sources): Remove system_components_not_extra.
(libgpgme_la_SOURCES): Add system_components_not_extra.
(libgpgme_glib_la_SOURCES): Remove duplicated ath files.
https://invent.kde.org/neon/forks/gpgme/-/commit/b91c383386fe9eadd90afdb9bb1f8ec6c528173b

Git commit f3790ddf56558fb0a08af95fdbae979cd6589aad by Andre Heinecke on 14/11/2016 at 18:39..
qt, cpp: Enable dll build for windows

* lang/cpp/src/Makefile.am,
lang/qt/src/Makefile.am: Add -no-undefined to LDFLAGS.
https://invent.kde.org/neon/forks/gpgme/-/commit/f3790ddf56558fb0a08af95fdbae979cd6589aad

Git commit d09a84eaf1e4f8c6c2e462995fa15c1a5690a6ce by Andre Heinecke on 14/11/2016 at 19:47..
cpp: Add get / set Sender API

* cpp/src/context.cpp, cpp/src/context.h (Context::setSender),
(Context::getSender): Add simple wrappers.
https://invent.kde.org/neon/forks/gpgme/-/commit/d09a84eaf1e4f8c6c2e462995fa15c1a5690a6ce

Git commit 9451faa2ee333904cff59f92ab62918e13ab4b87 by Andre Heinecke on 14/11/2016 at 19:48..
qt: Add API to get the context for a Job

* lang/qt/src/job.cpp,
lang/qt/src/job.h (Job::context): New.
* lang/qt/src/threadedjobmixin.cpp
(ThreadedJobMixin::~ThreadedJobMixin): New. Unregister context.
(ThreadedJobMixin::lateInitialization): Register context.
* NEWS: Update for cpp and qt.

--
The global map hack is necessary because the job class does
not know about the context which is held in threadedjobmixin.
Adding a virtual function in Job would be an ABI break which
I'd like to avoid at this point. Although QGpgME's API will
need a big ABI break to make it ABI maintainable. The virtual
jobs -> implementation classes are nearly unmaintainable ABI wise.

The context is exposed to provide more flexibility to users, e.g.
to add a passphrase callback or to set the sender in a context.
https://invent.kde.org/neon/forks/gpgme/-/commit/9451faa2ee333904cff59f92ab62918e13ab4b87

Git commit cad1210fb8a7402cb29e607f8f9680005314120d by Werner Koch (on behalf of Daniel Kahn Gillmor) on 15/11/2016 at 07:52..
core: Enable extraction of session keys.

* src/gpgme.c (gpgme_set_export_session_keys): New function.
(gpgme_get_export_session_keys): New function.
* src/gpgme.h.in (struct _gpgme_op_decrypt_result): Add session_key
member.
(gpgme_{set,get}_export_session_keys): Declare new functions.
* src/libgpgme.vers, src/gpgme.def: Export new functions in shared
object.
* src/engine.h: (_gpgme_engine_op_decrypt) Add export_session_key
parameter.
(_gpgme_engine_op_decrypt_verify): Add export_session_key parameter.
* src/engine-backend.h: (struct engine_ops): Change function
pointer declarations to match.
* src/context.h (struct gpgme_context): Add export_session_keys member.
* src/decrypt.c (release_op_data): Free result.session_key.
(_gpgme_decrypt_status_handler): Store a copy of the exported session
key.
(decrypt_start): Pass export_session_keys from the context.
* src/decrypt-verify.c (decrypt_verify_start): Pass
export_session_keys from context.
* src/engine.c (_gpgme_engine_op_decrypt): Pass through
export_session_key flag.
(_gpgme_engine_op_decrypt_verify): Pass through export_session_key
flag.
* src/engine-gpg.c (gpg_decrypt): If export_session_key is set, add
--export-session-key to argument list.
* src/engine-gpgsm.c (gpgsm_decrypt): Ignore export_session_key for
now, since gpgsm offers no such mechanism.
* src/engine-uiserver.c (_uiserver_decrypt): If export_session_key is
set, add --export-session-key flag to cmd.
* doc/gpgme.texi: Document new functions and session_key member of
decrypt_result_t.
* doc/uiserver.texi: Add --export-session-key flag to DECRYPT command.

--

gpg(1) documents session key export as useful for key escrow, and is
rightly dubious of that use case.  However, session key export is also
useful in other use cases.  Two examples from MUA development (where
this functionality would be specifically useful to me right now):

 * If the MUA stores a local copy of the session key upon decrypting
   the message, it can re-decrypt the message without expensive
   asymmetric operations.  When rendering a thread with dozens of
   encrypted messages, this can represent a significant speedup.

 * A user may have expired encryption-capable secret key material,
   along with many messages encrypted to that material.  If she stores
   the session keys for those messages she wants to keep, she can
   destroy her secret key material and make any messages she has
   deleted completely unrecoverable, even to an attacker who gets her
   remaining secret keys in the future.

This patchset makes a two specific implementation decisions that could
have gone in different ways.  I welcome feedback on preferred outcomes.

 0) session key representation: we currently represent the session key
    as an opaque textual string, rather than trying to provide any
    sort of in-memory structure.  While it wouldn't be hard to parse
    the data produced by gpg's --export-session-key, I chose to use
    the opaque string rather than lock in a particular data format.

 1) API/ABI: i've added a member to gpgme_op_decrypt_result_t.  This
    has the potential to cause an out-of-bound memory access if
    someone uses code compiled against the newer verision, but linked
    at runtime against an older version.  I've attempted to limit that
    risk by documenting that users must verify
    gpgme_get_export_session_keys() before accessing this new struct
    member -- this means that code expecting this capability will
    require the symbol at link-time, and will refuse to link against
    older versions.

    Another approach to solving this problem would be to avoid
    modifying gpgme_op_decrypt_result_t, and to introduce instead a
    new function gpgme_op_session_key(), which could be called in the
    same places as gpgme_op_decrypt_result().  Depending on the
    representation of the session key, this might introduce new
    memory-management burdens on the user of the library, and the
    session key is certainly part of a decryption result, so it seemed
    simpler to go with what i have here.

If anyone has strong preferences that these choices should be solved
in a different way, i'm happy to hear them.

Additionally, I note that i'm also still pretty unclear about how the
"UI Server" fits into this whole ecosystem. In particular, I don't
know whether it's kosher to just add an --export-session-key flag to
the DECRYPT operation without actually having implemented it anywhere,
but i don't see where i would actually implement it either :/

If this patch (or some variant) is adopted, i will supply another
patch that permits offering a session key during decryption (e.g. "gpg
--override-session-key"), but I wanted to get these implementation
choices ironed out first.

Gnupg-Bug-Id: 2754
Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>

On the concern of adding a new field to a structure: It may not be
clearly documented but we don't expect that a user ever allocates such
a structure - those result structure may only be created bu gpgme and
are read-only for the user.  Adding a new member constitutes a
compatible ABI change and thus an older SO may not be used by code
compiled with a header for the newer API.  Unless someone tinkers with
the build system, this should never happen.  We have added new fields
to result structure may times and I can't remember any problems.

 - wk
https://invent.kde.org/neon/forks/gpgme/-/commit/cad1210fb8a7402cb29e607f8f9680005314120d

Git commit 3234b1bf1d6939772677d64f6c1e1820ec98e3cd by Werner Koch on 15/11/2016 at 08:24..
core: Add public function gpgme_get_ctx_flag.

* src/gpgme.h.in (gpgme_get_ctx_flag): New.
* src/gpgme.c (gpgme_set_ctx_flag): Move down the file and add a trace
statement.
(gpgme_get_ctx_flag): New.
* src/gpgme.def, src/libgpgme.vers: Add new interface.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3234b1bf1d6939772677d64f6c1e1820ec98e3cd

Git commit 7659d42468b604db2936b021425683f407eba4a7 by Werner Koch on 15/11/2016 at 09:34..
core: Implement context flag "override-session-key".

* src/gpgme.c (gpgme_set_ctx_flag): Add flags "export-session-key" and
"override-session-key".
(gpgme_get_ctx_flag): Ditto.
(gpgme_set_export_session_keys): Remove.
(gpgme_get_export_session_keys): Remove.
* src/gpgme.def, src/libgpgme.vers: Remove them.
* src/context.h (struct gpgme_context): Add field
override_session_key.
* src/decrypt-verify.c (decrypt_verify_start): Pass
override_session_key value to the engine.
* src/decrypt.c (decrypt_start): Ditto.
* src/engine.c (_gpgme_engine_op_decrypt): Ditto.
(_gpgme_engine_op_decrypt_verify): Ditto.
* src/engine-backend.h (struct engine_ops): Extend DECRYPT and
DECRYPT_VERIFY_START with override_session_key.
* src/engine-uiserver.c (_uiserver_decrypt): Add stub arg
override_session_key.
(uiserver_decrypt): Ditto.
(uiserver_decrypt_verify): Ditto.
* src/engine-gpgsm.c (gpgsm_decrypt): Ditto.
* src/engine-gpg.c (gpg_decrypt): Add arg override_session_key and set
corresponding gpg option.

* tests/run-decrypt.c (print_result): Print the session key if
available.
(main): Add options --export-session-key and --override-session-key.

--

To keep the number of context manipulation functions at bay, this
patches removes the just added gpgme_set_export_session_keys and
gpgme_get_export_session_keys by flags for the generic context
function.

The patch also implements the --override-session-key feature.

GnuPG-bug-id: 2754
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7659d42468b604db2936b021425683f407eba4a7

Git commit ff3b72e2a3b5bf0e6037ee495f8ba6b28727a872 by Justus Winter (on behalf of Daniel Kahn Gillmor) on 15/11/2016 at 11:02..
doc: Fix typos.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/ff3b72e2a3b5bf0e6037ee495f8ba6b28727a872

Git commit 45abe6d142e314ba7099ad80b6365af171b06fec by Andre Heinecke on 15/11/2016 at 11:30..
qt: Use new style connect in th..mixin

* lang/qt/src/threadedjobmixin.h
(ThreadedJobMixin::lateInitialization): Use new style connect.
https://invent.kde.org/neon/forks/gpgme/-/commit/45abe6d142e314ba7099ad80b6365af171b06fec

Git commit b2c07bd47bd608afa5cc819b60a7b5bb8c9dd96a by Andre Heinecke on 15/11/2016 at 13:33..
qt, cpp: Add cmake config files for w32

* lang/cpp/src/GpgmeppConfig-w32.cmake.in.in
lang/qt/src/QGpgmeConfig-w32.cmake.in.in: New.
* lang/cpp/src/GpgmeppConfig.cmake.in.in,
lang/qt/src/QGpgmeConfig.cmake.in.in: Remove libsuffix handling.
* lang/cpp/src/Makefile.am,
lang/qt/src/Makefile.am: Create / install w32 config files.
* configure.ac: Configure them.

--
To work with DLL's cmake needs to know about the implib and
the final DLL. So the config files look different enough
that it's better to use alternative files.
https://invent.kde.org/neon/forks/gpgme/-/commit/b2c07bd47bd608afa5cc819b60a7b5bb8c9dd96a

Git commit 573064742145aa5f9bf04baa88af918c0c4d5e12 by Werner Koch (on behalf of Daniel Kahn Gillmor) on 16/11/2016 at 09:15..
doc,tests: Require use of ctx_flag before use of session_key.

* doc/gpgme.texi: Document requirements of verifying that it is OK to
use session_key.
* tests/run-decrypt.c: Ensure that we fail if we're unable to access
the session key, so that we do not violate the guidance above.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>

Changed the description

 - at code{gpgme_set_ctx_flag (ctx, "export-session-key")} returns
 - at code{GPG_ERR_NO_ERROR} or @code{gpgme_get_ctx_flag (ctx,
 -"export-session-key")} returns @code{"1"}.
 + at code{gpgme_set_ctx_flag (ctx, "export-session-key")} returns success
 +or @code{gpgme_get_ctx_flag (ctx, "export-session-key")} returns true
 +(non-empty string).

to get gpgme_get_ctx_flag for boolean values in sync with its own
description.

Note that I don't agree with the above suggestion but it does not
really harm to have it in the man page.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/573064742145aa5f9bf04baa88af918c0c4d5e12

Git commit 9fc92a15bd0a30437a39d0eb28b6f40edc22e6e8 by Werner Koch on 16/11/2016 at 09:15..
core: Do not leak the override session key to ps(1).

* src/engine-gpg.c (struct engine_gpg): New field
override_session_key.
(gpg_release): Free that field.
(gpg_decrypt): With gnupg 2.1.16 use --override-session-key-fd.

* tests/run-decrypt.c (main): Fix setting over the override key.
--

Note that this works only with gnupg 2.1.16 and later.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9fc92a15bd0a30437a39d0eb28b6f40edc22e6e8

Git commit 7f5f26fd66e60e60de875c70b1f93f60c0438780 by Werner Koch on 16/11/2016 at 12:27..
doc: Replace http: by https: in core source files.

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7f5f26fd66e60e60de875c70b1f93f60c0438780

Git commit f06220b691e9711afdabaa19886244ae7724eed5 by Werner Koch on 16/11/2016 at 12:29..
Release 1.8.0

* configure.ac: Set version to 1.8.0.  Set LT version C28/A17/RO.
Set CPP LT version to C9/A3/R0.  Set Qt LT version to C8/A1/R0.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f06220b691e9711afdabaa19886244ae7724eed5

Git commit af79327021b5b3a5c4accd5d4e9f0124199bfdcc by Werner Koch on 16/11/2016 at 13:03..
Post release updates.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/af79327021b5b3a5c4accd5d4e9f0124199bfdcc

Git commit 572c1aac107125ce62230251713349348373db5a by Andre Heinecke (on behalf of Heiko Becker) on 17/11/2016 at 08:22..
Remove a forgotten instance of @libsuffix@

* lang/cpp/src/GpgmeppConfig.cmake.in.in: Remove a forgotten
instance of @libsuffix at .
--

b2c07bd47bd608afa5cc819b60a7b5bb8c9dd96a removed @libsuffix@ from
cmake config files, but missed one instance.

Signed-off-by: Heiko Becker <heirecka at exherbo.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/572c1aac107125ce62230251713349348373db5a

Git commit 307645d6b9eba53141882fa61760dc6c24f8a50a by Daniel Kahn Gillmor on 18/11/2016 at 23:31..
no need for pasv in debian/watch
https://invent.kde.org/neon/forks/gpgme/-/commit/307645d6b9eba53141882fa61760dc6c24f8a50a

Git commit 9bf5561a5a61a47bf6d8877677695f1d05ab1a04 by Daniel Kahn Gillmor on 18/11/2016 at 23:33..
move python binding name from pyme to gpg
https://invent.kde.org/neon/forks/gpgme/-/commit/9bf5561a5a61a47bf6d8877677695f1d05ab1a04

Git commit 9fe499258824ffc1bca46cc0843e07a8d1d4c985 by Daniel Kahn Gillmor on 18/11/2016 at 23:33..
filter another auto-generated file at import-orig
https://invent.kde.org/neon/forks/gpgme/-/commit/9fe499258824ffc1bca46cc0843e07a8d1d4c985

Git commit c8c00df7b376533395510f3ee1b4739b3073c07c by Daniel Kahn Gillmor on 18/11/2016 at 23:35..
re-enable pie, it is needed to build Qt properly now
https://invent.kde.org/neon/forks/gpgme/-/commit/c8c00df7b376533395510f3ee1b4739b3073c07c

Git commit 7a6163decdafaa5cb039ac781e45a9bb6ce4b6bb by Daniel Kahn Gillmor on 18/11/2016 at 23:35..
avoid installing python bytecode and unnecessary package metadata
https://invent.kde.org/neon/forks/gpgme/-/commit/7a6163decdafaa5cb039ac781e45a9bb6ce4b6bb

Git commit 64a77568659136f327519ce034876185c8fc844c by Daniel Kahn Gillmor on 18/11/2016 at 23:35..
update build-dep gpg-error version requirements to track configure.ac
https://invent.kde.org/neon/forks/gpgme/-/commit/64a77568659136f327519ce034876185c8fc844c

Git commit f0280efe4a978cc5311418a1fbdebb7bd75e6112 by Daniel Kahn Gillmor on 18/11/2016 at 23:39..
no longer install -pthread variants

upstream's use of more modern features of libgpg-error means that we
do not need specific libgpgme-pthread variants any more.

(see upstream commit 09b64554328445e99a8cc78fc34ea49c2ea2e7f9 for more
explanation)

this is likely to cause some weird upgrade paths for packages that
previously depended on libgpgme-pthread.so.11 -- we need to think
clarify what to do about this.

Since some previous packages might be dependent on
libgpgme-pthread.so.11, though, we also ship a link to it so that
those packages still work.
https://invent.kde.org/neon/forks/gpgme/-/commit/f0280efe4a978cc5311418a1fbdebb7bd75e6112

Git commit b18254e7bfa064b2d1337a411c8ef2613323a85b by Daniel Kahn Gillmor on 18/11/2016 at 23:40..
add new symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/b18254e7bfa064b2d1337a411c8ef2613323a85b

Git commit 0a9607a9abfbd16bf6ca2908a5b41a7b3f24761e by Daniel Kahn Gillmor on 18/11/2016 at 23:40..
dropping C++ and QT symbols files

C++ and QT symbols files appear to be dynamic and change depending on
the architecture.  This results in needing to do multiple round-trips
through the buildds to learn how the different exported symbols vary.
yuck!

For simplicity's sake for now, we'll just go with a tighter dependency
chain (dh_makeshlibs -V) and not bother with trying to track them
explicitly.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a9607a9abfbd16bf6ca2908a5b41a7b3f24761e

Git commit d5c945c000598b38214a9b582a5d1c1a163504dd by Daniel Kahn Gillmor on 18/11/2016 at 23:44..
New upstream version 1.8.0
https://invent.kde.org/neon/forks/gpgme/-/commit/d5c945c000598b38214a9b582a5d1c1a163504dd

Git commit 64a5f33708368aeb831fbfc977ee430ea4c6b287 by Daniel Kahn Gillmor on 18/11/2016 at 23:45..
Merge tag 'upstream/1.8.0' into experimental

Upstream version 1.8.0
https://invent.kde.org/neon/forks/gpgme/-/commit/64a5f33708368aeb831fbfc977ee430ea4c6b287

Git commit 9ee323495301ddf3317a3699ba501a18a81dd1a6 by Daniel Kahn Gillmor on 19/11/2016 at 00:15..
prepare new release
https://invent.kde.org/neon/forks/gpgme/-/commit/9ee323495301ddf3317a3699ba501a18a81dd1a6

Git commit 74080b30178c0df95ee7c92893628f9f2cc08260 by Daniel Kahn Gillmor on 23/11/2016 at 06:39..
pull a cleanup patch from upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/74080b30178c0df95ee7c92893628f9f2cc08260

Git commit 92f96f6f2d2f3ae9bd5c1a62a67d714a92639e36 by Daniel Kahn Gillmor on 23/11/2016 at 06:40..
prepare release
https://invent.kde.org/neon/forks/gpgme/-/commit/92f96f6f2d2f3ae9bd5c1a62a67d714a92639e36

Git commit 9b22f82afc5518961e4bea1fc516b79800e379a2 by Justus Winter on 25/11/2016 at 08:13..
tests: Remove tofu.db.

* lang/python/Makefile.am (CLEANFILES): Add 'tofu.db'.
* tests/gpg/Makefile.am (CLEANFILES): Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/9b22f82afc5518961e4bea1fc516b79800e379a2

Git commit fd4d476214ae06e33f4a6dac534d3deca5cc6cd3 by Justus Winter on 25/11/2016 at 08:55..
python: Fix removing the TOFU database.

* lang/python/Makefile.am (CLEANFILES): Move 'tofu.db'...
* lang/python/tests/Makefile.am (CLEANFILES): ... here.

Fixes-commit: 9b22f82afc5518961e4bea1fc516b79800e379a2
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/fd4d476214ae06e33f4a6dac534d3deca5cc6cd3

Git commit f4d5ddb43ea723c0018211ed88ca35ccab8a0817 by Daniel Kahn Gillmor on 28/11/2016 at 14:59..
Reduce priority (closes: #845803)

libgpgme1.0 was elevated to standard priority because mutt was
standard priority.  mutt is now optional priority, so gpgme can be
reduced to optional.

Additionally, the -dev packages should all be bumped to "extra" since
they certainly don't meet the requirements for "optional" laid out in
file:///usr/share/doc/debian-policy/policy-1.html#s-priorities
https://invent.kde.org/neon/forks/gpgme/-/commit/f4d5ddb43ea723c0018211ed88ca35ccab8a0817

Git commit db2f6c1ca3d2ef228f4ca6653d594537622c8588 by Justus Winter (on behalf of Tobias Mueller) on 01/12/2016 at 16:28..
python: Make Results have a nicer __repr__.

* lang/python/gpg/results.py (Result.__str__): Renamed to '__repr__'
...
* lang/python/gpg/results.py (Result.__repr__): ... and added fields.
--

So that it looks a bit nicer in the Python REPL.

It looked like this before:

In [2]: gpg.core.get_engine_info()[0]
Out[2]:
<gpg.results.EngineInfo at 0x7fb23509a240>

Now the output is

In [2]: gpg.core.get_engine_info()[0]
Out[2]:
EngineInfo(file_name='/usr/bin/gpg2', home_dir=None,
protocol=0, req_version='1.4.0', version='2.1.11')

This also applies to other results, e.g. the ImportResult.

Note that the format now changed from "<Class >" to "Class()". The
Python documentation on repr states: "For many object types, including
most builtins, eval(repr(obj)) == obj."

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/db2f6c1ca3d2ef228f4ca6653d594537622c8588

Git commit 154389f2a5e4c13081cf0624222aad29ee480b56 by Justus Winter (on behalf of Tobias Mueller) on 01/12/2016 at 16:37..
python: Make Context have a repr method.

* lang/python/gpg/core.py (Context.__repr__): New function.
--

This makes Context objects look nicer in a REPL.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/154389f2a5e4c13081cf0624222aad29ee480b56

Git commit ae21d2705fc46725e1f9af1651b68d16155d1501 by Justus Winter (on behalf of Tobias Mueller) on 01/12/2016 at 16:39..
python: Check "buffer" when writing to sys.stdout for python2 compat.

* lang/python/tests/support.py (print_data): Add check for buffer.
--

When running with something like make -C lang/python check verbose=2 the
test would fail under python2, because the file objects do not have a
buffer property.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/ae21d2705fc46725e1f9af1651b68d16155d1501

Git commit fb7f4cb973abc9f5eb05eb240607be35c1be986c by Justus Winter (on behalf of Tobias Mueller) on 05/12/2016 at 11:41..
python: Define a macro for wrapping fragile result objects.

* lang/python/gpgme.i (wrapresult): New Macro.
--

This reduces the amount of copy and pasted code at the expense of a
slightly more complicated logic with a macro.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/fb7f4cb973abc9f5eb05eb240607be35c1be986c

Git commit 05896c210f7fa9ce7b97784a75e49dc4489e9252 by Justus Winter (on behalf of Tobias Mueller) on 05/12/2016 at 11:44..
python: Try to be more helpful when given a string to encrypt().

* lang/python/helpers.c (_gpg_obj2gpgme_data_t): Extended error
message.
* lang/python/tests/t-encrypt.py: Test for "encode" in error message.
--
The motivation is to help the user when encrypting fails. I claim that
it is not obvious to not being able to encrypt a string directly.  To
nudge the user into encoding it to bytes, the error message is a bit
extended.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/05896c210f7fa9ce7b97784a75e49dc4489e9252

Git commit dc002c07944622b4792f3930771df99cc65f2566 by Daniel Kahn Gillmor on 06/12/2016 at 15:28..
added versioned Provides for libgpgme11-dev to ease transition
https://invent.kde.org/neon/forks/gpgme/-/commit/dc002c07944622b4792f3930771df99cc65f2566

Git commit caa0183ab3fcf27aada76a504cb9b0d459bf3182 by Daniel Kahn Gillmor on 06/12/2016 at 15:29..
prepare new debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/caa0183ab3fcf27aada76a504cb9b0d459bf3182

Git commit 7880335273382f05cbbe38aa965a566c4127ba6a by Andre Heinecke on 07/12/2016 at 20:46..
Clarify what "checking on bit" means

* doc/gpgme.texi (gpgme_sigsum_t summary): Clarify what "you
can check one bit means"

--
It was unclear which bit to test for is. And tests
with students have shown that they would "test" for
this one bit by using if(sig.summary == GPGME_SIGSUM_VALID)
which would fail because valid sigs are also SIGSUM_GREEN.

So lets give an example for people not used to checking bits and
clarify through this example which bit is meant to be checked.
https://invent.kde.org/neon/forks/gpgme/-/commit/7880335273382f05cbbe38aa965a566c4127ba6a

Git commit ecb0e3280a7db0e8f6ef395cf64f36a36b15be37 by Werner Koch on 07/12/2016 at 22:25..
doc: Let's suggest GNU guidelines for bit checking.

--

While educating students we can also get them to use useful habits, in
particular to parenthese bit tests.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ecb0e3280a7db0e8f6ef395cf64f36a36b15be37

Git commit 5673f3e54af535155893290a685b3afb44c7f58d by Andre Heinecke on 15/12/2016 at 10:39..
cpp: Fix update of partial key in verifyresult

* lang/cpp/src/verificationresult.cpp
(Signature::key(bool,bool)): Don't update the returned copy
but the actual key of the signature.

--
The whole point of the update is to change the partial key
from the signature (e.g. only fingerprint and one uid as we
would have from tofu) to a fully keylisted one.
https://invent.kde.org/neon/forks/gpgme/-/commit/5673f3e54af535155893290a685b3afb44c7f58d

Git commit 85e05537e15346896a271d3f62bead9dd7e3f180 by Andre Heinecke on 15/12/2016 at 10:39..
cpp: Fix addrSpec for keys without email

* lang/cpp/src/key.cpp (UserID::addrSpec): Use uid->address instead
of normalizing again.
(&operator<<(std::ostream &, const UserID &): Print it.

--
This saves a normalization and fixes the case where a user id
is just a mail address without name, in that case gpgme sets
"address" but not email. Because the email is then the name.
https://invent.kde.org/neon/forks/gpgme/-/commit/85e05537e15346896a271d3f62bead9dd7e3f180

Git commit da5343a9d2c8c0ca6431162aac4bd5c73b4ae6dd by Andre Heinecke on 16/12/2016 at 18:09..
cpp: Ensure that hasSecret is correct after update

* lang/cpp/src/key.cpp (Key::update): Check for
a secret key first before listing public keys.

--
This is a performance delay but the update should
only be called in a non gui thread anyway. The information
if we have the secret key for this key is important to provide
after update.
https://invent.kde.org/neon/forks/gpgme/-/commit/da5343a9d2c8c0ca6431162aac4bd5c73b4ae6dd

Git commit 211844f049d714cd4d5aab96347705cb0c209c5d by Andre Heinecke (on behalf of Raphael Kubo da Costa) on 19/12/2016 at 09:36..
Qt: Make sure extended grep is used with '|'.

* m4/qt.m4: Use grep -E when using the alternation character.
--

POSIX specifies '|' is only supposed to work as an alternation special
character when grep is used in extended mode. The code worked fine
with GNU grep because it accepts extended regular expressions by
default, but other POSIX-compliant implementations might fail and take
it literally.

Signed-off-by: Raphael Kubo da Costa <rakuco at FreeBSD.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/211844f049d714cd4d5aab96347705cb0c209c5d

Git commit d83b8f0dc84d6cf7fe2e091bd1b103ceedfa3d6c by Ben Kibbey on 27/12/2016 at 00:57..
Fix GPGME_CREATE_NOPASSWD without pinentry loopback.

* src/engine-gpg.c(gpg_createkey): Pass --batch to gpg when
GPGME_CREATE_NOPASSWD is set.

--
Signed-off-by: Ben Kibbey <bjk at luxsci.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/d83b8f0dc84d6cf7fe2e091bd1b103ceedfa3d6c

Git commit a4b9f1a2b404fd8627d5ac567617510abd55d980 by Ben Kibbey on 31/12/2016 at 23:09..
Fix gpg_addkey() to work with GPGME_CREATE_NOPASSWD as well.

* src/engine-gpg.c (gpg_addkey): Pass --batch to gpg when
GPGME_CREATE_NOPASSWD is set to fix pinentry without loopback mode.

--
Signed-off-by: Ben Kibbey <bjk at luxsci.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/a4b9f1a2b404fd8627d5ac567617510abd55d980

Git commit 7103315829847163f1c6f52cad25d1ddb33358f0 by Andre Heinecke on 02/01/2017 at 13:05..
core: Always use runtime for gpgconf changes

* src/engine-gpgconf.c (gpgconf_write): Add --runtime.
* src/gpgme.h.in (gpgme_conf_opt_change): Document this
behavior.

--
If a tool uses GPGME for changing configuration values it
needs a way to ensure that these changes take effect. Otherwise
users may change and see config values and do not understand
why they are not working.
https://invent.kde.org/neon/forks/gpgme/-/commit/7103315829847163f1c6f52cad25d1ddb33358f0

Git commit ececfd5de81f1851943be7b284b672d5b02aceb4 by Andre Heinecke on 02/01/2017 at 13:05..
qt: Update config sync doc / comment

* lang/qt/src/cryptoconfig.h (CryptoConfig::sync): Document
that runtime option is always set.
* lang/qt/Src/qgpgmenewcryptoconfig.cpp
(QGpgMENewCryptoConfigComponent::sync): Remove outdated comment
and warn on error.
https://invent.kde.org/neon/forks/gpgme/-/commit/ececfd5de81f1851943be7b284b672d5b02aceb4

Git commit d0e91d28f63b74e53673902e675be8a54b6b90d3 by Justus Winter on 03/01/2017 at 14:28..
python: Add a switch '--quiet' to the test runner.

* lang/python/tests/run-tests.py: Add and honor a switch '--quiet'.
This way we can use this script to run Python tests one by one without
the noise, and the script will setup the necessary environment for us.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/d0e91d28f63b74e53673902e675be8a54b6b90d3

Git commit b14419f68b3aaa90025e0e97151de7c3da7806fb by Justus Winter on 03/01/2017 at 14:29..
python: Improve compatibility with Scheme tests.

* lang/python/tests/run-tests.py: Add stub --parallel option.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/b14419f68b3aaa90025e0e97151de7c3da7806fb

Git commit 2e661b9e1a9b50656a5c9646d7444a98477010c1 by Andre Heinecke on 11/01/2017 at 14:49..
Fix cmake configuration files for MacOS

* configure.ac: Set HAVE_MACOS_SYSTEM conditional.
* lang/qt/src/Makefile.am,
lang/cpp/src/Makefile.am,
lang/qt/src/QGpgmeConfig.cmake.in.in,
lang/cpp/src/GpgmeConfig.cmake.in.in: Use libsuffix again to
distinguish between macos .dylib

--
GnuPG-Bug-Id: 2884
https://invent.kde.org/neon/forks/gpgme/-/commit/2e661b9e1a9b50656a5c9646d7444a98477010c1

Git commit efe58fe011f195d98adb4f03b1e1068a26ba287b by Andre Heinecke on 11/01/2017 at 14:52..
Fix Qgpgme build for macos

* lang/qt/src/dn.cpp: Include string.h
(parse_dn_part): Use qstrdup.
* lang/qt/tests/t-support.h (getPassphrase): Use qstrdup.
https://invent.kde.org/neon/forks/gpgme/-/commit/efe58fe011f195d98adb4f03b1e1068a26ba287b

Git commit e416f9961837039f259558edf41fccbc181ad128 by Andre Heinecke on 11/01/2017 at 15:14..
cpp: Add revuid and adduid support

* lang/cpp/src/context.cpp
(Context::revUid, Context::startRevUid),
(Context::addUid, Context::startAddUid): New.
* lang/cpp/src/context.h: Declare new functions.
* lang/cpp/src/key.cpp (Key::UserID::revoke)
(Key::addUid): Idomatic helpers.
lang/cpp/src/key.h: Declare new functions.
* NEWS: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/e416f9961837039f259558edf41fccbc181ad128

Git commit 9e643ab67168dfbd189ccc0bfed8fb59253ee79c by Andre Heinecke on 11/01/2017 at 15:18..
qt: Add test for uid functions

* lang/qt/tests/t-various.cpp: New.
* lang/qt/tests/Makefile.am: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e643ab67168dfbd189ccc0bfed8fb59253ee79c

Git commit 56926c9b5012e8135541a933af1d69c5a81f02b3 by Andre Heinecke on 11/01/2017 at 15:20..
qt: Clean up test dirs on failure

* t-encrypt.cpp,
t-keylist.cpp,
t-keylocate.cpp,
t-ownertrust.cpp,
t-tofuinfo.cpp,
t-various.cpp,
t-verify.cpp,
t-wkspublish.cpp: Use QVERIFY instead of Q_ASSERT
https://invent.kde.org/neon/forks/gpgme/-/commit/56926c9b5012e8135541a933af1d69c5a81f02b3

Git commit a09ed3f26a1fab54079c37c49df5c440cc792f78 by Andre Heinecke on 12/01/2017 at 10:44..
qt: Don't use qstrdup in test passphrase cb

* lang/qt/tests/t-support.h (TestPassphraseProvider::getPassphrase):
Use gpgrt_asprintf instead of strdup.

--
To avoid problems on MacOS we want to avoid strdup so that
qgpgme can be built without extensions. But qstrdup allocates
with new and not with malloc, so use gpgrt_asprintf instead.
https://invent.kde.org/neon/forks/gpgme/-/commit/a09ed3f26a1fab54079c37c49df5c440cc792f78

Git commit 9640dc58e498966b482dcded6990cf4b47c556ac by Andre Heinecke on 12/01/2017 at 11:57..
qt: Add support for stringValueList in CryptoConf

* lang/qt/src/Makefile.am (qgpgme_sources): Add cryptoconfig.cpp
* lang/qt/src/cryptoconfig.cpp: New.
* lang/qt/src/cryptoconfig.h (CryptoConfigEntry::stringValueList):
New.
* lang/qt/src/qgpgmenewcryptoconfig.cpp
(QGpgMENewCryptoConfigEntry::stringValueList): New.
* lang/qt/src/qgpgmenewcryptoconfig.h: Update accordingly.

--
This is a pardigm change in cryptoconfig.h to avoid ABI breaks
with each new config value we support it now has an implementation
that is directly related to qgpgmenewcryptoconfig, which is now
the only one.
https://invent.kde.org/neon/forks/gpgme/-/commit/9640dc58e498966b482dcded6990cf4b47c556ac

Git commit ea7bb62f5d981615847528b3ce53be9cc4d741a7 by Justus Winter on 12/01/2017 at 13:06..
tests: Enable gpgconf test.

--
Fixes: 02ba35c1b6a2cbb3361b2f2ad507c53564b2be0b
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ea7bb62f5d981615847528b3ce53be9cc4d741a7

Git commit 186dcd3494eda7383de57a530fd15776410531a5 by Justus Winter on 12/01/2017 at 13:18..
tests: Improve the gpgconf test.

* tests/gpg/t-gpgconf.c: Include support functions.
(fail_if_err): Remove macro.
(init_gpgme): Remove function.
(lookup): New function.
(main): Update some values and verify that the changes are applied.
* tests/gpg/t-support.h (test): New assert-like macro.

GnuPG-bug-id: 2881
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/186dcd3494eda7383de57a530fd15776410531a5

Git commit 0e242278dfaa64ce31a45b72f5fa0806a3dba898 by Justus Winter on 16/01/2017 at 11:48..
Fix changing options with gpgconf.

* src/engine-gpgconf.c (gpgconf_write): Connect a pipe to the child's
stderr, and wait for it to be closed as an indication that gpgconf has
exited.  Also improve error handling.

GnuPG-bug-id: 2881
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/0e242278dfaa64ce31a45b72f5fa0806a3dba898

Git commit 92543da94cbf8e807b1b33070d273f995cdd5c62 by Justus Winter on 16/01/2017 at 12:21..
tests: Fix distcheck.

* tests/gpg/Makefile.am (CLEANFILES): Remove gpgconf backups.

Fixes-commit: ea7bb62f5d981615847528b3ce53be9cc4d741a7
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/92543da94cbf8e807b1b33070d273f995cdd5c62

Git commit 8aba08d1d0871f439fb7193adc4a2f43a81ee216 by Andre Heinecke on 16/01/2017 at 13:13..
qt: Add test for CryptoConfig

* lang/qt/tests/t-config.cpp: New.
* lang/qt/tests/Makefile.am: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/8aba08d1d0871f439fb7193adc4a2f43a81ee216

Git commit abfd241d1a1ae8e30e18b7c5e0658b8c54d89544 by Andre Heinecke on 16/01/2017 at 13:16..
qt: Use QVERIFY instead of Q_ASSERT in conf test

* lang/qt/tests/t-config.cpp: Use QVERIFY instead of Q_ASSERT.
https://invent.kde.org/neon/forks/gpgme/-/commit/abfd241d1a1ae8e30e18b7c5e0658b8c54d89544

Git commit ca69df8c8d3f044340aee2a118cc20d33cd600a1 by Andre Heinecke on 17/01/2017 at 14:20..
tests: Add safeguards against nullptr deref

* t-gpgconf.c (main): Test some values before dereferencing them.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca69df8c8d3f044340aee2a118cc20d33cd600a1

Git commit 6f02133bb07726afa6950e5b4685e75621276e60 by Justus Winter on 23/01/2017 at 14:08..
w32: Fix closing file descriptors.

* src/w32-io.c (writer): Only stop once the buffer is drained.
(destroy_writer): Wait for the writers buffer to be drained.  This
aligns '_gpgme_io_close's behavior with close(2) and fclose(3).

GnuPG-bug-id: 2881
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/6f02133bb07726afa6950e5b4685e75621276e60

Git commit a98951a30a6ae603ffac4ec8c5168aa6d1019933 by Andre Heinecke on 25/01/2017 at 13:10..
tests: Use --debug-quick-random for tests

* tests/start-stop-agent: Don't autostart agent on --stop and
running check. Use --debug-quick-random when starting.

--
This should speed up the tests especially on low entropy systems.
Possibly fixing a hang on pythons op_genkey test in the Launchpad
build enviorment (see launchpad issue 1655298)
https://invent.kde.org/neon/forks/gpgme/-/commit/a98951a30a6ae603ffac4ec8c5168aa6d1019933

Git commit 9291ebaa4151a1f6c8c0601095ec45809b963383 by Justus Winter (on behalf of Tobias Mueller) on 25/01/2017 at 16:47..
python: default op_keylist_start parameters.

* lang/python/gpgme.i: Added gpgme_op_keylist_start with defaults
* lang/python/tests/t-keylist.py: Added tests for default parameters
--

To increase the ease of use, op_keylist_start
parameters default to sensible values.
The empty string matches all keys.
We assume that the user wants to retrieve public keys most of the time,
so we default to public keys rather than secret keys.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/9291ebaa4151a1f6c8c0601095ec45809b963383

Git commit f3ca2c9ce9fd4a03e293065f10b92589a7e642d6 by Andre Heinecke on 26/01/2017 at 09:44..
python: Ensure quick-random is used if gpg is gpg2

* lang/python/tests/Makefile.am (gpg.conf): Configure
agent-program accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/f3ca2c9ce9fd4a03e293065f10b92589a7e642d6

Git commit 7bd6ab4a91d43d7cbf5d347c0c12e0e4f9f7e3bf by Andre Heinecke on 30/01/2017 at 13:19..
tests: Reduce iterations / threads

* tests/gpg/t-gpgconf.c (main): Reduce iterations to 10.
* tests/gpg/t-thread-keylist-verify.c,
tests/gpg/t-thread-keylist.c (THREAD_COUNT): Reduce to 10.

--
While these tests tested for race conditions a smaller number
of iteration should still show problems if they are run on
multiple systems and regulary. While the 100 Thread count in
the t-thread tests could lead to resource problems.
https://invent.kde.org/neon/forks/gpgme/-/commit/7bd6ab4a91d43d7cbf5d347c0c12e0e4f9f7e3bf

Git commit 752d3597ef02a95efd693373132bf1e246f0edb0 by Werner Koch on 31/01/2017 at 08:44..
core: Add new context flag "redraw".

* src/context.h (struct gpgme_context): New field 'redraw_suggested'.
* src/op-support.c (_gpgme_op_reset): Clear REDRAW_SUGGESTED.
* src/progress.c (_gpgme_progress_status_handler): Set REDRAW_SUGGESTED.
* src/gpgme.c (gpgme_set_ctx_flag, gpgme_get_ctx_flag): Add "redraw".
* tests/run-sign.c (main): Use it.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/752d3597ef02a95efd693373132bf1e246f0edb0

Git commit ba594d85e35e63301755977234d3af88a167a215 by Justus Winter on 31/01/2017 at 09:47..
qt: Increase timeout when waiting for signals.

* lang/qt/tests/t-support.h (QSIGNALSPY_TIMEOUT): New macro.
* lang/qt/tests/t-encrypt.cpp: Use the new macro as timeout when
waiting for signals.
* lang/qt/tests/t-keylist.cpp: Likewise.
* lang/qt/tests/t-keylocate.cpp: Likewise.
* lang/qt/tests/t-ownertrust.cpp: Likewise.
* lang/qt/tests/t-wkspublish.cpp: Likewise.
--
Increase the timeout when waiting for signals from 5 seconds to 60.
This addresses intermittent test failures on slow machines.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ba594d85e35e63301755977234d3af88a167a215

Git commit a28d31fdb623f2ee30e8094d09f1a0d1ae446a9b by Andre Heinecke on 01/02/2017 at 15:17..
core: Improve mailbox only uid handling

* src/key.c (_gpgme_key_append_name): Set email and remove name
for uid only keys.

--
If we have a name and no email but the name can be parsed as
an address we now treat the address as email and remove the name.

This fixes downstream users that rely on email to show email
addresses and don't expilicity handle this case.

E.g. A userid foo at example.com was:
uid->name = "foo at example.com"
uid->email = ""
uid->address = "foo at example.com"

It is now:
uid->name = ""
uid->email = "foo at example.com"
uid->address = "foo at example.com"
https://invent.kde.org/neon/forks/gpgme/-/commit/a28d31fdb623f2ee30e8094d09f1a0d1ae446a9b

Git commit b5075030bec9b21bf4e515bc1686df3fa43eced2 by Andre Heinecke on 01/02/2017 at 17:06..
core: Fix leakage of address for mail only uids

* src/key.c (gpgme_key_unref): Always free address if set.
(_gpgme_key_append_name): Remove memory optimization for address.

--
The check if address is not allocated would now be more complicated
then just comparing it to email because email is set to address
also when an email was not parsed from the user id.
https://invent.kde.org/neon/forks/gpgme/-/commit/b5075030bec9b21bf4e515bc1686df3fa43eced2

Git commit 8ede86795a1d419c01b4910ec2fd1fb18b629452 by Andre Heinecke on 01/02/2017 at 17:06..
core: Cleanup gpgme_key_unref frees

* src/key.c (gpgme_key_unref): Nowadays we assume free(NULL) is ok.
https://invent.kde.org/neon/forks/gpgme/-/commit/8ede86795a1d419c01b4910ec2fd1fb18b629452

Git commit 9b7d81998b734fabeb4fbc697f08fc7795eaa90a by Werner Koch on 02/02/2017 at 08:53..
core: Move all deprecated stuff to the end of gpgme.h.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9b7d81998b734fabeb4fbc697f08fc7795eaa90a

Git commit d19bea52afe6efb66a46af6aa4d09928c5d05ee5 by Werner Koch on 02/02/2017 at 08:53..
core: Un-deprecate gpgme_data_rewind.

* src/gpgme.h.in (gpgme_data_rewind): Un-deprecate.
* src/data-compat.c (gpgme_data_rewind): Move to ...
* src/data.c (gpgme_data_rewind): here.
--

That function is very convenient because it is required a lot with
memory streams.  It also documents the intention of the caller better
than gpgme_data_seek with its addition parameters and the need to map
system errors.  Thus it does not make sense to make it a first class
citizen again.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d19bea52afe6efb66a46af6aa4d09928c5d05ee5

Git commit 0ceeb2948c7210f120e5ddda1ca20a4bbbf83378 by Werner Koch on 02/02/2017 at 09:13..
core: Explain in gpgme.h that most stucts are read-only.

--

It is common that developers look up only the header file and do not
read the manual.  These comments should make it clear that most
structures in gpgme.h are read-only and may only be allocated by
gpgme.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0ceeb2948c7210f120e5ddda1ca20a4bbbf83378

Git commit 563420a88f8a4f561a2faea4d2b4a1c58b375fd8 by Werner Koch on 02/02/2017 at 11:28..
core: Remove unused check for funopen/fopencookie.

* configure.ac (funopen): Remove check.
* src/funopen.c: Remove file.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/563420a88f8a4f561a2faea4d2b4a1c58b375fd8

Git commit 15050ce5fce4ed815503db7c029abb38d08970d6 by Werner Koch on 02/02/2017 at 11:35..
core: Replace all calls to *sprintf by gpgrt_*sprintf.

* configure.ac (vasprintf): Remove check.
* src/vasprintf.c: Remove file.
* src/util.h (vasprintf, asprintf): Remove prototypes.  Replace all
calls to vasprintf and asprintf by gpgrt_vasprintf or gpgrt_asprintf.
Also take care to use gpgrt_free on the returned value.
* src/w32-util.c (_gpgme_get_gpgconf_path): Replace a gpgrt_asprintf
by _gpgme_strconcat.
(snprintf): New macro to use gpgrt_snprintf instead of the system's
standard snprintf.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/15050ce5fce4ed815503db7c029abb38d08970d6

Git commit 195c73589232160f45d00f4901c9bb2b0162f0e5 by Andre Heinecke on 02/02/2017 at 13:06..
core: Handle multiple TOFU_USER lines in verify

* src/verify.c (op_data_t): Add conflict_user_seen.
(parse_tofu_user): Return ERR_DUP_VALUE for mutltiple TOFU_USERS.
(_gpgme_verify_status_handler): Handle ERR_DUP_VALUE from
parse_tofu_user to ignore the next TOFU_STATS.

--
This fixes TOFU Conflict verification with GnuPG-2.1.17 and 2.1.18

GnuPG-Bug-Id: 2914
https://invent.kde.org/neon/forks/gpgme/-/commit/195c73589232160f45d00f4901c9bb2b0162f0e5

Git commit 43160a39f27f6c3507447620666c85af00b3499c by Andre Heinecke on 02/02/2017 at 16:16..
qt: Add test for tofu conflict

* lang/qt/tests/t-tofuinfo.cpp (TofuInfoTest::testTofuConflict): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/43160a39f27f6c3507447620666c85af00b3499c

Git commit afc308598d1ddaf20d54b4eab30b959066a4e5e6 by Werner Koch on 03/02/2017 at 12:08..
core: Minor cleanup of commit 195c735

* src/verify.c (parse_tofu_user): For cleanness use gpg_error ...
(_gpgme_verify_status_handler): ... and gpg_err_code.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/afc308598d1ddaf20d54b4eab30b959066a4e5e6

Git commit 93a59070c699d569d1eac7ba22355fe3f5d10882 by Werner Koch on 03/02/2017 at 12:13..
core: Fix possible deadlock due to get_max_fds.

* src/posix-io.c (get_max_fds): Do not use the Linux optimization.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/93a59070c699d569d1eac7ba22355fe3f5d10882

Git commit 51bd69f216a9e2930eeba4b5f6c20e952a381720 by Werner Koch on 03/02/2017 at 12:56..
core: Optimize fork/exec for *BSD and Solaris.

* configure.ac (closefrom): Add to ac_check_funcs.
* src/posix-io.c (_gpgme_io_spawn): Use closefrom.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/51bd69f216a9e2930eeba4b5f6c20e952a381720

Git commit ad22bee5387b1e9a40e8c822a081db3228bb9def by Daniel Kahn Gillmor on 06/02/2017 at 04:38..
doc: Document that gpgme_op_genkey() parms parameter is not XML.

* doc/gpgme.texi (GnupgKeyParms): document that input format is not
true XML.

--

Please see discussion at
https://lists.gnupg.org/pipermail/gnupg-devel/2017-January/032507.html

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/ad22bee5387b1e9a40e8c822a081db3228bb9def

Git commit 903bf16a416b1bf608b1e647937c9b06864b0141 by Andre Heinecke on 07/02/2017 at 09:01..
qt: Don't rely on implicit include in t-verify

* lang/qt/tests/t-various.cpp: Include QTemporaryDir

--
This fixes build with some Qt Versions
https://invent.kde.org/neon/forks/gpgme/-/commit/903bf16a416b1bf608b1e647937c9b06864b0141

Git commit 60064c665ec98a2a994fc6c8ad701e60b963ce7e by Andre Heinecke (on behalf of Igor Gnatenko) on 13/02/2017 at 09:37..
qt: Add missing #include <functional>

* lang/qt/src/qgpgmenewcryptoconfig.cpp,
lang/qt/src/threadedjobmixin.h: Include functional.

--
With GCC 7.0, functional is not included transitively and we get:
In file included from qgpgmedeletejob.h:39:0,
                 from qgpgmedeletejob.cpp:38:
threadedjobmixin.h:98:33: error: 'function' in namespace 'std'
    does not name a template type
     void setFunction(const std::function<T_result()> &function)
                                 ^~~~~~~~

std::{function,bind,placeholders,mem_fn} are defined in functional.

References: https://bugzilla.redhat.com/show_bug.cgi?id=1417383
Signed-off-by: Igor Gnatenko <ignatenkobrain at fedoraproject.org>

GnuPG-Bug-Id: 2955

Commit Message amended by Andre Heinecke

Signed-off-by: Andre Heinecke <aheinecke at intevation.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/60064c665ec98a2a994fc6c8ad701e60b963ce7e

Git commit f8db658f8b4c3c7941d0029273fb23fbe1ba74ad by Justus Winter on 13/02/2017 at 13:01..
Revert "Disable fd-passing for Apple."

The actual bug has been located, so this can be reverted.

This reverts commit ef5b4ae37d13142e89a051908dc080cda3d24baa.
https://invent.kde.org/neon/forks/gpgme/-/commit/f8db658f8b4c3c7941d0029273fb23fbe1ba74ad

Git commit 60273e8b2c11d42215a5707bc55e3e0d8f350e07 by Justus Winter on 13/02/2017 at 14:08..
build: Use macOS' compatibility macros to enable all features.

* configure.ac: On macOS, use the compatibility macros to expose every
feature of the libc.  This is the equivalent of _GNU_SOURCE on GNU
libc.
--
Not defining this leads to compilation errors or superfluous warnings
on macOS.

GnuPG-bug-id: 2910
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/60273e8b2c11d42215a5707bc55e3e0d8f350e07

Git commit fe65a26ab584bd70fad45c7c4d44330e30a748a4 by Justus Winter on 13/02/2017 at 15:44..
python: Use one copy of the source tree per Python version.

* lang/python/Makefile.am (copystamp): Create one copy per Python
version.
(all-local): Adapt.
(clean-local): Likewise.
(install-exec-local): Likewise.
* lang/python/tests/run-tests.py: Likewise.
--

Currently, we use one copy of the Python module's source to build for
all Python versions.  This is problematic, because SWIG writes a
wrapper file into the source tree.  Currently, this file works with
both Python 2 and 3, but this is purely by chance.

Improve the situation by creating one copy per Python version so that
SWIG can write version-specific code into each copy.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/fe65a26ab584bd70fad45c7c4d44330e30a748a4

Git commit d184dbbba8987d9f387feb25791ed891e108dabc by Justus Winter (on behalf of Tobias Mueller) on 14/02/2017 at 10:19..
python: Conditionally provide py3 argument to SWIG

* lang/python/setup.py.in: Only call with -py3 when we run under python3
or higher.
--

If we ever remove the -builtin flag and leave the the -py3 flag, SWIG
will generate Python code which will be incompatible with Python 2,
because the py3 flag generates python3 code which is incompatible with
python2.

So we conditionally generate SWIG bindings with -py3.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/d184dbbba8987d9f387feb25791ed891e108dabc

Git commit d35651917097ae2eee7d52396d53d010bc34df19 by Justus Winter (on behalf of Tobias Mueller) on 14/02/2017 at 10:19..
python: Call SWIG_NewPointerObj rather than SWIG_Python_NewPointerObj.

* lang/python/gpgme.i (pygpgme_wrap_gpgme_data_t): Provide a "self"
variable for SWIG_NewPointerObj and call SWIG_NewPointerObj rather than
SWIG_Python_NewPointerObj.
--

SWIG_Python_NewPointerObj seems to be an implementation detail, because
SWIG's documentation does not mention that function at all.  In fact,
SWIG_NewPointerObj is a call to SWIG_Python_NewPointerObj with the first
parameter being either NULL or the "self" variable, depending on whether
SWIG is called with the -builtin flag.  So far, the first parameter was
hard-coded to NULL.  This change also hard-codes it to NULL but makes
it more explicit.  The benefit is that the documented function is being
used and that compilation works regardless of the -builtin flag.

Partially reverts: 856bcfe2934237011984fab0bc69800a7c25c34b

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/d35651917097ae2eee7d52396d53d010bc34df19

Git commit aa49be1ab80c200ab6b62d33bf5d0f5aa334fc56 by Justus Winter (on behalf of Tobias Mueller) on 14/02/2017 at 10:19..
python: Remove the -builtin flag for SWIG.

* lang/python/setup.py.in: Call SWIG without the builtin flag.
--

The SWIG documentation
<http://www.swig.org/Doc2.0/Python.html#Python_nn28> leaves the
impression that -builtin is solely for increasing performance:

    New in SWIG version 2.0.4: The use of Python proxy classes has
    performance implications that may be unacceptable for a high-
    performance library. The new -builtin option instructs SWIG to
    forego the use of proxy classes, and instead create wrapped types as
    new built-in Python types. When this option is used, the following
    section ("Proxy classes") does not apply. Details on the use of the
    -builtin option are in the Built-in Types section.

While not wasting CPU cycles is good, it also prevents Python code being
written in the wrapper itself. That, however, may be useful to make it
easier to extend the wrapper.

Partially reverts: 856bcfe2934237011984fab0bc69800a7c25c34b

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/aa49be1ab80c200ab6b62d33bf5d0f5aa334fc56

Git commit 01d5c17587578c729bbbb60f8a65635975e35592 by Justus Winter (on behalf of Tobias Mueller) on 14/02/2017 at 10:19..
python: Extend SWIG gpgme_{sub,}key with a __repr__ method.

* lang/python/gpgme.i: Added a genericrepr macro and use it for
gpgme_key, gpgme_subkey, and gpgme_key_sig.
--

To look nicer in Python's REPL.

We define a generic __repr__ as a SWIG macro and use that to extend some
defined SWIG objects.

The alternative would have been to write a custom __repr__ function for
each class but that would need to be changed everytime the object's
structure changes. The bindings should be easy to maintain, I guess.
This comes at the expense that the reprs are now relatively long and
contain, for example, both keyid and fingerprint.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/01d5c17587578c729bbbb60f8a65635975e35592

Git commit 30a603580e0f196c721fa4bd44d24077d9bc06c3 by Justus Winter on 14/02/2017 at 11:45..
qt: Make sure to remove the tofu.db on clean.

* lang/qt/tests/Makefile.am (CLEANFILES): Add 'tofu.db'.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/30a603580e0f196c721fa4bd44d24077d9bc06c3

Git commit 99b7f4f34dd595579181a696ae976a678fe00d49 by Justus Winter on 14/02/2017 at 15:33..
python: Add convenience functions for the home directory.

* NEWS: Update.
* lang/python/gpg/core.py (Context.__init__): Add 'home_dir' argument.
(__repr__): Include 'home_dir'.
(Context.home_dir): New property.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/99b7f4f34dd595579181a696ae976a678fe00d49

Git commit e17ab84129045512cf60c221ee43aa877507662f by Justus Winter on 14/02/2017 at 15:33..
python: Nicer repr for user ids.

* lang/python/gpgme.i (_gpgme_user_id): Provide a nicer repr() for
user ids.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/e17ab84129045512cf60c221ee43aa877507662f

Git commit fdc4e33dc3f6c84fe9d7bf9795c603ae3cf5f28d by Justus Winter on 14/02/2017 at 15:33..
python: Add keylist mode parameter.

* NEWS: Update.
* lang/python/gpg/core.py (Context.keylist): Add 'mode' parameter.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/fdc4e33dc3f6c84fe9d7bf9795c603ae3cf5f28d

Git commit 9fc9533c2835ec53c4fd4f822b09e9fec14626d0 by Justus Winter on 14/02/2017 at 15:33..
python: Use the correct function to free buffers.

* lang/python/gpgme.i (char *): Free using 'gpgme_free'.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/9fc9533c2835ec53c4fd4f822b09e9fec14626d0

Git commit 92adc9bbf640eb5d9177d3ba0189e0f6cee4e995 by Justus Winter on 14/02/2017 at 15:33..
python: Wrap utility functions.

* NEWS: Update.
* lang/python/gpg/core.py (pubkey_algo_string): New function.
(pubkey_algo_name): Add docstring.
(hash_algo_name): Likewise.
(get_protocol_name): Likewise.
(addrspec_from_uid): New function.
* lang/python/gpgme.i (gpgme_pubkey_algo_string): Result must be
freed.
(gpgme_addrspec_from_uid): Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/92adc9bbf640eb5d9177d3ba0189e0f6cee4e995

Git commit 6df6e01ed5a581765d245bf7303cda4497d0eb22 by Justus Winter on 15/02/2017 at 15:34..
core: Fix error types.

* NEWS: Update.
* src/data.c (gpgme_data_set_flag): Return a 'gpgme_error_t'.
* src/error.c (gpgme_strerror_r): Fix type of first argument.
* src/gpgme.h.in (gpgme_strerror_r): Adapt.
(gpgme_data_set_flag): Likewise.
--
Fix for consistency.  This should not pose problems, because typedef
gpg_error_t gpgme_error_t.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/6df6e01ed5a581765d245bf7303cda4497d0eb22

Git commit 25f0435a0022a70af77660d72d33f17bec2d4e51 by Justus Winter on 15/02/2017 at 15:36..
python: Update lists of functions returning gpgme_error_t.

* lang/python/gpg/core.py (Context._errorcheck): Add instructions how
to update the list.  Update list.
(Data._errorcheck): Likewise.
(Context.set_engine_info): Simplify.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/25f0435a0022a70af77660d72d33f17bec2d4e51

Git commit 27544d0a74267ab6057dc816ea3311bc9149a200 by Justus Winter on 15/02/2017 at 15:36..
python: Fix build system integration.

* lang/python/Makefile.am (copystamp): Also copy the setup script, and
link the header files.
(all-local): Use local setup script.
(sdist): Fix Python source distribution creation.
(CLEANFILES): Remove now obsolete files.
(install-exec-local): Use local setup script.
* lang/python/setup.py.in: Adjust relative paths to in-tree files.

Fixes-commit: fe65a26ab584bd70fad45c7c4d44330e30a748a4
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/27544d0a74267ab6057dc816ea3311bc9149a200

Git commit de708e5934cda380dbc3ae51f587c09041de7562 by Justus Winter on 15/02/2017 at 15:45..
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 at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/de708e5934cda380dbc3ae51f587c09041de7562

Git commit 048c5f74b61d5e4fa7617ce7c9111c6754bd4409 by Justus Winter on 16/02/2017 at 13:42..
python: Fix error handling.

* lang/python/gpgme.i (typemap gpgme_key_t[]): Set an error if a
non-key element is discovered.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/048c5f74b61d5e4fa7617ce7c9111c6754bd4409

Git commit 3bdce4aa3ddd4a3f55b24678faf978d61daa8909 by Justus Winter on 16/02/2017 at 13:49..
python: Fix passphrase callback wrapping.

* lang/python/helpers.c (pyPassphraseCb): Cope with 'passphrase_info'
being NULL.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3bdce4aa3ddd4a3f55b24678faf978d61daa8909

Git commit 476b97822b169c30cc246c1de2ff94cf89084706 by Justus Winter on 16/02/2017 at 15:43..
python: Support quick key creation.

* NEWS: Update.
* lang/python/gpg/constants/__init__.py: Import new file.
* lang/python/gpg/constants/create.py: New file.
* lang/python/gpg/core.py (Context.create_key): New function.
* lang/python/tests/Makefile.am (XTESTS): Add new test.
* lang/python/tests/support.py (TemporaryDirectory): New class.
* lang/python/tests/t-quick-key-creation.py: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/476b97822b169c30cc246c1de2ff94cf89084706

Git commit 13bace25e3d8422f93fd24919994be36042fd220 by Justus Winter on 16/02/2017 at 15:45..
python: Support quick subkey creation.

* NEWS: Update.
* lang/python/gpg/core.py (Context.create_subkey): New function.
* lang/python/tests/Makefile.am (XTESTS): Add new test.
* lang/python/tests/t-quick-subkey-creation.py: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/13bace25e3d8422f93fd24919994be36042fd220

Git commit 7641b7b5f2c9d5b38c60cd9326bcb4810c37dae5 by Justus Winter on 16/02/2017 at 16:55..
python: Support adding and revoking UIDs.

* NEWS: Update.
* lang/python/gpg/core.py (Context.key_add_uid): New function.
(Context.key_revoke_uid): Likewise.
* lang/python/tests/Makefile.am (XTESTS): Add new test.
* lang/python/tests/t-quick-key-manipulation.py: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/7641b7b5f2c9d5b38c60cd9326bcb4810c37dae5

Git commit 9350168a1eed3f055040d7cc8a9bf4cdf745b23a by Justus Winter on 17/02/2017 at 11:10..
python: Fix using strings as commands in the assuan protocol.

* lang/python/gpg/core.py (Context.assuan_transact): Fix testing
whether the command is a string on Python2.
* lang/python/tests/t-protocol-assuan.py: Improve the test to detect
this problem.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/9350168a1eed3f055040d7cc8a9bf4cdf745b23a

Git commit de8494b16bc50c60a8438f2cae1f8c88e8949f7a by Justus Winter on 17/02/2017 at 11:18..
python: Fix teardown of ephemeral contexts.

* lang/python/tests/support.py (EphemeralContext): New function.
* lang/python/tests/t-quick-key-creation.py: Use the new function to
manage ephemeral contexts.
* lang/python/tests/t-quick-key-manipulation.py: Likewise.
* lang/python/tests/t-quick-subkey-creation.py: Likewise.
--

Previously, there was a problem with cleaning up ephemeral home
directories.  shutil.rmtree deleted the agents main socket, gpg-agent
detected that, and deleted the other sockets as well, racing
shutil.rmtree which did not cope will with that.

Fix this by asking the agent nicely to shut down.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/de8494b16bc50c60a8438f2cae1f8c88e8949f7a

Git commit 48634e651fcd02431c0518d42ada1f3b402feb2c by Justus Winter on 17/02/2017 at 15:28..
python: Support quick key signing.

* NEWS: Update.
* doc/gpgme.texi (gpgme_op_keysign): Fix the description of the
'expire' argument.
* lang/python/gpg/constants/__init__.py: Import new file.
* lang/python/gpg/constants/keysign.py: New file.
* lang/python/gpg/core.py (Context.key_sign): New function.
* lang/python/tests/Makefile.am (py_tests): Add new test.
* lang/python/tests/t-quick-key-signing.py: New test.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/48634e651fcd02431c0518d42ada1f3b402feb2c

Git commit 15fbac9e72a4d1bff9a3b9e9822f9175b09fbcd5 by Justus Winter on 17/02/2017 at 16:08..
python: Support manipulating the TOFU policy.

* NEWS: Update.
* doc/gpgme.texi: Fix typos.
* lang/python/gpg/constants/__init__.py: Import new files.
* lang/python/gpg/constants/tofu/__init__.py: New file.
* lang/python/gpg/constants/tofu/policy.py: New file.
* lang/python/gpg/core.py (Context.key_tofu_policy): New function.
* lang/python/gpgme.i: Nice reprs for gpgme_tofu_info_t.
* lang/python/setup.py.in: Install new package.
* lang/python/tests/t-quick-key-manipulation.py: Extend test.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/15fbac9e72a4d1bff9a3b9e9822f9175b09fbcd5

Git commit a7c6353edab57b67180aa127ec77d9353c2366fb by Justus Winter on 20/02/2017 at 09:23..
python: Fix test.

* lang/python/tests/t-quick-key-manipulation.py: Modify the
configuration file in the ephemeral home directory, not the one used
by all the tests.

Fixes-commit: 15fbac9e72a4d1bff9a3b9e9822f9175b09fbcd5
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a7c6353edab57b67180aa127ec77d9353c2366fb

Git commit 5b49095b89b07591c69827df3973ffabfb3e97b8 by Daniel Kahn Gillmor on 26/02/2017 at 06:43..
doc: Correct documentation for recp arg of gpgme_op_encrypt_sign_start

* doc/gpgme.texi (gpgme_op_encrypt_sign_start): recp is an array of
gpgme_key_t, not a single element.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/5b49095b89b07591c69827df3973ffabfb3e97b8

Git commit fbafb5474d8898ba1b267f4b4dfbefe39f04e72f by Andre Heinecke on 01/03/2017 at 10:14..
qt: Allow creation of default keys without name

* lang/qt/src/defaultkeygenerationjob.cpp
(DefaultKeyGenerationJob::start): Handle empty name and email.
https://invent.kde.org/neon/forks/gpgme/-/commit/fbafb5474d8898ba1b267f4b4dfbefe39f04e72f

Git commit d63258066d008de113ed1170f1b0e787a5bdaba1 by Andre Heinecke on 01/03/2017 at 10:20..
cpp: Add interactor to generate keys on smartcard

* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
Handle new states.
* lang/cpp/src/gpggencardkeyinteractor.cpp,
lang/cpp/src/gpggencardkeyinteractor.h: New.
* lang/cpp/src/Makefile.am: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/d63258066d008de113ed1170f1b0e787a5bdaba1

Git commit 8071a6b2ca33c2a46ed1d50ae7283241daaafcd3 by Andre Heinecke on 02/03/2017 at 08:38..
cpp: Add subkey keygrip to API

* lang/cpp/src/key.cpp (Subkey::keyGrip): New.
* lang/cpp/src/key.h: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/8071a6b2ca33c2a46ed1d50ae7283241daaafcd3

Git commit 2486d0073b59790decb34333be6283490e818b65 by Werner Koch on 02/03/2017 at 13:47..
Revert "core: Fix error types."

--
This reverts commit 6df6e01ed5a581765d245bf7303cda4497d0eb22.

gpgme_error_t et al are from a time where we had no hard dependency on
libgpg-error.  Now libgpg-error is a required and thus it does not
make sense to have these surrogates.  In fact we should ventually
completely remove them.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2486d0073b59790decb34333be6283490e818b65

Git commit ef035f079fb067f207e5477d5ed6c5a68fb41f59 by Werner Koch on 02/03/2017 at 13:52..
core: Fix minor code style thing.

* src/engine-gpg.c (gpg_add_algo_usage_expire): Use double parenthesis
for bit tests.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ef035f079fb067f207e5477d5ed6c5a68fb41f59

Git commit 41398779abbcb1ec2d7491e141469a752fc706ff by Justus Winter on 02/03/2017 at 15:06..
python: Print path of the Python module used during tests.

* lang/python/tests/initial.py: Print path of the Python module used
during tests.  Useful to detect if by any mistake the wrong module is
picked up.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/41398779abbcb1ec2d7491e141469a752fc706ff

Git commit d2240a2a1819874929bdab820bcbd3bee7f94407 by Werner Koch on 09/03/2017 at 10:45..
core: Fix status error return for gpgsm.

* src/engine-gpgsm.c (gpgsm_assuan_simple_command): Make sure CB_ERR
is returned.
* src/import.c (parse_import_res): Do not return an error for the last
field.
(import_status_handler): Actually return the error from
parse_import_res.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d2240a2a1819874929bdab820bcbd3bee7f94407

Git commit 9d5048d47446450a34cae4f27eb81c02ea5d4afc by Andre Heinecke on 13/03/2017 at 10:17..
qt: Use gpgrt_asprintf instead of qstrdup

* lang/qt/src/dn.cpp (parse_dn_part): Use gpgrt_asprintf instead
of qstrdup.

--
This fixes a new / free mismatch because qstrdup uses new and
the allocated parts are freed with free. Similar to: a09ed3f2
https://invent.kde.org/neon/forks/gpgme/-/commit/9d5048d47446450a34cae4f27eb81c02ea5d4afc

Git commit 43aa3eed15dcc4f848915ceabeff35c29c1c57e4 by Andre Heinecke on 13/03/2017 at 10:18..
qt: Add test for DN parser

* qt/tests/t-various.cpp (testDN): New.

--
A simple test for the DN parser that would have caught
the new / free mismatch fixed in 9d5048d4.
https://invent.kde.org/neon/forks/gpgme/-/commit/43aa3eed15dcc4f848915ceabeff35c29c1c57e4

Git commit 067da472f919e78c95a0a01b68e79a8b7dff173b by Justus Winter on 14/03/2017 at 11:01..
build: Add M4 macros for python.

* m4/python.m4: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/067da472f919e78c95a0a01b68e79a8b7dff173b

Git commit 5189c08af9468cdeb6f16a6ecd0fee53e1e3aa0e by Justus Winter on 14/03/2017 at 11:20..
build: Tune M4 macros for our needs.

* m4/ax_python_devel.m4: Do not emit 'HAVE_PYTHON'.
* m4/python.m4 (_AM_PYTHON_INTERPRETER_LIST): Add newer Python
versions, drop older ones.  Also, sort the list with older versions at
the front, newer and generic versions towards the end.  This makes the
algorithm pick the lowest version that meets the version requirement.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/5189c08af9468cdeb6f16a6ecd0fee53e1e3aa0e

Git commit 6a371663886a7ba6073f385a3ab5f5a03de8e008 by Justus Winter on 14/03/2017 at 11:20..
build: Improve Python detection.

* configure.ac: Do not error out too early if we don't find a matching
Python version.  We handle this case later.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/6a371663886a7ba6073f385a3ab5f5a03de8e008

Git commit a4201035fdc050f337a6b9f520c8ddbb569e2eb4 by Justus Winter on 14/03/2017 at 11:20..
python: Improve build system integration.

* lang/python/Makefile.am: Use 'set -e' when chaining shell commands
together in rules.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a4201035fdc050f337a6b9f520c8ddbb569e2eb4

Git commit ac4849953860547b06a167ca9612c4de369d02b6 by Justus Winter on 14/03/2017 at 11:20..
python: Make tests more robust.

* lang/python/tests/support.py (TemporaryDirectory): Always use our
own version even if 'tempfile.TemporaryDirectory' is provided, because
we need to use 'shutil.rmtree(..., ignore_errors=True)' to avoid it
tripping over gpg-agent deleting its own sockets.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ac4849953860547b06a167ca9612c4de369d02b6

Git commit 9d6825be092f1590f28b5bab462eeb944d9b800c by Justus Winter on 14/03/2017 at 11:20..
python: Make error message more helpful.

* lang/python/tests/run-tests.py: Make the error message shown when we
cannot locate the python module in the build tree more helpful.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/9d6825be092f1590f28b5bab462eeb944d9b800c

Git commit 4572e8d2ac1d3b45e75ce71265c99e591fbf0e28 by Justus Winter on 20/03/2017 at 15:07..
python: Remove superfluous initialization.

* lang/python/tests/support.py (init_gpgme): Remove.  This is an
remnant from the c tests.  Nowadays, the Python bindings initialize
GPGME automagically.
* lang/python/tests/initial.py: Remove call to 'support.init_gpgme'.
* lang/python/tests/t-callbacks.py: Likewise.
* lang/python/tests/t-decrypt-verify.py: Likewise.
* lang/python/tests/t-decrypt.py: Likewise.
* lang/python/tests/t-edit.py: Likewise.
* lang/python/tests/t-encrypt-large.py: Likewise.
* lang/python/tests/t-encrypt-sign.py: Likewise.
* lang/python/tests/t-encrypt-sym.py: Likewise.
* lang/python/tests/t-encrypt.py: Likewise.
* lang/python/tests/t-export.py: Likewise.
* lang/python/tests/t-file-name.py: Likewise.
* lang/python/tests/t-idiomatic.py: Likewise.
* lang/python/tests/t-import.py: Likewise.
* lang/python/tests/t-keylist.py: Likewise.
* lang/python/tests/t-sig-notation.py: Likewise.
* lang/python/tests/t-sign.py: Likewise.
* lang/python/tests/t-signers.py: Likewise.
* lang/python/tests/t-trustlist.py: Likewise.
* lang/python/tests/t-verify.py: Likewise.
* lang/python/tests/t-wait.py: Likewise.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/4572e8d2ac1d3b45e75ce71265c99e591fbf0e28

Git commit e1cf8bab319ba1dea41ba5d711dbb66ffd8e6fd6 by Justus Winter on 20/03/2017 at 15:20..
python: Skip tests if GnuPG is too old.

* lang/python/tests/support.py (assert_gpg_version): New function.
* lang/python/tests/t-callbacks.py: Use the new function to skip the
test if GnuPG is too old.
* lang/python/tests/t-edit.py: Likewise.
* lang/python/tests/t-encrypt-sym.py: Likewise.
* lang/python/tests/t-quick-key-creation.py: Likewise.
* lang/python/tests/t-quick-key-manipulation.py: Likewise.
* lang/python/tests/t-quick-key-signing.py: Likewise.

GnuPG-bug-id: 3008
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/e1cf8bab319ba1dea41ba5d711dbb66ffd8e6fd6

Git commit 16b202d9999591b71fb8bb49f6db10ef96d4cbe8 by Justus Winter on 20/03/2017 at 15:41..
tests: Use 'gpg-agent --allow-loopback-pinentry' if applicable.

* lang/python/tests/Makefile.am (gpg-agent.conf): Do not hard-code the
option.  This breaks gpg-agent from GnuPG 2.0.
* tests/start-stop-agent: Rather, check if the option is supported and
add it to the configuration if it is.

GnuPG-bug-id: 3008
Fixes-commit: bbf19124bbec9eb6298cef2914baae7ac74382fe
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/16b202d9999591b71fb8bb49f6db10ef96d4cbe8

Git commit 57e64d019d993fdeb4323def5352f8ecc98c6fd9 by Justus Winter on 20/03/2017 at 15:53..
python: Fix version check.

* lang/python/tests/support.py (assert_gpg_version): Cope with
non-released versions.

Fixes-commit: e1cf8bab319ba1dea41ba5d711dbb66ffd8e6fd6
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/57e64d019d993fdeb4323def5352f8ecc98c6fd9

Git commit 392e51dd1181d035c19918222da65d08fdb2ee6d by Justus Winter on 20/03/2017 at 16:07..
tests: Fix distcheck.

* tests/start-stop-agent: Do not create 'gpg-agent.conf' if it does
not exist.

Fixes-commit: 16b202d9999591b71fb8bb49f6db10ef96d4cbe8
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/392e51dd1181d035c19918222da65d08fdb2ee6d

Git commit ea9686ec71a2dd2225ce2b6d6d4038821d36205f by Werner Koch on 20/03/2017 at 19:05..
core,cpp: New key flag 'is_de_vs'.

* src/gpgme.h.in (_gpgme_subkey): New flag is_de_vs.
* tests/run-keylist.c (main): Print that flag.
* src/keylist.c (parse_pub_field18): New.
(keylist_colon_handler): Parse compliance flags.
* lang/cpp/src/key.cpp (Key::isDeVs): New.
(Subkey::isDeVs): New.

* lang/cpp/src/key.h (class Key): New method isDeVs.
(class Subkey): New method isDeVs.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ea9686ec71a2dd2225ce2b6d6d4038821d36205f

Git commit 35023f313622fb1b34108dd934e84831c58b81aa by Werner Koch (on behalf of Andre Heinecke) on 21/03/2017 at 08:50..
core: New public API gpgme_op_keylist_from_data_start.

* src/gpgme.h.in: New API gpgme_op_keylist_from_data_start.
* src/libgpgme.vers, src/gpgme.def: Add it.
* src/keylist.c (gpgme_op_keylist_from_data_start): New.
* src/engine-backend.h (engine_ops): Add field 'keylist_data'.  Change
all engines to pass NULL for it.
* src/engine.c (_gpgme_engine_op_keylist_data): New.
* src/engine-gpg.c (gpg_keylist_data): New.
(_gpgme_engine_ops_gpg): Register gpg_keylist_data.

* tests/run-keylist.c (main): New option --from-file.
--

Co-authored-by: Werner Koch <wk at gnupg.org>
GnuPG-bug-id: 2819
https://invent.kde.org/neon/forks/gpgme/-/commit/35023f313622fb1b34108dd934e84831c58b81aa

Git commit fab8b1a166fff7265d8a7a7acbbf5f30d26cc93c by Werner Koch on 21/03/2017 at 09:39..
core: New encryption flag GPGME_ENCRYPT_THROW_KEYIDS.

* src/gpgme.h.in (GPGME_ENCRYPT_THROW_KEYIDS): New flag.
* src/engine-gpg.c (gpg_encrypt): Implement flag
(gpg_encrypt_sign): Implement flag.

* tests/run-encrypt.c (main): New option --throw-keyids.
--

It would be nice to also selectively hide recipients (that is gpg
--hidden-recipient) but our API does not ye allow this because it is
based on key objects.  A possible way to implement that would be a API
to set processing flags into a key but this is complicated due to the
reference counting and thus the possibility that a key object is used
by different context.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fab8b1a166fff7265d8a7a7acbbf5f30d26cc93c

Git commit 55ac5eed9f59081283d34098a9e0ada753d61d59 by Werner Koch on 21/03/2017 at 10:16..
core: Extend gpgme_get_dirinfo to return the gpg-wks-client name.

* src/dirinfo.c (WANT_GPG_WKS_CLIENT_NAME): New const.
(struct dirinfo): New field 'gpg_wks_client_name'.
(get_gpgconf_item): Build it on demand.
(gpgme_get_dirinfo): New value "gpg-wks-client-name" for WHAT.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/55ac5eed9f59081283d34098a9e0ada753d61d59

Git commit f3e8d8a4518de2768692e0b392262d0da6d0fd84 by Justus Winter on 21/03/2017 at 11:55..
python: Wrap 'gpgme_op_keylist_from_data_start'.

* NEWS: Update.
* lang/python/gpg/core.py (Context.keylist): New keyword argument
'source'.  If given, list keys from 'source'.
* lang/python/gpgme.i: Wrap the argument to
'gpgme_op_keylist_from_data_start'.
* lang/python/tests/Makefile.am (py_tests): Add new test.
* lang/python/tests/support.py (EphemeralContext): Do not throw an
error if no agent has been started in the context.
* lang/python/tests/t-keylist-from-data.py: New file.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/f3e8d8a4518de2768692e0b392262d0da6d0fd84

Git commit 421ddd1e6706046c5062417fd69a87e10c9fc0a9 by Werner Koch on 21/03/2017 at 18:03..
core: New API gpgme_op_set_uid_flag.

* src/gpgme.h.in (gpgme_op_set_uid_flag_start): New.
(gpgme_op_set_uid_flag_start): New.
* src/gpgme.def, src/libgpgme.vers: Add them.
* src/genkey.c (addrevuid_start): Change arg revoke to a flag.
(gpgme_op_revuid_start): Pass GENKEY_EXTRAFLAG_REVOKE for the fomer
revoke parameter.
(gpgme_op_revuid): Ditto.
(set_uid_flag): New.
(gpgme_op_set_uid_flag_start): New.
(gpgme_op_set_uid_flag): New.
* src/engine.h (GENKEY_EXTRAFLAG_SETPRIMARY): new.
* src/engine-gpg.c (gpg_adduid): Implement that flag.

* tests/run-genkey.c (main): New command --set-primary.
--

GnuPG-bug-id: 2931
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/421ddd1e6706046c5062417fd69a87e10c9fc0a9

Git commit 104635eb503ec764146731888a6975b4329660fd by Justus Winter on 22/03/2017 at 14:33..
python: Improve Python detection.

* m4/python.m4 (_AM_PYTHON_INTERPRETER_LIST): Prefer the generic
'pythonX' over 'pythonX.Y'.  This way we select the users preferred
version for both flavors.  Prefer 'python' over 'python3' but not over
'python2' so that the algorithm still finds a 'python2' even if
'python' is a Python3.

Fixes-commit: 5189c08af9468cdeb6f16a6ecd0fee53e1e3aa0e
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/104635eb503ec764146731888a6975b4329660fd

Git commit 121873b821636052c10d9e0bd885eb9013c52096 by Andre Heinecke on 22/03/2017 at 15:43..
qt: Initialize library first in tests

* lang/qt/tests/t-support.cpp (QGpgMETest::initTestCase): Initialize
library.
https://invent.kde.org/neon/forks/gpgme/-/commit/121873b821636052c10d9e0bd885eb9013c52096

Git commit 8ddb42ada46f00d8393f6c2df7d6b79a4a5878f0 by Andre Heinecke on 22/03/2017 at 15:43..
cpp: Wrap keylist_from_data

* lang/cpp/data.h, lang/cpp/data.cpp (GpgME::Data::toKeys): New.

--
Doing this in data instead of Context is a bit more idiomatic. But
this could also be added to Context.
https://invent.kde.org/neon/forks/gpgme/-/commit/8ddb42ada46f00d8393f6c2df7d6b79a4a5878f0

Git commit 66c334650bd64fdb72c4bd5975e25b8659d320ec by Andre Heinecke on 22/03/2017 at 15:43..
qt: Add test for Data::toKeys

* lang/qt/tests/t-various.cpp (TestVarious::testKeyFromFile): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/66c334650bd64fdb72c4bd5975e25b8659d320ec

Git commit 6ac1f2cdedb085b4ac9372c1e591497e2e618de4 by Werner Koch on 24/03/2017 at 14:17..
core: New flags GPGME_DECRYPT_UNWRAP and GPGME_ENCRYPT_WRAP.

* src/gpgme.h.in (GPGME_ENCRYPT_WRAP): New const.
(gpgme_decrypt_flags_t): New enum.
(GPGME_DECRYPT_VERIFY): New const
(GPGME_DECRYPT_UNWRAP): New const
(gpgme_op_decrypt_ext_start): New func.
(gpgme_op_decrypt_ext): New func.
* src/decrypt-verify.c (gpgme_op_decrypt_ext_start): New.
(gpgme_op_decrypt_ext): New.
(decrypt_verify_start): Add arg FLAGS.  Replace call to
engine_op_decrypt_verify by the plain decrypt with the flag set.
(gpgme_op_decrypt_verify_start): Pass the flag.
(gpgme_op_decrypt_verify): Pass the flag.
* src/decrypt.c (decrypt_start): Rename to ...
(_gpgme_decrypt_start): this.  Add arg FLAGS.  Pass FLAGS to
engine_op_decrypt.
(gpgme_op_decrypt_start): Adjust for chnage pass 0 for FLAG.
(gpgme_op_decrypt_start): Ditto.
* src/engine.c (_gpgme_engine_op_decrypt_verify): Remove.
(_gpgme_engine_op_decrypt): Add arg FLAGS.
* src/gpgme.def, src/libgpgme.vers: Add new functions.
* src/engine-backend.h (struct engine_ops): Remove member
'decrypt_verify'.  Add FLAGS to 'decrypt'.  Adjust all initialization.
* src/engine-uiserver.c (uiserver_decrypt): Remove.
(uiserver_decrypt_verify): Remove.
(_uiserver_decrypt): Rename to ...
(uiserver_decrypt): this.  Replace arg VERIFY by new arg FLAGS.
* src/engine-gpg.c (gpg_decrypt): Support GPGME_DECRYPT_UNWRAP.
(gpg_encrypt): Support GPGME_ENCRYPT_WRAP.

* tests/run-decrypt.c (main): New option --unwrap.
* tests/run-encrypt.c (main): New option --wrap.
--

Manual testing of that wrap/unwrap feature can be done this way:

 ./run-encrypt --verbose --key Alice /etc/motd > x
 ./run-decrypt --verbose --unwrap x > y
 ./run-encrypt --verbose --key Bob --wrap y > z

1. The message was first encrypted to Alice.
2. Alice decrypts the message receiving a valid OpenPGP message.
3. Alice encrypt that message to Bob

This will also work with encrypted and signed messages; the signature
will be kept intact during re-encryption.  Requires GnuPG 2.1.12.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6ac1f2cdedb085b4ac9372c1e591497e2e618de4

Git commit 8ad37ecc297f208d0a63783c1ffae33ad4c3c81a by Andre Heinecke on 24/03/2017 at 15:51..
cpp: Use gpgme_op_decrypt_ex and add new flags.

* lang/cpp/src/context.cpp: New decrypt and decryptVerify functions
that take flags as arguments. Use new variants in old functions.
(Context::setDecryptionFlags): New helper.
(Context::Private::Private): Initialize new member.
* lang/cpp/src/context_p.h (Context::Private::decryptFlags): New.
* lang/cpp/src/context.h (Context::DecryptFlags): New enum.
(Context::EncryptionFlags): Extend for EncryptWrap.

--
The setDecryptionFlags provides a generic way to set decryption
flags for the whole context. This allows existing code to just
keep using the old functions and modify the decryption behavior
in a central place.
https://invent.kde.org/neon/forks/gpgme/-/commit/8ad37ecc297f208d0a63783c1ffae33ad4c3c81a

Git commit 5493164f8665fabf795f3b34a7084770a38ae940 by Andre Heinecke on 24/03/2017 at 15:58..
qt: Add unittest for decrypt unwrap

* lang/qt/tests/t-encrypt.cpp
(EncryptTest::testEncryptDecryptNowrap): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/5493164f8665fabf795f3b34a7084770a38ae940

Git commit 18b7906078cf08962c54c1e711cf2d91a24fd4e5 by Andre Heinecke on 24/03/2017 at 16:24..
cpp: Respect decrypt flags in new functions

* lang/cpp/src/context.cpp: Respect directly provided flags
in the new decrypt functions.

--
Overlooked in the initial commit. Also fixed the according
unused variable warnings.
https://invent.kde.org/neon/forks/gpgme/-/commit/18b7906078cf08962c54c1e711cf2d91a24fd4e5

Git commit b6d544995047f9dce67316e4cdb12e9a6a9d04e4 by Andre Heinecke on 24/03/2017 at 16:25..
Mention new cpp changes in the NEWS

--
Somone that calls a function startCombinedDecryptionAndVerification
should be required to always type it without autocompletion.
https://invent.kde.org/neon/forks/gpgme/-/commit/b6d544995047f9dce67316e4cdb12e9a6a9d04e4

Git commit 348da58fe0c3656e6177c98fef6b4c4331326c8e by Justus Winter on 27/03/2017 at 09:11..
python: Skip tests if running with GnuPG < 2.1.12.

* lang/python/tests/support.py (assert_gpg_version): Fix error
message.  Skip all tests when we use GnuPG older than 2.1.12.

GnuPG-bug-id: 3008
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/348da58fe0c3656e6177c98fef6b4c4331326c8e

Git commit 57d60b20f16dd5f1bccbbcaa0a6ed75a554a6414 by Andre Heinecke on 27/03/2017 at 16:11..
qt: Disable testEncryptDecryptNowrap

* lang/qt/tests/t-encrypt.cpp (EncryptTest::testEncryptDecryptNowrap):
Disable test.

--
This test produces failures under CI/ASAN conditions as the
verify after the unwrap returns an error. As we currently
don't have time to look into this more it's disabled for now.
Similar to the testMixedEncryptDecrypt.
https://invent.kde.org/neon/forks/gpgme/-/commit/57d60b20f16dd5f1bccbbcaa0a6ed75a554a6414

Git commit 813ae5fa2d712aa9679b791c67c9c1c43d36ffe4 by Werner Koch on 28/03/2017 at 09:41..
core: Prepare for new key listing data send by gpg.

* src/gpgme.h.in (gpgme_user_id_t): New fields 'origin' and
'last_update'.
(gpgme_key_t): New fields 'origin' and 'last_update'.
* src/conversion.c (_gpgme_parse_timestamp_ul): New.
* src/keylist.c (keylist_colon_handler): Parse fields 19 and 20.

* tests/run-keylist.c (main): Print new fields.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/813ae5fa2d712aa9679b791c67c9c1c43d36ffe4

Git commit a2ccb3172896a90bc27c95964ef94bd7c0924802 by Andre Heinecke on 28/03/2017 at 10:34..
Revert "qt: Disable testEncryptDecryptNowrap"

This reverts commit 57d60b20f16dd5f1bccbbcaa0a6ed75a554a6414.
https://invent.kde.org/neon/forks/gpgme/-/commit/a2ccb3172896a90bc27c95964ef94bd7c0924802

Git commit aa0390ec3b910bbbc323a15ec3c3351e77785a9a by Werner Koch on 28/03/2017 at 14:21..
Release 1.9.0

* configure.ac <c>: Bump LT version to C29/A18/R0.
<cpp>: Bump LT version to C10/A4/R0.
<qt>: Bump LT version to C9/A2/R0.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/aa0390ec3b910bbbc323a15ec3c3351e77785a9a

Git commit 38ad76e96acf0a0565ffc4ef5d1bd6412e38e29a by Werner Koch on 28/03/2017 at 14:38..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/38ad76e96acf0a0565ffc4ef5d1bd6412e38e29a

Git commit 1b55e90d422983f303e1d243daeac15e6f916d20 by Werner Koch on 28/03/2017 at 14:49..
Merge branch 'gpgme-1.9-branch'

--
https://invent.kde.org/neon/forks/gpgme/-/commit/1b55e90d422983f303e1d243daeac15e6f916d20

Git commit a13e4abe9463579ef23d1acea39a093abfc6528d by Justus Winter on 28/03/2017 at 15:59..
tests: Make error message more helpful.

* tests/gpg/t-keylist.c (main): Print number of returned and expected
keys.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a13e4abe9463579ef23d1acea39a093abfc6528d

Git commit 7e9f7752c992f957ccfde3b274865c633096e3bb by Justus Winter on 28/03/2017 at 15:59..
tests: Run the threading tests only on UNIX.

* tests/gpg/Makefile.am (tests_unix): Add 't-thread-keylist' and
't-thread-keylist-verify'.
(c_tests): Drop them here.
--

The tests use pthreads and we suspect problems with MinGW's wrappers.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/7e9f7752c992f957ccfde3b274865c633096e3bb

Git commit 9786e3a96e6772166f3523e74a748b9db20fae7c by Justus Winter (on behalf of Alon Bar-Lev) on 29/03/2017 at 09:28..
python,build: Reinstate prepare target.

* lang/python/Makefile.am: Fix 'prepare' target.
* lang/python/setup.py.in: Use 'abs_top_builddir' instead of guessing
the path.
--

'prepare' will prepare target at PREPAREDIR.  The automake integration
will also make use of prepare target.  Downstream distributors may
also make use of prepare target.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/9786e3a96e6772166f3523e74a748b9db20fae7c

Git commit 2c063a8d60418ee59ae80da221420c6f3fa19abb by Andre Heinecke on 30/03/2017 at 12:44..
qt: Handle if gpg does not support tofu in test

* lang/qt/src/t-tofuinfo.cpp (TestTofuInfo::testSupported): Treat
it as unsupported if secret keylisting already fails.

--
The likely cause of this is that the agent can't be started
because the trust model is unsupported. Other tests check
that keylisting actually works.
https://invent.kde.org/neon/forks/gpgme/-/commit/2c063a8d60418ee59ae80da221420c6f3fa19abb

Git commit 159505a28864399cc5405d9f85f35ab011a3259e by Justus Winter on 30/03/2017 at 13:06..
python: Fix skipping tests if running with GnuPG < 2.1.12.

* final.py: Import 'support.py' for the side-effect of checking the
GnuPG version.
* t-data.py: Likewise.
* t-protocol-assuan.py: Likewise.
* t-wrapper.py: Likewise.
* t-callbacks.py: Avoid warning about 'support' being unused.
* t-edit.py: Likewise.
* t-encrypt-sym.py: Likewise.
* t-file-name.py: Likewise.
* t-idiomatic.py: Likewise.
* t-sig-notation.py: Likewise.
* t-trustlist.py: Likewise.
* t-verify.py: Likewise.
* t-wait.py: Likewise.
* t-keylist-from-data.py: Trim unused imports.

GnuPG-bug-id: 3008
Fixes-commit: 348da58fe0c3656e6177c98fef6b4c4331326c8e
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/159505a28864399cc5405d9f85f35ab011a3259e

Git commit f8a9ecc6290ebd73fa36647cdfca285fe4d94a62 by Andre Heinecke on 30/03/2017 at 14:22..
python: Don't treat skipped tests as error

* lang/python/tests/run-tests.py (failed): Don't count skipped tests
for the return code.
https://invent.kde.org/neon/forks/gpgme/-/commit/f8a9ecc6290ebd73fa36647cdfca285fe4d94a62

Git commit 5d4f977dac542340c877fdd4b1304fa8f6e058e6 by Andre Heinecke (on behalf of Igor Gnatenko) on 03/04/2017 at 10:03..
qt: pass fmt to gpgrt_asprintf()

* lang/qt/src/dn.cpp (parse_dn_part): Add fmt argument instead of
using name directly.

GnuPG-Bug-Id: 3023
Signed-off-by: Igor Gnatenko <ignatenkobrain at fedoraproject.org>
Signed-off-by: Andre Heinecke <aheinecke at intevation.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/5d4f977dac542340c877fdd4b1304fa8f6e058e6

Git commit 50565982cdd502c3852fcc6f598932bd32b5cdc3 by Werner Koch (on behalf of Pietro Cerutti) on 03/04/2017 at 10:25..
FreeBSD's closefrom(2) does not return errors
https://invent.kde.org/neon/forks/gpgme/-/commit/50565982cdd502c3852fcc6f598932bd32b5cdc3

Git commit adfa09699c7ecad5dec5b79944a59291eaec75b4 by Justus Winter on 05/04/2017 at 12:48..
Fix typo.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/adfa09699c7ecad5dec5b79944a59291eaec75b4

Git commit 801d7d8c5dd530d26ad6c4bcc94d986e6e022da4 by Justus Winter (on behalf of Alon Bar-Lev) on 05/04/2017 at 12:48..
python: Generate files into build directory

* lang/python/setup.py.in: Generate files within BuildExtFirstHack
adjust build flags at this point instead of global.
* lang/python/Makefile.am: Remove logic of separate source directory per
python version in favor of build directory.
* lang/python/tests/run-tests.py: Adjust build directory location.
--

Generate files into build directory, leaving the source directory clean.
Use the same source directory for multiple python version build. Result
of 'prepare' target is a standard distutil layout that can be used
easily by downstream to build all python targets in-place.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/801d7d8c5dd530d26ad6c4bcc94d986e6e022da4

Git commit e7d9c0c3d773f826dbd2ed417d04e25c410f3374 by Justus Winter on 05/04/2017 at 14:41..
python: Fix vpath builds, fix distcheck.

* lang/python/gpgme-h-clean.py: Delete file.
* lang/python/MANIFEST.in: Adapt accordingly.
* lang/python/Makefile.am (EXTRA_DIST): Likewise.
(COPY_FILES_GPG): Bring variable back.
(copystamp): Copy files.
(clean-local): Delete copied files.
(install-exec-local): Do not create and install list of installed
files.
(uninstall-local): Instead, create some explicit rules to uninstall
the extension.
* lang/python/setup.py.in: Parse arguments.  Locate files either in
the source directory, or in the build base directory.  Inline the code
from 'gpgme-h-clean.py'.  Copy 'helpers.c', add source directory as
include directory.

Fixes-commit: 801d7d8c5dd530d26ad6c4bcc94d986e6e022da4
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/e7d9c0c3d773f826dbd2ed417d04e25c410f3374

Git commit 49195c487e6c923f7137f092b982e7d833d98de6 by Justus Winter (on behalf of Alon Bar-Lev) on 07/04/2017 at 10:12..
python: simplify build, some fixups

* lang/python/gpg/version.py.in: Rename to lang/python/version.py.in.
configure.ac: Generate version.py.in in lang/python.
* lang/python/MANIFEST.in: Include version.py explicitly.
* lang/python/gpg: Rename to 'src'.
* lang/python/Makefile.am: Do not copy source files, do not use absolute
directories, support lib64 in uninstall, clean also dist directory, use
symlink for gpg src.
* lang/python/setup.py.in: Use builddir, copy sources into builddir,
copy version.py into module.
--

Simplify build to symlink the gpg sources into builddir instead of
copying. This requires handling of version.py as generated file.

In addition apply some cleanups: Drop the absolution pathes, clean the
dist directory as well, support lib64 for sitelib at uninstall.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/49195c487e6c923f7137f092b982e7d833d98de6

Git commit 365c649ad073f2697438dc014160943ae31a1447 by Justus Winter (on behalf of Alon Bar-Lev) on 10/04/2017 at 12:35..
python: support .pydistutils.cfg mode

* lang/python/setup.py.in: Do not parse arguments.

--

The distutils settings can come from either command-line or
configuration file. Parsing parameters is not working in all cases.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/365c649ad073f2697438dc014160943ae31a1447

Git commit ebefc6cbf937d14ced65f7ded79c4ba901507d23 by Justus Winter (on behalf of Alon Bar-Lev) on 10/04/2017 at 12:42..
tests: Do not use check-local magic as dependency

* tests/gpg/Makefile.am: Use BUILT_SOURCES instead of check-local
and initial.test.
* lang/qt/tests/Makefile.am: Ditto.

--

This fixes "make dist" failure when source tree is clean:
  git clean -dxf
  autoreconf -ivf
  ./configure
  make dist

BUILT_SOURCES should be used when file as generated without explicit
dependency. The check-local is all-am dependency, this means that it
will be resolved also in "make dist".

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ebefc6cbf937d14ced65f7ded79c4ba901507d23

Git commit 25e6444b3f4601c7821beab06bc4520deacb007b by Justus Winter (on behalf of Alon Bar-Lev) on 10/04/2017 at 12:44..
python: Remove usage of PYTHON_VERSIONS

* configure.ac: Remove PYTHON_VERSIONS subst.
* lang/python/Makefile.am: Use basename of python as builddir prefix.
* lang/python/tests/run-tests.py: Likewise.

--

Two variables needs be at sync PYTHONS and PYTHON_VERSIONS, these may go
out of sync in some cases, for example in Gentoo where default python is
3.4 we get:

PYTHON='/usr/bin/python2'
PYTHONS='/usr/bin/python /usr/bin/python2'
PYTHON_VERSIONS='2.7 3.4'

We can use the basename of the python interpreter to achieve similar
effect without having to sync indexes between these two variables.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/25e6444b3f4601c7821beab06bc4520deacb007b

Git commit df8433bffa9e669897243f08edf7845762250e4a by Justus Winter (on behalf of Alon Bar-Lev) on 10/04/2017 at 12:44..
python: Remove unneeded stats copy

* lang/python/setup.py.in: errors.i, gpgme.h are generated and always
newer than the original.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/df8433bffa9e669897243f08edf7845762250e4a

Git commit 7309ce6f5f7c86570953a141965d4f54cd9ad9a0 by Justus Winter (on behalf of Alon Bar-Lev) on 10/04/2017 at 12:47..
python: Read gpg-error.h using the pre-processor

* lang/python/setup.py.in: Read gpg-error.h using the pre-processor.

--

The libgpg-error may be installed in multilib configuration in which
there is a wrapper header at /usr/include that includes the actual
header at /usr/include/*. This causes invalid errors.i generation.

Let the pre-processor extract the header content instead reading it
explicitly.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/7309ce6f5f7c86570953a141965d4f54cd9ad9a0

Git commit 3cc90b67fa970e716c8672ec5c5f591fa11ab216 by Justus Winter (on behalf of Alon Bar-Lev) on 10/04/2017 at 12:48..
python: Support alternatate libdir for tests

* lang/python/tests/run-tests.py: Add --python-libdir optional
parameter.

--

This will make the python tests usable for downstream that build python
module outside of autotools build system.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3cc90b67fa970e716c8672ec5c5f591fa11ab216

Git commit db476e923415f8e458720aaafde7234b802a33ab by Justus Winter on 10/04/2017 at 13:20..
python: Fix distcheck.

* lang/python/Makefile.am (uninstall-local): Explicitly request the
scheme 'posix_prefix'.  On Python2.7 the default scheme is
'posix_local', breaking distcheck.

Fixes-commit: 25e6444b3f4601c7821beab06bc4520deacb007b
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/db476e923415f8e458720aaafde7234b802a33ab

Git commit 63bec9f48666d811b65e2ef5cc63f8b731249088 by Justus Winter on 10/04/2017 at 13:24..
python: Prune CLEANFILES.

--
Fixes-commit: e7d9c0c3d773f826dbd2ed417d04e25c410f3374
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/63bec9f48666d811b65e2ef5cc63f8b731249088

Git commit d785c053a982bddefd7014dc6856d1af345fe9fb by Justus Winter (on behalf of Alon Bar-Lev) on 11/04/2017 at 08:16..
python: fix run-tests missing python_libdir

* lang/python/tests/run-tests.py: Set python_libdir if --python-libdir
is set.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/d785c053a982bddefd7014dc6856d1af345fe9fb

Git commit a827382cafe7f1425455dcc8bf5ef049172eb493 by Justus Winter (on behalf of Alon Bar-Lev) on 11/04/2017 at 08:24..
python: use autoconf pre-processor when building via autoconf

* configure.ac: Add AC_PROG_CPP.
* lang/python/Makefile.am: Set CPP environment for setup.py to use.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a827382cafe7f1425455dcc8bf5ef049172eb493

Git commit 979d48e823357af9999a2adb34d75adaade8dec2 by Justus Winter on 11/04/2017 at 10:24..
python: Skip TOFU test if not supported by GnuPG.

* lang/python/tests/support.py (have_tofu_support): New function.
* lang/python/tests/t-quick-key-manipulation.py: Skip TOFU test if not
supported by GnuPG.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/979d48e823357af9999a2adb34d75adaade8dec2

Git commit ac28e66f46132ae4a854d04b2f17acd4d55e4296 by Justus Winter on 24/04/2017 at 13:29..
tests: Update encrypted sample files.

* tests/gpg/cipher-1.asc: Update file.
* tests/gpg/cipher-2.asc: Likewise.
--
Convert the plaintext to UTF-8 and re-create the encrypted file.

Fixes-commit: a11450eb048df79a3f2b00ebef6d7cab07ad5054
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ac28e66f46132ae4a854d04b2f17acd4d55e4296

Git commit 8d61aba1fe0379ba14494f8ae2011ba531554ef4 by Andre Heinecke on 24/04/2017 at 14:46..
doc: Improve doc on passphrase_cb / pinentry mode

* doc/gpgme.texi (Passphrase Callback): Mention pinentry_mode and
restrictions.
(Pinentry Mode): Fix wording and clarify versions that need
loopback mode for passphrase_cb to work.
https://invent.kde.org/neon/forks/gpgme/-/commit/8d61aba1fe0379ba14494f8ae2011ba531554ef4

Git commit 70035834326d0d04a5904ae01bc3757e577facf4 by Andre Heinecke on 25/04/2017 at 08:24..
Change copyright from Intevation to BSI

* lang/cpp/src/gpggencardkeyinteractor.cpp,
lang/cpp/src/gpggencardkeyinteractor.h,
lang/cpp/src/gpgmepp_export.h,
lang/cpp/src/swdbresult.cpp,
lang/cpp/src/swdbresult.h,
lang/cpp/src/tofuinfo.cpp,
lang/cpp/src/tofuinfo.h,
lang/qt/src/abstractimportjob.h,
lang/qt/src/adduseridjob.h,
lang/qt/src/changeexpiryjob.h,
lang/qt/src/changeownertrustjob.h,
lang/qt/src/changepasswdjob.h,
lang/qt/src/cryptoconfig.cpp,
lang/qt/src/cryptoconfig.h,
lang/qt/src/dataprovider.cpp,
lang/qt/src/dataprovider.h,
lang/qt/src/decryptjob.h,
lang/qt/src/decryptverifyjob.h,
lang/qt/src/deletejob.h,
lang/qt/src/dn.cpp,
lang/qt/src/dn.h,
lang/qt/src/downloadjob.h,
lang/qt/src/encryptjob.h,
lang/qt/src/exportjob.h,
lang/qt/src/hierarchicalkeylistjob.h,
lang/qt/src/importfromkeyserverjob.h,
lang/qt/src/importjob.h,
lang/qt/src/job.cpp,
lang/qt/src/job.h,
lang/qt/src/keyformailboxjob.h,
lang/qt/src/keygenerationjob.h,
lang/qt/src/keylistjob.h,
lang/qt/src/listallkeysjob.h,
lang/qt/src/multideletejob.h,
lang/qt/src/protocol.h,
lang/qt/src/protocol_p.h,
lang/qt/src/qgpgme_export.h,
lang/qt/src/qgpgmeadduseridjob.cpp,
lang/qt/src/qgpgmeadduseridjob.h,
lang/qt/src/qgpgmebackend.cpp,
lang/qt/src/qgpgmebackend.h,
lang/qt/src/qgpgmechangeexpiryjob.cpp,
lang/qt/src/qgpgmechangeexpiryjob.h,
lang/qt/src/qgpgmechangeownertrustjob.cpp,
lang/qt/src/qgpgmechangeownertrustjob.h,
lang/qt/src/qgpgmechangepasswdjob.cpp,
lang/qt/src/qgpgmechangepasswdjob.h,
lang/qt/src/qgpgmedecryptjob.cpp,
lang/qt/src/qgpgmedecryptjob.h,
lang/qt/src/qgpgmedecryptverifyjob.cpp,
lang/qt/src/qgpgmedecryptverifyjob.h,
lang/qt/src/qgpgmedeletejob.cpp,
lang/qt/src/qgpgmedeletejob.h,
lang/qt/src/qgpgmedownloadjob.cpp,
lang/qt/src/qgpgmedownloadjob.h,
lang/qt/src/qgpgmeencryptjob.cpp,
lang/qt/src/qgpgmeencryptjob.h,
lang/qt/src/qgpgmeexportjob.cpp,
lang/qt/src/qgpgmeexportjob.h,
lang/qt/src/qgpgmeimportfromkeyserverjob.cpp,
lang/qt/src/qgpgmeimportfromkeyserverjob.h,
lang/qt/src/qgpgmeimportjob.cpp,
lang/qt/src/qgpgmeimportjob.h,
lang/qt/src/qgpgmekeyformailboxjob.cpp,
lang/qt/src/qgpgmekeyformailboxjob.h,
lang/qt/src/qgpgmekeygenerationjob.cpp,
lang/qt/src/qgpgmekeygenerationjob.h,
lang/qt/src/qgpgmekeylistjob.cpp,
lang/qt/src/qgpgmekeylistjob.h,
lang/qt/src/qgpgmelistallkeysjob.cpp,
lang/qt/src/qgpgmelistallkeysjob.h,
lang/qt/src/qgpgmenewcryptoconfig.cpp,
lang/qt/src/qgpgmenewcryptoconfig.h,
lang/qt/src/qgpgmerefreshkeysjob.cpp,
lang/qt/src/qgpgmerefreshkeysjob.h,
lang/qt/src/qgpgmesecretkeyexportjob.cpp,
lang/qt/src/qgpgmesecretkeyexportjob.h,
lang/qt/src/qgpgmesignencryptjob.cpp,
lang/qt/src/qgpgmesignencryptjob.h,
lang/qt/src/qgpgmesignjob.cpp,
lang/qt/src/qgpgmesignjob.h,
lang/qt/src/qgpgmesignkeyjob.cpp,
lang/qt/src/qgpgmesignkeyjob.h,
lang/qt/src/qgpgmetofupolicyjob.cpp,
lang/qt/src/qgpgmetofupolicyjob.h,
lang/qt/src/qgpgmeverifydetachedjob.cpp,
lang/qt/src/qgpgmeverifydetachedjob.h,
lang/qt/src/qgpgmeverifyopaquejob.cpp,
lang/qt/src/qgpgmeverifyopaquejob.h,
lang/qt/src/qgpgmewkspublishjob.cpp,
lang/qt/src/qgpgmewkspublishjob.h,
lang/qt/src/refreshkeysjob.h,
lang/qt/src/signencryptjob.h,
lang/qt/src/signjob.h,
lang/qt/src/signkeyjob.h,
lang/qt/src/specialjob.h,
lang/qt/src/threadedjobmixin.cpp,
lang/qt/src/threadedjobmixin.h,
lang/qt/src/tofupolicyjob.h,
lang/qt/src/verifydetachedjob.h,
lang/qt/src/verifyopaquejob.h,
lang/qt/src/wkspublishjob.h,
lang/qt/tests/run-keyformailboxjob.cpp,
lang/qt/tests/t-config.cpp,
lang/qt/tests/t-encrypt.cpp,
lang/qt/tests/t-keylist.cpp,
lang/qt/tests/t-keylocate.cpp,
lang/qt/tests/t-ownertrust.cpp,
lang/qt/tests/t-support.cpp,
lang/qt/tests/t-support.h,
lang/qt/tests/t-tofuinfo.cpp,
lang/qt/tests/t-various.cpp,
lang/qt/tests/t-verify.cpp,
lang/qt/tests/t-wkspublish.cpp,
tests/gpg/t-encrypt-mixed.c,
tests/gpg/t-thread-keylist-verify.c,
tests/gpg/t-thread-keylist.c,
tests/run-decrypt.c: Change Intevation GmbH copyright to BSI.

--
This should make it more transparent where the BSI is the actual
copyright holder as the code was mostly developed as part of a
development contract.
https://invent.kde.org/neon/forks/gpgme/-/commit/70035834326d0d04a5904ae01bc3757e577facf4

Git commit 28734240e2a2ce67b64df55364f35e1648376311 by Andre Heinecke on 25/04/2017 at 11:03..
qt, cpp: Add additional copyright BSI notes

* lang/cpp/Makefile.am,
lang/cpp/src/Makefile.am,
lang/cpp/src/callbacks.cpp,
lang/cpp/src/callbacks.h,
lang/cpp/src/configuration.cpp,
lang/cpp/src/configuration.h,
lang/cpp/src/context_glib.cpp,
lang/cpp/src/context_p.h,
lang/cpp/src/context_qt.cpp,
lang/cpp/src/context_vanilla.cpp,
lang/cpp/src/data_p.h,
lang/cpp/src/decryptionresult.cpp,
lang/cpp/src/decryptionresult.h,
lang/cpp/src/defaultassuantransaction.cpp,
lang/cpp/src/defaultassuantransaction.h,
lang/cpp/src/editinteractor.cpp,
lang/cpp/src/editinteractor.h,
lang/cpp/src/encryptionresult.cpp,
lang/cpp/src/encryptionresult.h,
lang/cpp/src/engineinfo.cpp,
lang/cpp/src/engineinfo.h,
lang/cpp/src/error.h,
lang/cpp/src/eventloopinteractor.cpp,
lang/cpp/src/eventloopinteractor.h,
lang/cpp/src/exception.cpp,
lang/cpp/src/exception.h,
lang/cpp/src/global.h,
lang/cpp/src/gpgadduserideditinteractor.cpp,
lang/cpp/src/gpgadduserideditinteractor.h,
lang/cpp/src/gpgagentgetinfoassuantransaction.cpp,
lang/cpp/src/gpgagentgetinfoassuantransaction.h,
lang/cpp/src/gpgmefw.h,
lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp,
lang/cpp/src/gpgsetexpirytimeeditinteractor.h,
lang/cpp/src/gpgsetownertrusteditinteractor.cpp,
lang/cpp/src/gpgsetownertrusteditinteractor.h,
lang/cpp/src/gpgsignkeyeditinteractor.cpp,
lang/cpp/src/gpgsignkeyeditinteractor.h,
lang/cpp/src/importresult.cpp,
lang/cpp/src/importresult.h,
lang/cpp/src/interfaces/assuantransaction.h,
lang/cpp/src/interfaces/dataprovider.h,
lang/cpp/src/interfaces/passphraseprovider.h,
lang/cpp/src/interfaces/progressprovider.h,
lang/cpp/src/keygenerationresult.cpp,
lang/cpp/src/keygenerationresult.h,
lang/cpp/src/keylistresult.cpp,
lang/cpp/src/keylistresult.h,
lang/cpp/src/notation.h,
lang/cpp/src/result.h,
lang/cpp/src/result_p.h,
lang/cpp/src/scdgetinfoassuantransaction.cpp,
lang/cpp/src/scdgetinfoassuantransaction.h,
lang/cpp/src/signingresult.cpp,
lang/cpp/src/signingresult.h,
lang/cpp/src/trustitem.cpp,
lang/cpp/src/trustitem.h,
lang/cpp/src/util.h,
lang/cpp/src/verificationresult.cpp,
lang/cpp/src/verificationresult.h,
lang/cpp/src/vfsmountresult.cpp,
lang/qt/Makefile.am,
lang/qt/doc/Makefile.am,
lang/qt/src/Makefile.am,
lang/qt/src/defaultkeygenerationjob.h,
lang/qt/tests/Makefile.am: Add missing copyright.

--
Moving the qt / cpp bindings into GPGME contained global
changes that modified nearly every source file. To reflect
that the copyright year / note should also be updated.
https://invent.kde.org/neon/forks/gpgme/-/commit/28734240e2a2ce67b64df55364f35e1648376311

Git commit b8f97966f667523aa237a4b4b81d88f7907a93ee by Daniel Kahn Gillmor on 26/04/2017 at 00:29..
New upstream version 1.9.0
https://invent.kde.org/neon/forks/gpgme/-/commit/b8f97966f667523aa237a4b4b81d88f7907a93ee

Git commit bce2bdbc572d7d82e9bd0135e10abe30d70f6729 by Daniel Kahn Gillmor on 26/04/2017 at 00:30..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/bce2bdbc572d7d82e9bd0135e10abe30d70f6729

Git commit a9e51285b68e02339efc96b76d88339760da81e6 by Daniel Kahn Gillmor on 26/04/2017 at 00:31..
Merge branch 'upstream' into experimental
https://invent.kde.org/neon/forks/gpgme/-/commit/a9e51285b68e02339efc96b76d88339760da81e6

Git commit 91957bbd52bf6309f4792db429a2581ce0f36daf by Daniel Kahn Gillmor on 26/04/2017 at 00:34..
drop patch already merged upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/91957bbd52bf6309f4792db429a2581ce0f36daf

Git commit 9ec5f6c367db9b828113098f811a6f603f5accbd by Daniel Kahn Gillmor on 26/04/2017 at 00:34..
refresh patch
https://invent.kde.org/neon/forks/gpgme/-/commit/9ec5f6c367db9b828113098f811a6f603f5accbd

Git commit ff2fab5f401b4fcbb12a6364d5772df56bb5271f by Daniel Kahn Gillmor on 26/04/2017 at 00:42..
avoid format warning during build
https://invent.kde.org/neon/forks/gpgme/-/commit/ff2fab5f401b4fcbb12a6364d5772df56bb5271f

Git commit 07f9d9f7ef7ed82817135ab6963fc06c13bb88e7 by Daniel Kahn Gillmor on 26/04/2017 at 00:50..
update symbols files
https://invent.kde.org/neon/forks/gpgme/-/commit/07f9d9f7ef7ed82817135ab6963fc06c13bb88e7

Git commit df4eb611e33dcab7bebf07b13734c7db7ccf40da by Andre Heinecke on 03/05/2017 at 08:14..
core: Don't split gpgconf strings on comma

* src/engine-gpgconf.c (gpgconf_parse_option): Don't split
strings on comma.

--
This only affects values where the main type is string. Values
with the alt_type string but another main type are still split
to keep lists (e.g. groups) working.
https://invent.kde.org/neon/forks/gpgme/-/commit/df4eb611e33dcab7bebf07b13734c7db7ccf40da

Git commit b56f398eff4e3e70dea714c3174a5512dd9bcf33 by Andre Heinecke on 10/05/2017 at 08:18..
qt, tests: Don't use internal API

* lang/qt/tests/t-encrypt.cpp, lang/qt/tests/t-tofuinfo.cpp:
Only use exported API.

--
With the Job::Context hack we no longer need to use internal API.
https://invent.kde.org/neon/forks/gpgme/-/commit/b56f398eff4e3e70dea714c3174a5512dd9bcf33

Git commit cc2ef3d07c0d261bb9e8e8c0f2706e1a08e4ec53 by Andre Heinecke on 10/05/2017 at 08:22..
qt: Undeprecate API that I find useful

* lang/qt/src/decryptjob.h,
lang/qt/src/decryptverifyjob.h,
lang/qt/src/signencryptjob.h,
lang/qt/src/verifydetachedjob.h,
lang/qt/src/verifyopaquejob.h: Undeprecate ByteArray based API.

--
While an IODevice may be more performant the ByteArray API is
a very easy way to get started with QGpgME as it allows you
basically to encrypt / decrypt any QString.

This also fixes a ton of deprecation warnings in KDE where this
API is used all over the place.
https://invent.kde.org/neon/forks/gpgme/-/commit/cc2ef3d07c0d261bb9e8e8c0f2706e1a08e4ec53

Git commit 5e27bf98b4c48cf6a239bcc94b7b67515ff339e7 by Andre Heinecke on 10/05/2017 at 08:24..
qt: Add a missing include <functional>

* lang/qt/src/qgpgmenewcryptoconfig.cpp: Include functional.

--
This is intended to fix compilation against the c++ stdlib from
Gentoo / GCC 7.

Patch provided by Martin Väth.
GnuPG-Bug-Id: T3151
https://invent.kde.org/neon/forks/gpgme/-/commit/5e27bf98b4c48cf6a239bcc94b7b67515ff339e7

Git commit 093b5497b7231590ce91ccf73ba64ebc0757f9e9 by Justus Winter on 10/05/2017 at 13:23..
qt: Stop agent on clean.

* lang/qt/tests/Makefile.am (clean-local): Stop agent.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/093b5497b7231590ce91ccf73ba64ebc0757f9e9

Git commit 15adff073bb89dc032d8342cfbbdad2850943f52 by Justus Winter on 10/05/2017 at 13:49..
tests: Harmonize test suites.

* lang/python/tests/Makefile.am: Create test environment as part of
'make all'.
* tests/gpg/Makefile.am: Make sure the private keystore is created
first.
* tests/gpgsm/Makefile.am: Create test environment as part of
'make all'.  Make sure the private keystore is created
first.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/15adff073bb89dc032d8342cfbbdad2850943f52

Git commit a226eca84670ef4e171c3a54e7caefb3a89254a4 by Justus Winter on 10/05/2017 at 13:52..
tests: Make sure to kill all previously running daemons.

* lang/python/tests/Makefile.am: Kill all previously running daemons
before creating the private key store.
* lang/qt/tests/Makefile.am: Likewise.
* tests/gpg/Makefile.am: Likewise.
* tests/gpgsm/Makefile.am: Likewise.
--

Now that the daemons sockets are no longer created in the GNUPGHOME,
we cannot rely on cleaning the build directory to make sure they are
shut down.  Therefore, we explicitly kill any running daemons when
creating the test environment.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a226eca84670ef4e171c3a54e7caefb3a89254a4

Git commit 6b4dd3b929ac23271bfa96edb9dbb142eca0a30f by Justus Winter on 10/05/2017 at 14:19..
python: Fix test environment creation.

* lang/python/tests/Makefile.am (pubring-stamp): Do not depend on the
configuration files, this can trigger superfluous rebuilds.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/6b4dd3b929ac23271bfa96edb9dbb142eca0a30f

Git commit a9b4c0ad0d1085ff76742e44cf0cf926e89d1f4c by Justus Winter on 10/05/2017 at 14:31..
tests: Remove remnants of 'check-local'.

* tests/gpgsm/Makefile.am (check-local): Drop rule and the dependency
on it.
--
Previously, the test environment was created during 'make check'.
Nowadays we create it using 'BUILT_SOURCES' during 'make all'.  Drop
remnant of the previous method.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/a9b4c0ad0d1085ff76742e44cf0cf926e89d1f4c

Git commit 4c30f113362a6b00f21a3795e155f5c6d5d70715 by Daniel Kahn Gillmor on 15/05/2017 at 18:17..
Remove Jose Carlos Garcia Sogo from Uploaders (Closes: #862622)

Thanks to Jose Carlos Garcia Sogo for all his past work on the
packaging!
https://invent.kde.org/neon/forks/gpgme/-/commit/4c30f113362a6b00f21a3795e155f5c6d5d70715

Git commit 9136a5110daef2747a42bef31fbe8544e6a46a5e by Daniel Kahn Gillmor on 17/05/2017 at 00:19..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/9136a5110daef2747a42bef31fbe8544e6a46a5e

Git commit 84a203e60b9935bd8536cd2832fbc55d7f011341 by Justus Winter on 18/05/2017 at 10:22..
python: Fix build in certain cases.

* lang/python/setup.py.in: Prepend the Python build dir to the list of
include directories so that it takes precedence over any other include
directory.
--
Fixes the build in case an older 'gpgme.h' is installed and is picked
up by the compiler when compiling the Python module.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/84a203e60b9935bd8536cd2832fbc55d7f011341

Git commit 92574406fb5fd456bc5bf85c7d906f06c4680632 by Justus Winter on 30/05/2017 at 12:38..
core: Sort the status table.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/92574406fb5fd456bc5bf85c7d906f06c4680632

Git commit 05fa2a9c7764b28fdac35eb72631439df948ca0e by Justus Winter on 01/06/2017 at 12:16..
Add flag 'is_de_vs' to decryption results and signatures.

* NEWS: Update.
* lang/cpp/src/decryptionresult.cpp (DecryptionResult::isDeVs): New
function.
* lang/cpp/src/decryptionresult.h (DecryptionResult::isDeVs): New
prototype.
* lang/cpp/src/verificationresult.cpp (Signature::isDeVs): New
function.
* lang/cpp/src/verificationresult.h (Signature::isDeVs): New
prototype.
* lang/python/src/results.py (DecryptResult): Turn field 'is_de_vs'
into a boolean.
(Signature): Likewise.
* src/decrypt.c (_gpgme_decrypt_status_handler): Handle the new
compliance status line.
* src/verify.c (_gpgme_verify_status_handler): Likewise.
* src/gpgme.h.in (gpgme_status_code_t): Add new status codes for the
new status lines.
* src/keylist.c (parse_pub_field18): Move function to 'util.h'.
(keylist_colon_handler): Adapt callsites.
* src/status-table.c (status_table): Add new status lines.
* src/util.h (PARSE_COMPLIANCE_FLAGS): New macro.  This used to be
'parse_pub_field18', but turned into a macro to make it polymorphic.
--

When decrypting data and verifying signatures, report whether the
operations are in compliance with the criteria for data classified as
VS-NfD.  This information can the be presented to the user.

GnuPG-bug-id: 3059
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/05fa2a9c7764b28fdac35eb72631439df948ca0e

Git commit 5c53c702605b8d4458a14e6303cdc13f3b106efa by Andre Heinecke on 12/06/2017 at 13:25..
cpp: Fix CMake config library name for GPGME

* lang/cpp/src/GpgmeppConfig.cmake.in.in: The link library
is of course also dynamic.

--
GnuPG-Bug-Id: T3181
https://invent.kde.org/neon/forks/gpgme/-/commit/5c53c702605b8d4458a14e6303cdc13f3b106efa

Git commit 3b9123b4c64828acd2d2048f40d7631513aeab36 by Andre Heinecke on 10/07/2017 at 15:26..
Fix some shadow warnings

--
Warnings in headers hurt downstream.
https://invent.kde.org/neon/forks/gpgme/-/commit/3b9123b4c64828acd2d2048f40d7631513aeab36

Git commit fe79eb8de3dc780eafb38a0a0a016748e764ff04 by Andre Heinecke on 10/07/2017 at 15:27..
Add isDeVs to ostream operator

* lang/cpp/src/decryptionresult.cpp,
lang/cpp/src/verificationresult.cpp: Extend ostream operator
to include isDeVs.
https://invent.kde.org/neon/forks/gpgme/-/commit/fe79eb8de3dc780eafb38a0a0a016748e764ff04

Git commit 1e68f93dc547ae75b921e43db35e3599de92e2cb by Justus Winter on 11/07/2017 at 10:28..
python: Improve error handling.

* NEWS: Update.
* lang/python/src/core.py (Context.__read__): New helper function.
(Context.encrypt): Attach partial results to exceptions.
(Context.decrypt): Likewise.
(Context.sign): Likewise.
(Context.verify): Likewise.
* lang/python/src/errors.py (GpgError): Move the core of GPGMEError to
this class, add a nicer interface for it.  This makes the errors
thrown by this library more uniform, and allows us to track the
underlying error in synthesized high-level errors.
(GPGMEError): Simplify.
(...): Make sure to call the parent classes' constructor in all other
classes.
--

Attach partial results to errors.  Some operations return results even
though they signal an error.  Of course this information must be taken
with a grain of salt.  But often, this information is useful for
diagnostic uses or to give the user feedback.  Since the normal
control flow is disrupted by the exception, the callee can no longer
return results, hence we attach them to the exception objects.

GnuPG-bug-id: 3271
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/1e68f93dc547ae75b921e43db35e3599de92e2cb

Git commit 111cd562d8eb11546bbd2d3bd11da4e952d4e504 by Werner Koch on 12/07/2017 at 12:56..
doc: Add list of copyright olders to AUTHORS.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/111cd562d8eb11546bbd2d3bd11da4e952d4e504

Git commit 87703dbb86ac8fd8abd23170f8038ea6e3dbde28 by Werner Koch on 12/07/2017 at 13:59..
core: Simplify parsing of STATUS_ERROR in decrypt.c

* src/decrypt.c (_gpgme_decrypt_status_handler): Factor some code out
to ...
(parse_status_error): new.  Modernize parsing.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/87703dbb86ac8fd8abd23170f8038ea6e3dbde28

Git commit d37bc7e025cdc6228da45b2b527e9f3bfef71c71 by Werner Koch on 12/07/2017 at 15:55..
core: Return CANCELED and BAD_PASSPHRASE error code on decryption.

* src/decrypt.c (op_data_t): Add field pkdecrypt_failed.
(_gpgme_decrypt_status_handler): Consult new field.
(parse_status_error): Handle some error codes.
--

The idea is to return only a limited set of error codes because a user
won't be able to understand the more esoteric codes.

GnuPG-bug-id: 3270
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d37bc7e025cdc6228da45b2b527e9f3bfef71c71

Git commit ad0c5ab4cd8d3a1b11b37dc137b75a67aa26da37 by Werner Koch on 12/07/2017 at 16:30..
core: Return NO_SECKEY error code on decryption

* src/decrypt.c (op_data_t): Add flag any_no_seckey.
(_gpgme_decrypt_status_handler): Consult that flag.
(_gpgme_decrypt_status_handler): Set that flag.
--

The NO_SECKEY is emitted instead of an "S ERROR pkdecrypt_failed" if
gpg knowns that a key has been encrypted to that key (cf. "S ENC_TO").
it is not fool proffof but in the majority of cases we can provide a
better error message than just DECRYPTION_FAILED.

GnuPG-bug-id: 3270
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ad0c5ab4cd8d3a1b11b37dc137b75a67aa26da37

Git commit 46d2e48105e0929ec38dd4106004dd60d941df9a by Werner Koch on 12/07/2017 at 16:32..
tests: Fix printf compiler warning for an error case.

* tests/gpg/t-keylist.c (main): Cast DIM to int.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/46d2e48105e0929ec38dd4106004dd60d941df9a

Git commit 2446138e3c8c45fd4bd64eba84edd32fcd009699 by Justus Winter on 13/07/2017 at 13:30..
Sync 'autogen.sh'.

--
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/2446138e3c8c45fd4bd64eba84edd32fcd009699

Git commit 9cd2b58dfb2c21cce64520cf4c726859b583d14e by Justus Winter on 13/07/2017 at 13:41..
tests: Make agent spawning more robust.

* tests/gpgsm/Makefile.am (gpgsm.conf): Add agent-program directive.
* tests/start-stop-agent: Update agent-program directive.
--
Update the 'agent-program' configuration directive to point to the
same agent that we are starting.  Previously, it was possible that a
different agent was started if 'make check' was run with a different
PATH.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/9cd2b58dfb2c21cce64520cf4c726859b583d14e

Git commit ceed4a74540cf2c316b65cf62a9926c65019bb81 by Justus Winter on 13/07/2017 at 14:04..
tests: Fix blunder.

--
Fixes-commit: 9cd2b58dfb2c21cce64520cf4c726859b583d14e
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/ceed4a74540cf2c316b65cf62a9926c65019bb81

Git commit 7fde780cc1773c6d3902d4f49a8d4aadbf3223d4 by Justus Winter on 13/07/2017 at 14:06..
tests: Fix distcheck.

* tests/start-stop-agent: Remove backup file.

Fixes-commit: 9cd2b58dfb2c21cce64520cf4c726859b583d14e
Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/7fde780cc1773c6d3902d4f49a8d4aadbf3223d4

Git commit c7be41a5f850addceb2a95444bad2a31cdcd1ce5 by Andre Heinecke on 26/07/2017 at 13:07..
cpp: Fix Key::isDeVs for subkeys

* lang/cpp/src/key.cpp (Key::isDeVs): Check all subkeys.

--
Previosly only the primary key was checked and not all subkeys.
https://invent.kde.org/neon/forks/gpgme/-/commit/c7be41a5f850addceb2a95444bad2a31cdcd1ce5

Git commit d3796e4504a2b4f422de17d78f3acfe8dd199c9c by Andre Heinecke on 27/07/2017 at 12:23..
core: Fix status parsing for decrypt + verify

* src/decrypt.c (parse_status_error): Don't modify args.

--
Otherwise chained status handlers will not see the full args
which resulted in a parse error in the verify status handler.

GnuPG-Bug-Id: T3310
https://invent.kde.org/neon/forks/gpgme/-/commit/d3796e4504a2b4f422de17d78f3acfe8dd199c9c

Git commit 274609baceda3378b21f84c3ae6a44806dad2dba by Marcus Brinkmann on 10/08/2017 at 14:10..
doc: Add more tofu documentation.

* doc/gpgme.texi (gpgme_tofu_info_t): Document structure.
(gpgme_sigsum_t): Document GPGME_SIGSUM_TOFU_CONFLICT.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
GnuPG-bug-id: 2816
https://invent.kde.org/neon/forks/gpgme/-/commit/274609baceda3378b21f84c3ae6a44806dad2dba

Git commit dfb3ca85680534b3885ab04d3fba4752c5a6f998 by Marcus Brinkmann on 10/08/2017 at 14:50..
doc: Clarify import keys operation.

* doc/gpgme.texi (gpgme_op_import_start): Fix grammar.
(gpgme_op_import_keys): Clarify some wording and fix result.
* src/import.c (gpgme_op_import_keys): Clarify comment.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
GnuPG-bug-id: 3215
https://invent.kde.org/neon/forks/gpgme/-/commit/dfb3ca85680534b3885ab04d3fba4752c5a6f998

Git commit a0cc6e01a8900b34cf231d8b5335ef3f85d01fdf by Marcus Brinkmann on 11/08/2017 at 17:13..
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 <mb at g10code.com>
GnuPG-bug-id: 2916
https://invent.kde.org/neon/forks/gpgme/-/commit/a0cc6e01a8900b34cf231d8b5335ef3f85d01fdf

Git commit 9f24e6c9010e171fd11c5cdac797cb8ce2e501dd by Marcus Brinkmann on 15/08/2017 at 17:52..
gpgconf: Add access to --list-dirs for non-default engine.

* src/engine-assuan.c (_gpgme_engine_ops_assuan): Add conf_dir.
* src/engine-g13.c (_gpgme_engine_ops_g13): Likewise.
* src/engine-gpg.c (_gpgme_engine_ops_gpg): Likewise.
* src/engine-gpgsm.c (_gpgme_engine_ops_gpgsm): Likewise.
* src/engine-spawn.c (_gpgme_engine_ops_spawn): Likewise.
* src/engine-uiserver.c (_gpgme_engine_ops_uiserver): Likewise.
* src/engine-backend.h (struct engine_ops): Likewise.
* src/engine-gpgconf.c (gpgconf_config_dir_cb, gpgconf_conf_dir):
New functions.
(struct engine_ops): Add gpgconf_conf_dir.
* src/engine.c (_gpgme_engine_op_conf_dir): New function.
* src/engine.h (_gpgme_engine_op_conf_dir): New prototype.
* src/gpgconf.c (gpgme_op_conf_dir): New function.
* src/gpgme.def (gpgme_op_conf_save): New symbol.
* src/gpgme.h.in (gpgme_op_conf_dir): New prototype.
* src/libgpgme.vers (gpgme_op_conf_dir): New symbol.
* tests/gpg/t-gpgconf.c (main): Test gpgme_op_conf_dir.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
GnuPG-bug-id: 3018
https://invent.kde.org/neon/forks/gpgme/-/commit/9f24e6c9010e171fd11c5cdac797cb8ce2e501dd

Git commit fa3918598de35fef0bf626035d59ea36c53832b9 by Marcus Brinkmann on 15/08/2017 at 18:00..
NEWS: Add missing entry.
https://invent.kde.org/neon/forks/gpgme/-/commit/fa3918598de35fef0bf626035d59ea36c53832b9

Git commit 97a1abe72e73f85bbf922fa588d002a226db5459 by Marcus Brinkmann on 15/08/2017 at 22:59..
gpgconf: Fix symbol export.

* gpgme.def: Fix last change.
(gpgme_op_conf_save): Replace duplicate from c&p ...
(gpgme_op_conf_dir): ... with this.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
Fixes-commit: 9cd2b58dfb2c21cce64520cf4c726859b583d14e
https://invent.kde.org/neon/forks/gpgme/-/commit/97a1abe72e73f85bbf922fa588d002a226db5459

Git commit 3244d4daff892d5d3c39e78f4eb0934379beda2c by Marcus Brinkmann on 15/08/2017 at 23:50..
gpgconf: Fix some warnings.

* tests/gpg/t-gpgconf.c (main): Fix warnings.
* src/engine-gpgconf.c (struct gpgconf_config_dir_s): New struct.
(gpgconf_config_dir_cb, gpgconf_conf_dir) Use it to fix warning.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3244d4daff892d5d3c39e78f4eb0934379beda2c

Git commit 0ee7f4f178284dae153a59be710bc994820369e5 by Marcus Brinkmann on 16/08/2017 at 13:39..
doc: Clarify import keys operation further.

* doc/gpgme.texi (gpgme_op_import_keys): Further clarifications.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
GnuPG-bug-id: 3215
https://invent.kde.org/neon/forks/gpgme/-/commit/0ee7f4f178284dae153a59be710bc994820369e5

Git commit b9b08e46934eea9083afb2eaf4bffa23d6c27801 by Marcus Brinkmann on 16/08/2017 at 21:12..
doc: Add version information.

* doc/gpgme.texi (since): New macro.  Use it to add version
information to those APIs that are mentioned in the NEWS file.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
GnuPG-bug-id: 3137
https://invent.kde.org/neon/forks/gpgme/-/commit/b9b08e46934eea9083afb2eaf4bffa23d6c27801

Git commit 05c4c72dda62c02d3c99985267ff4909d4f684ef by Daniel Kahn Gillmor on 18/08/2017 at 01:06..
imported cleanup+bugfixes from upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/05c4c72dda62c02d3c99985267ff4909d4f684ef

Git commit 08a8350218c579e6b628528ed4374688670e0079 by Daniel Kahn Gillmor on 18/08/2017 at 02:16..
removed unnecessary b-d on autoreconf
https://invent.kde.org/neon/forks/gpgme/-/commit/08a8350218c579e6b628528ed4374688670e0079

Git commit b054b750a1d9746b17ac8282cd75862c539b0230 by Daniel Kahn Gillmor on 18/08/2017 at 02:16..
drop unneeded DEBIAN_VERSION from debian/rules
https://invent.kde.org/neon/forks/gpgme/-/commit/b054b750a1d9746b17ac8282cd75862c539b0230

Git commit 1ddc8e6825fcf9cd5b0181cb35cb09aa47a6ddc4 by Daniel Kahn Gillmor on 18/08/2017 at 02:16..
ship constants.tofu (Closes: #871465)
https://invent.kde.org/neon/forks/gpgme/-/commit/1ddc8e6825fcf9cd5b0181cb35cb09aa47a6ddc4

Git commit e54d894230a274e6a6275999f8fcb53fcc1fd0c3 by Daniel Kahn Gillmor on 18/08/2017 at 02:16..
Standards-Version: bump to 4.0.1 (extra -> optional)
https://invent.kde.org/neon/forks/gpgme/-/commit/e54d894230a274e6a6275999f8fcb53fcc1fd0c3

Git commit 27e7d80efc4f1b4f41cd8c3e733073a8e3c470bd by Daniel Kahn Gillmor on 18/08/2017 at 02:16..
try to force python 3.6
https://invent.kde.org/neon/forks/gpgme/-/commit/27e7d80efc4f1b4f41cd8c3e733073a8e3c470bd

Git commit 645736435e1d6f00591d8d3f43d20d376cd2c2bf by Daniel Kahn Gillmor on 18/08/2017 at 02:16..
strip debian revision from new 1.9.0 symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/645736435e1d6f00591d8d3f43d20d376cd2c2bf

Git commit f18fd91a0a04d7959e22bee42bd449c05f5d3232 by Daniel Kahn Gillmor on 18/08/2017 at 02:28..
add the simplest possible python burn-in autopkgtest
https://invent.kde.org/neon/forks/gpgme/-/commit/f18fd91a0a04d7959e22bee42bd449c05f5d3232

Git commit b5f7cb174d80d3e252f947d6790f3e01f91ffa9e by Daniel Kahn Gillmor on 18/08/2017 at 02:28..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/b5f7cb174d80d3e252f947d6790f3e01f91ffa9e

Git commit f7b5ed54667ae4001d34b24ba206d7f27887d994 by Daniel Kahn Gillmor on 18/08/2017 at 05:38..
complete upstream python file reorg (Closes: #872519)
https://invent.kde.org/neon/forks/gpgme/-/commit/f7b5ed54667ae4001d34b24ba206d7f27887d994

Git commit cd3fbc690e030019cf78e42b770f31203453ed8c by Daniel Kahn Gillmor on 18/08/2017 at 05:38..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/cd3fbc690e030019cf78e42b770f31203453ed8c

Git commit 70c8be9efe8de40bec0f0673589f3c9be7136674 by Justus Winter on 21/08/2017 at 08:54..
python: Improve keylist test.

* lang/python/tests/t-keylist.py: Check a keylist matching no keys.

Signed-off-by: Justus Winter <justus at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/70c8be9efe8de40bec0f0673589f3c9be7136674

Git commit 57c12593082e4ad302041269f1c35f2fe7d2fb1a by Justus Winter (on behalf of Alon Bar-Lev) on 21/08/2017 at 08:55..
python: Support parallel build in tests

* lang/python/tests/Makefile.am: Depend xcheck with all which was lost
due to the check hack.

Signed-off-by: Alon Bar-Lev <alon.barlev at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/57c12593082e4ad302041269f1c35f2fe7d2fb1a

Git commit bfb3a01a0c55aa327dcab061fa808672362cb09d by Marcus Brinkmann on 23/08/2017 at 13:38..
Fix a couple of bugs pointed out by clang compiler warnings.

* src/engine-gpgconf.c (gpgconf_config_dir_cb): Fix cast.
* src/key.c (_gpgme_key_add_sig): Fix pointer reference.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/bfb3a01a0c55aa327dcab061fa808672362cb09d

Git commit 91e47d71652bd0f83b51089c343c3c4836bdfa8a by Marcus Brinkmann on 24/08/2017 at 13:51..
gpgconf: Add more comments.

* src/engine-gpgconf.c (gpgconf_config_dir_cb, gpgconf_conf_dir):
Add comments.

Signed-off-by: Marcus Brinkmann <mb at g10code.com>
GnuPG-bug-id: 3018
https://invent.kde.org/neon/forks/gpgme/-/commit/91e47d71652bd0f83b51089c343c3c4836bdfa8a

Git commit 9bde9144f0c2d0087799511e9b041dc945a4cfa8 by Werner Koch on 24/08/2017 at 14:20..
core: New public enum gpgme_keyorg_t.

* src/gpgme.h.in (gpgme_keyorg_t): New.
* src/keylist.c (parse_keyorg): New.
(keylist_colon_handler): Set key->ORIGIN.
--

This finally set the key origin value form data supplied by recent gpg
versions.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9bde9144f0c2d0087799511e9b041dc945a4cfa8

Git commit 6745eb69e27bc73fece88c5e4e0b0bca13fa8b11 by Werner Koch on 24/08/2017 at 14:20..
Set next version to 1.10.0

--
https://invent.kde.org/neon/forks/gpgme/-/commit/6745eb69e27bc73fece88c5e4e0b0bca13fa8b11

Git commit 47f61df0704485b8165c9cf2a27ad57bcd864239 by Werner Koch on 24/08/2017 at 15:17..
core: New context flag "auto-key-retrieve"

* src/gpgme.c (gpgme_set_ctx_flag, gpgme_get_ctx_flag): New flag
"auto-key-retrieve".
* src/context.h (gpgme_context): New field auto_key_retrieve.
* src/engine-backend.h (struct engine_ops): Add arg auto_key_retrieve
to field 'decrypt'.
* src/engine-gpg.c (gpg_decrypt): Add arg auto_key_retrieve and pass
option --auto-key-retrieve to gpg.  Adjust all callers.
(gpg_verify): Ditto.
* src/engine-gpgsm.c (gpgsm_decrypt): Add dummy arg auto_key_retrieve.
* src/engine-uiserver.c (uiserver_decrypt): Ditto.
* tests/run-verify.c (main): Add option --auto-key-retrieve.
--

This makes the --auto-key-retrieve option available in the GPGME API.

Test plan:
Run

  GPGME_DEBUG=9:out tests/run-verify SIGNEDFILE

with and without its new option --auto-key-retrieve and check in the
trace stored in "out" whether --auto-key-retrieve was passed to gpg.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/47f61df0704485b8165c9cf2a27ad57bcd864239

Git commit 58d7bcead3394fa80c2a05d0d1e0fb4d9a1048b0 by Andre Heinecke on 04/09/2017 at 09:23..
cpp: Fix version info comparison

* lang/cpp/src/engineinfo.h (EngineInfo::Version::operator<):
Fix logic.
* lang/cpp/src/engineinfo.h (EngineInfo::Version::operator>):
New.
* NEWS: Mention added API

--
This fixes a logic error that 2.2.0 < 2.1.19 would return true.
https://invent.kde.org/neon/forks/gpgme/-/commit/58d7bcead3394fa80c2a05d0d1e0fb4d9a1048b0

Git commit bd5d470cef513b2f459316869b81267cde7a9f13 by Andre Heinecke on 04/09/2017 at 09:25..
qt: Add test for version info

* lang/qt/tests/t-various.cpp (TestVarious::testVersion): New.

--
If it's not tested it does not work ;-)
https://invent.kde.org/neon/forks/gpgme/-/commit/bd5d470cef513b2f459316869b81267cde7a9f13

Git commit dfcf893d772768dc3f3494cd132ad7530de03be1 by Daniel Kahn Gillmor on 19/09/2017 at 14:10..
import changes from upstream, use speedup from Colin Watson
https://invent.kde.org/neon/forks/gpgme/-/commit/dfcf893d772768dc3f3494cd132ad7530de03be1

Git commit 0b8aa381b20b072bbcda9d2059b6bfcd3672b48d by Daniel Kahn Gillmor on 19/09/2017 at 14:22..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/0b8aa381b20b072bbcda9d2059b6bfcd3672b48d

Git commit 98b38c8b848e903aa2f98425f194a606fad003b8 by Daniel Kahn Gillmor on 02/10/2017 at 18:27..
point to correct qgpgme README (Closes: #857529)
https://invent.kde.org/neon/forks/gpgme/-/commit/98b38c8b848e903aa2f98425f194a606fad003b8

Git commit bff944842887908dfcf66469251598065c0abcff by Werner Koch on 04/10/2017 at 15:25..
Register DCO for Colin Watson.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/bff944842887908dfcf66469251598065c0abcff

Git commit b5b996b1a142abb90296f5feadf0b5b19c59f738 by Werner Koch (on behalf of Colin Watson) on 04/10/2017 at 15:26..
core: Restore get_max_fds optimization on Linux

* src/posix-io.c (get_max_fds): Restore Linux optimization, this time
using open/getdents/close rather than opendir/readdir/closedir.
--

opendir/readdir/closedir may allocate/free memory, and aren't required
to do so in an async-signal-safe way.  On the other hand, opening
/proc/self/fd directly and iterating over it using getdents is safe.

(getdents is not strictly speaking documented to be async-signal-safe
because it's not in POSIX.  However, the Linux implementation is
essentially just a souped-up read.  Python >= 3.2.3 makes the same
assumption.)

Signed-off-by: Colin Watson <cjwatson at debian.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b5b996b1a142abb90296f5feadf0b5b19c59f738

Git commit 4632adf403611b50be2b4e852a4607070935d0e5 by Werner Koch on 04/10/2017 at 16:03..
core: Allow disabling the use of SYS_getdents for Linux.

* configure.ac (USE_LINUX_GETDENTS): New ac_define.  Add option
--disable-linux-getdents.
* src/posix-io.c: Make use of USE_LINUX_GETDENTS.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4632adf403611b50be2b4e852a4607070935d0e5

Git commit 1d13a7442347c1982d408ac58f16fabff6ac04bf by Daniel Kahn Gillmor on 11/10/2017 at 03:25..
use getdents64 instead of getdents
https://invent.kde.org/neon/forks/gpgme/-/commit/1d13a7442347c1982d408ac58f16fabff6ac04bf

Git commit 1d657da1c29351c8f9f4ca75764f2ebfb1238d7f by Daniel Kahn Gillmor on 11/10/2017 at 03:29..
Standards-Version: bump to 4.1.1 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/1d657da1c29351c8f9f4ca75764f2ebfb1238d7f

Git commit 36eceecf0774d59ab6afc6c6564eb9aa9efa7d11 by Daniel Kahn Gillmor on 11/10/2017 at 03:29..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/36eceecf0774d59ab6afc6c6564eb9aa9efa7d11

Git commit 00daac15530eabed5e61d841b2df939c2242667c by Werner Koch (on behalf of Daniel Kahn Gillmor) on 12/10/2017 at 07:00..
core: use getdents64 syscall on linux instead of getdents.

* src/posix-io.c (get_max_fds): use getdents64 instead of getdents.
--

getdents64 was introduced in linux 2.4, so it should be widely
available.  some Linux architectures which post-date 2.4 (e.g. arm64)
appear to not have getdents at all, so it's probably better to use the
more modern interface.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/00daac15530eabed5e61d841b2df939c2242667c

Git commit bc32512e70cfa62ceb45d40d55da7583301a25c5 by Daniel Kahn Gillmor on 25/10/2017 at 22:52..
force-build python 3.5 now that python3 is 3.6 in unstable

This is to address https://bugs.debian.org/866555 -- it's ongoing
maintenance work to track the versions of available python, though :/
https://invent.kde.org/neon/forks/gpgme/-/commit/bc32512e70cfa62ceb45d40d55da7583301a25c5

Git commit 3dbc35f128988829e55479b457578aa5493a7ea5 by Daniel Kahn Gillmor on 25/10/2017 at 22:54..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/3dbc35f128988829e55479b457578aa5493a7ea5

Git commit 56b27b21d5f8dd95b9d6415c5e98b821774f3093 by Andre Heinecke on 14/11/2017 at 13:28..
qt: Fix IODeviceDataProvider with Process

* lang/qt/src/dataprovider.cpp (blocking_read): Keep
reading if process is not atEnd.

--
This fixes a regression in Kleopatra that uses this dataprovider
to chain the gpgtar process to the encryption / signing.
https://invent.kde.org/neon/forks/gpgme/-/commit/56b27b21d5f8dd95b9d6415c5e98b821774f3093

Git commit c441fb73130f4c117094d7da4de9fe56f886e65d by NIIBE Yutaka on 21/11/2017 at 06:35..
tests: Make portability fix.

* lang/python/tests/Makefile.am: Distinguish target and path.
* tests/gpg/Makefile.am: Ditto.
* tests/gpgsm/Makefile.am: Ditto.

--

GNU Make is powerful enough to match path to target (and vice versa),
but BSD make is not.

GnuPG-bug-id: 3056
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c441fb73130f4c117094d7da4de9fe56f886e65d

Git commit ed5f1ae6064bfa4aad35f720f994d48f3baf7ed1 by Daniel Kahn Gillmor on 29/11/2017 at 22:47..
clean up wrap-and-sort
https://invent.kde.org/neon/forks/gpgme/-/commit/ed5f1ae6064bfa4aad35f720f994d48f3baf7ed1

Git commit f43016500774ab82f222249202bda6c463aaf63f by Werner Koch on 30/11/2017 at 08:52..
tests: Add missing variable to gpgsm tests Makefile

* tests/gpgsm/Makefile.am (GPG_AGENT): Set var.  It is used later.
--

Note that the var is used by the gpgsm.conf target.

Reported-by: Alon Bar-Lev <alon.barlev at gmail.com>
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f43016500774ab82f222249202bda6c463aaf63f

Git commit 651b3d8207cc7d85699f89fc4c21cb1243453aa8 by Andre Heinecke on 01/12/2017 at 08:52..
Fix uid parsing for ldap keyserver

* src/engine-gpg.c (gpg_keylist_preprocess): Check field count
for uid and add fallback.

--
This fixes accessing unintialized memory and resulting
crashes in gpgrt_asprintf.

GnuPG-Bug-Id: T3550
https://invent.kde.org/neon/forks/gpgme/-/commit/651b3d8207cc7d85699f89fc4c21cb1243453aa8

Git commit 8e2d6c28a5e923f829b5a26d19d9d897949aa1fe by Andre Heinecke on 01/12/2017 at 12:21..
cpp: Wrap create_key and create_subkey

* lang/cpp/src/context.cpp,
lang/cpp/src/context.h (Context::startCreateKey)
(Context::createKey, Context::createSubkey)
(Context::startCreateSubkey): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/8e2d6c28a5e923f829b5a26d19d9d897949aa1fe

Git commit 7d1ac5d61de3c55bf7ff14997b4b111a0f90c177 by Andre Heinecke on 01/12/2017 at 13:35..
qt: Add job for quick commands

* lang/qt/src/qgpgmequickjob.cpp,
lang/qt/src/qgpgmequickjob.h,
lang/qt/src/quickjob.h: New.
* lang/qt/src/Makefile.am,
lang/qt/src/protocol.h,
lang/qt/src/protocol_p.h,
lang/qt/src/job.cpp: Update accordingly.

--
Keeping it in line with the Job for everything pattern.
Although it's reduced to one job for four commands as
the commands all behave the same.
https://invent.kde.org/neon/forks/gpgme/-/commit/7d1ac5d61de3c55bf7ff14997b4b111a0f90c177

Git commit 2205ee2cd92233506ab5a54111160cd8d62ae411 by Werner Koch on 03/12/2017 at 18:28..
Register DCO for Tobias Mueller

--
https://invent.kde.org/neon/forks/gpgme/-/commit/2205ee2cd92233506ab5a54111160cd8d62ae411

Git commit 3cf9aedc92b6c65d2cb34037e52b9a299637d03b by Werner Koch (on behalf of Tobias Mueller) on 04/12/2017 at 07:10..
python: Default whence argument for Data() to SEEK_SET.

* lang/python/gpgme.i: copied signature from gpgme.h and defaulted the
value to SEEK_SET.
* lang/python/tests/t-data.py: Added a test for no second argument
--

Having to import the os package when wanting to read a Data object is a
slight annoyance. With SWIG, we can define default parameters. This
change defaults the whence argument to SEEK_SET which is how StringIO
and BytesIO behave.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/3cf9aedc92b6c65d2cb34037e52b9a299637d03b

Git commit 0c1244a2b7e30ab0610ae70166e1b5d0219782c3 by Werner Koch on 04/12/2017 at 11:08..
core: Also check for a failed selftest in gpgm_data_new.

* src/data.c (_gpgme_data_new): Check for failed selftest.
* tests/run-support.h (make_filename): Print a message on mallooc
failure.
(init_gpgme_basic): New.
* tests/run-identify.c (main): Call init_gpgme_basic becuase we do not
need to setup a protocol.
* tests/t-data.c: Define PGM and include run-support.h.
(make_filename): Remove.
(main): Call init_gpgme_basic.
--

Note: This patch may break applications which used gpgme_data but no
gpgme_new without having called the required gpgme_check_version.

GPGME can be used without a protocol for example to work with the data
object abstraction.  Thus a call to gpgme_data_new also needs to check
the result of the core selftests - including on whether
gpgme_check_version has been called.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0c1244a2b7e30ab0610ae70166e1b5d0219782c3

Git commit e33a410e8a24c907bd0e0f089d991d748acdefa9 by Daniel Kahn Gillmor on 04/12/2017 at 22:21..
loosen dependencies (Closes: #872368)
https://invent.kde.org/neon/forks/gpgme/-/commit/e33a410e8a24c907bd0e0f089d991d748acdefa9

Git commit 530bbb9396195f3b4a4908c760e7a74d4ffeef5a by Daniel Kahn Gillmor on 04/12/2017 at 22:25..
only build against latest python3 (Closes: #866555)
https://invent.kde.org/neon/forks/gpgme/-/commit/530bbb9396195f3b4a4908c760e7a74d4ffeef5a

Git commit 652fc930853f2c6e599f30402d59f106437fff6d by Daniel Kahn Gillmor on 04/12/2017 at 22:26..
Standards-Version: bump to 4.1.2 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/652fc930853f2c6e599f30402d59f106437fff6d

Git commit 54a988450de6d95052696c10a7d26881fbb63526 by Daniel Kahn Gillmor on 04/12/2017 at 22:43..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/54a988450de6d95052696c10a7d26881fbb63526

Git commit e58062dad1429c744c19dbfdcf66a36d15892cb1 by Daniel Kahn Gillmor on 04/12/2017 at 22:46..
cherry-pick bugfixes from upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/e58062dad1429c744c19dbfdcf66a36d15892cb1

Git commit afac36fca20b9940c506e03924865b6236badba4 by Daniel Kahn Gillmor on 04/12/2017 at 22:47..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/afac36fca20b9940c506e03924865b6236badba4

Git commit 36c2a41d0963f17f4e0c18ee9e80f4bbbdfa0e88 by Daniel Kahn Gillmor on 04/12/2017 at 22:56..
d/changelog: drop trailing whitespace
https://invent.kde.org/neon/forks/gpgme/-/commit/36c2a41d0963f17f4e0c18ee9e80f4bbbdfa0e88

Git commit 5ba1cbdf39efd90c7987bfc2bc030b6504e70076 by Andre Heinecke on 07/12/2017 at 12:47..
tests: Print userid signatures in run-keylist

* tests/run-keylist.c (main): Print UID signatures if there
are any.
https://invent.kde.org/neon/forks/gpgme/-/commit/5ba1cbdf39efd90c7987bfc2bc030b6504e70076

Git commit 1458adaea4acdcf7ebbead6668476fce92db5af8 by Andre Heinecke on 07/12/2017 at 15:21..
cpp: Fix handling of lsig promotion

* src/gpgsignkeyeditinteractor.cpp (SignKeyState): Add second
CONFIRM state.
(makeTable): Properly handle local_promote_okay.
(action): Handle CONFIRM2.

--
This fixes changing a local signature to a "public" signature.

GnuPG-Bug-Id: T1649
https://invent.kde.org/neon/forks/gpgme/-/commit/1458adaea4acdcf7ebbead6668476fce92db5af8

Git commit 7b5182f2889310fc43d5fe05e7ec1ffd3c1f7b06 by Andre Heinecke on 08/12/2017 at 04:59..
Spelling fixes for comments and doc

--
Patch provided by ka7 in dev.gnupg.org

Differential D423
https://invent.kde.org/neon/forks/gpgme/-/commit/7b5182f2889310fc43d5fe05e7ec1ffd3c1f7b06

Git commit 0a567a94d94cd93c5d88f5db802925c95f0974d0 by Werner Koch on 11/12/2017 at 12:54..
core,w32: Fix popping up of console windows due to gpgconf.

* src/gpgme-w32spawn.c (my_spawn): Create w/o DETACHED_PROCESS.
--

The spawn helper is actually called with DETACHED_PROCESS and should
not need to do a DETACHED_PROCESS of its own.  Interestingly this
patch removes the popups.

See Andre's report
GnuPG-bug-id: 3515

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0a567a94d94cd93c5d88f5db802925c95f0974d0

Git commit b61d0fbb74f04408dfe8637c719b97217e061a3c by Andre Heinecke on 11/12/2017 at 16:08..
qt: Don't use QDateTime::toSecsSinceEpoch

* lang/qt/src/qgpgmequickjob.cpp (addSubkeyWorker)
(createWorker): Use toMSecsSinceEpoch instead toSecsSinceEpoch.

--
toSecsSinceEpoch was only introduced in Qt 5.8.
https://invent.kde.org/neon/forks/gpgme/-/commit/b61d0fbb74f04408dfe8637c719b97217e061a3c

Git commit d4d04d6c0432b032f6ea23c8517fd6a5f623bb67 by Werner Koch on 12/12/2017 at 11:12..
Require libgpg-error 1.24 and libassuan 2.4.2

* src/util.h (GPG_ERR_FALSE): Remove due to newer libgpg-error.
--

We require these over one year old versions to better allign with
GnuPG's demand.  Note that the required libassuan is acgtually 2 years
old.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d4d04d6c0432b032f6ea23c8517fd6a5f623bb67

Git commit 6a42eb5f3809d5eb3767667c190b395d028886e7 by Werner Koch on 12/12/2017 at 11:46..
Release 1.10.0.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6a42eb5f3809d5eb3767667c190b395d028886e7

Git commit 7da01c7352d41eb33e445968b248544d301588f9 by Werner Koch on 12/12/2017 at 12:11..
Post release updates.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/7da01c7352d41eb33e445968b248544d301588f9

Git commit f2411bc7a5b4473487d263f1dd82d9ce3e14feee by Daniel Kahn Gillmor on 14/12/2017 at 17:47..
New upstream version 1.10.0
https://invent.kde.org/neon/forks/gpgme/-/commit/f2411bc7a5b4473487d263f1dd82d9ce3e14feee

Git commit a5fe5bec26cebd29717901ecbb0120d43686203a by Daniel Kahn Gillmor on 14/12/2017 at 17:47..
Update upstream source from tag 'upstream/1.10.0'

Update to upstream version '1.10.0'
with Debian dir 7bb1593f106608f26f3adb319add2c1b7caa7ccf
https://invent.kde.org/neon/forks/gpgme/-/commit/a5fe5bec26cebd29717901ecbb0120d43686203a

Git commit 14140b1fe4e0398e183ebc828c04db42b3dba0d7 by Daniel Kahn Gillmor on 14/12/2017 at 17:48..
update build-dependencies
https://invent.kde.org/neon/forks/gpgme/-/commit/14140b1fe4e0398e183ebc828c04db42b3dba0d7

Git commit 67d75c563443dfa97bf3020998a3f80e183d632d by Daniel Kahn Gillmor on 14/12/2017 at 17:51..
drop patches already upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/67d75c563443dfa97bf3020998a3f80e183d632d

Git commit 74ce265c4eb1bc8372b43bd163003a4637fdcffb by Daniel Kahn Gillmor on 14/12/2017 at 18:31..
add new symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/74ce265c4eb1bc8372b43bd163003a4637fdcffb

Git commit f35c64f8c3e203da1c597e89b1a0f91191f40f9c by Daniel Kahn Gillmor on 14/12/2017 at 18:31..
update debian/copyright
https://invent.kde.org/neon/forks/gpgme/-/commit/f35c64f8c3e203da1c597e89b1a0f91191f40f9c

Git commit f2521549aee4bf5b9401c81d0d38d1810f40585d by Daniel Kahn Gillmor on 14/12/2017 at 18:31..
add explicit lintian overrides for things i have no plans to fix
https://invent.kde.org/neon/forks/gpgme/-/commit/f2521549aee4bf5b9401c81d0d38d1810f40585d

Git commit c2c9e8d43423f37b1fc0247e39a2dcb3afd5acb4 by Daniel Kahn Gillmor on 14/12/2017 at 18:32..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/c2c9e8d43423f37b1fc0247e39a2dcb3afd5acb4

Git commit 37d62e9d0f685c257fdb5f303e60ff01f8a36a2f by NIIBE Yutaka on 29/01/2018 at 02:45..
core: Implement _gpgme_getenv for NetBSD.

* src/get-env.c [HAVE_GETENV_R] (_gpgme_getenv): New.

--

GnuPG-bug-id: 3056
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/37d62e9d0f685c257fdb5f303e60ff01f8a36a2f

Git commit 58130b97f6582455fd355ac58ae3182a28812cfc by NIIBE Yutaka on 29/01/2018 at 03:04..
tests: Fix for NetBSD.

* tests/gpg/pinentry: Use /bin/sh instead of Bash.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/58130b97f6582455fd355ac58ae3182a28812cfc

Git commit bbb5e70e7e8598978b6c61b13ba77705ff86e469 by NIIBE Yutaka on 29/01/2018 at 10:38..
Fix compile error message.

* src/get-env.c (_gpgme_getenv): Fix error message.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bbb5e70e7e8598978b6c61b13ba77705ff86e469

Git commit 59fcabbdf537b2745ef0c3cae908b21970a5b39b by NIIBE Yutaka on 29/01/2018 at 23:22..
Fix for BSD Make.

* tests/gpg/Makefile.am, tests/gpgsm/Makefile.am: Remove ./.

--

GNU Make is powerful enough for handling and interpreting of
pathname as target, but BSD Make is not.

GnuPG-bug-id: 3056
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/59fcabbdf537b2745ef0c3cae908b21970a5b39b

Git commit 36c9eeb2d2fa8f79407a44a1feab67b12c78bec1 by Daniel Kahn Gillmor on 06/02/2018 at 04:09..
move to debhelper 11
https://invent.kde.org/neon/forks/gpgme/-/commit/36c9eeb2d2fa8f79407a44a1feab67b12c78bec1

Git commit 9d6d471f2a53483c83efea5353ebecb42f6fcc88 by Daniel Kahn Gillmor on 06/02/2018 at 04:09..
Standards-Version: bump to 4.1.3 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/9d6d471f2a53483c83efea5353ebecb42f6fcc88

Git commit b5f4807bb08deb6562d6cb81311d1f44eb8c72da by Daniel Kahn Gillmor on 06/02/2018 at 04:10..
d/control: move Vcs*: to salsa
https://invent.kde.org/neon/forks/gpgme/-/commit/b5f4807bb08deb6562d6cb81311d1f44eb8c72da

Git commit ce18055b0a8de265501dfc7ded3b164168ae6e6b by Daniel Kahn Gillmor on 06/02/2018 at 04:23..
ship examples in python-gpg and python3-gpg
https://invent.kde.org/neon/forks/gpgme/-/commit/ce18055b0a8de265501dfc7ded3b164168ae6e6b

Git commit a610513852d0b1df2a281877e4f2d2936efbdabd by Daniel Kahn Gillmor on 06/02/2018 at 04:36..
libgpgmepp-doc: repoint doc-base to /usr/share/doc/libgpgmepp-dev

This is for closer compliance with Debian policy §12.3 as of version
3.9.7.
https://invent.kde.org/neon/forks/gpgme/-/commit/a610513852d0b1df2a281877e4f2d2936efbdabd

Git commit db15678482ba32de925e12a7319fbeb8551b434f by Daniel Kahn Gillmor on 06/02/2018 at 04:49..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/db15678482ba32de925e12a7319fbeb8551b434f

Git commit 5a5b0d4996c17bfbc69b90f89fec23732f92813a by Andre Heinecke on 09/02/2018 at 15:11..
cpp: Add conveniance Data::toString

* lang/cpp/src/data.h, lang/cpp/src/data.cpp: Add Data::toString.

--
I'm lazy and like to waste memory.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a5b0d4996c17bfbc69b90f89fec23732f92813a

Git commit f10605ffb5cc9d457c3e432918fdfbfaf3d04185 by Andre Heinecke on 09/02/2018 at 15:11..
core, w32: Fix flags passing to gpgme-w32-spawn

* src/w32-io.c (_gpgme_io_spawn): Don't hardcode flags value.

--
IOSPAWN_FLAG_ALLOW_SET_FG is 2 and was translated to 1.

This might fix the pinentry foreground handling pass through.
https://invent.kde.org/neon/forks/gpgme/-/commit/f10605ffb5cc9d457c3e432918fdfbfaf3d04185

Git commit 201db83a7f1b7759173b6e9f0a844caef4da6cce by Andre Heinecke on 09/02/2018 at 15:11..
core, w32: Enable spawning GUI applications

* src/engine-spawn.c (engspawn_start): Translate spawn flag
to IOSPAWN flag.
* src/gpgme-w32spawn.c (my_spawn): Handle the new flag.
* src/gpgme.h.in (GPGME_SPAWN_SHOW_WINDOW): New.
* src/priv-io.h (IOSPAWN_FLAG_SHOW_WINDOW): New.

--
Used by GpgOL
https://invent.kde.org/neon/forks/gpgme/-/commit/201db83a7f1b7759173b6e9f0a844caef4da6cce

Git commit 7e27a0ff64626026521dc5877b278794cea72e61 by Andre Heinecke on 09/02/2018 at 15:11..
cpp: Add SpawnShowWindow flag

* lang/cpp/src/context.h (SpawnShowWindow): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/7e27a0ff64626026521dc5877b278794cea72e61

Git commit 77ca9cc2db2c6da303b9224a931679a325ebda1e by NIIBE Yutaka on 12/02/2018 at 23:51..
configure: MinGW has thread-safe getenv.

* configure.ac: have_thread_safe_getenv=yes with have_w64_system.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/77ca9cc2db2c6da303b9224a931679a325ebda1e

Git commit 5ec890b9c76db0f23cc396108ff6f1fe658855a8 by Andre Heinecke on 13/02/2018 at 06:49..
configure: Fix mingw check for getenv.

* configure.ac: have_thread_safe_getenv=yes with have_w32_system.

--
We want to define this for both 32 and 64 bit targets if
we use mingw. have_w32_system is defined for both targets.

Signed-off-by: Andre Heinecke <aheinecke at intevation.de>
https://invent.kde.org/neon/forks/gpgme/-/commit/5ec890b9c76db0f23cc396108ff6f1fe658855a8

Git commit f1d8a7975b0a166f55aef06eb25d50230781b96f by NIIBE Yutaka on 14/02/2018 at 08:34..
build: Fix Makefiles for portability.

* tests/gpg/Makefile.am: Don't allow target with '/'.
* tests/gpgsm/Makefile.am: Ditto.

--

BSD Make doesn't allow a target with '/'.  We still have such a target
in lang/python/Makefile.am, but it's for maintainer only, so,
assumption to GNU Make is OK there.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f1d8a7975b0a166f55aef06eb25d50230781b96f

Git commit 1b5719cd57d80dcd9577141491a0860912e74cd4 by Ben McGinnes on 14/02/2018 at 10:08..
House keeping

* Added a bunch of things to .gitignore that might otherwise creep in
  during Python development.
* This really should be merged ASAP.  You'll thank me later ...
https://invent.kde.org/neon/forks/gpgme/-/commit/1b5719cd57d80dcd9577141491a0860912e74cd4

Git commit d86fd7c54c462ef23c70370624e07fcc1bc15121 by Ben McGinnes on 14/02/2018 at 10:21..
Short History

* Converted document from reST to org-mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/d86fd7c54c462ef23c70370624e07fcc1bc15121

Git commit 1d48b04cfb3d1de654f3995578e9434a6b7b2fed by Ben McGinnes on 14/02/2018 at 10:23..
Short History

* Removed reST version.
https://invent.kde.org/neon/forks/gpgme/-/commit/1d48b04cfb3d1de654f3995578e9434a6b7b2fed

Git commit c4fa4216199b16c1f169725c0a1e0a40764b1ebb by Ben McGinnes on 14/02/2018 at 10:24..
TODO

* Converted document from reST to org-mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/c4fa4216199b16c1f169725c0a1e0a40764b1ebb

Git commit 487ed9337e8e07d1c63e53b785cc39e3bd35ff6e by Ben McGinnes on 14/02/2018 at 10:25..
TODO

* Removed reST version of file.
https://invent.kde.org/neon/forks/gpgme/-/commit/487ed9337e8e07d1c63e53b785cc39e3bd35ff6e

Git commit fccd2ea3871f5d63fb038db0733a34f9c5d550c3 by Ben McGinnes on 14/02/2018 at 11:28..
TODO

* Updated TODO.
* The entirety of the old TODO has been replaced with either more
  relevant tasks or goals for the examples and a more measured
  approach to the docs and why, in this project, Org Mode trumps reST,
  even though it's Python through and through.
https://invent.kde.org/neon/forks/gpgme/-/commit/fccd2ea3871f5d63fb038db0733a34f9c5d550c3

Git commit a1bc710c5fb7a7d2253434c1443e33e019020a55 by Ben McGinnes on 14/02/2018 at 11:44..
History

* Reshaping the history file to fit Org Mode's structuring for docs.
* Also said history needs to be a bit more clear (it was kind of
  unfinished).
https://invent.kde.org/neon/forks/gpgme/-/commit/a1bc710c5fb7a7d2253434c1443e33e019020a55

Git commit 7c662d22a8f7d2e6ad6532014f2ecc1769de16fb by Ben McGinnes on 14/02/2018 at 14:03..
Subsectioned history

* Split the main parts down into subsections.
* Still need to cull the incorrect stuff towards the end and add more
  recent changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/7c662d22a8f7d2e6ad6532014f2ecc1769de16fb

Git commit 3c3b149996036e7ff4cc4c77ef2d97062d880409 by Ben McGinnes on 14/02/2018 at 17:19..
Short History

* Fixed or updated the most fundamental errors.
* Also included some details on which modules are available on PyPI,
  as well as what happened to the PyME commit log.
https://invent.kde.org/neon/forks/gpgme/-/commit/3c3b149996036e7ff4cc4c77ef2d97062d880409

Git commit c9a351f5af289c8f6919854c40f235c781b76ec7 by NIIBE Yutaka on 15/02/2018 at 01:27..
build: More Makefile fix.

* lang/python/tests/Makefile.am: Avoid target with '/'.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c9a351f5af289c8f6919854c40f235c781b76ec7

Git commit b5ec21b9baf017b4cee88c9ef3cc1a638547cd20 by NIIBE Yutaka on 15/02/2018 at 02:14..
tests: Makefile portability.

* tests/gpg/Makefile.am: Don't use "export" directive.
* tests/gpgsm/Makefile.am: Ditto.
* lang/qt/tests/Makefile.am: Ditto.
* lang/python/tests/Makefile.am: Ditto.

--

GnuPG-bug-id: 3056
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b5ec21b9baf017b4cee88c9ef3cc1a638547cd20

Git commit ba6e610baa138ba9b43be303df2c5981dd04de5a by NIIBE Yutaka on 15/02/2018 at 02:24..
tests: More Makefile portability.

* tests/gpg/Makefile.am: Invoke GPG with TESTS_ENVIRONMENT.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ba6e610baa138ba9b43be303df2c5981dd04de5a

Git commit 3224d7f0ea83a3c2baaa9f97846c4a5b392d2c59 by NIIBE Yutaka on 15/02/2018 at 02:31..
tests: Fix previous commit

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3224d7f0ea83a3c2baaa9f97846c4a5b392d2c59

Git commit 40da5022922172ed898172956a8ccf5622e5638d by Ben McGinnes on 15/02/2018 at 10:28..
TODO

* Beginning to turn the first part of this into something kind of like
  an actual TODO list as Org Mode uses it (maybe).
https://invent.kde.org/neon/forks/gpgme/-/commit/40da5022922172ed898172956a8ccf5622e5638d

Git commit 235d899a5fc24cdf9c856adbc021a69c43985c99 by Ben McGinnes on 15/02/2018 at 10:30..
TODO Documentation

* Checked off the decision to stick with Org Mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/235d899a5fc24cdf9c856adbc021a69c43985c99

Git commit 6f15d821404742ac2683f54ca4102ee4aaedacf2 by Ben McGinnes on 15/02/2018 at 14:26..
LaTeX margins

* Added LaTeX header for 1 inch margins in the quite likely event that
  all PDF output ultimately uses LaTeX.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f15d821404742ac2683f54ca4102ee4aaedacf2

Git commit 2b092bf235160e04c10480c47c0fd6dce4e770c4 by Ben McGinnes on 15/02/2018 at 15:04..
Merge branch 'master' of /Users/ben/dev/hgit/mine/gnupg/gpgme/master into ben/python-docs-01
https://invent.kde.org/neon/forks/gpgme/-/commit/2b092bf235160e04c10480c47c0fd6dce4e770c4

Git commit fb16eaa685fe488f12f4df9b59d1f3689c813034 by Ben McGinnes on 16/02/2018 at 08:15..
History path

* Fixed a typo in a filepath reference.
* Moved conjecture regarding the first version of Python used to a
  footnote.
https://invent.kde.org/neon/forks/gpgme/-/commit/fb16eaa685fe488f12f4df9b59d1f3689c813034

Git commit 7f9d5c6cd204bfd84ea477b284df795b1dadb1af by Andre Heinecke on 16/02/2018 at 12:00..
cpp: Add shorthand for key locate

* lang/cpp/src/key.cpp (Key::locate): New static helper.
* lang/cpp/src/key.h: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/7f9d5c6cd204bfd84ea477b284df795b1dadb1af

Git commit fe4f3edd70949329cb992dd963de2de3c86dcd81 by Ben McGinnes on 19/02/2018 at 15:45..
Schizophrenic file types

* Removed Markdown style heading underlining.
* Removed in-line file type declaration (which is not correctly parsed
  by the web interface on dev.gnupg.org).
https://invent.kde.org/neon/forks/gpgme/-/commit/fe4f3edd70949329cb992dd963de2de3c86dcd81

Git commit 1ae3ead2cd854258954e784bf51f03822321aefe by Ben McGinnes on 19/02/2018 at 15:51..
Conflict with Phabricator files

* The developers of Phabricator, the web front-end on dev.gnupg.org
  have not implemented renderers for Markdown, Org-Mode or any other
  common markdown like language.
* They also refuse to do so.
* Instead they re-invented the wheel and implemented their own version
  of Markdown-like thing which is incompatible with everything else.
  It is called Remarkup.
* The developers of Phabricator and Remarkup have refused to provide
  conversion tools to move files to/from any format to/from Remarkup.
* They expect everyone to learn their new favourite pet project.
* Remarkup may or may not display Org Mode files, but if so then it is
  likely to only want to do so as plain text.
* There is an unaffiliated and unofficial project to convert Github
  Markdown to Remarkup via Pandoc.  This might be adapted for our use,
  but requires testing.
* Until then exporting from Org Mode to UTF-8 text is likely the least
  worst plan.
* Which means renaming this file to README.org first.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ae3ead2cd854258954e784bf51f03822321aefe

Git commit ea481d4bb9e6197fbc195187d1362b844e2cba2e by Ben McGinnes on 19/02/2018 at 16:11..
Title fix

* Fixed title.
https://invent.kde.org/neon/forks/gpgme/-/commit/ea481d4bb9e6197fbc195187d1362b844e2cba2e

Git commit c82b17c6ce490738efb07186532e752e6f70ea07 by Ben McGinnes on 19/02/2018 at 16:11..
Text conversion

* Exported from Org Mode to UTF-8 text.
* Removed my name from just under the title.
https://invent.kde.org/neon/forks/gpgme/-/commit/c82b17c6ce490738efb07186532e752e6f70ea07

Git commit 272a8e778a959cb24298f488e77fce9bffd23b7a by Ben McGinnes on 19/02/2018 at 16:13..
Renaming ad infinitum ...

* Dropped the .txt from the end of the file ...
https://invent.kde.org/neon/forks/gpgme/-/commit/272a8e778a959cb24298f488e77fce9bffd23b7a

Git commit b3b1241bb3e0668f9455b633c83f25f87a6ca5fe by Daniel Kahn Gillmor on 24/02/2018 at 01:49..
use DEP-14 branch naming
https://invent.kde.org/neon/forks/gpgme/-/commit/b3b1241bb3e0668f9455b633c83f25f87a6ca5fe

Git commit ea4da5682c4c8a397921df5fa82d7e2b0de409eb by Daniel Kahn Gillmor on 24/02/2018 at 01:50..
d/control: add Rules-Requires-Root: no
https://invent.kde.org/neon/forks/gpgme/-/commit/ea4da5682c4c8a397921df5fa82d7e2b0de409eb

Git commit 8a2d7b8c24126cd16a9d93bbb7cc3e4d4c0182b5 by Ben McGinnes on 26/02/2018 at 01:25..
Merge branch 'ben/gitsettings' of ben/gitignored

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8a2d7b8c24126cd16a9d93bbb7cc3e4d4c0182b5

Git commit 6f2e2e0f150d5c6d53de5bc48af137f7864d5fd9 by Ben McGinnes on 26/02/2018 at 02:51..
LaTeX headers

* Set LaTeX headers to enable ligatures and a 12pt font by default.
* Paper size left for regional defaults.
* Using XeLaTeX for easier font control.
* Using default LaTeX font of Latin Main, but that's easy enough to change.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f2e2e0f150d5c6d53de5bc48af137f7864d5fd9

Git commit 8da63fdee5e700e66c3b86271739a31cbe1ce2f5 by Ben McGinnes on 26/02/2018 at 03:04..
Merge branch 'ben/python-docs-01'

* Documentation and the first brush strokes towards the future.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8da63fdee5e700e66c3b86271739a31cbe1ce2f5

Git commit c58f61e92226c4a03f216f5d07bdc5479ce8a2d9 by Ben McGinnes on 26/02/2018 at 03:09..
WS removal

* Whitespace removal.
https://invent.kde.org/neon/forks/gpgme/-/commit/c58f61e92226c4a03f216f5d07bdc5479ce8a2d9

Git commit 59fe3f26c1ca0fba16f76738cd05aaf80fb735ef by NIIBE Yutaka on 27/02/2018 at 09:43..
core: Support non-thread-safe getenv.

* src/get-env.c (_gpgme_getenv): Use gpgrt_lock_lock
and gpgrt_lock_unlock to protect call of getnev.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/59fe3f26c1ca0fba16f76738cd05aaf80fb735ef

Git commit 73c51bc9858de2aab25844e7e283a6334038ccc8 by Ben McGinnes on 27/02/2018 at 16:21..
TODO ... the TODO

* If we're going to use Org, let's actually use Org.
* Added the properties tags for each point.
* Some of thems still need custom ID tags assigned properly.
* Probably ought to make them actual TODOs at some point, but that can
  wait until they can be marked as DONE anyway.
* Will add a TODO for some of this stuff ... oh, the irony.
https://invent.kde.org/neon/forks/gpgme/-/commit/73c51bc9858de2aab25844e7e283a6334038ccc8

Git commit 8047e1374fe6e69e8c4502e58e6522ea86e4bef4 by Ben McGinnes on 27/02/2018 at 16:30..
TODO the TODO

* Added an actual TODO to fix the TODOs.
* Pretty sure I know who will be completing this one ...  ;)
https://invent.kde.org/neon/forks/gpgme/-/commit/8047e1374fe6e69e8c4502e58e6522ea86e4bef4

Git commit 85bdca3b2b095afb672f19abbffccd2bcb8bbd0a by Ben McGinnes on 27/02/2018 at 16:43..
New stuff

* Added the idea for alternative Emacs bindings (to extend the
  existing ones, not replace them outright).
* Added a reference to the API Squared part of the project.
https://invent.kde.org/neon/forks/gpgme/-/commit/85bdca3b2b095afb672f19abbffccd2bcb8bbd0a

Git commit 12a87af1df906744a14079ff7ff88e7d60679695 by Ben McGinnes on 03/03/2018 at 21:32..
TODO updates

* Updated TODO with tags to make everything appear properly when
  exported to HTML or PDF.
* Added a couple more items, mainly to do with docs or future bindings.
* Marked some, but not all as actual TODO items.
* Some items should probably be removed, but haven't been yet.
* Some have probably been completed already.
https://invent.kde.org/neon/forks/gpgme/-/commit/12a87af1df906744a14079ff7ff88e7d60679695

Git commit 1d910672539686e2e17fd8fa1a894cee92863417 by Ben McGinnes on 03/03/2018 at 21:38..
TODO

* WS removal
https://invent.kde.org/neon/forks/gpgme/-/commit/1d910672539686e2e17fd8fa1a894cee92863417

Git commit b438e5e44c2eaf22549db94141a3ec8731556674 by Ben McGinnes on 03/03/2018 at 21:56..
TODO DONE

* Marked off a TODO for this clean-up.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b438e5e44c2eaf22549db94141a3ec8731556674

Git commit 75f5e6e6672a1bbd16b7680313c0f96796c219bd by Ben McGinnes on 03/03/2018 at 21:59..
Missed a couple

* WS indicated 2 custom-ids were missed, now they're set.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/75f5e6e6672a1bbd16b7680313c0f96796c219bd

Git commit f61d4f585f27c13fabf7a23ad295bdc8bea7c838 by Ben McGinnes on 04/03/2018 at 22:40..
IDENTIFY

* Fixed sp error in docstring.
https://invent.kde.org/neon/forks/gpgme/-/commit/f61d4f585f27c13fabf7a23ad295bdc8bea7c838

Git commit 1516c56ee4da28eb720bbacb026892393d10b24a by Ben McGinnes on 06/03/2018 at 23:41..
Removed double

* default.profraw didn't need to be listed twice.
https://invent.kde.org/neon/forks/gpgme/-/commit/1516c56ee4da28eb720bbacb026892393d10b24a

Git commit 13d2164cd9f313b409b2210d9e63465681cccc99 by Ben McGinnes on 07/03/2018 at 05:07..
Nuxed doubles

* Just because there's a lot of documentation which needs to be added,
  doesn't mean it needs to be listed twice.  Merged the two lists.
https://invent.kde.org/neon/forks/gpgme/-/commit/13d2164cd9f313b409b2210d9e63465681cccc99

Git commit 3a746d5d46ffd7d332dc24fd6a4d24efc5fc1230 by Ben McGinnes on 07/03/2018 at 05:11..
copyright fix

* Made the copyright line a new top level org heading in order to
  prevent it getting folded into other tasks which will eventually get
  closed (so it doesn't go missing if those items are subsequently
  archived).
https://invent.kde.org/neon/forks/gpgme/-/commit/3a746d5d46ffd7d332dc24fd6a4d24efc5fc1230

Git commit d4778bb23d0817ee6fbcbe4f0ff0ff0429bf3669 by Ben McGinnes on 07/03/2018 at 06:56..
TODO

* Slightly expanded the list.
https://invent.kde.org/neon/forks/gpgme/-/commit/d4778bb23d0817ee6fbcbe4f0ff0ff0429bf3669

Git commit 8f2c0f4534ea2a07f071f360a63e877f60dc52f2 by Ben McGinnes on 07/03/2018 at 08:13..
TODO - HOWTO

* Added suv-entry for the new HOWTO being started and, since it has
  been started, checked it off.
https://invent.kde.org/neon/forks/gpgme/-/commit/8f2c0f4534ea2a07f071f360a63e877f60dc52f2

Git commit 5215d58ae2521d81c3db0b45dfbdce01a679acab by Ben McGinnes on 07/03/2018 at 09:05..
GPGME Python bindings HOWTO

* Started work on the GPGME Python bindings HOWTO.
* 1,050 words to begin with at approx. 7.5KB.
* Got as far as installation.
* Includes instruction not to use PyPI for this.
https://invent.kde.org/neon/forks/gpgme/-/commit/5215d58ae2521d81c3db0b45dfbdce01a679acab

Git commit 8a76deb11efd7dadfde6e8e7e69fbcd92577982f by Ben McGinnes on 07/03/2018 at 09:12..
HOWTO update

* removed one bit of whitespace.
* Marked up references to gpgme.h.
* Fixed one spelling error.
* Removed py2.6 from python search order since even if it is
  supported, it shouldn't be encouraged.
https://invent.kde.org/neon/forks/gpgme/-/commit/8a76deb11efd7dadfde6e8e7e69fbcd92577982f

Git commit 47d401d159852ea08e90af21d91bb4b93be9000d by Ben McGinnes on 07/03/2018 at 10:27..
GPL compatible license for documentation

* Added the same, slightly modified GPL based license that is used in
  other parts of GnuPG.
https://invent.kde.org/neon/forks/gpgme/-/commit/47d401d159852ea08e90af21d91bb4b93be9000d

Git commit e8adab68f8c0cd865ff220f06dfaff7fe183e8a1 by Ben McGinnes on 08/03/2018 at 03:13..
doc: Added multiple TODOs for inclusion in the HOWTO

* Some instructions to include are fairly obvious; as with encryption,
  decryption and signature verification.
* Some are a little less obvious.
* This includes the requests received to specifically include subkey
  management (adding and revoking subkeys on a primary key that's
  being retained.
* Added the UID equivalents to the list, as well as key selection
  matters (and may or may not include something for handling group
  lines since that involves wrapping a CLI binary).
* Key control documentation and examples requested by Mike Ingle of
  confidantmail.org.
https://invent.kde.org/neon/forks/gpgme/-/commit/e8adab68f8c0cd865ff220f06dfaff7fe183e8a1

Git commit a98f2c556fe6e33a9cd38279e64e4b09f05cc675 by Ben McGinnes on 08/03/2018 at 04:23..
doc-howto: fundamental aspects of GPGME vs Python

* Added a section for those pythonistas who are too used to web
  programming.  Stressed that it's not simply not RESTful, it's not
  even REST-like.
* Letting me move on to drawing a very loose parallel between a
  session and a context.  The differences should become obvious in the
  subsequent sections.
https://invent.kde.org/neon/forks/gpgme/-/commit/a98f2c556fe6e33a9cd38279e64e4b09f05cc675

Git commit 75463d589522cba427f9e5a3a408192ffad8bb21 by Ben McGinnes on 08/03/2018 at 17:42..
doc: Basic operation of the python bindings

* Added sample code for encrypting some text to a single key.
* Basically I'm just lifting existing production code and changing the
  key IDs from mine to "0x12345678DEADBEEF" for these first few
  examples.
* I'll fill in the text description after.
* Note: due to my regional location, I might split some tasks into
  more commits in order to be sure no work gets lost in case of
  emergency (or to put it another way: I know Telstra too well to
  trust them).
https://invent.kde.org/neon/forks/gpgme/-/commit/75463d589522cba427f9e5a3a408192ffad8bb21

Git commit c767a4a3590bd8a224d0268746df443942cb28c2 by Ben McGinnes on 08/03/2018 at 18:25..
doc: python bindings howto update

* Added example of decryption.
* included some quick notes for myself regarding aspects to explain
  when I flesh out the explanatory text.
https://invent.kde.org/neon/forks/gpgme/-/commit/c767a4a3590bd8a224d0268746df443942cb28c2

Git commit fa4927146b68dd045903285f1c45fb64deb2e361 by Ben McGinnes on 08/03/2018 at 20:53..
docs: python bindings howto update.

* Added all four signing code examples that are most likely to be
  used: armoured, clearsigned, detached armoured and detached binary.
* May remove some examples and just discuss the differences, but it
  depends on the way the text is filled out.
https://invent.kde.org/neon/forks/gpgme/-/commit/fa4927146b68dd045903285f1c45fb64deb2e361

Git commit 6849924ffbd48ba3f9d32b4a59a02e1d2083fc19 by Ben McGinnes on 08/03/2018 at 21:36..
doc: TODO list update

* Closed off a few ancient items and added recommendation to others to
  use the dev.gnupg.org site for real bugs/features updates.
* See also this statement on the gnupg-devel list regarding this file:
  https://lists.gnupg.org/pipermail/gnupg-devel/2018-March/033499.html
https://invent.kde.org/neon/forks/gpgme/-/commit/6849924ffbd48ba3f9d32b4a59a02e1d2083fc19

Git commit e846c3daeeb4e7092169cdb7bf4f55e0b105aac3 by Ben McGinnes on 08/03/2018 at 22:01..
docs: TODO

* Removed WS.
https://invent.kde.org/neon/forks/gpgme/-/commit/e846c3daeeb4e7092169cdb7bf4f55e0b105aac3

Git commit f685cda281c6148072e8a6cd139c990cb041ea3d by Ben McGinnes on 08/03/2018 at 22:31..
Merge branch 'master' of ssh+git://playfair.gnupg.org/git/gpgme into ben/docs/2018-03

* Fixed conflicts with TODO.
https://invent.kde.org/neon/forks/gpgme/-/commit/f685cda281c6148072e8a6cd139c990cb041ea3d

Git commit ab81c2d868bba79fdb8f8d7f576b6bd88c6bdf3c by Ben McGinnes on 09/03/2018 at 04:22..
doc: python bindings howto

* Added example for verifying both detached and "in-line" signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/ab81c2d868bba79fdb8f8d7f576b6bd88c6bdf3c

Git commit 93252df9dc4c9932467814745655350a8cab900e by Ben McGinnes on 09/03/2018 at 04:27..
doc: python bindings TODO list

* Updated to reflect the most recent work on the HOWTO for the Python
  bindings.
https://invent.kde.org/neon/forks/gpgme/-/commit/93252df9dc4c9932467814745655350a8cab900e

Git commit 01686463948ac6096dd8579a110c478d3a1f9a83 by Ben McGinnes on 09/03/2018 at 05:49..
doc: python bindings howto

* Wrote the text description explaining each step in the most basic
  encryption operation.
* Will need to include additional examples for encrypting to multiple
  recipients using Context().encrypt instead of Context().op_encrypt.
https://invent.kde.org/neon/forks/gpgme/-/commit/01686463948ac6096dd8579a110c478d3a1f9a83

Git commit f2c1e8d8d54068a7f072efa178fc30460821eff3 by Ben McGinnes on 09/03/2018 at 09:44..
doc: python TODO list

* Slightly tweaked one heading to make it clear it wasn't a duplicate.
https://invent.kde.org/neon/forks/gpgme/-/commit/f2c1e8d8d54068a7f072efa178fc30460821eff3

Git commit 172baaf4d3e4ed03a4d3437be9efa3dfe6a847bc by Ben McGinnes on 09/03/2018 at 09:45..
doc: python bindings HOWTO

* Added instructions and code to count the number of public and secret
  keys available since it was quick and easy.
https://invent.kde.org/neon/forks/gpgme/-/commit/172baaf4d3e4ed03a4d3437be9efa3dfe6a847bc

Git commit 7ebc5a357057d01b7ef965521ab68b7cb7e20a8f by Ben McGinnes on 12/03/2018 at 13:33..
doc: python bindings howto

* Switched from links to some external docs to using footnotes where
  necessary.
* Ideally the howto should be as stand alone as possible.
* Also it makes it difficult to convert to another format for
  proof-reading if there are links that the conversion can't find.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ebc5a357057d01b7ef965521ab68b7cb7e20a8f

Git commit 0e1300ce777dd0c87f31ac8bc49846b9df242df9 by Ben McGinnes on 12/03/2018 at 17:55..
doc: python bindings howto

* Added a more complicated encryption example with a few variations on
  the encryption method to account for untrusted recipient keys,
  signing or not signing, including or excluding default keys and so
  on.
https://invent.kde.org/neon/forks/gpgme/-/commit/0e1300ce777dd0c87f31ac8bc49846b9df242df9

Git commit 83b1336ceebb86e13a55bbf220df2d750f6b3ec6 by Ben McGinnes on 12/03/2018 at 18:42..
doc: python bindings howto

* Fixed an error in the encryption try/except statement.
https://invent.kde.org/neon/forks/gpgme/-/commit/83b1336ceebb86e13a55bbf220df2d750f6b3ec6

Git commit a8f48b6f577d562c25fd0191c0cc2cc8e96078c1 by Ben McGinnes on 12/03/2018 at 19:09..
doc: python bindings howto

* error corrections.
* multiple typesetting fixes only required due to certain archaic
  eccentricities of LaTeX.
* a couple of minor python PEP8 compliance corrections.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8f48b6f577d562c25fd0191c0cc2cc8e96078c1

Git commit 484e9a6229ac9c80c6be4df638bce711f08a74c6 by Ben McGinnes on 12/03/2018 at 20:42..
doc: python bindings howto

* updated multi-encryption final example to be complete.
* second example shows most likely method of reading plaintext.
* updated example filenames to stick with running gag
  (i.e. secret_plans.txt).
https://invent.kde.org/neon/forks/gpgme/-/commit/484e9a6229ac9c80c6be4df638bce711f08a74c6

Git commit 36dfbdffea60c529a6d1e1ff3e507be016b6a0f6 by Ben McGinnes on 12/03/2018 at 20:49..
doc: python bindings howto

* Fixed a spelling error in the key counting text.
https://invent.kde.org/neon/forks/gpgme/-/commit/36dfbdffea60c529a6d1e1ff3e507be016b6a0f6

Git commit f81adeba992a9fd3b5a199e9a2e242a0f53cf639 by Ben McGinnes on 12/03/2018 at 21:26..
doc: python bindings howto

* Added a miscellaneous work-arounds section at the end.
* Included code in said miscellaneous section for accessing the groups
  specified in a gpg.conf file.
* It's a bit ugly since it does require subprocess (but not call,
  Popen or shell access and only accesses one command).
https://invent.kde.org/neon/forks/gpgme/-/commit/f81adeba992a9fd3b5a199e9a2e242a0f53cf639

Git commit c27a7a3f994dad0eccee890185582f4350fbf233 by Ben McGinnes on 13/03/2018 at 00:50..
doc: python bindings howto

* Added text description for the decryption example.
https://invent.kde.org/neon/forks/gpgme/-/commit/c27a7a3f994dad0eccee890185582f4350fbf233

Git commit f29bda8d7146b4bc0bf73d6e613131545ff86b73 by Ben McGinnes on 13/03/2018 at 04:03..
doc: python bindings howto

* Signatures have changed as a result of the recent update from Justus.
* Sample code updated.
* Text to follow later.
https://invent.kde.org/neon/forks/gpgme/-/commit/f29bda8d7146b4bc0bf73d6e613131545ff86b73

Git commit e489ddd08af29fdad8db8aa0aec0c314daa3678c by Ben McGinnes on 13/03/2018 at 07:32..
doc: python bindings howto

* During the course of working out the updated signature methods,
  determined that key selection (including counting) will beed to be
  presented before the basic functions.
* Moved "working with keys" up.
https://invent.kde.org/neon/forks/gpgme/-/commit/e489ddd08af29fdad8db8aa0aec0c314daa3678c

Git commit c92da2c7eb148ce9fb06495a8470dd9caf662f9a by Ben McGinnes on 13/03/2018 at 08:20..
doc: python bindings howto

* Added key selection for specifying signing key or keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/c92da2c7eb148ce9fb06495a8470dd9caf662f9a

Git commit 952b6042f78017c476452088261af8d352cfa729 by Ben McGinnes on 13/03/2018 at 14:41..
doc: python bindings howto

* Added explanation of the ascendance of Python 3 over Python 2 in the
  guide to the intro.
* Expanded key selection description so people know what not to
  include regarding key IDs with this key selection method.
https://invent.kde.org/neon/forks/gpgme/-/commit/952b6042f78017c476452088261af8d352cfa729

Git commit a10dcb4f138eb5a21881cdbc4806c25129d4ae4e by Ben McGinnes on 13/03/2018 at 15:21..
doc: python bindings howto

* Added a section on key selection.
* Included recommendation for using fingerprint when selecting one
  specific key.
* Also included the most ironically amusing example of multiple key
  selection in a GPG guide.  Hey, it's public data ... (heh).
https://invent.kde.org/neon/forks/gpgme/-/commit/a10dcb4f138eb5a21881cdbc4806c25129d4ae4e

Git commit a71205dc3b58970adf591b4e4553824a33f353db by Ben McGinnes on 13/03/2018 at 15:40..
doc: python binding howto

* Clarified which English dialects this is written in.
* Translating to American can happen *after* it's done.
** The Yank version would probably want to change some of the examples
   anyway.
* Began the description for normal/default signing.
https://invent.kde.org/neon/forks/gpgme/-/commit/a71205dc3b58970adf591b4e4553824a33f353db

Git commit 423fdcd4653cb01f07f2b0e72cfcf49554930f70 by Ben McGinnes on 14/03/2018 at 09:36..
doc: python bindings howto

* Added recommended method of single encryption with description.
https://invent.kde.org/neon/forks/gpgme/-/commit/423fdcd4653cb01f07f2b0e72cfcf49554930f70

Git commit ef27f3781a37e264d0eb7d1745eb2c804ec062c4 by Ben McGinnes on 14/03/2018 at 09:40..
doc: python bindings todo

* minor phrasing fix.
https://invent.kde.org/neon/forks/gpgme/-/commit/ef27f3781a37e264d0eb7d1745eb2c804ec062c4

Git commit 8eb08b318913644d918002f3195f7ec0e75ae239 by Werner Koch on 14/03/2018 at 10:10..
core: Import cJSON code from the payproc project.

* src/cJSON.c: New.
* src/cJSON.h: New.
* src/cJSON.readme: New.
--

This is a copy of the code from the payproc commit
af5d6b4f820ee19e246a2cab6f56465fe91f1233.  The code was originally
added to payproc with the commit below.

Signed-off-by: Werner Koch <wk at gnupg.org>

===============================================
commit 7ae7ef29bc5ec19e005e6a5a739233d655f3f05f
Author:     Werner Koch <wk at gnupg.org>
AuthorDate: Wed Apr 2 09:01:42 2014 +0200
Commit:     Werner Koch <wk at gnupg.org>
CommitDate: Wed Apr 2 09:12:02 2014 +0200

Simplify cJSON and add new macros.

* src/cJSON.h: Re-indented.
(cjson_t): New.
(cjson_is_): New macros.
* src/cJSON.c: Re-indented.  Include errno.h and our util.h.
(ep): Remove global var.
(cJSON_GetErrorPtr): Remove.
(cJSON_strcasecmp): Cast args for use with tolower.
(cJSON_malloc, cJSON_free): Remove.  Change callers to use xtrymalloc
and xfree.
(cJSON_InitHooks): Remove.
(cJSON_strdup): Remove.  Change callers to use xtrystrdup.
(cJSON_New_Item): Simplify.
(cJSON_ParseWithOpts, cJSON_Parse): Add arg R_ERROFF.
(parse_string, parse_value, parse_array, parse_object): Add arg EP.
--

cJSON has been taken from cjson-code-58.zip.  The README file has been
renamed to cJSON.readme and the files have been changed to GNU coding
standards.  Because that parser is small enough to be source copied it
does not make sense to treat it as a library and I changed the memory
allocation functions to the usual xmalloc ones. The only external
dependency now is out util.h which declares those functions.

The lowercase cjson_t better fits into our coding style as well as the
new macros.  Thanks to Dave Gamble for this nice parser.
===============================================
https://invent.kde.org/neon/forks/gpgme/-/commit/8eb08b318913644d918002f3195f7ec0e75ae239

Git commit ada059b07178147821b1598c935aa70ae45e3e6c by Ben McGinnes on 14/03/2018 at 16:51..
doc: python bindings howto

* Fixed multiple sample code examples of writing output to a file.
* Added the description of detached signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/ada059b07178147821b1598c935aa70ae45e3e6c

Git commit e5c85fba25de1187949697e2dae0e89345b71e89 by Ben McGinnes on 14/03/2018 at 17:07..
doc: python bindings howto

* Added description for detached signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/e5c85fba25de1187949697e2dae0e89345b71e89

Git commit 6bc12a0eeb20409770cb8b923d08c18c2b730cb8 by Ben McGinnes on 14/03/2018 at 20:20..
doc: python bindings howto

* Added 4 signature verification methods and partial text for them.
https://invent.kde.org/neon/forks/gpgme/-/commit/6bc12a0eeb20409770cb8b923d08c18c2b730cb8

Git commit b35aaef7a3b793b8f6f5b42596c0a6a51e87f78c by Ben McGinnes on 15/03/2018 at 00:18..
doc: python bindings howto

* Added text for verifying signatures.
https://invent.kde.org/neon/forks/gpgme/-/commit/b35aaef7a3b793b8f6f5b42596c0a6a51e87f78c

Git commit 1d05e6aa4ea467c8c5926b827cfcfba357d03312 by Ben McGinnes on 15/03/2018 at 01:14..
doc: python bindings howto

* Added c.get_key instructions and examples.
https://invent.kde.org/neon/forks/gpgme/-/commit/1d05e6aa4ea467c8c5926b827cfcfba357d03312

Git commit 5d1dd2abe5cf787875d12afe46c78c75385d7b31 by Ben McGinnes on 15/03/2018 at 01:27..
doc: python bindings howto

* Added sections for key generation and key editing.
https://invent.kde.org/neon/forks/gpgme/-/commit/5d1dd2abe5cf787875d12afe46c78c75385d7b31

Git commit 5432e5f9d1dfc02812d0b181f8d88cdf4a2bfbfb by Ben McGinnes on 15/03/2018 at 03:01..
doc: python bindings howto

* generated a new primary key for Danger Mouse in an alternative homedir.
https://invent.kde.org/neon/forks/gpgme/-/commit/5432e5f9d1dfc02812d0b181f8d88cdf4a2bfbfb

Git commit b02d9d0a7b96b186eb3063d94bde369339181461 by Ben McGinnes on 15/03/2018 at 03:43..
doc: python bindings howto

* Added an encryption subkey to Danger Mouse's primary key.
https://invent.kde.org/neon/forks/gpgme/-/commit/b02d9d0a7b96b186eb3063d94bde369339181461

Git commit 9e3e4a835c64f5d06de821b1fd648af37827ff26 by Ben McGinnes on 15/03/2018 at 03:59..
doc: python bindings howto

* Spell checking and fixing the few errors.
https://invent.kde.org/neon/forks/gpgme/-/commit/9e3e4a835c64f5d06de821b1fd648af37827ff26

Git commit 7ac65b10837740caf68cdade791b8c5ce4eb1b03 by Ben McGinnes on 15/03/2018 at 04:16..
doc: python bindings howto

* Added a new user ID for Danger Mouse.
* Removed the empty entry for key preferences since that is handled
  through gpg.conf and/or editing the key directly.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ac65b10837740caf68cdade791b8c5ce4eb1b03

Git commit 961aea212ef48914ecbfa169addf951b0854b0b4 by Ben McGinnes on 15/03/2018 at 04:51..
doc: python bindings howto

* Added key signing.
https://invent.kde.org/neon/forks/gpgme/-/commit/961aea212ef48914ecbfa169addf951b0854b0b4

Git commit 3d0c7a2202c8e9bd4f284fd00069d34b8d3d3d4c by Ben McGinnes on 15/03/2018 at 05:13..
doc: python bindings howto

* Fixed a minor typographic error.
* Bumped version number in preparation for merge with master.
* While there are probably a few more things worthy of being added
  (mainly how to revoke things), this document is essentially ready
  for publication now.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3d0c7a2202c8e9bd4f284fd00069d34b8d3d3d4c

Git commit 94a95ac12364989db7f4be333107f3c023551857 by Ben McGinnes on 15/03/2018 at 14:34..
doc: python bindings howto

* Promoted final encryption example so that it will appear as heading
  6.1.3 when exported to HTML or PDF.
https://invent.kde.org/neon/forks/gpgme/-/commit/94a95ac12364989db7f4be333107f3c023551857

Git commit 22e2445beee46ed1e527a98e635153c7cf03786f by Ben McGinnes on 15/03/2018 at 14:48..
doc: python bindings howto

* fixed custom_id for decryption so the XHTML validates.
https://invent.kde.org/neon/forks/gpgme/-/commit/22e2445beee46ed1e527a98e635153c7cf03786f

Git commit a630a1e3e74c926163864b013cb164b4cd1866fc by Andre Heinecke on 15/03/2018 at 15:23..
core: Parse skipped_v3_keys

* src/gpgme.h.in (gpgme_import_result_t): Extend with skipped_v3_keys.
* src/import.c (gpgme_op_import_result): Extend debug with new field.
(parse_import_res): Parse skipped_v3_keys.
* tests/gpg/t-support.h, tests/run-support.h (print_import_result):
Print skipped_v3_keys.

--
This makes it possible to handle this in a GUI in a future
version.

GnuPG-Bug-Id: T3776
https://invent.kde.org/neon/forks/gpgme/-/commit/a630a1e3e74c926163864b013cb164b4cd1866fc

Git commit ad95288d3b3efc38998841add4fe658c84701f98 by Andre Heinecke on 15/03/2018 at 15:23..
cpp: Expose skipped_v3_keys

* lang/cpp/src/importresult.cpp,
 lang/cpp/src/importresult.h (ImportResult::numV3KeysSkipped): New.

--
GnuPG-Bug-Id: T3776
https://invent.kde.org/neon/forks/gpgme/-/commit/ad95288d3b3efc38998841add4fe658c84701f98

Git commit 431897a4c48fe1bc9d37f655097aabaf5b685d11 by Ben McGinnes on 15/03/2018 at 16:52..
doc: python bindings howto

* Added clarification on why it's not on PyPI.
https://invent.kde.org/neon/forks/gpgme/-/commit/431897a4c48fe1bc9d37f655097aabaf5b685d11

Git commit 81c90d0cd0f959fd5e01baed9b4af0ec35ecb85c by Werner Koch on 16/03/2018 at 12:36..
core: Adjust cJSON code for use in GPGME.

* src/cJSON.c: Remove util.h.  Use gpgrt alloc functions.
(cJSON_Delete): Do not clobber ERRNO.
(cJSON_AddItemToObject): Return OBJECT or NULL.
(cJSON_AddNullToObject): New.
(cJSON_AddTrueToObject): New.
(cJSON_AddFalseToObject): New.
(cJSON_AddBoolToObject): New.
(cJSON_AddNumberToObject): New.
(cJSON_AddStringToObject): New.
* src/cJSON.h (cJSON__h): Replace macro by cJSON_h for C compliance.
(cJSON_AddNullToObject): Remove macro.
(cJSON_AddTrueToObject): Remove macro.
(cJSON_AddFalseToObject): Remove macro.
(cJSON_AddBoolToObject): Remove macro.
(cJSON_AddNumberToObject): Remove macro.
(cJSON_AddStringToObject): Remove macro.
--

The gpgrt malloc functions are used so that we can easily mix memory
returned by gpgrt (e.g. es_read_line) with memory returned from the
JSON function.  In general that is not needed but on Windows it makes
a difference if the gpgme DLL is linked to a different C runtime
than the application.

The macros have been replaced to allow error checking (i.e out of
core) for these functions.  More error checking should be implemented
instead of silently creating objects which are not as requested.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/81c90d0cd0f959fd5e01baed9b4af0ec35ecb85c

Git commit d2b31d8c106423bd0eaa5fffaa39b0983c9ae525 by Werner Koch on 16/03/2018 at 12:55..
json: Add framework for the gpgme-json tool

* src/gpgme-json.c: New.
* src/Makefile.am (bin_PROGRAMS): Add gpgme-json.
(gpgme_json_SOURCES, gpgme_json_LDADD): New.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d2b31d8c106423bd0eaa5fffaa39b0983c9ae525

Git commit b549f69d0520bb74957b95cec9ea918dba2374f6 by Ben McGinnes on 16/03/2018 at 16:46..
doc: python bindings howto

* Made the changes suggested by Jakub Wilk on gnupg-devel.
* Still need to make the far more comprehensive changes suggested by Justus.
https://invent.kde.org/neon/forks/gpgme/-/commit/b549f69d0520bb74957b95cec9ea918dba2374f6

Git commit 82c5af225f2bdf3acc6fc652a96ee61c9b057395 by Ben McGinnes on 18/03/2018 at 21:43..
doc: python bindings howto

* Stripped decryption example to the bare bones as suggested by Justus.
https://invent.kde.org/neon/forks/gpgme/-/commit/82c5af225f2bdf3acc6fc652a96ee61c9b057395

Git commit 4811ff7b6c8ef97c7d4858ce235e9bf8227f4917 by Ben McGinnes on 18/03/2018 at 21:49..
doc: python bindings howto

* moved single encrytion examples up to the first ones, pending merge
  and major cut.
* This is basically just to make future checks of revisions a little easier.
https://invent.kde.org/neon/forks/gpgme/-/commit/4811ff7b6c8ef97c7d4858ce235e9bf8227f4917

Git commit 64c5886132aceefc9d9600a3a6dbbbf404b95b81 by Ben McGinnes on 18/03/2018 at 23:00..
doc: python bindings howto

* Replaced the single encryption methods with one main way (i.e. cut
  the low level stuff involving SEEK_SET instructions).
https://invent.kde.org/neon/forks/gpgme/-/commit/64c5886132aceefc9d9600a3a6dbbbf404b95b81

Git commit 1779d7b9d6769b2e47f1e90260290e25c8c3aa02 by Ben McGinnes on 18/03/2018 at 23:39..
doc: python bindings howto

* deconstructing multi-recipient encryption.
https://invent.kde.org/neon/forks/gpgme/-/commit/1779d7b9d6769b2e47f1e90260290e25c8c3aa02

Git commit bf67cf433fe82924ed40e79785e95403c07cc068 by Ben McGinnes on 19/03/2018 at 01:46..
doc: python bindings todo list

* Checked off several points of howto coverage as completed.
* Reorganised to move S/MIME coverage to its own separate group of tasks.
* Noted only revocation remains for howto completion.
https://invent.kde.org/neon/forks/gpgme/-/commit/bf67cf433fe82924ed40e79785e95403c07cc068

Git commit 0fb8a5d45c1c77a5928d6e356271da055aa55994 by Ben McGinnes on 19/03/2018 at 02:09..
doc: python bindings howto

* Adjusted the python-gnupg so the comments regarding insecure
  invocation of commands via subprocess (shell=True) were a major
  historical issue and not a a current issue.
* Not including Vinay Sajip's requested change to say it is now secure
  since no audit of the current code base has been performed and my
  last major inspection of that code was around the time I first
  ported PyME to Python 3 in 2015.
https://invent.kde.org/neon/forks/gpgme/-/commit/0fb8a5d45c1c77a5928d6e356271da055aa55994

Git commit d5f6dec048d3d4d94f1fcdb3f4249cf6e71c4b92 by Ben McGinnes on 19/03/2018 at 04:03..
doc: python bindings howto

* Slight python-gnupg clarification.  See also this thread:
  https://lists.gnupg.org/pipermail/gnupg-devel/2018-March/033528.html
https://invent.kde.org/neon/forks/gpgme/-/commit/d5f6dec048d3d4d94f1fcdb3f4249cf6e71c4b92

Git commit 3e0f68fdff1998dae9cb6f8510a3e945a268d1f6 by Ben McGinnes on 19/03/2018 at 21:07..
example: python bindings encryption

* Since we don't want to encourage accessing the low level functions
  (e.g. op_encrypt), but since this example can still be useful to
  understand, renaming it and will add new encryption examples to
  match the instructions in the HOWTO.
https://invent.kde.org/neon/forks/gpgme/-/commit/3e0f68fdff1998dae9cb6f8510a3e945a268d1f6

Git commit 6950a63e63d60685ddb6f4cbff7b826b8acb5b13 by Ben McGinnes on 19/03/2018 at 21:26..
docs: python bindings examples

* Added reference to location where all the examples included in the
  HOWTO will be available as executable scripts.
* Included a short README file in that location.
https://invent.kde.org/neon/forks/gpgme/-/commit/6950a63e63d60685ddb6f4cbff7b826b8acb5b13

Git commit 8f7672ad1b267f122f647bb5f984734d0ff66a5c by Ben McGinnes on 19/03/2018 at 21:31..
doc: python bindings example README

* Added the same license as used with the HOWTO.
* Since these examples are so basic, they'll be dual licensed the same
  as GPGME itself (otherwise it would slip too dangerously against the
  need for permissive licensing of crypto libraries).
https://invent.kde.org/neon/forks/gpgme/-/commit/8f7672ad1b267f122f647bb5f984734d0ff66a5c

Git commit b30ebf89725641018b3b08f77876530f9b983fa2 by Ben McGinnes on 19/03/2018 at 21:39..
doc: python bindings examples

* Explicitly stated that all this code is released under the GPLv2+
  and the LGPLv2.1+.
https://invent.kde.org/neon/forks/gpgme/-/commit/b30ebf89725641018b3b08f77876530f9b983fa2

Git commit cfbdcb7fb3fa438cafba82e4fb8f327df596f98e by Ben McGinnes on 19/03/2018 at 21:55..
example: python bindings key count

* Added script wo count the number of keys in both the public and
  secret key stores.
https://invent.kde.org/neon/forks/gpgme/-/commit/cfbdcb7fb3fa438cafba82e4fb8f327df596f98e

Git commit 7ab42e79ade89f28507ea42d51148a40b4bfc736 by Ben McGinnes on 19/03/2018 at 22:25..
example: encrypt file

* Example to encrypt a file to a single key.
* Takes key ID and/or fpr as a CLI parameter.
* Takes path and filename as a CLI parameter.
* Encrypts to specified key only, no signing and writes the output in
  both ASCII armoured and GPG binary formats with output filenames
  based on input filename.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ab42e79ade89f28507ea42d51148a40b4bfc736

Git commit f0790f224d7af9521efe96e69a8f719fb89a5af2 by Ben McGinnes on 19/03/2018 at 22:39..
example: encrypt file

* Fixed typo in second encryption call.
https://invent.kde.org/neon/forks/gpgme/-/commit/f0790f224d7af9521efe96e69a8f719fb89a5af2

Git commit f3fe47e8fd2e7bc748016befcae494421223368c by Ben McGinnes on 19/03/2018 at 22:47..
example: sign and encrypt file

* Example to sign and encrypt a file.
* Similar to encrypt-file.py except all keys are considered trusted
  and signs with the default key.
* Also encrypts to the default key.
https://invent.kde.org/neon/forks/gpgme/-/commit/f3fe47e8fd2e7bc748016befcae494421223368c

Git commit 7221bb67642eb01a07957d66d0cbcd4ef8aadbf8 by Ben McGinnes on 19/03/2018 at 22:53..
example: encrypt file

* Nested encryption in try/except statement in case recipient key is
  untrusted or invalid.
https://invent.kde.org/neon/forks/gpgme/-/commit/7221bb67642eb01a07957d66d0cbcd4ef8aadbf8

Git commit 29e918171f352c71a90a16c04d4a3dcafa5db682 by Ben McGinnes on 20/03/2018 at 03:19..
example: groups work-around

* Added groups selection work around code.
* Intended for use as a module to be imported by other scripts,
  usually with "from groups import group_lists" or "from groups import
  group_lines" or similar.
https://invent.kde.org/neon/forks/gpgme/-/commit/29e918171f352c71a90a16c04d4a3dcafa5db682

Git commit 51258975d763c9471859d635e6080c2ec02e8647 by Ben McGinnes on 20/03/2018 at 03:32..
example: decrypt file

* Decrypts a file taking file names as command line parameters.
https://invent.kde.org/neon/forks/gpgme/-/commit/51258975d763c9471859d635e6080c2ec02e8647

Git commit 96d0395bccbbff91f73c06cb7bd6c131f04b8a9a by Ben McGinnes on 20/03/2018 at 03:55..
example: keycount

* Fixed missing parenthesis.
https://invent.kde.org/neon/forks/gpgme/-/commit/96d0395bccbbff91f73c06cb7bd6c131f04b8a9a

Git commit 52e262991f1fdf7da93882c3b22c05537376cf49 by Ben McGinnes on 20/03/2018 at 03:57..
doc: python bindings howto

* Fixed typos in examples.
https://invent.kde.org/neon/forks/gpgme/-/commit/52e262991f1fdf7da93882c3b22c05537376cf49

Git commit 9e1e6554834d0e803dd0889deaef4f11047c7e47 by Werner Koch on 20/03/2018 at 09:38..
core: Fix ABI regression in recent commit.

* src/gpgme.h.in (_gpgme_op_import_result): Move new field
'skipped_v3_keys' to the end.
--

The ABI break has not made it into a release.

Also document the new field.

Fixes-commit: a630a1e3e74c926163864b013cb164b4cd1866fc
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9e1e6554834d0e803dd0889deaef4f11047c7e47

Git commit 343d3e2232a22d0999e1693f0f95e5e290005829 by Werner Koch on 20/03/2018 at 09:41..
core: Do not clobber R_KEY in gpgme_get_key on error.

* src/keylist.c (gpgme_get_key): Assign a value to the return
parameter only on success.
--

This problem could be triggered by an ambiguous key.  The problem is
that the key returned in that case is for one not expected and worse
it has not been ref-ed.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/343d3e2232a22d0999e1693f0f95e5e290005829

Git commit 44f9e80ea99733f373d75c3632273f763e6f5853 by Werner Koch on 20/03/2018 at 10:13..
Merge branch 'master' into json-tool
https://invent.kde.org/neon/forks/gpgme/-/commit/44f9e80ea99733f373d75c3632273f763e6f5853

Git commit 6073789a6d3514263404c93fa795a398bfd93d91 by Werner Koch on 20/03/2018 at 10:14..
json: Implement op:encrypt

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6073789a6d3514263404c93fa795a398bfd93d91

Git commit 0390ede18696520be9cc1a42f628e23159b7c2eb by Ben McGinnes on 21/03/2018 at 01:28..
example: sign file

* Similar to encrypt file except for signing a file in normal mode.
* Noticed additional changes to be made to the howto to match this,
  but they will have to wait due to a power outage (currently running
  on battery and a mobile connection, but that won't last).
https://invent.kde.org/neon/forks/gpgme/-/commit/0390ede18696520be9cc1a42f628e23159b7c2eb

Git commit 1d2746433c9632fc0c7bc10b59280fca15895545 by Ben McGinnes on 21/03/2018 at 14:12..
doc: python bindings howto

* deconstructed and fixed all three signing methods.
https://invent.kde.org/neon/forks/gpgme/-/commit/1d2746433c9632fc0c7bc10b59280fca15895545

Git commit 1fdd1f306d45f6aeee91c7f016f7c37286ee3b3b by Ben McGinnes on 21/03/2018 at 14:18..
example: clear signing

* Added example to clear sign a file with signing key selection.
https://invent.kde.org/neon/forks/gpgme/-/commit/1fdd1f306d45f6aeee91c7f016f7c37286ee3b3b

Git commit 6fa2a344282e369e6aca8155bc77dd2c12a29414 by Ben McGinnes on 21/03/2018 at 14:24..
examples: doc strings

* Fixed minor errors in two doc strings.
https://invent.kde.org/neon/forks/gpgme/-/commit/6fa2a344282e369e6aca8155bc77dd2c12a29414

Git commit af6cbba18ba5e2bbecce5f8268c146282cd12367 by Ben McGinnes on 21/03/2018 at 14:26..
example: encrypt-sign-file.py

* Adjusted the doc string.
https://invent.kde.org/neon/forks/gpgme/-/commit/af6cbba18ba5e2bbecce5f8268c146282cd12367

Git commit ac6a552c37147a000de74f49d1bff34dad52252e by Ben McGinnes on 21/03/2018 at 14:30..
example: detach sign file

* Added example to make detached signatures of a file with key selection.
https://invent.kde.org/neon/forks/gpgme/-/commit/ac6a552c37147a000de74f49d1bff34dad52252e

Git commit e57388a69f61d14e3df3c842d227fb450c96c807 by Ben McGinnes on 21/03/2018 at 14:48..
doc: python bindings howto

* Fixed minor error in one of the verification examples.
https://invent.kde.org/neon/forks/gpgme/-/commit/e57388a69f61d14e3df3c842d227fb450c96c807

Git commit ae2767eb27b6a76284ee4403e575869afe2e80a8 by Ben McGinnes on 21/03/2018 at 14:50..
example: verify signed file

* Added example to verify normal and clearsigned files.
https://invent.kde.org/neon/forks/gpgme/-/commit/ae2767eb27b6a76284ee4403e575869afe2e80a8

Git commit ad6cb4f9b8b97a2bc501c17fc542a84b725dedea by Ben McGinnes on 21/03/2018 at 16:58..
example: verify signatures

* Added example for verifying detached signatures against the files
  they're the signatures for.
https://invent.kde.org/neon/forks/gpgme/-/commit/ad6cb4f9b8b97a2bc501c17fc542a84b725dedea

Git commit a4e3f827652c59d850b4e5506a92c1ecd190c1bb by Ben McGinnes on 21/03/2018 at 17:04..
example: groups

* Added a docstring.
https://invent.kde.org/neon/forks/gpgme/-/commit/a4e3f827652c59d850b4e5506a92c1ecd190c1bb

Git commit 6c6af9a7b0ae4e7182d669bec282c6edaaa7eaa1 by Ben McGinnes on 21/03/2018 at 18:07..
example groups work around

* Updated usage so it only references importing the final list of
  lists produced.  Trying to use some of the mid-points can have
  unpredictable results (this is part of the problem with work
  arounds).
https://invent.kde.org/neon/forks/gpgme/-/commit/6c6af9a7b0ae4e7182d669bec282c6edaaa7eaa1

Git commit 8b401bfc76eac762553f76faab53c2f4cd117a8d by Ben McGinnes on 21/03/2018 at 18:20..
example: group key selection

* Example of preparing a keylist object using an existing group line
  from the gpg.conf file.
https://invent.kde.org/neon/forks/gpgme/-/commit/8b401bfc76eac762553f76faab53c2f4cd117a8d

Git commit e14f1f687ff618716ed17e309a0475df95e1c0aa by Werner Koch on 21/03/2018 at 18:26..
json: Use gpgrt_argparse instead of argsparse.c

* src/gpgme-json.c: Remove header argparse.h.  Define
GPGRT_ENABLE_ARGPARSE_MACROS.
(interactive_repl): Replace strusage by gpgrt_strusage.
(my_strusage): Add SPDX level.
(main): Switch to gpgrt_argparse stuff but keep very limited
functionality when building with an older libgpg-error.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e14f1f687ff618716ed17e309a0475df95e1c0aa

Git commit 0ccc57c9512246d82d46e7732bfb0f95c18ca9d3 by Ben McGinnes on 21/03/2018 at 18:40..
example: sign and encrypt to group

* Begins to string together some of the simpler examples to do more
  useful things.
* Signs and encrypts a file while encrypting to every key in a group
  specified in the gpg.conf file.
https://invent.kde.org/neon/forks/gpgme/-/commit/0ccc57c9512246d82d46e7732bfb0f95c18ca9d3

Git commit 0a0d57fd41380cd797d29e11cec8a77c7404e960 by Ben McGinnes on 21/03/2018 at 18:52..
example: key selection

* Similar to group-key-selection.py, but does not use an existing
  group from gpg.conf; instead takes multiple key IDs, fingerprints or
  patterns on the command line and adds them to a keylist object.
https://invent.kde.org/neon/forks/gpgme/-/commit/0a0d57fd41380cd797d29e11cec8a77c7404e960

Git commit c6a0395f0a3a57071f0c943f7815f58a02f9d2f3 by Ben McGinnes on 21/03/2018 at 18:55..
example: key selection

* Removed extraneous blank line.
https://invent.kde.org/neon/forks/gpgme/-/commit/c6a0395f0a3a57071f0c943f7815f58a02f9d2f3

Git commit 7ddff71908a85111c8e0da41312197b3b1a77da6 by Ben McGinnes on 21/03/2018 at 19:05..
examples: encryption

* Fixed two incorrect Context() objects.
https://invent.kde.org/neon/forks/gpgme/-/commit/7ddff71908a85111c8e0da41312197b3b1a77da6

Git commit 61a988036bd3f0d43f7d55bfa43f5f05bec978c4 by Ben McGinnes on 21/03/2018 at 19:18..
example: group encryption

* Troubleshooting.
https://invent.kde.org/neon/forks/gpgme/-/commit/61a988036bd3f0d43f7d55bfa43f5f05bec978c4

Git commit 05e59933056ee8ef8ba7579351a58ed25dd7f754 by Ben McGinnes on 21/03/2018 at 19:19..
examples: multi-key selection operations

* Temporarily removing multi-key selection based examples.
* There are a few issues with getting the key selections to play
  nicely with gpg.Context().keylist object types.
* Will troubleshoot them separately and restore them when that's
  worked out, but I don't want these more complicated examples to
  delay merging the HOWTO with master.
https://invent.kde.org/neon/forks/gpgme/-/commit/05e59933056ee8ef8ba7579351a58ed25dd7f754

Git commit 76055dd5c7d755c6f8a242b701aeadba621fbc0f by Ben McGinnes on 21/03/2018 at 19:33..
Merge branch 'ben/docs/2018-03' of ssh+git://playfair.gnupg.org/git/gpgme into ben/docs/2018-03
https://invent.kde.org/neon/forks/gpgme/-/commit/76055dd5c7d755c6f8a242b701aeadba621fbc0f

Git commit 5722148bacab5862b40a027861d64683a0f214ea by Ben McGinnes on 21/03/2018 at 19:37..
doc and examples: python bindings HOWTO

* Added GPGME Python bindings HOWTO in Australian/British English.
** en-US "translation" still to be done.
* Added several example scripts comprised of the "Basic Functions"
  section of the HOWTO (plus the work-around at the end).
** As these scripts are very basic examples they are released under
   both the GPLv2+ and the LGPLv2.1+ (just like GPGME itself).

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5722148bacab5862b40a027861d64683a0f214ea

Git commit 65ed4ac82598734551b87fc89deab3cee010bd37 by Ben McGinnes on 21/03/2018 at 23:06..
doc: python bindings howto

* Fixed table.
https://invent.kde.org/neon/forks/gpgme/-/commit/65ed4ac82598734551b87fc89deab3cee010bd37

Git commit 6525d78d0a1d303c449762082942e71d3002b9ca by Werner Koch on 23/03/2018 at 10:26..
json: Add a new function to cJSON.

* src/cJSON.c (cJSON_CreateStringConvey): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/6525d78d0a1d303c449762082942e71d3002b9ca

Git commit d83482a1d768fc5afd3aa4836f2fefe5c549d02e by Werner Koch on 23/03/2018 at 10:27..
json: Finish op:encrypt.

* src/gpgme-json.c (add_base64_to_object): New.
(data_from_base64_string): New.
(op_encrypt): Employ them.
(process_request): Print unformated json.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d83482a1d768fc5afd3aa4836f2fefe5c549d02e

Git commit c7bb12da5297a7e188766d9759f700dd771faff8 by Werner Koch on 23/03/2018 at 10:31..
Merge branch 'json-tool'
https://invent.kde.org/neon/forks/gpgme/-/commit/c7bb12da5297a7e188766d9759f700dd771faff8

Git commit eee68c1b13fbe21c123f469712817e0c81f16383 by Werner Koch on 23/03/2018 at 11:36..
build: Allow building with released libgpg-error.

* src/gpgme-json.c (add_base64_to_object): Return an error if building
with an older libgpg-error.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/eee68c1b13fbe21c123f469712817e0c81f16383

Git commit b9000bc293164ff62efa7e91e5cf6d5fc19d482f by Werner Koch on 23/03/2018 at 14:27..
core: New gpgme_set_ctx_flag "request-origin".

* src/context.h (gpgme_context): Add 'request_origin'.
* src/gpgme.c (gpgme_release): Free that field.
(gpgme_set_ctx_flag, gpgme_get_ctx_flag): Add "request-origin".
* src/engine-backend.h (engine_ops): Add 'set_engine_ops' func ptr and
adjust all users.
* src/engine.c (_gpgme_engine_set_engine_flags): New.
* src/op-support.c (_gpgme_op_reset): Call that func.
* src/engine-gpg.c (struct engine_gpg): Add 'request_origin'.
(gpg_set_engine_flags): New.
(_gpgme_engine_ops_gpg): Hook it.
(build_argv): Use command line option --request-origin.
* src/engine-gpgsm.c (struct engine_gpgsm): Add 'request_origin'.
(gpgsm_set_engine_flags): New.
(_gpgme_engine_ops_gpgsm): Hook it.
(start): Send OPTION "request-origin".
* src/engine-assuan.c (struct engine_llass): Add 'request_origin'.
(gpgsm_set_engine_flags): New.
(_gpgme_engine_ops_assuan): Hook it.
(start): Send OPTION "pretend-request-origin".

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b9000bc293164ff62efa7e91e5cf6d5fc19d482f

Git commit e5abf4827aead50437bbdff8cfdd5e9fdc6ed72d by Werner Koch on 23/03/2018 at 14:32..
json: Use a request origin of "browser".

* src/gpgme-json.c (_create_new_context): Set flag.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e5abf4827aead50437bbdff8cfdd5e9fdc6ed72d

Git commit 4763974ef6932c503e35c3d14fe47a66a5323f48 by Werner Koch on 23/03/2018 at 14:46..
core: Need to increase an array in the gpg engine.

* src/engine-gpg.c (build_argv): Allcate one slot more for ARGV.
--

Fixes-commit: b9000bc293164ff62efa7e91e5cf6d5fc19d482f
https://invent.kde.org/neon/forks/gpgme/-/commit/4763974ef6932c503e35c3d14fe47a66a5323f48

Git commit e6180f2b36cc8a6c6154e5f3d702324af573132a by Ben McGinnes on 23/03/2018 at 19:41..
doc: python bindings howto

* Fixed a minor spelling error and a minor grammatical error.
https://invent.kde.org/neon/forks/gpgme/-/commit/e6180f2b36cc8a6c6154e5f3d702324af573132a

Git commit d0bb4ec4ecdfae4dfd9dd84aef905afb490013d5 by Ben McGinnes on 24/03/2018 at 22:44..
Merge branch 'master' of ssh+git://playfair.gnupg.org/git/gpgme
https://invent.kde.org/neon/forks/gpgme/-/commit/d0bb4ec4ecdfae4dfd9dd84aef905afb490013d5

Git commit 22247f658ce2f8e527c26746358cfc2643c4832f by Ben McGinnes on 24/03/2018 at 23:01..
doc: python bindings howto

* Fixed the plaintext, result and verify_result references in the
  decryption section.
https://invent.kde.org/neon/forks/gpgme/-/commit/22247f658ce2f8e527c26746358cfc2643c4832f

Git commit dde1aae312958776fab475d6c0cdfa19cc255863 by Ben McGinnes on 25/03/2018 at 00:26..
script: temporary homedir creation

* Script to create a temporary gnupg homedir in the user's directory
  for testing or scripting purposes.
* Creates a hidden directory on POSIX systems with the correct
  permissions (700).
* Creates a gpg.conf in that directory containing the same
  configuration options as used in the "Danger Mouse" example in the
  HOWTO with the correct permissions (600).
https://invent.kde.org/neon/forks/gpgme/-/commit/dde1aae312958776fab475d6c0cdfa19cc255863

Git commit 3b724aae423f2de01812165d54df2a7b524c82f6 by Ben McGinnes on 25/03/2018 at 00:35..
doc: python bindings howto

* Added a reference to new script which will setup a temporary homedir
  for a user.
https://invent.kde.org/neon/forks/gpgme/-/commit/3b724aae423f2de01812165d54df2a7b524c82f6

Git commit 40a9dea5d56506400b67b0c11f6e55a1629dc6fe by Ben McGinnes on 25/03/2018 at 00:54..
script: temp homedir

* Fixed whitespace.
https://invent.kde.org/neon/forks/gpgme/-/commit/40a9dea5d56506400b67b0c11f6e55a1629dc6fe

Git commit 5b32efbaf37920b2e99d4bb87cb383b2809b1688 by Ben McGinnes on 25/03/2018 at 11:25..
doc: python bindings howto

* Testing the addition of a HTML header set in org-mode in order to
  had RSS update links for files.
* This should work with any [X]HTML export from current versions of
  Org-Mode, but if it also works on website generated pages then it'll
  tick off one of the wishlist itmes.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b32efbaf37920b2e99d4bb87cb383b2809b1688

Git commit 1b5da37a47ceef41545e0b2474738613f36be949 by Ben McGinnes on 27/03/2018 at 01:16..
script: temp homedir config

* added passphrase caching of 5 minutes.
https://invent.kde.org/neon/forks/gpgme/-/commit/1b5da37a47ceef41545e0b2474738613f36be949

Git commit f9159b1d75d3209b1c22bbb0ed4472800b60a522 by Ben McGinnes on 27/03/2018 at 01:29..
example: key creation

* Script to generate a new key with encryption subkey taking input
  from interactive prompts.
* Will also take a passphrase via pinentry and uses passphrase caching
  of five minutes when used in conjunction with the temp homedir
  script.
https://invent.kde.org/neon/forks/gpgme/-/commit/f9159b1d75d3209b1c22bbb0ed4472800b60a522

Git commit a2eedef630891397f8eccb5bb426a0728588bf41 by Ben McGinnes on 27/03/2018 at 01:42..
doc: python bindings howto

* Fixed some minor PEP8 compliance issues in the key creation examples.
https://invent.kde.org/neon/forks/gpgme/-/commit/a2eedef630891397f8eccb5bb426a0728588bf41

Git commit 7c220e387d511b0cf66f99370759c36b729cc444 by Andre Heinecke on 27/03/2018 at 09:24..
core: Initialize key return value in gpgme_get_key

* src/keylist.c (gpgme_get_key): Set r_key to NULL.

--
The c++ bindings and others assumed that r_key is set to NULL
on error. This is the behavior gpgme_op_keylist_next also
has. Even if it is not specified what happens to r_key on
error setting it to NULL should not hurt and is more
expected behavior.

This directly fixes an uninitialized memory access error
in the c++ bindings / Kleopatra:
GnuPG-Bug-Id: T3865

And will fix some additional random crashes in Kleopatra and GpgOL.
https://invent.kde.org/neon/forks/gpgme/-/commit/7c220e387d511b0cf66f99370759c36b729cc444

Git commit 4b2fa657d195382d14ac99be40b66327e0fc855c by Werner Koch on 28/03/2018 at 18:53..
json: Make native messaging work.

* src/gpgme-json.c (opt_debug): New.
(process_request): Add optional arg nm_mode.  In this mode take the
request from a "message" object.
(native_messaging_repl): Add debug output and call process_request
in NM_MODE.
(main): Add option --debug.  Parse envvar GPGME_JSON_DEBUG as an
alternative way to enable this.  Use a default log file.
--

Note that the default log file is ~/.gnupg/S.gpgme-json.log .
Thus to debug a javascript application you should start

  watchgnupg --time-only --force ~/.gnupg/S.gpgme-json.log

in a separate tty and then use

 GPGME_JSON_DEBUG=1 firefox &

to run firefox.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4b2fa657d195382d14ac99be40b66327e0fc855c

Git commit 3345a17dda2222e3c1592235e8a1cd9493192777 by Werner Koch on 28/03/2018 at 19:21..
json: Remove the "message" object thingy again.

* src/gpgme-json.c (process_request): Remove 'nm_mode'.
--

This was an error in the javascript testing code.  Thus the Mozilla
specs are correct that the request is send verbatim.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3345a17dda2222e3c1592235e8a1cd9493192777

Git commit 5cd419341807d8ae23fec7bd9bb7025a8a2dcb3c by Ben McGinnes on 28/03/2018 at 19:36..
example: add user ID

* Added script to add a UID to an existing key.
https://invent.kde.org/neon/forks/gpgme/-/commit/5cd419341807d8ae23fec7bd9bb7025a8a2dcb3c

Git commit 2f507b045909d32bf29d23da04db02b078e5fb9d by Ben McGinnes on 28/03/2018 at 20:22..
docs python bindings howto

* PEP8 compliance: a collection of minor edits across multiple example
  code snippets.
https://invent.kde.org/neon/forks/gpgme/-/commit/2f507b045909d32bf29d23da04db02b078e5fb9d

Git commit 5a553f5a317e5ad5ab0274d58854df1ecf390e0d by Ben McGinnes on 28/03/2018 at 22:22..
doc: python bindings howto

* Fixed a typo.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a553f5a317e5ad5ab0274d58854df1ecf390e0d

Git commit 56bbfd39acea90eb87a28b11a515b0314cdda54c by Ben McGinnes on 28/03/2018 at 22:49..
example: key signing

* Added script for signing or certifying keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/56bbfd39acea90eb87a28b11a515b0314cdda54c

Git commit d65864989c0560b5f51cb8d05d9ea9f1957b453e by Ben McGinnes on 28/03/2018 at 23:16..
docs: python bindings howto

* Added section on revoking UIDs.
https://invent.kde.org/neon/forks/gpgme/-/commit/d65864989c0560b5f51cb8d05d9ea9f1957b453e

Git commit 3b91f6af378ccc37dcf8924cbc157894c35b5192 by Ben McGinnes on 28/03/2018 at 23:21..
example: revoke UID

* Script to revoke a UID on an existing key.
https://invent.kde.org/neon/forks/gpgme/-/commit/3b91f6af378ccc37dcf8924cbc157894c35b5192

Git commit 75a1a1c33efe952986bba56494b81e2f4835b8c4 by Ben McGinnes on 28/03/2018 at 23:27..
Merge branch 'ben/howto-update-02' of ssh+git://playfair.gnupg.org/git/gpgme
https://invent.kde.org/neon/forks/gpgme/-/commit/75a1a1c33efe952986bba56494b81e2f4835b8c4

Git commit 60d7a1e8f625ea0db455bff989534dd52f0650c7 by Werner Koch on 29/03/2018 at 13:06..
json: Build only a dummy if libgpg-error is < 1.28

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/60d7a1e8f625ea0db455bff989534dd52f0650c7

Git commit fed024eff1091056647296ac589a0c88c2be41bb by Ben McGinnes on 29/03/2018 at 23:38..
Merge branch 'master' of ssh+git://playfair.gnupg.org/git/gpgme

* Also fixed a small grammatical error highlighted by a merge conflict
  (in the python bindings howto).
https://invent.kde.org/neon/forks/gpgme/-/commit/fed024eff1091056647296ac589a0c88c2be41bb

Git commit 5eb261d6028ab2c0ddd9af8e3e1f82e479c6109c by Andre Heinecke on 04/04/2018 at 09:21..
qt: Add test for resetting config value

* lang/qt/tests/t-config.cpp (CryptoConfigTest::testDefault): New.

--
There is a bug around here somewhere. This test does not show
it :-(
https://invent.kde.org/neon/forks/gpgme/-/commit/5eb261d6028ab2c0ddd9af8e3e1f82e479c6109c

Git commit eef3a509fa5744e5f09ec8084985e6070b78226b by Werner Koch (on behalf of raimund.renkert at intevation.de) on 10/04/2018 at 16:47..
js: Initial commit for JavaScript Native Messaging API

--

Note this code misses all the legal boilerplate; please add this as
soon as possible and provide a DCO so we can merge it into master.

I also removed the dist/ directory because that was not source code.
https://invent.kde.org/neon/forks/gpgme/-/commit/eef3a509fa5744e5f09ec8084985e6070b78226b

Git commit f7700a016926f0d8e9cb3c0337837deb7fe01079 by Werner Koch on 12/04/2018 at 07:17..
core: Add new context flag "no-symkey-cache".

* src/gpgme.c (gpgme_set_ctx_flag): Set flag.
(gpgme_get_ctx_flag): Get flag.
* src/context.h (struct gpgme_context): Add field no_symkey_cache.
* src/engine-gpg.c (struct engine_gpg): Ditto.
(gpg_set_engine_flags): Set flag.
(build_argv): Pass option --no-symkey-cache to gpg.

* tests/run-decrypt.c (print_result): Fix segv for symmetric messages.
(main): New option --no-symkey-cache.
* tests/run-encrypt.c (main): New option --no-symkey-cache.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f7700a016926f0d8e9cb3c0337837deb7fe01079

Git commit bdf7cd2e28432cf0fa7e0758acdfee03d7bfd45f by Werner Koch on 12/04/2018 at 13:39..
tests: Add another check to gpg/t-verify.

* tests/gpg/t-verify.c (PGM): New.  Use it instead of __FILE__.
(test_sig1_plus_unknown_key): New test signature.
(check_result): Allow checking of several signatures.
(main): Check a signature with a know and an unknown key.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bdf7cd2e28432cf0fa7e0758acdfee03d7bfd45f

Git commit ee8fad3ea0cbc82f31c86b3483abd8549df62b69 by Werner Koch on 12/04/2018 at 13:59..
tests: Avoid segv in run-verify due to Policy URLs

* tests/run-verify.c (print_result): Take care of Policy URLs.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ee8fad3ea0cbc82f31c86b3483abd8549df62b69

Git commit 478d1650bbef84958ccce439fac982ef57b16cd0 by Werner Koch on 12/04/2018 at 18:26..
core: For a failed verification return the sig's fingerprint.

* src/verify.c (parse_new_sig): Parse the new ERRSIG fpr.
--

This works only when the signatures features an ISSUER_FPR sub-packet
and with GnuPG >= 2.2.7.  If that is not the case the keyid is kept in
the FPR field.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/478d1650bbef84958ccce439fac982ef57b16cd0

Git commit b99502274ae5efdf6df0d967900ec3d1e64373d7 by Werner Koch on 12/04/2018 at 18:36..
core: Tweak STATUS_FAILURE handling.

* src/op-support.c (_gpgme_parse_failure): Ignore failures with
location "gpg-exit".
* tests/gpg/t-verify.c (main): Adjust for the now working checking of
the second key.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b99502274ae5efdf6df0d967900ec3d1e64373d7

Git commit a1f76b3b54b75a150fe272b804d85ffd40a507a6 by Werner Koch on 17/04/2018 at 06:45..
core: Add extended versions of the encrypt functions.

* src/gpgme.h.in (gpgme_op_encrypt_ext_start) New.
(gpgme_op_encrypt_ext): New.
(gpgme_op_encrypt_sign_ext_start): New.
(gpgme_op_encrypt_sign_ext): New.
* src/libgpgme.vers, tests/run-encrypt.c: Add them.

* src/encrypt.c (encrypt_start): Add arg recpstring.
(gpgme_op_encrypt): Factor code out to ...
(gpgme_op_encrypt_ext): new function with new arg recpstring.
(gpgme_op_encrypt_start): Factor code out to ...
(gpgme_op_encrypt_ext_start): new function with new arg recpstring.
* src/encrypt-sign.c (encrypt_sign_start): Add arg recpstring.
(gpgme_op_encrypt_sign): Factor code out to ...
(gpgme_op_encrypt_sign_ext): new function with new arg recpstring.
(gpgme_op_encrypt_sign_start): Factor code out to ...
(gpgme_op_encrypt_sign_ext_start): new function with new arg
recpstring.

* src/engine-backend.h (struct engine_ops): Change fields encrypt and
encrypt_sign.
* src/engine.c (_gpgme_engine_op_encrypt): Add arg recpstring and pass
to engine.
(_gpgme_engine_op_encrypt_sign): Ditto.
* src/engine-gpg.c (append_args_from_recipients_string): New.
(gpg_encrypt): Add arg recpstring and call new function as needed.
(gpg_encrypt_sign): Ditto.
* src/engine-gpgsm.c (set_recipients_from_string): New.
(gpgsm_encrypt): Add arg recpstring and call new function as needed.
* src/engine-uiserver.c (set_recipients_from_string): New.
(uiserver_encrypt): Add arg recpstring and call new function as
needed.

* tests/run-encrypt.c (xstrdup): New.
(main): Add option --keystring.

* src/gpgme-json.c (get_keys): Simplify.
(op_encrypt): Modify to make use of the extended encrypt function.

--

This new feature can be used to avoid the need for a key lookup and
thus several extra calls to the backend.

Note that run-test uses a semicolon as delimiter because that make
testing the feature on the command line much easier.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a1f76b3b54b75a150fe272b804d85ffd40a507a6

Git commit 86efba2be270d2cdd0bc66c9d3fe190495b7af2f by Werner Koch on 17/04/2018 at 07:40..
core: New encryption flag GPGME_ENCRYPT_WANT_ADDRESS.

* src/gpgme.h.in (GPGME_ENCRYPT_WANT_ADDRESS): New flag.
* src/engine-gpg.c (add_arg_recipient): New.
(add_arg_recipient_string): New.
(append_args_from_recipients): Call new helper function.
(append_args_from_recipients_string): Ditto.
* src/gpgme-json.c (op_encrypt): Add flag "want-address".
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/86efba2be270d2cdd0bc66c9d3fe190495b7af2f

Git commit 4bba3b8e2c350b8ff0d562ec63cc03a096448d84 by Werner Koch on 17/04/2018 at 08:04..
core: Allow for --hidden keyword in OpenPGP recpstrings.

* src/engine-gpg.c (append_args_from_recipients_string): Add special
keywords.
--

GnuPG-bug-id: 3775
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4bba3b8e2c350b8ff0d562ec63cc03a096448d84

Git commit bbfa7c42337bb619e6af20bf051fe0755ed5a9fd by Werner Koch (on behalf of Tobias Mueller) on 17/04/2018 at 08:20..
python: Fix crash by leaving struct members intact

* lang/python/setup.py.in: Copy gpgme.h instead of parsing it.
--
The python bindings tried to parse deprecated functions
out of gpgme.h. This fails for the current gpgme.h in
that it removes an entire field in the key sig struct (_obsolete_class).
Hence, the fields were off by an int and the bindings accessed struct
members via the wrong offset. That caused python program to crash.
At least on 32bit platforms, the crash can be easily triggered by
accessing key.uids[0].signatures. On 64bit platforms the compiler
probably aligns the struct so that the missing 4 bytes are not noticed.

With this change, the python bindings will expose all functions
that gpgme exposes, including the deprecated ones.

Credits go to Justus Winter for debugging and identying the issue.

Signed-off-by: Tobias Mueller <muelli at cryptobitch.de>
GnuPG-bug-id: 3892
https://invent.kde.org/neon/forks/gpgme/-/commit/bbfa7c42337bb619e6af20bf051fe0755ed5a9fd

Git commit c143ab692c7fc7cf2ec0aebe40b9479ee15eaba9 by Werner Koch on 17/04/2018 at 09:06..
core: For OpenPGP let offline mode disable dirmngr.

* src/engine-gpg.c (struct engine_gpg): New flag.offline.
(gpg_set_engine_flags): Set it.  Also fix setting of no_symkey_cache.
(build_argv): Pass --disable-dirmngr in offline mode.
--

GnuPG-bug-id: 3831
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c143ab692c7fc7cf2ec0aebe40b9479ee15eaba9

Git commit 3589da0500f1c80717e658d103a0cb2751d27b49 by Werner Koch on 17/04/2018 at 10:40..
core: New keyword --file for OpenPGP recpstring.

* src/engine-gpg.c (append_args_from_recipients_string): Add new
flags.
--

Now you can use gpgme to encrypt without first importing a key.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3589da0500f1c80717e658d103a0cb2751d27b49

Git commit 01435da498af9f7538d7ee810392d7eaa407957e by Werner Koch on 17/04/2018 at 11:48..
core: Extend decryption result with symkey_algo.

* src/gpgme.h.in (gpgme_op_decrypt_result_t): Add field 'symkey_algo'.
* src/decrypt.c (release_op_data): Free SYMKEY_ALGO.
(gpgme_op_decrypt_result): Make sure SYMKEY_ALGO is not NULL.
(parse_decryption_info): New.
(_gpgme_decrypt_status_handler): Parse DECRYPTION_INFO status.
* src/conversion.c (_gpgme_cipher_algo_name): New.
(_gpgme_cipher_mode_name): New.

* tests/run-decrypt.c (print_result): Print SYMKEY_ALGO

* src/util.h (_gpgme_map_gnupg_error): Remove obsolete prototype.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/01435da498af9f7538d7ee810392d7eaa407957e

Git commit e69b175e8ed5430b56e2e8f3d68c16a45f0fed17 by Werner Koch on 18/04/2018 at 07:26..
json: Add meta command ,read to gpgme-json.

* src/gpgme-json.c: Include stat.h.
(get_file): New.
(process_meta_commands): Implement ",read".

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e69b175e8ed5430b56e2e8f3d68c16a45f0fed17

Git commit ed1052842df633bc149b14c4cb17859e3c66afe4 by Werner Koch on 18/04/2018 at 09:12..
json: Add command "getmore" to gpgme-json.

* src/gpgme-json.c (MIN_REPLY_CHUNK_SIZE): New const.
(DEF_REPLY_CHUNK_SIZE): New const.
(MAX_REPLY_CHUNK_SIZE): New const.
(pending_data): New var.
(add_base64_to_object): Chnage to take a plain data pointer.
(get_chunksize): New.
(make_data_object): New.
(op_encrypt): Get chunksize and use make_data_object.
(op_getmore): New.
(process_request): Release pending data for all commands but "getmore"
and "help".
--

Native messaging has a limit on the data it may receive in one
request.  Thus the caller needs to watch for the "more" flag and
request the remaining data using "getmore" in a loop.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ed1052842df633bc149b14c4cb17859e3c66afe4

Git commit 49a617f8bbff116884ca5c7238c2e0ea4e26ce59 by Werner Koch on 18/04/2018 at 09:34..
json: Improve help meta command in gpgme-json.

* src/gpgme-json.c (process_meta_commands): Add ",help CMD".

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/49a617f8bbff116884ca5c7238c2e0ea4e26ce59

Git commit 23177e4410d05d590c0f2e1675dc645bbb4ad62c by Werner Koch on 18/04/2018 at 12:41..
core: Fix possible compliance mode detection error.

* src/verify.c (_gpgme_verify_status_handler): Insert missing break.
--

Before the insertion of the compliance status checking the break in
the default clause was used by the STATUS_PLAINTEXT code.  That got
lost.  I don't see any actual harm due to different values currently
in use for the compliance status.

Fixes-commit: 05fa2a9c7764b28fdac35eb72631439df948ca0e
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/23177e4410d05d590c0f2e1675dc645bbb4ad62c

Git commit 65479fe7b871ad6237d5a8959b73afcc7db784da by Werner Koch on 18/04/2018 at 13:20..
core: Add 'is_mime' flags to the verify and decrypt results.

* src/op-support.c (_gpgme_parse_plaintext): Add arg r_mime.
* src/decrypt.c (_gpgme_decrypt_status_handler): Ser mime flag.
* src/verify.c (_gpgme_verify_status_handler): Ditto.
* src/gpgme.h.in (gpgme_op_verify_result_t): Append fields 'is_mime'
and '_unused'.
(gpgme_op_decrypt_result_t): New field 'is_mime'.  Shrink '_unused'.

* tests/run-decrypt.c (print_result): Print MIME flag.
* tests/run-verify.c (print_result): Ditto.
--

Note that this flag (Liternal Data packet's 'm' mode) is only
specified in RFC-4880bis.  To use it you currently need to add
"rfc4880bis" to the the gpg.conf.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/65479fe7b871ad6237d5a8959b73afcc7db784da

Git commit e5273fc4431dfb597a2d9cf4af5172572476a2de by Werner Koch on 18/04/2018 at 13:24..
json: Add command "decrypt" to gpgme-json.

* src/gpgme-json.c (make_data_object): Enable auto-detection of
base-64.
(op_encrypt): Support a 'mime' flag.
(op_decrypt): New.
(process_request): Add command "encrypt".

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e5273fc4431dfb597a2d9cf4af5172572476a2de

Git commit 55e9a94680370e584fbe5d21161a2cee3fe95744 by Werner Koch on 18/04/2018 at 15:59..
core: New convenience constant GPGME_KEYLIST_MODE_LOCATE.

* src/gpgme.h.in (GPGME_KEYLIST_MODE_LOCATE): New.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/55e9a94680370e584fbe5d21161a2cee3fe95744

Git commit 1ae83de262021d7e3676b1466c56d6ebc2ea70c8 by Werner Koch on 18/04/2018 at 17:28..
doc: Unify comment style in gpgme.h

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1ae83de262021d7e3676b1466c56d6ebc2ea70c8

Git commit 67b4dafb6d3fe2b5ab889417126ca5d509c0e3ca by Werner Koch on 18/04/2018 at 17:30..
doc: Update copyright years and change two URLs.

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/67b4dafb6d3fe2b5ab889417126ca5d509c0e3ca

Git commit 8e34a14fe694a8c765973aaa3a8b2a2d2c3ba8b9 by Werner Koch on 18/04/2018 at 18:11..
json: Add stpcpy replacement.

* src/gpgme-json.c [!HAVE_STPCPY](_my_stpcpy): New.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8e34a14fe694a8c765973aaa3a8b2a2d2c3ba8b9

Git commit 3f55c52b9adc3680c7a9fb0e598598e6ed3a2a5d by Werner Koch on 18/04/2018 at 18:11..
Release 1.11.0

* configure.ac: Bump LT version to C31/A20/R0.  For cpp to C12/A6/R0.
For qt to: C10/A3/R1.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3f55c52b9adc3680c7a9fb0e598598e6ed3a2a5d

Git commit d98f08fa63e3ef7bd41c0ca812f5e753967ceb37 by Werner Koch on 18/04/2018 at 18:27..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/d98f08fa63e3ef7bd41c0ca812f5e753967ceb37

Git commit 3d8e5c07511938a0b30b4626530822338abd9ec0 by Werner Koch on 19/04/2018 at 08:29..
tests: Fix t-verify test for GnuPG < 2.2.7.

* tests/gpg/t-verify.c (check_result): Tweak for gnupg < 2.2.7.
--

The not yet releases 2.2.7-beta may print a full fingerprint in the
ERRSIG status.  This is compliant with the dscription but the new
t-verify test case did not took in account that older GnuPG versions
print only a keyid.

Fixes-commit: b99502274ae5efdf6df0d967900ec3d1e64373d7
GnUPG-bug-id: 3920
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3d8e5c07511938a0b30b4626530822338abd9ec0

Git commit b52a91f5a6818db6b3dd7ce86c01b5d5f6700d0d by Werner Koch on 19/04/2018 at 08:34..
core: Remove leftover debug output.

* src/verify.c (_gpgme_verify_status_handler): Remove debug output.
--

Actually this is a real bug because it uses a debug function available
only in the new libgpg-error versions.  Time to call Jenkins back from
vacation; there are rumors that he has been seen in the city looking
for a new Ryzen tail coat.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b52a91f5a6818db6b3dd7ce86c01b5d5f6700d0d

Git commit 0adaf7bafd352f1c3a1e797493780150e3bb0adc by Andre Heinecke on 19/04/2018 at 08:46..
cpp: Add origin and last_update

* NEWS: mention interface change.
* lang/cpp/src/key.cpp (Key::origin, Key::lastUpdate): New.
* lang/cpp/src/key.h (Key::Origin): New enum.
https://invent.kde.org/neon/forks/gpgme/-/commit/0adaf7bafd352f1c3a1e797493780150e3bb0adc

Git commit d65d6329319bff8cc555999fc92a20e151762a10 by Andre Heinecke on 19/04/2018 at 09:56..
cpp: Add origin and last_update to UserID

* NEWS: Mention it.
* lang/cpp/src/key.cpp, lang/cpp/src/key.h (UserID::lastUpdate),
(UserID::origin): New.
(gpgme_origin_to_pp_origin): New helper.
https://invent.kde.org/neon/forks/gpgme/-/commit/d65d6329319bff8cc555999fc92a20e151762a10

Git commit ab43d85b9a76fb5ba321f4c7280b4d72bfd67f59 by Werner Koch on 19/04/2018 at 14:20..
json: Remove the -noinstall flag used during development.

* src/Makefile.am (gpgme-json_LDFLAGS): Remove.
--

Reported-by: Alon Bar-Lev <alon.barlev at gmail.com>
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ab43d85b9a76fb5ba321f4c7280b4d72bfd67f59

Git commit 969700bc56ce3830bdd0ac498c14cd9f9e7db7fe by Werner Koch on 20/04/2018 at 06:56..
doc: Suggest the use of strconcat for recipient strings.

--
GnuPG-bug-id: 3775

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/969700bc56ce3830bdd0ac498c14cd9f9e7db7fe

Git commit d11bec5ef5e576dab52c1dc7d87758e4f9bf3583 by Werner Koch on 20/04/2018 at 08:13..
build: More release creation automation.

* Makefile.am: Add release and sign-release targets.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d11bec5ef5e576dab52c1dc7d87758e4f9bf3583

Git commit f779362ffbc7b9334d98f9ee50bfe3c2dc177215 by Werner Koch on 20/04/2018 at 08:32..
core: Remove another debug output leftover.

* src/decrypt.c (_gpgme_decrypt_status_handler): Remove log debug.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f779362ffbc7b9334d98f9ee50bfe3c2dc177215

Git commit 2e9a14912fb906c17017553ccd0941d172e095ff by Werner Koch on 20/04/2018 at 08:32..
Release 1.11.1

* configure.ac: Bump LT version to C31/A20/R1.  For cpp to C13/A7/R0.
For qt to: C10/A3/R2.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2e9a14912fb906c17017553ccd0941d172e095ff

Git commit 302ec1f9aa396f2207e9a0e0b87ebee4d28d5df2 by Werner Koch on 20/04/2018 at 08:41..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/302ec1f9aa396f2207e9a0e0b87ebee4d28d5df2

Git commit 7706fa2c922f5e02570b01f145ed474e82341042 by Andre Heinecke on 20/04/2018 at 12:30..
core: Do not modify args for ignored failures

* src/op-support.c (_gpgme_parse_failure): Ignore gpg-exit failures
before modifying args.

--
For op_decrypt_verify the status handler for both decrypt and
verify would parse the failure when the first parser ignored
the failure. This resulted in an ERR_INV_ENGINE as the first
call to parse_failure modified the args.

GnuPG-Bug-Id: T3919
https://invent.kde.org/neon/forks/gpgme/-/commit/7706fa2c922f5e02570b01f145ed474e82341042

Git commit 94f21d9f6bc1cf94e068e26eae53e593189dcec6 by Maximilian Krambach on 20/04/2018 at 13:23..
Merge branch 'master' into javascript-binding
https://invent.kde.org/neon/forks/gpgme/-/commit/94f21d9f6bc1cf94e068e26eae53e593189dcec6

Git commit 6ab25e40d904007755c5d999bf66ae264236e745 by Maximilian Krambach on 20/04/2018 at 13:24..
js: encrypt improvement and decrypt method

* Compatibility class gpgme_openpgpjs offers an API that should accept
  openpgpjs syntax, throwing errors if a parameter is unexpected/not
  implemented
* tried to be more generic in methods
* waiting for multiple answers if 'more' is in the answer
* more consistency checking on sending and receiving
* updated the example extension
--
https://invent.kde.org/neon/forks/gpgme/-/commit/6ab25e40d904007755c5d999bf66ae264236e745

Git commit b290834ae5de0d5ace607c8b5c7d12ec50e93105 by Daniel Kahn Gillmor on 23/04/2018 at 05:10..
New upstream version 1.11.1
https://invent.kde.org/neon/forks/gpgme/-/commit/b290834ae5de0d5ace607c8b5c7d12ec50e93105

Git commit 9a2123753a57a251e5c55e07b71d8c70ca136edd by Daniel Kahn Gillmor on 23/04/2018 at 05:10..
Update upstream source from tag 'upstream/1.11.1'

Update to upstream version '1.11.1'
with Debian dir bb46e0cd551065acaeac345e2195f61b442d712f
https://invent.kde.org/neon/forks/gpgme/-/commit/9a2123753a57a251e5c55e07b71d8c70ca136edd

Git commit b3c07863ec5071c164dee07fea36e0d38a962594 by Daniel Kahn Gillmor on 23/04/2018 at 05:44..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/b3c07863ec5071c164dee07fea36e0d38a962594

Git commit c0b1f048977fb321a4dbbc02af2f39348e4a9833 by Daniel Kahn Gillmor on 23/04/2018 at 05:44..
add symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/c0b1f048977fb321a4dbbc02af2f39348e4a9833

Git commit ecc191c78b0faed5563bbc37951efc0a7aec4ddd by Daniel Kahn Gillmor on 23/04/2018 at 05:44..
clean up lintian overrides
https://invent.kde.org/neon/forks/gpgme/-/commit/ecc191c78b0faed5563bbc37951efc0a7aec4ddd

Git commit 4e1111274496de47c859c4d4ee5e26bed85eab54 by Daniel Kahn Gillmor on 23/04/2018 at 05:44..
standards-version: bump to 4.1.4 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/4e1111274496de47c859c4d4ee5e26bed85eab54

Git commit d7f1ca05e09f257669a296939e9c7d737dfd56ae by Daniel Kahn Gillmor on 23/04/2018 at 05:44..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/d7f1ca05e09f257669a296939e9c7d737dfd56ae

Git commit d62f66b1fb47f2075770d896f672748a4136e70b by Maximilian Krambach on 23/04/2018 at 15:18..
js: Key handling stubs, Error handling, refactoring

--

* Error handling: introduced GPGMEJS_Error class that handles errors
  at a more centralized and consistent position
* src/Connection.js:
  The nativeMessaging port now opens per session instead of per
  message. Some methods were added that reflect this change
  - added methods disconnect() and reconnect()
  - added connection status query
* src/gpgmejs.js
  - stub for key deletion
  - error handling
  - high level API for changing connection status
* src/gpgmejs_openpgpjs.js
  - added stubs for Key/Keyring handling according to current
    state of discussion. It is still subject to change
* src/Helpers.js
  - toKeyIdArray creates an array of KeyIds, now accepting
    fingerprints, GPGMEJS_Key objects and openpgp Key objects.
* Key objects (src/Key.js) Querying information about a key
  directly from gnupg. Currently a stub, only the Key.fingerprint is
  functional.
* Keyring queries (src/Keyring.js): Listing and searching keys.
  Currently a stub.
https://invent.kde.org/neon/forks/gpgme/-/commit/d62f66b1fb47f2075770d896f672748a4136e70b

Git commit 727340b295f25e04cb595022ba143cda48364697 by Maximilian Krambach on 23/04/2018 at 17:15..
js: don't allow message operation changes

--

Once an operation is changed, their set of allowed/required parameters
will change. So we shouldn't set/change the operation later.
https://invent.kde.org/neon/forks/gpgme/-/commit/727340b295f25e04cb595022ba143cda48364697

Git commit 461dd0c8b41683a91073b362d100ee5217ec53f6 by Maximilian Krambach on 24/04/2018 at 16:44..
js: change in initialization ancd connection handling

--

* The Connection will now be started before an object is created, to
  better account for failures.
* index.js: now exposes an init(), which returns a Promise of
  configurable <GpgME | gpgmeGpgME_openPGPCompatibility> with an
  established connection.
* TODO: There is currently no way to recover from a "connection lost"
* Connection.js offers Connection.isConnected, which toggles on port
  closing.
https://invent.kde.org/neon/forks/gpgme/-/commit/461dd0c8b41683a91073b362d100ee5217ec53f6

Git commit e2aa8066a9b3ce694169ad9fcc26cae486a804af by Maximilian Krambach on 24/04/2018 at 17:29..
js: Key object adjustments after discussion

--

* src/aKey.js changed fingerprint to setter (to avoid overwrites)
* src/gpgmejs_openpgpjs.js
  - Added a class GPGME_Key_openpgpmode, which allows for renaming and
    deviation from GPGME.
  - renamed classes *_openPGPCompatibility to *_openpgpmode. They are
    not fully compatible, but only offer a subset of properties. Also,
    the name seems less clunky
https://invent.kde.org/neon/forks/gpgme/-/commit/e2aa8066a9b3ce694169ad9fcc26cae486a804af

Git commit 30c47d80a27054aa340cbd6dc39d1b8a5dc5cf22 by Maximilian Krambach on 25/04/2018 at 07:23..
js: allow openpgp-like Message objects as Data

--

* src/gpgmejs.js: If a message offers a getText, consider it as the
  message's content
https://invent.kde.org/neon/forks/gpgme/-/commit/30c47d80a27054aa340cbd6dc39d1b8a5dc5cf22

Git commit c72adc00965fe4fcedd9d18609211021a091b28b by Maximilian Krambach on 25/04/2018 at 08:54..
js: change in Error behaviour

--

* Error objects will now return the error code if defined as error type
  in src/Errors.js, or do a console.log if it is a warning. Errors from
  the native gpgme-json will be marked as GNUPG_ERROR.
https://invent.kde.org/neon/forks/gpgme/-/commit/c72adc00965fe4fcedd9d18609211021a091b28b

Git commit 5befa1c9751fe54b5ae87906d7f09772ce9de6ea by Maximilian Krambach on 25/04/2018 at 09:32..
js: reactivate timeout on connection

--
* A timeout of 5 seconds is activated for functions that do not require
  a pinentry. This definition is written to src/permittedOperations.js
* testapplication.js now alerts the proper error codes and messages.
* src/Errors.js fixed two typos in error handling
https://invent.kde.org/neon/forks/gpgme/-/commit/5befa1c9751fe54b5ae87906d7f09772ce9de6ea

Git commit 1fb310cabe578625f96fce5d84ff6f0092c08d24 by Maximilian Krambach on 25/04/2018 at 13:59..
js: Configuration and Error handling

--

* gpgmejs_openpgpjs
  - unsuported values with no negative consequences can now reject,
    warn or be ignored, according to config.unconsidered_params
  - cleanup of unsupported/supported parameters and TODOS

* A src/index.js init() now accepts a configuration object

* Errors will now be derived from Error, offering more info and a
  stacktrace.

* Fixed Connection.post() timeout triggering on wrong cases

* Added comments in permittedOperations.js, which gpgme interactions
  are still unimplemented and should be added next
https://invent.kde.org/neon/forks/gpgme/-/commit/1fb310cabe578625f96fce5d84ff6f0092c08d24

Git commit 3685913bf510a14b8cb324d980217d90489e6453 by Maximilian Krambach on 25/04/2018 at 17:45..
js: First testing and improvements

--

* Introduced Mocha/chai as testsuite. After development build
  'npm test' should run the unit tests. Functionality exclusive to
  Browsers/WebExtensions cannot be run this way, so some other testing
  is still needed.

  - package.json: Added required development packages
  - .babelrc indirect configuration for mocha. ES6 transpiling
    needs some babel configuration, but mocha has no setting for it.
  - test/mocha.opts Vonfiguration for mocha runs

* Fixed errors:
  - Helpers.js toKeyIdArray; isLongId is now exported
  - Key.js Key constructor failed
  - Message.js will not throw an Error during construction, a new
    message is now created with createMessage, which can return an
    Error or a GPGME_Message object

* Tests:
  - test/Helpers: exports from Helpers.js, GPGME_Error handling
  - test/Message: first init test with bad parameters
https://invent.kde.org/neon/forks/gpgme/-/commit/3685913bf510a14b8cb324d980217d90489e6453

Git commit 6b267c56fd6e54fb1c254455c04495534260b547 by Andre Heinecke on 26/04/2018 at 12:11..
qt: Fix filename handling in cryptoconfig

* src/qgpgmenewcryptoconfig.cpp (QGpgMENewCryptoConfigEntry::urlValue):
Build url from local file.
(QGpgMENewCryptoConfigEntry::setURLValue): Set native seperated
path.

--
This fixes setting files through cryptoconfig on Windows.
GnuPG-Bug-Id: T3939
https://invent.kde.org/neon/forks/gpgme/-/commit/6b267c56fd6e54fb1c254455c04495534260b547

Git commit 1f7b19512cfa7e1b153b99d6a2b40bad82a5496e by Maximilian Krambach on 26/04/2018 at 15:13..
js: created TestExtension and smaller fixes

--

* Extensions:

  - Moved testapplication to Demoextension
  - Created BrowserTestExtension.
    Includes mocha and chai. For running tests that cannot be run
    outside a WebExtension

  Both Extensions can be found zipped in build/extensions after
  running build_extensions.sh

* Code changes:
  - src/Config: Place for the configuration
  - small fixes raised during testing in Keyring.js, Message.js,
  - src/gpgmejs_openpgpjs.js don't offer direct GpgME object to the
    outside, as it only causes confusion
  - index.js init() now checks the config for validity

* Tests:
  - Reordered tests in test/.
  - Input values are now in a separate file which may be of use for
    bulk testing

* moved the build directory from dist to build
https://invent.kde.org/neon/forks/gpgme/-/commit/1f7b19512cfa7e1b153b99d6a2b40bad82a5496e

Git commit f45b926816340d3cca37f013a9eb1b1d9cdb0cfe by Maximilian Krambach on 26/04/2018 at 15:59..
js: fixed wrong paths in DemoExtension

--

* Some forgotten internal links after the move to a subdir and cleaning
https://invent.kde.org/neon/forks/gpgme/-/commit/f45b926816340d3cca37f013a9eb1b1d9cdb0cfe

Git commit eb7129f3196ae4f0807ceba0c1fc9e818ea6cd22 by Maximilian Krambach on 27/04/2018 at 08:21..
js: fixed empty operation setter in Message

--

* src/Message.js Messages failed because they were not assigned
  operations
https://invent.kde.org/neon/forks/gpgme/-/commit/eb7129f3196ae4f0807ceba0c1fc9e818ea6cd22

Git commit fda7b13f1b673962ce34b6f429158a7eb9cef47b by Maximilian Krambach on 27/04/2018 at 18:03..
js: more testing

--

* Tests: initialization of the two modes, encryption

* gpgme.js: reintroduced message check before calling
  Connection.post()

* gpgmejs_openpgp.js: Fixed openpgp mode not passing keys

* index.js: fixed some confusion in parseconfig()

* Inserted some TODO stubs for missing error handling
https://invent.kde.org/neon/forks/gpgme/-/commit/fda7b13f1b673962ce34b6f429158a7eb9cef47b

Git commit 6f67814eb45725bc7f3736a2638bad0a7470f17a by Maximilian Krambach on 03/05/2018 at 12:12..
js: changed Key class stub

--

* src/Key.js:
  A Key object cannot offer more than basic functionality outside a
  connection, so it now requires a connection to be present.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f67814eb45725bc7f3736a2638bad0a7470f17a

Git commit c755287ba845c4cbbf1d50e5aafecb2e687c7ac9 by Maximilian Krambach on 03/05/2018 at 16:03..
js: Added browser testing for unit tests

--

* Added unittests to be run inside a Browser. To be able to access
  the non-exposed functions and classes, a testing bundle will be
  created, containing the tests (unittests.js) and the items to be
  tested.
* src/Helpelpers, src/Key, src/Keyring: fixed some errors found
  during testing.
https://invent.kde.org/neon/forks/gpgme/-/commit/c755287ba845c4cbbf1d50e5aafecb2e687c7ac9

Git commit 26820ba62920acfe2775bce8fc2bc8b3f17b1c10 by Andre Heinecke on 04/05/2018 at 08:03..
qt: Respect --disable-gpg-test for tests

* lang/qt/Makefile.am: Respect --disable-gpg-test

--
This is similar to the core switch to disable the tests.
https://invent.kde.org/neon/forks/gpgme/-/commit/26820ba62920acfe2775bce8fc2bc8b3f17b1c10

Git commit cf075846fb48c8d71937100d2c45069d37d54a38 by Maximilian Krambach on 04/05/2018 at 10:56..
js: fixing errors found by testing

--

* Key.js: Error code for wrong parameter in createKey should be
  "PARAM_WRONG"

* Helpers.js: The property openpgpjs-like Objects were checked for in
  toKeyIdArray was not defined.

* src/permittedOperations.js: updated more expectations and assumptions
  for the native API
https://invent.kde.org/neon/forks/gpgme/-/commit/cf075846fb48c8d71937100d2c45069d37d54a38

Git commit 46da79e3de99a7b65748994921d6aab73b9974e7 by Ben McGinnes on 05/05/2018 at 02:27..
python: key expiration datetime stamp tests

* Changed the expiration date for the generated test key to NYE this
  century, rather than the NYE this millennium as originally suggested
  in job #3815.
* This covers the lifetimes of current users (except, maybe, some very
  healthy millennials) as well as the 32-bit clock end date in 2038;
  without falling foul of OpenPGP's 2106 expiration.
https://invent.kde.org/neon/forks/gpgme/-/commit/46da79e3de99a7b65748994921d6aab73b9974e7

Git commit 8f3d83e5f0903323ec92f588f60dcecb0ae96de4 by Maximilian Krambach on 07/05/2018 at 16:27..
js: fixing errors found by testing: encrypt/decrypt

--

* Key.js: Error code for wrong parameter in createKey should be
  "PARAM_WRONG"
* Helpers.js: The property openpgpjs-like Objects were checked for in
  toKeyIdArray was not defined.
* src/permittedOperations.js: updated more expectations and assumptions
  for the native API

* new Problems:
  - There seems to be a message size limit of about 21 MB for
    nativeMessaging, much lower than the documented 4GB.
  - Some bytes are lost with random data in an encrypt-decrypt
    roundtrip. The culprit is unclear.
https://invent.kde.org/neon/forks/gpgme/-/commit/8f3d83e5f0903323ec92f588f60dcecb0ae96de4

Git commit cca40627b0afa2efc85ef7f5f1a1060a221ff2a2 by Maximilian Krambach on 08/05/2018 at 16:33..
js: more testing

--

* Tests: Under certain circumstances, some data change during
  encrypt-decrypt. Committing the current state so the problem can be
  discussed.

* Fixes:
  - disconnecting the test ports after tests are complete
  - fixed passing of the error message from gpgme-json
https://invent.kde.org/neon/forks/gpgme/-/commit/cca40627b0afa2efc85ef7f5f1a1060a221ff2a2

Git commit e2a8a87bf9cfae5d4e8a5953c2a5303b44feb398 by Werner Koch on 09/05/2018 at 14:39..
core: Make the status-fd monitor work for all gpgsm commands.

* src/engine-gpgsm.c (status_handler): Call the status monitor also
here.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e2a8a87bf9cfae5d4e8a5953c2a5303b44feb398

Git commit e54b110aec3165a32ff9551d0c5227b88aa3dd4f by Werner Koch on 09/05/2018 at 14:41..
json: Improve auto-base64 encoding to not split UTF-8 chars.

* src/gpgme-json.c (make_data_object): Switch to Base64 also for UTF-8
characters.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e54b110aec3165a32ff9551d0c5227b88aa3dd4f

Git commit 5f5bf024a83625b8f8bac4779b1c2236637c23e0 by Maximilian Krambach on 09/05/2018 at 14:55..
Merge branch 'master' into javascript-binding
https://invent.kde.org/neon/forks/gpgme/-/commit/5f5bf024a83625b8f8bac4779b1c2236637c23e0

Git commit c92326cc257cf7c8b6c0ddc43ec81573c409bc64 by Maximilian Krambach on 09/05/2018 at 17:40..
js: more testing of nativeMessaging connection

--

* There were some inconsistencies between utf-8, transfer and browsers'
  utf16, which broke characters that were split between individual
  messages. src/Connection now contains a workaround that reassembles
  javascripts' format from passed base64 strings. This needs someone
  more experienced looking.
* Added several new tests which were failing during initial debugging
  of this issue
* reorganized BrowsertestExtension to avoid cluttering.
https://invent.kde.org/neon/forks/gpgme/-/commit/c92326cc257cf7c8b6c0ddc43ec81573c409bc64

Git commit 987b31746809dfe04966e37edd759a448a28d975 by Maximilian Krambach on 14/05/2018 at 14:23..
js: Tests and improvements for openpgp mode

--

* Added openpgp - Mode tests to the browsertest Extension. These tests
  require openpgp, which should not be a hard dependency for the main
  project. Packing openpgpjs into the extension is still TODO

* Fixes:
  - openpgp mode API now correctly handles parameters as an object,
    similar to openpgpjs
  - proper check and parsing of openpgpjs Message Objects
https://invent.kde.org/neon/forks/gpgme/-/commit/987b31746809dfe04966e37edd759a448a28d975

Git commit d1ca90ef75aa4ab61cb8f7563be6fc55012a3900 by Maximilian Krambach on 14/05/2018 at 14:36..
js: remove non-browser tests

--

* The majority of tests needs to be run in a nativeMessaging context.
  Offering the few tests that don't need this context at two places
  introduces issues with maintainability. All tests now removed can be
  found in ./unittests.js
https://invent.kde.org/neon/forks/gpgme/-/commit/d1ca90ef75aa4ab61cb8f7563be6fc55012a3900

Git commit 6b4caee039af6fd97912426aff143745bf7e191a by Maximilian Krambach on 14/05/2018 at 17:02..
js: Testing lare messages

--

* Some assumption on messages were wrong. Now the tests use more
  reasonable sizes.
* bigString now uses the full utf8-extent, with the exception of
  U+0000. This code gets dropped during the encryption-decryption
  process.
https://invent.kde.org/neon/forks/gpgme/-/commit/6b4caee039af6fd97912426aff143745bf7e191a

Git commit 8a0c8c52510d9c2d934f85159f04b666286b1786 by Werner Koch on 17/05/2018 at 07:16..
core: Always fail if an OpenPG message is not integrity protected.

* src/decrypt.c (struct op_data_t): Add field not_integrity_protected.
(parse_decryption_info): Set this.  Also rename mode to aead_algo for
clarity.
(_gpgme_decrypt_status_handler): Force failure in case of a missing
MDC.
--

This extra check makes sure that a missing or stripped MDC in
 - gpg < 2.1
 - or gpg 2.2 with an old cipher algorithm
will lead to a decryption failure.  gpg 2.3 will always fail in this
case.  Implementing this check here and not backporting the 2.3 change
to 2.2 has the benefit that all GPGME using applications are protected
but scripts relying on rfc2440 (i.e. without MDC) will only break when
migrating to 2.3.

Note that S/MIME has no integrity protection mechanism but gpgsm
neither emits a DECRYPTION_INFO status line, so an error will not be
triggered.  If in the future gpgsm supports authenticated encryption
it may issue a DECRYPTION_INFO line to force a failure here but it
will in that case also emit a DECRYPTION_FAILED anyway.

GnuPG-bug-id: 3981
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8a0c8c52510d9c2d934f85159f04b666286b1786

Git commit e04b8142df21a49e6c4a3f8234cc14bfec217222 by Andre Heinecke on 17/05/2018 at 15:46..
core, w32: Add w64 handling for regkeys

* src/w32-util.c (_gpgme_get_gpg_path): Use new defines.
(GNUPG_REGKEY_2): x64 aware regkey as used by GnuPG in Gpg4win 2.x
(GNUPG_REGKEY_3): x64 aware regkey as used by GnuPG in Gpg4win 3.x
(_gpgme_get_gpgconf_path): Use new regkeys. Add another fallback.

--
This should fix more "unsupported protocol" issues if Gpg4win /
GnuPG is installed in a non standard path on 64bit systems.

The regkey handling is similar to that of gpgex and gpgol.

GnuPG-Bug-Id: T3988
https://invent.kde.org/neon/forks/gpgme/-/commit/e04b8142df21a49e6c4a3f8234cc14bfec217222

Git commit 28e3778ce21069006153bc156a414de6d9347962 by Andre Heinecke on 22/05/2018 at 10:08..
cpp: Expose sessionKey and symkeyAlgo

* lang/cpp/decryptionresult.cpp, lang/cpp/decryptionresult.h
(DecryptionResult::symkeyAlgo, DecryptionResult::sessionKey): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/28e3778ce21069006153bc156a414de6d9347962

Git commit ecad77263585cd5954758f797327d98232d880dc by Maximilian Krambach on 22/05/2018 at 12:24..
js: transfer encoding changes

--

* Uint8Arrays are not supported for now there are unsolved issues in
  conversion, and they are lower priority

* encrypt gains a new option to indicate that input values are base64
  encoded
* as decrypted values are always base64 encoded, the option base64 will
  not try to decode the result into utf, but leave it as it is
https://invent.kde.org/neon/forks/gpgme/-/commit/ecad77263585cd5954758f797327d98232d880dc

Git commit 3a9e6a8e088e233097866bb0560a36cfbbc4470e by Ben McGinnes on 23/05/2018 at 04:43..
docs and examples: python howto

* Updated the decryption example code in the HOWTO and the
  corresponding decrypt-file.py script to gracefully handle a
  decryption failure.  This error will always be triggered when GPGME
  is used to try to decrypt an old, MDC-less encrypted message or
  file.
https://invent.kde.org/neon/forks/gpgme/-/commit/3a9e6a8e088e233097866bb0560a36cfbbc4470e

Git commit f7ed80ff6a66f2c5ee6f1c3daebd597f4592733d by Maximilian Krambach on 23/05/2018 at 10:56..
js: remove openpgp mode

--

* After discussion, that mode is not required, and can result in
  being quite misleading and a maintenance hassle later on.
https://invent.kde.org/neon/forks/gpgme/-/commit/f7ed80ff6a66f2c5ee6f1c3daebd597f4592733d

Git commit fd5e14660a6f4eb1a89d69534e3e435f7fb05f8a by Andre Heinecke on 24/05/2018 at 08:26..
json: Minor typo fixes

* src/gpgme-json.c: Minor typo fixes.
https://invent.kde.org/neon/forks/gpgme/-/commit/fd5e14660a6f4eb1a89d69534e3e435f7fb05f8a

Git commit 45036c3c4c11f7bd56a00805564108e9377b657e by Andre Heinecke on 24/05/2018 at 10:37..
json: Print signatures for decrypt/verify

* gpgme-json.c (xJSON_CreateArray),
(add_summary_to_object, validity_to_string): New helpers.
(add_signature_to_object, add_signatures_to_object)
(add_signatures_object): New.
(op_decrypt): Handle verify_result.
(hlp_help): Mention decrypt.
https://invent.kde.org/neon/forks/gpgme/-/commit/45036c3c4c11f7bd56a00805564108e9377b657e

Git commit b344933e4cb17f2f26c4ed355217428bda8b8c40 by Andre Heinecke on 24/05/2018 at 11:16..
json: Fix invalid function call

* src/gpgme-json.c (add_signatures_to_object): Fix call to
xjson_CreateArray.

--
That is what happens if you edit code while reviewing changes,
without testing it again,..
https://invent.kde.org/neon/forks/gpgme/-/commit/b344933e4cb17f2f26c4ed355217428bda8b8c40

Git commit 1c0a55a60847563fecf92a383457ab3576aec5d8 by Andre Heinecke on 24/05/2018 at 11:29..
json: Add op_sign

* src/gpgme-json.c (op_sign): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/1c0a55a60847563fecf92a383457ab3576aec5d8

Git commit a6cd3a1197eb4efea0950394959c252f24475f67 by Andre Heinecke on 24/05/2018 at 11:31..
json: Add sign to help

* src/gpgme-json.c (hlp_help): Add sign.
https://invent.kde.org/neon/forks/gpgme/-/commit/a6cd3a1197eb4efea0950394959c252f24475f67

Git commit c679ed24778c997fee72d3613babad8680855882 by Andre Heinecke on 24/05/2018 at 11:36..
json: Put signature info before data output

* src/gpgme-json.c (op_decrypt): Move info before data.

--
This should enable it to first parse signatures before
handling very large chunks of data.
https://invent.kde.org/neon/forks/gpgme/-/commit/c679ed24778c997fee72d3613babad8680855882

Git commit e38b8beb20a8cfe897c378e3c20be80b8256159e by Maximilian Krambach on 24/05/2018 at 12:03..
Merge branch 'master' into javascript-binding
https://invent.kde.org/neon/forks/gpgme/-/commit/e38b8beb20a8cfe897c378e3c20be80b8256159e

Git commit a4ba80c553c2ac42f9e311344302c04ec9aa715b by Maximilian Krambach on 24/05/2018 at 13:16..
js: adding sign method

--

  * src/gpgmejs.js: method, update in src/permittedOperations
  * basic testing in BrowsertestExtension
https://invent.kde.org/neon/forks/gpgme/-/commit/a4ba80c553c2ac42f9e311344302c04ec9aa715b

Git commit 5fbf81c18b277b30639ba09e8c5d21573b444b00 by Andre Heinecke on 24/05/2018 at 14:14..
json: Implement op_verify

* src/gpgme-json.c (op_verify): New.
(hlp_help): Add verify.
(process_request): Add verify.

--
Mostly works, except for detached, base64 encoded signatures,
they are somehow not yet written to gpgme.
https://invent.kde.org/neon/forks/gpgme/-/commit/5fbf81c18b277b30639ba09e8c5d21573b444b00

Git commit 61f4532ba979dea1acd8c7de9b7d56bb8ff552d5 by Andre Heinecke on 24/05/2018 at 14:15..
json: Implement op_version

* src/gpgme-json.c (op_version): New.
(process_request): Extend for version.
(protocol_to_string, add_ei_to_object): New helpers.
https://invent.kde.org/neon/forks/gpgme/-/commit/61f4532ba979dea1acd8c7de9b7d56bb8ff552d5

Git commit 9fca7c84067c0d4c968c8920dc8ef9449769c5ea by Andre Heinecke on 24/05/2018 at 14:35..
json: Add code to gpg_error based messages

* src/gpgme-json.c (gpg_error_object): New.
(error_object_v): Extend to take error.

--
Having the error code is helpful, especially as
the strerrors are localized. E.g. to detect
an ERROR_CANCELED.
https://invent.kde.org/neon/forks/gpgme/-/commit/9fca7c84067c0d4c968c8920dc8ef9449769c5ea

Git commit 9038d30017b2e38b183d093f9b5d46e1f24c70a6 by Ben McGinnes on 24/05/2018 at 19:50..
doc: python bindings howto

* Fixed org-mode python source indenting.
** Note: nested indented blocks do not indent correctly when exported
   to [X]HTML.
https://invent.kde.org/neon/forks/gpgme/-/commit/9038d30017b2e38b183d093f9b5d46e1f24c70a6

Git commit 48e946a96d05effd56b34761b98eebb6b2a6fae1 by Ben McGinnes on 24/05/2018 at 19:50..
docs: python bindings howto

* Fixed the groups.py script so it really does what is described (the
  old code had the same result for groups, group_lines and
  group_lists).
* Updated the corresponding example in the doc to match.
https://invent.kde.org/neon/forks/gpgme/-/commit/48e946a96d05effd56b34761b98eebb6b2a6fae1

Git commit 321005c12f716814d86e139eb265437bda01380f by Ben McGinnes on 24/05/2018 at 21:12..
examples: mutt crypt-hooks generator

* Added a script which demonstrates how the groups module works.
* Script generates Mutt/Neomutt crypt-hooks for every group entry in
  gpg.conf, including those entries for multiple keys (Mutt handles
  that differently).
https://invent.kde.org/neon/forks/gpgme/-/commit/321005c12f716814d86e139eb265437bda01380f

Git commit eff27d6387b1cad2ef9901fa03dbee2ea86c786a by Maximilian Krambach on 25/05/2018 at 09:53..
js: use version operation for connection checks

--

* src/Connection.js: isConnected was renamed to checkConnection, that
  returns a promise with either version information or Boolean
* Connection checks have been adapted to reflect that checkConnection
  returns a Promise
* BrowsertestExtension: tests/signTest.js was missing from my last
  commit
https://invent.kde.org/neon/forks/gpgme/-/commit/eff27d6387b1cad2ef9901fa03dbee2ea86c786a

Git commit a46c27b32111b1737a405c5be48c0f9ddbbbb353 by Andre Heinecke on 25/05/2018 at 09:56..
json: Deduplicate input handling code

* gpgme-json.c (get_string_data): New.
(op_verify, op_sign, op_decrypt, op_encrypt): Use it.

--
This handles the common base64 decoding and creation of the
gpgme_data object.
https://invent.kde.org/neon/forks/gpgme/-/commit/a46c27b32111b1737a405c5be48c0f9ddbbbb353

Git commit 546e3295eaade073c34364c4ea6ab007532824d8 by Andre Heinecke on 25/05/2018 at 09:56..
json: Implement keylist

* src/gpgme-json.c (xjson_AddStringToObject0)
(xjson_AddItemToObject): New helpers.
(sig_notation_to_json, key_sig_to_json, tofu_to_json)
(uid_to_json, subkey_to_json, key_to_json): New
GPGME to JSON functions.
(op_keylist): New.
(process_request): Add op_keylist.

--
The conversion from GPGME data structures to
JSON follow the same pattern for the keylist
functions using the xjson wrappers instead
of error checking every cJSON call.

For large keylists the keylist command also
needs a data / getmore handling somehow.
https://invent.kde.org/neon/forks/gpgme/-/commit/546e3295eaade073c34364c4ea6ab007532824d8

Git commit aa59f4970ac106ccd17fa9fadfc264d11e4cd347 by Andre Heinecke on 25/05/2018 at 10:17..
json: Refactor signature and ei code

* src/gpgme-json.c (add_summary_to_object): Changed to:
sigsum_to_json.
(add_signature_to_object): Changed to signature_to_json.
(add_signatures_to_object): Changed to verify_result_to_json.
(add_ei_to_object): Changed to engine_info_to_json.
(op_decrypt, op_verify, op_version): Use new functions.

--
This pattern of gpgme_type to json object conversion
is much cleaner then the error returning "add to object"
functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/aa59f4970ac106ccd17fa9fadfc264d11e4cd347

Git commit ed20936ce4d5bb066828346b9a06d2dfa8d6afb2 by Andre Heinecke on 25/05/2018 at 10:22..
json: Add additional commands to help

* src/gpgme-json.c (hlp_help): Add additional commands.
https://invent.kde.org/neon/forks/gpgme/-/commit/ed20936ce4d5bb066828346b9a06d2dfa8d6afb2

Git commit 10724e363d6b5b06f51808287ad63e142e419ae6 by Andre Heinecke on 25/05/2018 at 11:06..
json: Fix keylist pattern handling

* src/gpgme-json.c (xfree_array): New helper.
(create_keylist_patterns): Convert keystring to gpgme patterns.
(op_sign, op_keylist): Use it.
https://invent.kde.org/neon/forks/gpgme/-/commit/10724e363d6b5b06f51808287ad63e142e419ae6

Git commit fe06929deec6544e2f267937dc5dafe2555bf485 by Andre Heinecke on 25/05/2018 at 11:09..
json: Improve keylist help

* src/gpgme-json.c (hlp_keylist): Clarify doc about keys parameter.
https://invent.kde.org/neon/forks/gpgme/-/commit/fe06929deec6544e2f267937dc5dafe2555bf485

Git commit 1ff16dad595946af140b324fad2bceca7ddbc378 by Andre Heinecke on 25/05/2018 at 12:19..
json: Implement import operation

* src/gpgme-json.c (op_import): New.
(import_status_to_json, import_result_to_json): New.
(hlp_help, process_request): Add import.
https://invent.kde.org/neon/forks/gpgme/-/commit/1ff16dad595946af140b324fad2bceca7ddbc378

Git commit 10683b1a913c39238c9871f5aa607334f32467f7 by Andre Heinecke on 25/05/2018 at 12:50..
json: Add guard in create_keylist_patterns

* src/gpgme-json.c (create_keylist_patterns): Guard against
a string ending with a linbreak.
https://invent.kde.org/neon/forks/gpgme/-/commit/10683b1a913c39238c9871f5aa607334f32467f7

Git commit 897522527d493307d15809a41496f8b76ec4edfe by Andre Heinecke on 25/05/2018 at 12:50..
json: Fix double ctx alloc

* src/gpgme-json.c (op_keylist): Only get one ctx.
https://invent.kde.org/neon/forks/gpgme/-/commit/897522527d493307d15809a41496f8b76ec4edfe

Git commit a1bbe7473a4d0f31d471d6cceb2f7e1382860194 by Andre Heinecke on 25/05/2018 at 12:52..
json: Implement op_export

* src/gpgme-json.c (op_export): New.
(hlp_getmore, process_request): Add it.

--
Secret key export does not work with request-origin browser.
https://invent.kde.org/neon/forks/gpgme/-/commit/a1bbe7473a4d0f31d471d6cceb2f7e1382860194

Git commit 73dc5e933d609989bd9ec428c89ada95d5eaec8a by Andre Heinecke on 25/05/2018 at 13:24..
json: Implement delete command

* src/gpgme-json.c (op_delete): New.
(hlp_help, process_request): Add it.

--
As with import / export delete also does not work for
the browser origin.
https://invent.kde.org/neon/forks/gpgme/-/commit/73dc5e933d609989bd9ec428c89ada95d5eaec8a

Git commit 7aa00917c7f13294584daba31a506730f0015ef5 by Andre Heinecke on 25/05/2018 at 13:48..
json: Implement encrypt-sign

* src/gpgme-json.c (op_encrypt): Add optional signing_keys param.
(get_keys, create_keylist_patterns): Add param for json object name.

--
If the optional parameter signing_keys is provided to encrypt
it becomes an encrypt-sign operation.
https://invent.kde.org/neon/forks/gpgme/-/commit/7aa00917c7f13294584daba31a506730f0015ef5

Git commit 7a73d88aba106d571f121dc3230864c81a76e5db by Maximilian Krambach on 25/05/2018 at 17:02..
js: implement Key handling (1)

--

* Keys can now be queried for information. Onne version queries gnug
  directly (asynchronous Promise in javascript terms), the cached
  version refreshes on demand.

* Small fixes:
  src/Connection.js joins answers that stay json properly now
https://invent.kde.org/neon/forks/gpgme/-/commit/7a73d88aba106d571f121dc3230864c81a76e5db

Git commit 368f2d9db30df16328b34787419de99fe3e1e2f1 by Werner Koch on 28/05/2018 at 07:53..
json: Fix use of get_context.

* src/gpgme-json.c (create_onetime_context): New.
(release_onetime_context): New.
(op_sign): Use the new fucntions to create a separate context.
(op_encrypt): Use a separate context for key listings.
(create_keylist_patterns): Remove unneeded cast.
--

get_context retruns a static per-process context and can thus not be
used as a separate context.  Use dedicated fucntions for this.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/368f2d9db30df16328b34787419de99fe3e1e2f1

Git commit 0de991fee05a9733ac29b2fa35643fe4607e56cb by Werner Koch on 28/05/2018 at 07:56..
json: Do not allow to export or delete secret keys.

* src/gpgme-json.c (op_export, op_delete): Return GPG_ERR_FORBIDDEN if
"secret" is used.
--

This should not be possible from a browser and we need to make this
fully clear.  Actually gpg-agent won't allow that anyway but having
this explicitly is better.

If that is ever needed a dedicated command line option may enable
this, for example when used by regular programs and not by the browser.
But that requires other changes as well.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0de991fee05a9733ac29b2fa35643fe4607e56cb

Git commit 77166851f165b1220dcf0116bb61f81e58e4512f by Werner Koch on 28/05/2018 at 07:58..
json: Fix compiler warning.

* src/gpgme-json.c (op_version): Mark request as unused.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/77166851f165b1220dcf0116bb61f81e58e4512f

Git commit d4adbf453d39659eee378b2be1d7125315d76083 by Maximilian Krambach on 28/05/2018 at 14:52..
js: Treat a  connection as a gpgme Context

--

* After an operation a connection should be disconnected again.
  The "end of operation" is now assumed to be either an error as
  answer, or a message not including a "more"

* GPGME, GPGME_Key, GPGME_Keyring don't require a connection
  anymore
* Message.js: The Message.post() method will open a connection as
  required
https://invent.kde.org/neon/forks/gpgme/-/commit/d4adbf453d39659eee378b2be1d7125315d76083

Git commit 53ce2b94bc35243710dec9b7972c7aaaa79dbc75 by Maximilian Krambach on 28/05/2018 at 15:26..
js: Keyring listing keys

--

* implementing Keyring methods:

  - Keyring.getKeys: has an additional option that retrieves the armor
    and secret state once at the beginning. This is power hungry, but
    allows for Keys to be used directly (without querying gpgme-json
    each call)
  * permittedOperations.js: reflect recent changes in the native
    counterpart, adding more options
  * Key: adding two methods for retrieving the armored Key block and
    for finding out if the Key includes a secret subkey.
https://invent.kde.org/neon/forks/gpgme/-/commit/53ce2b94bc35243710dec9b7972c7aaaa79dbc75

Git commit 618aa7f08db41911f25632d9fba23bca80908ebe by Andre Heinecke on 29/05/2018 at 07:19..
cpp: Add gpgme_data_rewind to cpp API

* lang/cpp/src/data.h, lang/cpp/src/data.cpp (Data::rewind): New.
* lang/qt/tests/t-various.cpp (testDataRewind): Test it.

--
The advantage of this convieniance function in GPGME is that
it avoids the messiness that are declarations with off_t.

GnuPG-Bug-Id: T3996
https://invent.kde.org/neon/forks/gpgme/-/commit/618aa7f08db41911f25632d9fba23bca80908ebe

Git commit 332b4adbcc52ccf337cbc1943d5abef500769e10 by Maximilian Krambach on 30/05/2018 at 15:05..
js: more Keyring/Key handling

--

* src/Keys.js
  - made setKeyData more consistent with other methods
  - added convenience methods (Key.armored, Key.hasSecret)
  - Added a Key delete function

* src/Keyring.js:
  - added a getkeysArmored which allows for bulk export of public Keys

gpgmejs:
  - removed deleteKey. It is now a method of the Key itself
  - Encrypt: Added some common options as parameter, and the
    possibility to set all allowed flags via an additional Object
https://invent.kde.org/neon/forks/gpgme/-/commit/332b4adbcc52ccf337cbc1943d5abef500769e10

Git commit 2219fc19d58ae1071493de92093b711f3c71454a by Werner Koch on 31/05/2018 at 22:13..
core: Minor cleanup in engine-gpg and -gpgsm.

* src/engine-gpg.c: Remove errno.h.
(build_argv): Use gpg_error_from_syserror instead of ERRNO.
* src/engine-gpgsm.c: Remove errno.h.
(status_handler): Remove check for EINTR; gpgme_data_write already
handles EINTR.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2219fc19d58ae1071493de92093b711f3c71454a

Git commit e2aa38b56a991a0da052acfe7566cc7a146d3bb6 by Werner Koch on 31/05/2018 at 22:13..
core: Remove cruft from the engine-gpg code.

* src/engine-gpg.c (read_status): Remove the handling of
GPGME_STATUS_END_STREAM; this was used only by the former experimental
--pipemode of gpg but that is not even anymore invoked here.
(struct engine_gpg): Remove cmd.linked_data and .linked_idx.
(build_argv): Remove code for linked_data.
(gpg_new): Ditto.
(gpg_set_command_handler): Remove arr linked_data.
* src/engine-backend.h (engine_ops): Remove arg data from
set_command_handler.
* src/engine.c (_gpgme_engine_set_command_handler): Remove arg
linked_data and adjust all callers.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e2aa38b56a991a0da052acfe7566cc7a146d3bb6

Git commit dd19cabe81b7bf4177ea2ca741f6eb6cd1cab25e by Werner Koch on 31/05/2018 at 23:01..
core: New decryption result flag 'legacy_cipher_nomdc'.

* src/gpgme.h.in (_gpgme_op_decrypt_result): Add flag
legacy_cipher_nomdc.
* src/decrypt.c (parse_status_error): Set this flag.
* tests/run-decrypt.c (print_result): print it.
(main): Print the result even on error.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dd19cabe81b7bf4177ea2ca741f6eb6cd1cab25e

Git commit 662604c5bcb4e03d3c9ecc670d4f320a2418ebb3 by Werner Koch on 31/05/2018 at 23:29..
core: New context flag "ignore-mdc-error".

* src/context.h (gpgme_context): Add field ignore_mdc_error.
* src/gpgme.c (gpgme_set_ctx_flag, gpgme_get_ctx_flag): Set/get it.
* src/engine-gpg.c (engine_gpg): Add flags.ignore_mdc_error.
(gpg_set_engine_flags): Set it.
(build_argv): Pass option to gpg.
* src/decrypt.c (_gpgme_decrypt_status_handler): Take care of flag.
(gpgme_op_decrypt_result): Clear flag.
(gpgme_op_decrypt): Clear flag.
* src/decrypt-verify.c (gpgme_op_decrypt_verify): Clear flag
(gpgme_op_decrypt_ext): Clear flag.

* tests/run-decrypt.c (show_usage): Add option --ignore-mdc-error.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/662604c5bcb4e03d3c9ecc670d4f320a2418ebb3

Git commit d46768c96082b4fd076506d7d3f0c03e61c59d51 by Andre Heinecke on 01/06/2018 at 08:58..
cpp: Add legacy_cipher_nomdc

* lang/cpp/src/decryptionresult.cpp, lang/cpp/src/decryptionresult.h
(DecryptionResult::isLegacyCipherNoMDC): New.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/d46768c96082b4fd076506d7d3f0c03e61c59d51

Git commit 00b027af86f33782933c6200fe1ffe40e85f4346 by Andre Heinecke on 01/06/2018 at 09:10..
cpp: Add gpgme_(get)set_ctx_flag

* NEWS: Mention API extensions.
* lang/cpp/src/context.cpp, lang/cpp/src/context.h
(Context::setFlag, Context::getFlag): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/00b027af86f33782933c6200fe1ffe40e85f4346

Git commit e144a6d70657675e28d43e42b48d879ff9b81d73 by Ben McGinnes on 02/06/2018 at 07:15..
Authors: DCO

* Added mine to the GPGME AUTHORS file.  Mainly so I'm doing what I
  say myself when about to request another from someone ...  ;)
https://invent.kde.org/neon/forks/gpgme/-/commit/e144a6d70657675e28d43e42b48d879ff9b81d73

Git commit 897423422b9d3b856bfb72fbe1995b91d153a54e by Ben McGinnes on 02/06/2018 at 14:46..
docs: python bindings howto

* Another attempt at fixing the org-mode version.
* A proof reader ascertained there were tabs in it instead of whitespace.
* Stripped the lot out and replaced with standard 4 spaces, fixed
  every incorrect example ... and it still breaks upon save and/or export.
* Added the reference to the mutt-groups.py script to demonstrate the
  groups.py module/code.
https://invent.kde.org/neon/forks/gpgme/-/commit/897423422b9d3b856bfb72fbe1995b91d153a54e

Git commit 998fec8a4fbc46315fe6836980954eed402b38c5 by Werner Koch on 05/06/2018 at 07:40..
json: Allow to compile with libgpg-error < 1.28

* src/cJSON.c: Use gpgrt fucntion only if available.
--

We have a hack in gpgme-json to allow building with older libgpg-error
versions.  That whole thing will not work but the instead the binary
will print an error at runtime that it needs to be build with a newer
libgcrypt.  There was a little bug here for the Debian packages
libgpg-error versions which failed to build cJSON.  cJSON is only
needed be the full gpgme-json but nevertheless the Makefile wants to
build it.  The fix is straightforward.

GnuPG-bug-id: 3971
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/998fec8a4fbc46315fe6836980954eed402b38c5

Git commit 0356a667c5a8b4fdb4404cebb57475ed3f39ade9 by Maximilian Krambach on 06/06/2018 at 09:57..
js: implement import/delete Key, some fixes

--

* Keyring.js
   - implemented importKey: importing one or more armored public key
     blocks.
   - implemented deleteKey: deleting a public Key from gpg.

* Key.js renamed property Key.armor to Key.armored

* Helpers.js: toKeyIDArray does not complain anymore if there are no
  keys. Not having Keys in e.g. signing keys in encrypt is legitimate
  and common, the complaints were getting spammy

* Errors.js: gpgme_errors now always pass an optional additional
  message, for easier debugging in minified code

* Connection.js: Fix in gpgme-json responses containing objects

* eslintrc.json: Start using eslint. A cleanup to conform to it is not
  done yet

* Added further tests for the new functionality
https://invent.kde.org/neon/forks/gpgme/-/commit/0356a667c5a8b4fdb4404cebb57475ed3f39ade9

Git commit bfd3799d39df265882deedeee083fd5246a2f35d by Maximilian Krambach on 06/06/2018 at 11:05..
js: code cleanup (eslint)

--
* trying to stick to eslint from now on for readability

* As some attribution was lost in previous git confusions, I added my
  name into some of the licence headers
https://invent.kde.org/neon/forks/gpgme/-/commit/bfd3799d39df265882deedeee083fd5246a2f35d

Git commit 7a072270ac031152ee034df0f5b6ef5e8bf7d394 by Maximilian Krambach on 06/06/2018 at 13:29..
js: change Keyinfo timestamps into javascript date

--
* src/Key.js
https://invent.kde.org/neon/forks/gpgme/-/commit/7a072270ac031152ee034df0f5b6ef5e8bf7d394

Git commit 2c4c5692472f5870f907c2c3f01870879cb0c34b by Werner Koch on 06/06/2018 at 14:20..
core: Return a better error code on certain decryption failures.

* src/decrypt.c (op_data_t): Add field first_status_error.
(parse_status_error): Set it.
(_gpgme_decrypt_status_handler): Prefer an ERROR code over a
NO_SECKEY.
--

GnuPG-bug-id: 3983
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2c4c5692472f5870f907c2c3f01870879cb0c34b

Git commit a3a08584d6e57c4b2a40d74dc52a7d8c5c11b501 by Ben McGinnes on 07/06/2018 at 05:06..
examples: python howto

* Uses the groups module to prepare a list of recipients and encrypt
  to those.
* The main version (encrypt-to-group.py) tries to check for invalid
  recipients, but still falls back to always trust for the second
  encryption attempt.
* The gullible version doesn't try pruning the recipient list at all,
  it just tries to encrypt and if it fails, switches straight to
  always trust.
* The trustno1 version doesn't use the always trust model at all and
  only attempts pruning the list of invalid recipients.
https://invent.kde.org/neon/forks/gpgme/-/commit/a3a08584d6e57c4b2a40d74dc52a7d8c5c11b501

Git commit 7e18c7a07a1e2c58ef4d5ddeed46bcce098bdf6c by Andre Heinecke on 07/06/2018 at 09:26..
json: Add op_config to query gpgconf

* src/gpgme-json.c (op_config, hlp_config): New.
(hlp_help, process_request): Add config.
(conf_arg_to_json, conf_opt_to_json, conf_comp_to_json): New
helpers.
https://invent.kde.org/neon/forks/gpgme/-/commit/7e18c7a07a1e2c58ef4d5ddeed46bcce098bdf6c

Git commit 906ea48df3e178bea3e2c744ddd834b23fe553fb by Andre Heinecke on 07/06/2018 at 09:42..
json: Add direct way to query a config option

* src/gpgme-json.c (op_config_opt, hlp_config_opt): New operation.
(process_request, hlp_help): Add it.

--
This is more conveniant API for most query operations where
a single option is required.

An example would be:
{
    "op": "config_opt",
    "component": "gpg",
    "option": "default-key"
}

Which results in:
{
   "option":       {
           "name": "default-key",
           "description":  "use NAME as default secret key",
           "argname":      "NAME",
           "flags":        0,
           "level":        0,
           "type": 1,
           "alt_type":     1,
           "value":        [{
                           "string":       "F462B6B1",
                           "is_none":      false
                   }]
   }
}
https://invent.kde.org/neon/forks/gpgme/-/commit/906ea48df3e178bea3e2c744ddd834b23fe553fb

Git commit e48f4a18f807ee42b31968b84f6ae7811d8d8a45 by Andre Heinecke on 07/06/2018 at 14:07..
json: Rework verify_result_to_json

* src/gpgme-json.c (sigsum_to_json): Add bool repr.
(signature_to_json, verify_result_to_json): Extend and follow better
pattern.
(hlp_decrypt, hlp_verify): Expand doc.

--
This should make it more clear which values are mapped as
the naming is more direct and clear and help to use
the gpgme documentation to understand the verify_result values.
https://invent.kde.org/neon/forks/gpgme/-/commit/e48f4a18f807ee42b31968b84f6ae7811d8d8a45

Git commit af8510fb7f4d5c90cc53f10dcc740f377af73d68 by Andre Heinecke on 08/06/2018 at 08:29..
json: Generalize chunking and getmore

* src/gpgme-json.c (MIN_REPLY_CHUNK_SIZE): Lower value to
new real minimum.
(DEF_REPLY_CHUNK_SIZE): Don't chunk by default.
(pending_data): Remove type and base64.
(make_data_object): Remove chunksize handling as this is now
generic.
(encode_and_chunk): Setup the pending_data buffer for chunking
if required.
(op_getmore): Changed to generically work on a response.
(hlp_getmore): Update accordingly.
(hlp_help): Document chunksize as generic parameter for all commands.
(process_request): Use encode_and_chunk on the response.
(hlp_encrypt, op_encrypt, hlp_decrypt, op_decrypt),
(hlp_verify, op_verify, hlp_sign, op_sign),
(op_keylist, hlp_keylist, hlp_export, op_export): Update accordingly.

--
To include handling for json properties e.g. in a keylist in
the chunk mechanism the mechanism is now more general.

If the chunksize property is provided the response will
always look exactly like a "getmore" response. E.g.

e.g.:
{
    "op": "keylist",
    "chunksize": 64
}
Results in:
{
   "more": true,
   "base64": true,
   "response": "ewoJImtleXMiOglbewoJCQkicmV2b2tlZCI6"
}

For simplicity this is even true if the chunksize is larger
then the response.

The client has to combine all "response" chunks and base64
decode them to get valid json.

The complete response (including json) is never larger then
the chunksize but might be smaller. Except for interactive
use due to additional format characters.
https://invent.kde.org/neon/forks/gpgme/-/commit/af8510fb7f4d5c90cc53f10dcc740f377af73d68

Git commit 6c74a59e8855d1cac0d8001ad1b7843d2d15be5e by Andre Heinecke on 08/06/2018 at 11:55..
json: Add op_createkey

* src/gpgme-json.c (hlp_createkey, op_createkey): New.
(process_request, hlp_help): Add it.

--
This uses an unrestricted context for now until

GnuPG-Bug-Id: T4010
is implemented in GnuPG.
https://invent.kde.org/neon/forks/gpgme/-/commit/6c74a59e8855d1cac0d8001ad1b7843d2d15be5e

Git commit 54146d90dd5518c24c30e6d2ebeb7f47ed4eb29e by Andre Heinecke on 08/06/2018 at 12:52..
json: Return fingerprint as createkey result

* src/gpgme-json.c (op_createkey): Return fingerprint of new key.
https://invent.kde.org/neon/forks/gpgme/-/commit/54146d90dd5518c24c30e6d2ebeb7f47ed4eb29e

Git commit 8dff414e170e4df8ea661028c4ac1588311ca26e by Andre Heinecke on 08/06/2018 at 14:19..
cpp: Add proper gpgme_op_createkey

* lang/cpp/src/context.cpp, lang/cpp/src/context.h
(Context::createKeyEx): New.

--
The createKeyEx function follows the usual pattern that the
synchronous call returns a result directly while for the
async an extra call is neccessary.
https://invent.kde.org/neon/forks/gpgme/-/commit/8dff414e170e4df8ea661028c4ac1588311ca26e

Git commit c072675f3f2d734297a348c6de810148fb1424a2 by Maximilian Krambach on 08/06/2018 at 15:54..
js: change chunksize handling and decoding

--

* the nativeApp now sends all data in one base64-encoded string, which
  needs reassembly, but in a much easier way now.

* there are some new performance problems now, especially with
  decrypting data
https://invent.kde.org/neon/forks/gpgme/-/commit/c072675f3f2d734297a348c6de810148fb1424a2

Git commit 92cd060f5e2f4fdbfbe4812ebe8ef57e82e1609f by Ben McGinnes on 10/06/2018 at 15:03..
script: groups.py

* Added check for if it is run on a Windows system so that the correct
  binary filename is invoked.
https://invent.kde.org/neon/forks/gpgme/-/commit/92cd060f5e2f4fdbfbe4812ebe8ef57e82e1609f

Git commit e97e6c06e950cfad424e120f4f3752b594214c94 by Maximilian Krambach on 11/06/2018 at 10:08..
js: Add key creation to Keyring

--

* src/Keyring.js: Added method generateKey for new Keys
  Still TODO: Key length and some further testing. Automated testing
  does not work in this case, and gpgmejs will not be able to delete
  test keys again.
* src/permittedOperations.js Added new method's definitions according
  to gpgme-json
https://invent.kde.org/neon/forks/gpgme/-/commit/e97e6c06e950cfad424e120f4f3752b594214c94

Git commit e154554e9a48a08219649a58be0b641c561e1748 by Maximilian Krambach on 11/06/2018 at 13:10..
js: removed config

--

* There is no use for a configuration at the moment, and it seems
  improbable that this use will arise.
https://invent.kde.org/neon/forks/gpgme/-/commit/e154554e9a48a08219649a58be0b641c561e1748

Git commit d0fc4ded58f4a6a86c5ee0a36a3d3c669e244d0d by Maximilian Krambach on 13/06/2018 at 09:49..
js: less confusing icons for test/Demo extension

--
* The current test icon was just a generic pin. Changed that by the
  gnupg lock symbol with 'Demo'/'Tests' written on it. Original taken
  from gnupg artwork/icons/lock-wing.svg.
https://invent.kde.org/neon/forks/gpgme/-/commit/d0fc4ded58f4a6a86c5ee0a36a3d3c669e244d0d

Git commit aed402c5d572b60246f1f8e57ae269f8c91b0b7c by Maximilian Krambach on 13/06/2018 at 13:22..
js: getDefaultKey and verify fix

--

* DemoExtension/maindemo.js - added a Demo for retrieving the default
  signing key

* src/Errors.js - add a new Error if no default key can be determined

* src/Key.js added documentation and a TODO marker for hasSecret.

* src/Keyring.js implemented getDefaultKey

* src/permittedOperations.js: Added missing entry for verify,
    added config_opt
https://invent.kde.org/neon/forks/gpgme/-/commit/aed402c5d572b60246f1f8e57ae269f8c91b0b7c

Git commit 3c783bd09ce54b0d50dc3bea201e70e4fcbbf6a3 by Maximilian Krambach on 14/06/2018 at 10:15..
js: add verify and signature parsing

--

* src/gpgmejs.js:
  - Added verify method
  - Added verification results in decrypt (if signatures are present
    in the message)
  - Added a base64 option to decrypt

* src/Signature.js: Convenience class for verification results. Used
   for e.g. converting timestamps to javascript time, quick overall
   validity checks

* src/Keyring.js: removed debug code

* src/Errors.js add two new Signature errors
https://invent.kde.org/neon/forks/gpgme/-/commit/3c783bd09ce54b0d50dc3bea201e70e4fcbbf6a3

Git commit 3cd428ba442f43e470b977e27e18ff52567baba5 by Maximilian Krambach on 14/06/2018 at 12:50..
js: import result feedback

--

* src/Keyring.js: Changed and documented the import result feedback
  towards the javascript side
https://invent.kde.org/neon/forks/gpgme/-/commit/3cd428ba442f43e470b977e27e18ff52567baba5

Git commit 0e762608ef5a598030b8d0e56261a830e1b7b724 by Ben McGinnes on 16/06/2018 at 23:28..
python bindings: core key import

* The foundation of a pythonic key import function authored by Jacob
  Adams.
* A unit testing script for the same function originally authored by
  Tobias Mueller
* Added DCO reference for Jacob Adams to the GPGME AUTHORS file.
* Additional details regarding this patch are available here:
  https://dev.gnupg.org/T4001

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0e762608ef5a598030b8d0e56261a830e1b7b724

Git commit 5a80e755008bbb3f4c7f91ffccd38f26cd8b3960 by Ben McGinnes on 17/06/2018 at 04:35..
python bindings: core - key import

* Wrapped the key import function in the try/exception statements
  needed to catch at least the most likely unsuccessful import attempt
  errors.
* Mostly draws on the file error and no data import statuses for
  errors, with a couple of exceptions.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5a80e755008bbb3f4c7f91ffccd38f26cd8b3960

Git commit a5b24ae46c81d3abd3bb18bf0390cab6ebb2bd77 by Ben McGinnes on 17/06/2018 at 05:58..
python bindings: core — PEP8 compliance

* Fixed most of the PEP8 errors in core.py
* Those remaining may need more than little edits and are a bit
  strange (too clearly the result of a programmer who has spent far
  too much time dealing with Lisp so that for Python it looks
  ... strange).
https://invent.kde.org/neon/forks/gpgme/-/commit/a5b24ae46c81d3abd3bb18bf0390cab6ebb2bd77

Git commit 19c5267f868aa41e73752ac1c76ec7ae1efe07b8 by Ben McGinnes on 17/06/2018 at 12:42..
python bindings: core import statements

* Fixed the bit I broke while fixing the PEP8 compliance issues.
https://invent.kde.org/neon/forks/gpgme/-/commit/19c5267f868aa41e73752ac1c76ec7ae1efe07b8

Git commit 780f7880c6598d4532354b348d7bd74026d162f4 by Maximilian Krambach on 19/06/2018 at 07:26..
js: getDefaultKey and GenerateKey improvements

--

* src/Keyring.js: added more options for key generation.

* src/Key.js: GetDefaultKey now relies on the info associated with the
  key, as the approach of relying on a secret subkey did not work as
  intended
* DemoExtension: Added a button for retrieval of the subkey, to test
  this functionality.
https://invent.kde.org/neon/forks/gpgme/-/commit/780f7880c6598d4532354b348d7bd74026d162f4

Git commit d27703ea4f0eed950cddf0157dc78bcb5d8d1c65 by Andre Heinecke on 19/06/2018 at 14:40..
Prepare build system for gpgme-js and dist it

* configure.ac: Add js as language.
* lang/Makefile.am: Add js as dist language.
* lang/js/BrowserTestExtension/Makefile.am,
lang/js/DemoExtension/Makefile.am,
lang/js/Makefile.am,
lang/js/src/Makefile.am: Populate EXTRA_DIST variables.

--
There is no actual build done yet as there seems to be
no way to build it with debian stable tools. This needs
clarification.
https://invent.kde.org/neon/forks/gpgme/-/commit/d27703ea4f0eed950cddf0157dc78bcb5d8d1c65

Git commit d8beab30c44482fb7a3e445b92cec482792b2ca0 by Andre Heinecke on 20/06/2018 at 08:50..
json: Add file handling for debug output

* src/gpgme-json.c (main): Add possibilty to set log file.

--
This is similar to how GPGME_DEBUG works. It takes ; on
Windows as seperator and : on linux. Followed by a file name.

For Linux it might make sense to use a different seperator
to allow setting a socket explicitly. But this is better
in line with the current GPGME_DEBUG behavior.

The change helps on Windows where we don't have a
log socket.
https://invent.kde.org/neon/forks/gpgme/-/commit/d8beab30c44482fb7a3e445b92cec482792b2ca0

Git commit 88e7f8ec2ef3d90ca014b0bdb246f4d99f82abc8 by Maximilian Krambach on 20/06/2018 at 11:46..
js: Demoextension update

--

* src/Signature: typo
* src/gpgmejs.js: fixed wrong scope in verification
* right now verify does not succeed in the DemoExtension.
  This is probably a problem in conversion or line ending.
https://invent.kde.org/neon/forks/gpgme/-/commit/88e7f8ec2ef3d90ca014b0bdb246f4d99f82abc8

Git commit 89c548efdf46bd7d9e6f0ca34a07efbbf420e821 by Ben McGinnes on 28/06/2018 at 08:48..
python bindings: export public keys

* Added functions for exporting public keys to gpg.core in both
  complete form and in minimised form.
* Rather than letting people need to worry about the export modes we
  are simply separating the functions as people would be more familiar
  with from the command line usage anyway.
* Functions added for Context are: ctx.key_export_minimal and
  ctx.key_export as the default or full export.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/89c548efdf46bd7d9e6f0ca34a07efbbf420e821

Git commit 7faef33d13fa8efce152ca7aa6e9d39030c1cf08 by Ben McGinnes on 28/06/2018 at 08:51..
python bindings: export public keys

* Updated key_export and key_export_minimal to return None where a
  pattern matched no keys in a manner simnilar to the possible result
  of key_export_secret.
https://invent.kde.org/neon/forks/gpgme/-/commit/7faef33d13fa8efce152ca7aa6e9d39030c1cf08

Git commit a5b91b21f561d7b13ddcb62fca3749ed92ea8720 by Ben McGinnes on 28/06/2018 at 08:51..
python bindings: export secret keys

* The holy grail: a function to export secret keys.
* GPGME will still invoke pinentry and gpg-agent as usual to authorise
  the export.
* Mostly similar to the two previous export functions for public keys
  except that it will return None if the result had a length of zero
  bytes.  Meaning that the difference between the specified pattern
  (if any) not matching available keys and an incorrect passphrase is
  not able to be determined from this function (or the underlying one
  for that matter).

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a5b91b21f561d7b13ddcb62fca3749ed92ea8720

Git commit 4251cae34da0d825a29f509ac828f7ecb90c1752 by Ben McGinnes on 28/06/2018 at 08:51..
python bindings: import example

* Added an example script for importing a key from a file (either
  ASCII armoured or not).
https://invent.kde.org/neon/forks/gpgme/-/commit/4251cae34da0d825a29f509ac828f7ecb90c1752

Git commit 0d163a7d121eacacc5f6da11a3dee3548f98f124 by Ben McGinnes on 28/06/2018 at 08:51..
python bindings examples: three export scripts

* Example of default exporting keys.
* Example of exporting minimised keys.
* Example of exporting secret keys to a file with correct permissions.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0d163a7d121eacacc5f6da11a3dee3548f98f124

Git commit 7fc7e80e54235c558051cbf72b51dd60b4ca485e by Ben McGinnes on 28/06/2018 at 08:51..
python bindings examples

* Added a key import variant which accesses the SKS keyservers in a
  RESTful fashion and then imports or attempts to import the response.
https://invent.kde.org/neon/forks/gpgme/-/commit/7fc7e80e54235c558051cbf72b51dd60b4ca485e

Git commit a7ccdc51efd8c199b902eb942e9db7b3549e721f by Ben McGinnes on 28/06/2018 at 08:51..
python bindings examples

* Added a secret key export variant which saves output as both GPG
  binary and ASCII armoured, plus saves in $GNUPGHOME and uses
  multiple methods of determining what that location is.
https://invent.kde.org/neon/forks/gpgme/-/commit/a7ccdc51efd8c199b902eb942e9db7b3549e721f

Git commit 6aec7d6e4a5173f54a079719020704a0098b8f0a by Ben McGinnes on 28/06/2018 at 08:51..
docs: python bindings howto

* Updated official doc (the org-mode file) with the instructions on
  importing and exporting both public and secret keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/6aec7d6e4a5173f54a079719020704a0098b8f0a

Git commit 48174b2bcc319e4542aefd0cc3aae02c4083784e by Ben McGinnes on 28/06/2018 at 08:51..
whitespace police:

* There's always one or, in this case, two.
https://invent.kde.org/neon/forks/gpgme/-/commit/48174b2bcc319e4542aefd0cc3aae02c4083784e

Git commit 43a2b5754571292b25402e20cd044ebda9316c77 by Ben McGinnes on 29/06/2018 at 04:26..
python bindings: python 3.7

* Bindings confirmed to work with the newly released 3.7.0.
* Updated M4 file to reflect this change and correct the Python binary
  search order (3.7 is not yet given priority, but will still be found
  first via the more generic python3 executable).
* Updated setup.py.in, bindings documentation and README to reflect this.
https://invent.kde.org/neon/forks/gpgme/-/commit/43a2b5754571292b25402e20cd044ebda9316c77

Git commit 35e29e139534ed217340879732a7adfdbd57c91d by Ben McGinnes on 29/06/2018 at 04:52..
m4 update: python 3.7

* Fixed an error in arcane m4 syntax.
https://invent.kde.org/neon/forks/gpgme/-/commit/35e29e139534ed217340879732a7adfdbd57c91d

Git commit 789ea1b019885d5d1db1662e3cd4fda33636e30c by Ben McGinnes on 01/07/2018 at 17:55..
python bindings: gpg.core

* Changed id/else statements to a more pythonic form from scheme
  masquerading as python - sorry Justus, it had to go ;).
* With the added bonus of enabling PEP8 compliance in those sections.
* Fixed remaining PEP8 compliance issues with the exception of the
  imports at the beginning of the file (changing those will break the
  entire module, so we'll cope with it as it is).
https://invent.kde.org/neon/forks/gpgme/-/commit/789ea1b019885d5d1db1662e3cd4fda33636e30c

Git commit 5bca49975063f788b2499342d5a565faf54511db by Ben McGinnes on 01/07/2018 at 19:05..
python bindings: scheming serpents

* Apparently I am wrong and Scheme is the new Python after all.
* Non-import related PEP8 compliance must wait for another day, though
  the other PEP8 fixes remain.
https://invent.kde.org/neon/forks/gpgme/-/commit/5bca49975063f788b2499342d5a565faf54511db

Git commit a52ec87d406379f1a6acd8d4f34605a4bac8683b by Maximilian Krambach on 03/07/2018 at 10:41..
js: fixing Key import/export test

--

* BrowserTestExtension:
 - The KeyImport/Export test had some errors, which have now been fixed
 - The secret key used for the test examples is now placed more
   prominently, and a clarification added that decrypt tests will not
   work if this key is not imported.

* permittedOperations.js: typo

  Thanks to rrenkert at intevation.de for the fixes
https://invent.kde.org/neon/forks/gpgme/-/commit/a52ec87d406379f1a6acd8d4f34605a4bac8683b

Git commit 76b847091593669c8a7e38918267d6be97dbd4d0 by Andre Heinecke on 04/07/2018 at 09:14..
json: Add keylist mode locate

* src/gpgme-json.c (op_keylist, hlp_keylist): Add locate.

--
The same rationale for the KEYLIST_MODE_LOCATE in GPGME
also applies here. It makes the API a little less magic.
https://invent.kde.org/neon/forks/gpgme/-/commit/76b847091593669c8a7e38918267d6be97dbd4d0

Git commit 1105fc87a3bd3e1152aff578b7b84871558418e6 by Maximilian Krambach on 04/07/2018 at 10:11..
js: add Key lookup

--

* src/Keyring.js: getKeys() now has the option "search", which will
  trigger a remote lookup (as configured in gpg) for the string given
  as pattern.
* src/permittedOperations: make use of the new 'locate' option in
  keylist
* DemoExtension: Add a button for lookup, to demonstrate the
  functionality
https://invent.kde.org/neon/forks/gpgme/-/commit/1105fc87a3bd3e1152aff578b7b84871558418e6

Git commit 7d65dc2a5c4f32139a1b9b1f0bd375f7ab1c58f6 by Andre Heinecke on 04/07/2018 at 10:17..
cpp: Fix memory of DecryptionResult::symkeyAlgo

* lang/cpp/src/decryptionresult.cpp (Private, ~Private): strdup
the symkey algo.
https://invent.kde.org/neon/forks/gpgme/-/commit/7d65dc2a5c4f32139a1b9b1f0bd375f7ab1c58f6

Git commit 1919fa41b6da4dfd4f69e776caa6e6b1883eb208 by Maximilian Krambach on 04/07/2018 at 11:38..
js: Add jsdoc, update webpack-cli dependency

--
* package.json:
  - the old webpack-cli version depended on two packages
    with vulnerabilities, set to minimum version 3.0.8 to fix this
    (nodesecurity.io/advisories/157, nodesecurity.io/advisories/612)
  - added License identifier

* README: Updated documentation

* jsdoc.conf: Added a configuration file for jsdoc

* some minor documentation changes, indentations
https://invent.kde.org/neon/forks/gpgme/-/commit/1919fa41b6da4dfd4f69e776caa6e6b1883eb208

Git commit 10f2106404f01e7bb369fc66a597875fb455cd27 by Maximilian Krambach on 04/07/2018 at 13:46..
js: properly reject pgp message without signature

--

* A verify at gpgme-json does not fail if there is a valid pgp message
  that does not include a signature. Instead, the answer will be devoid
  of signatures. In javascript, the SIG_NO_SIG error should be reported
  here, but wasn't.
https://invent.kde.org/neon/forks/gpgme/-/commit/10f2106404f01e7bb369fc66a597875fb455cd27

Git commit a2458806f8bf04b66795e1dde765b42fe1ef6797 by Andre Heinecke on 05/07/2018 at 09:29..
core: Add gpg auditlog to get diagnostics

* src/engine-gpg.c (engine_gpg): Add diagnostics member.
(gpg_release): Release diagnostics data.
(gpg_new): Set up logger-fd and diagnostics.
(gpg_getauditlog): New. Copy diagnostics to a user data.
(engine_ops): Add getauditlog.
* src/engine-gpgsm.c (gpgsm_getauditlog): Return not implemented
for GPGME_AUDITLOG_DIAG.
* src/getauditlog.c (getauditlog_start): Don't reset engine
for diagnostics.
* src/gpgme.h.in (GPGME_AUDITLOG_DIAG): New.
(GPGME_AUDITLOG_DEFAULT): New alias to 0.
* tests/run-decrypt.c (show_usage, main): Add --diagnostics.
* doc/gpgme.texi(Additional Logs): Document getauditlog.

--
This enables users of GPGME to get more verbose information
from gpg which can assist users in figuring out a problem
that was before hidden behind a generalized error like
"Decryption Failed".

For GPGSM it is not yet available as it is problematic to
get it properly in server mode and GPGSM already had the
original audit log mechanism in place.

GPGME_AUDITLOG_DEFAULT was added for a more explicit
documentation.
https://invent.kde.org/neon/forks/gpgme/-/commit/a2458806f8bf04b66795e1dde765b42fe1ef6797

Git commit 629afebe5017db97f2a318f6878fe1f9d3e60189 by Andre Heinecke on 05/07/2018 at 09:29..
cpp: Add enum mapping for GPGME_AUDIT_LOG_DIAG

* src/context.cpp (to_auditlog_flags): Map DIAG value.
* src/context.h (AuditLogFlags): Add it.
https://invent.kde.org/neon/forks/gpgme/-/commit/629afebe5017db97f2a318f6878fe1f9d3e60189

Git commit 66c2a99422dd9a52d8342165ed1d033c4f29b9e0 by Andre Heinecke on 05/07/2018 at 09:29..
qt: Handle OpenPGP Diagnostic log

* lang/qt/src/threadedjobmixin.cpp (_detail::audit_log_as_html):
Handle OpenPGP audit log differently.
https://invent.kde.org/neon/forks/gpgme/-/commit/66c2a99422dd9a52d8342165ed1d033c4f29b9e0

Git commit cacca62d06c6cf4a291f7ab2571cf52d671d140f by Ben McGinnes on 07/07/2018 at 17:40..
python bindings: howto examples

* Made sure all example scripts meet PEP8 compliance.
* Required fixing approx. a dozen of them in minor ways.
https://invent.kde.org/neon/forks/gpgme/-/commit/cacca62d06c6cf4a291f7ab2571cf52d671d140f

Git commit 7bc5d3c7e41c6e42a583a61a4c9504058fbb2976 by Andre Heinecke on 09/07/2018 at 08:58..
Add ctx flag for auto-key-locate

* src/context.h (gpgme_context): Add auto_key_locate.
* src/engine-gpg.c (engine_gpg): Add auto_key_locate.
(gpg_set_engine_flags, build_argv): Handle auto_key_locate.
(gpg_release): Free auto_key_locate.
* src/gpgme.c (gpgme_release): Free auto_key_locate.
(gpgme_get_ctx_flag, gpgme_set_ctx_flag): Handle auto-key-locate.
* doc/gpgme.texi: Document auto-key-locate flag.
* tests/run-keylist.c (show_usage, main): Add --from-wkd option.

--
This enables users of GPGME to control more fine grained what
auto-key-locate does.  Especially for WKD lookups / refreshes
can this be useful.

GnuPG-Bug-Id: T2917
Differential Revision: https://dev.gnupg.org/D463
https://invent.kde.org/neon/forks/gpgme/-/commit/7bc5d3c7e41c6e42a583a61a4c9504058fbb2976

Git commit 31bc51e2aff0a28b551410c9def2f578d0d28cea by Andre Heinecke on 09/07/2018 at 09:10..
doc: More explicit doc for EXTERN and LOCAL modes.

* doc/gpgme.texi (GPGME_KEYLIST_MODE_EXTERN),
(GPGME_KEYLIST_MODE_LOCATE, GPGME_KEYLIST_MODE_LOCAL): Mention
command line flags for CMS and OpenPGP Protocol.

--
This might help new users coming to gnupg to understand what
the flags do.
https://invent.kde.org/neon/forks/gpgme/-/commit/31bc51e2aff0a28b551410c9def2f578d0d28cea

Git commit c287f09ac0f090a65299ac7c15e3c9b4947d4b67 by Andre Heinecke on 09/07/2018 at 09:17..
tests: Add --with-secret to run-keylist.c

* run-keylist.c (show_usage, main): Add --with-secret.
https://invent.kde.org/neon/forks/gpgme/-/commit/c287f09ac0f090a65299ac7c15e3c9b4947d4b67

Git commit 67b6fa5a2948deed6a914c638f923fb9ad2eac66 by Maximilian Krambach on 09/07/2018 at 09:24..
js: reduce request spam at getKeys()

--

* Don't make a secret-Key request for each Key retrieved, use one
  request for all of them instead, and assemble the info later. This
  should reduce the traffic with large Keyrings. The bulk retrieval
  for the public armored Keys for each of these Keys is still up to
  discussion

* unittests: disabled assertion for the armored key (as it currently
  doesn't work)

* encryptTest: clarified the mechanism/reason of rejection for
  Messages >64 MB. This is still a TODO, as this error comes from a
  different place (the browser itself) and behaves different from the
  other errors.
https://invent.kde.org/neon/forks/gpgme/-/commit/67b6fa5a2948deed6a914c638f923fb9ad2eac66

Git commit 40471ec12f7b4ba37922813a02ebb2aaaa963b51 by Andre Heinecke on 09/07/2018 at 09:36..
json: Add with-secret without secret only

* src/gpgme-json.c (op_keylist, hlp_keylist): Add "with-secret"
as a flag to do a public keylist with secret information.
https://invent.kde.org/neon/forks/gpgme/-/commit/40471ec12f7b4ba37922813a02ebb2aaaa963b51

Git commit 8964627f6ad7c407785a9fa5cb508c7c28be0d60 by Maximilian Krambach on 09/07/2018 at 09:57..
js: fix verify result reporting

--

* src/Signature.js: searching for overall validity in the "summary"
  property
* BrowsertestExtension: Added two verify tests
https://invent.kde.org/neon/forks/gpgme/-/commit/8964627f6ad7c407785a9fa5cb508c7c28be0d60

Git commit 1eceacaff4ad5d6a4b759a7d00907dbc8278f12c by Ben McGinnes on 09/07/2018 at 11:30..
docs: python bindings howto

* Complete typographic overhaul.
* Removed all section level indentation since it does not affect
  output formatting, but might affect source code examples.
* In text-mode stripped out all tabs which had crept in and replaced
  them with four spaces.
* Updated all code examples (again) to conform with Python-mode.
* Bumped version number in preparation for next release of GPG 2.2.9
  and corresponding GPGME release.
https://invent.kde.org/neon/forks/gpgme/-/commit/1eceacaff4ad5d6a4b759a7d00907dbc8278f12c

Git commit 0e760e396fbf13e902d0dc0c048bff0d5410fa16 by Ben McGinnes on 10/07/2018 at 03:40..
example scripts: python work-arounds

* fixed three typos which were guaranteed to break said script.
https://invent.kde.org/neon/forks/gpgme/-/commit/0e760e396fbf13e902d0dc0c048bff0d5410fa16

Git commit 4015f5b4983c8a4590aa71776880d8bc42c7918d by Maximilian Krambach on 10/07/2018 at 12:32..
js: documentation

--

* Fixed errors:
- src/Message.js post(): Set chunksize to defined default value instead
  of hardcoded
- src/Keys.js: added getHasSecret() to refreshKey operation.

* Reviewed and updated the documentation

* non-documentation changes which do not affect functionality:
- src/Errors: disabled a console.warn that is only useful for debugging
- helpers.js: renamed "string" to "value" in isFingerprint and isLongId
  to avoid confusion
- src/Keyring: prepare_sync, search are both explicitly set to false by
  default
https://invent.kde.org/neon/forks/gpgme/-/commit/4015f5b4983c8a4590aa71776880d8bc42c7918d

Git commit 6cc842c9aa76d19448141e5117ac59452d7a1ff3 by Andre Heinecke on 11/07/2018 at 14:18..
json: Add with-sec-fprs param to export

* src/gpgme-json.c (add_secret_fprs): New helper.
(op_export, hlp_export): Extend for with-sec fprs.

--
This is a request from Mailvelope, to import an export
they need the information for which keys from the export
a secret key is also available. For simplicity it is
much preferred to get this information in a single call
without the need to do and parse a keylisting additionally
in a second native-messaging call.

So we make it optional to include that info in the export.
https://invent.kde.org/neon/forks/gpgme/-/commit/6cc842c9aa76d19448141e5117ac59452d7a1ff3

Git commit 30bb5490466119b66eeac255d71fb7bdc79149fa by Maximilian Krambach on 12/07/2018 at 09:36..
js: add with-sec-fprs to getKeysArmored

--

* Reflects the changes made to gpgme-json in commit
  6cc842c9aa76d19448141e5117ac59452d7a1ff3.

  - getKeysArmored now returns an object with property 'armored' being
    the exported armored block, and an (optional) array of fingerprint
    strings for those keys that can be used in sign/encrypt operations
    as property 'secret_fprs'. With this, extensions such as mailvelope
    will be able to bulk fetch all necessary key information in one
    request.
https://invent.kde.org/neon/forks/gpgme/-/commit/30bb5490466119b66eeac255d71fb7bdc79149fa

Git commit 5213a599fea0da64560f935dffbf6b27a39d4850 by Maximilian Krambach on 12/07/2018 at 09:48..
js: allow optional Key retrieve pattern to be null

--

* src/Keyring.js: If the optional "pattern" parameter is not to be
  used, but another, following parameter is, null is more of a
  convention in javascript, thus both null and undefined are
  interpreted as "this parameter is not meant to be set".
https://invent.kde.org/neon/forks/gpgme/-/commit/5213a599fea0da64560f935dffbf6b27a39d4850

Git commit 1bb3f8409d4bbec403bea768184a691d9d7ea42d by Ben McGinnes on 13/07/2018 at 10:36..
python bindings: example scripts

* Fixed incorrect mention of output prompt referencing secret keys
  when the scripts are only for exporting public keys in whole or
  minimised forms.
https://invent.kde.org/neon/forks/gpgme/-/commit/1bb3f8409d4bbec403bea768184a691d9d7ea42d

Git commit 013a7f47ab486c380b3c97637d3b15f11de74fe8 by Werner Koch on 16/07/2018 at 10:37..
json: Fix buffer overflow in cJSON.c

* src/cJSON.c (parse_string): Correctly detect bad hex.
--

The call to parse_hex4 checks that only hex digits follow and in the
error case returns 0.  However, by the time of the combined check for
an invalid value and the error PTR has already been set to the last
hex character and thus if the end-of-string or a quote character was
one of the bad hex digits the loop will miss the end of the string
which does not match with the simple buffer length allocation test at
the begin of the function.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/013a7f47ab486c380b3c97637d3b15f11de74fe8

Git commit 1933f5b8056b2671301379106cca4504c4187795 by Werner Koch on 16/07/2018 at 12:42..
json: Minor cleanups in cJSON.c

* src/cJSON.c: Add comments on the origin of the code.
(parse_string): Allocate an extra byte for safeness.
(cJSON_AddItemToArray): Allo ARRAY to be NULL.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1933f5b8056b2671301379106cca4504c4187795

Git commit cc21101a7494ea0a17c3012fcb86e77b00b494fa by Andre Heinecke on 16/07/2018 at 17:46..
json: Fix uninitialized key unref in op_delete

* src/gpgme-json.c (op_delete): Init key.
https://invent.kde.org/neon/forks/gpgme/-/commit/cc21101a7494ea0a17c3012fcb86e77b00b494fa

Git commit 1686e07e77a1eee3b2708d0231a5a549956021f7 by Andre Heinecke on 16/07/2018 at 17:47..
json: Fix crash on invalid json

* src/gpgme-json.c (process_request): Init res. Check for
json object before encode and chunk.

--
If json is invalid we can't read chunksize and would crash
in encode and chunk.
https://invent.kde.org/neon/forks/gpgme/-/commit/1686e07e77a1eee3b2708d0231a5a549956021f7

Git commit ce0379d999039131c86dc0bb83e9b8edfee1c7d4 by Maximilian Krambach on 17/07/2018 at 09:07..
js: fix getkeys with locate option

--

* src/Keyring.js:
  As locate will not work with the "secret" option, the first message
  cannot be reused, thus a new one must be created here
https://invent.kde.org/neon/forks/gpgme/-/commit/ce0379d999039131c86dc0bb83e9b8edfee1c7d4

Git commit 16462c54b3503e77bc48c2486234531d7bc31b6d by Andre Heinecke on 18/07/2018 at 09:27..
qt: Handle encoding for diagnostics

* lang/qt/src/threadedjobmixin.cpp (fromEncoding)
(stringFromGpgOutput): New helpers.
(markupDiagnostics): Use it.

--
The Problem is that on my western windows system GnuPG
gets CP 437 as GetConsoleOutputCP and prints in that codepage.
In a W32 GUI Application we get 0 as GetConsoleOutputCP and 1252
with GetACP.

The only thing that seemed to somehow match was GetOEMCP but
that might just be luck and it might still be broken in
other windows languages.

This code is also used in Kleopatra so it might make sense
to make it public once it is demonstrated that it works on
most systems.
https://invent.kde.org/neon/forks/gpgme/-/commit/16462c54b3503e77bc48c2486234531d7bc31b6d

Git commit b78140daf7720132711314a4e5ed878b49da99f4 by Andre Heinecke on 18/07/2018 at 10:57..
json: Fix memory errors in create_keylist_patterns

* src/gpgme-json.c (create_keylist_patterns): Reserve two
pointers more then linefeeds.
(create_keylist_patterns): Fix loop to count linebreaks.
(create_keylist_patterns): Use calloc for good measure.

--
This fixes crashes and memory corruption as cnt did not
match i.
https://invent.kde.org/neon/forks/gpgme/-/commit/b78140daf7720132711314a4e5ed878b49da99f4

Git commit 82e4b900a96c837392259469a9a5821a95e7a707 by Andre Heinecke on 18/07/2018 at 11:05..
json: Fix crash by ensuring response is never NULL

* src/gpgme-json.c (encode_and_chunk): Try to always
return at least an error.
(process_request): Double check that it does not return NULL.

--
If process_request returns NULL the following strlen on it
would crash.
https://invent.kde.org/neon/forks/gpgme/-/commit/82e4b900a96c837392259469a9a5821a95e7a707

Git commit 6d7b4382c3e12ba1dbbd0762dfa850c76750d838 by Andre Heinecke on 18/07/2018 at 11:06..
json: Ensure that native msging request is string

* src/gpgme-json.c (native_messaging_repl): Ensure that the
request is NULL terminated.

--
This avoids potential memory leaks and access to unmapped memory
in case the request was not terminated.
Other request functions use es_read_line which gurantees NULL
termination.
https://invent.kde.org/neon/forks/gpgme/-/commit/6d7b4382c3e12ba1dbbd0762dfa850c76750d838

Git commit 98a75a16ccdfe51799a27894d2eb26dba04b34f2 by Andre Heinecke on 18/07/2018 at 11:15..
json: Fix memleak in native msging repl

* src/gpgme-json.c (native_messaging_repl): Free request and
response after each loop.

--
If we only accept once request we should not loop. If we loop
we should do it properly.
https://invent.kde.org/neon/forks/gpgme/-/commit/98a75a16ccdfe51799a27894d2eb26dba04b34f2

Git commit 50da3ff2fddf0d35541f798313e881fef3cff869 by Maximilian Krambach on 18/07/2018 at 11:43..
js: typo in comment

--

* Documentation typo that caused jsdoc to exit with an error
https://invent.kde.org/neon/forks/gpgme/-/commit/50da3ff2fddf0d35541f798313e881fef3cff869

Git commit f42cd70f18d53df47cc2d027bade736377d39b71 by Werner Koch on 19/07/2018 at 07:51..
core: New interface gpgme_data_new_from_estream.

* src/gpgme.h.in (gpgme_data_new_from_estream): New.
* src/data-estream.c: New.
* src/data.h (gpgme_data): New union member e_stream.
--

The estream functions (gpgrt_fopen et al.) are any waypart of the
required libgpg-error library and thus it makes sense to provide this
convenience interface.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f42cd70f18d53df47cc2d027bade736377d39b71

Git commit af2c74d6c06a9fb08f7de15d41162d09f871a62e by Werner Koch on 19/07/2018 at 07:53..
json: Don't use strdup but the xtrystrdup wrapper.

* src/gpgme-json.c (create_keylist_patterns): Use CNT as first arg for
xcalloc.
(process_request): s/strdup/xtrystrdup/.
--

calloc takes two arguments so to be able to detect integer overflow.
Thus if we switch from malloc to calloc we should utilize that.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/af2c74d6c06a9fb08f7de15d41162d09f871a62e

Git commit 8168dfbeb12042a7f7b1bad918ef60df92bfd1a7 by Andre Heinecke on 19/07/2018 at 10:58..
cpp: Print origin and last update for key/uid

* lang/cpp/src/key.cpp: Print origin and last update in
iostream operators.
https://invent.kde.org/neon/forks/gpgme/-/commit/8168dfbeb12042a7f7b1bad918ef60df92bfd1a7

Git commit 085cdeddef637cc057362fcbde13b0261b8699ec by Werner Koch on 19/07/2018 at 15:39..
core: Blank out the plaintext after decryption failure.

* src/data.h (data_prop_t): New enum.
(struct gpgme_data): Add field propidx.
* src/data.c (property_t): New.
(property_table, property_table_size, property_table_lock): New.
(insert_into_property_table): New.
(remove_from_property_table): New.
(_gpgme_data_get_dserial): New.
(_gpgme_data_set_prop): New.
(_gpgme_data_get_prop): New.
(_gpgme_data_new): Connect new object to property_table.
(_gpgme_data_release): Remove from property_table.
(gpgme_data_read): With DATA_PROP_BLANKOUT set don't fill the buffer.
* src/data-mem.c (gpgme_data_release_and_get_mem): Likewise.
* src/decrypt.c (struct op_data): Add field plaintext_dserial.
(_gpgme_op_decrypt_init_result): Add arg plaintext and init new field.
(_gpgme_decrypt_status_handler): Set DATA_PROP_BLANKOUT on decryption
failure.
(_gpgme_decrypt_start): Pass PLAIN to the init function.
* src/decrypt-verify.c (decrypt_verify_start): Ditto.
* configure.ac: Check for stdint.h and bail out if uint64_t is not
available.
--

This is a best effort feature to not output plaintext after a
decryption failure (e.g. due to no or broken authenticated
encryption).  It always work when using a memory object and reading it
after the decryption but it can't work reliable when the user is
reading from the data object while the decryption process is still
running.

This is quite a large change because the data objects and the context
objects are allowed to be owned by different threads.  Thus a
synchronization is needed and we do this with a global table of all
data objects to which the context objects can do soft-linking via a
unique data object serial number.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/085cdeddef637cc057362fcbde13b0261b8699ec

Git commit 5ef492c5635ae1677eed6f439a75a86a99dbbe18 by Werner Koch on 19/07/2018 at 18:38..
core: Clear all flags for a new data property.

* src/data.c (PROPERTY_TABLE_ALLOCATION_CHUNK): New.
(insert_into_property_table): Use it here.  Clear all flags.
--

Fixes-commit: 085cdeddef637cc057362fcbde13b0261b8699ec
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5ef492c5635ae1677eed6f439a75a86a99dbbe18

Git commit a965e3e0b89521ad4f3898a8483161624c2e5848 by Maximilian Krambach on 20/07/2018 at 08:59..
js: repair BrowserTextExtension test

--

* the signed message to verify was signed by a wrong test key
https://invent.kde.org/neon/forks/gpgme/-/commit/a965e3e0b89521ad4f3898a8483161624c2e5848

Git commit b47e1bb98a8ff93cae560449bfa9103c47f4d4f8 by Ben McGinnes on 22/07/2018 at 15:35..
doc: python bindings howto

* Added org-mode byline.
https://invent.kde.org/neon/forks/gpgme/-/commit/b47e1bb98a8ff93cae560449bfa9103c47f4d4f8

Git commit d7c5366d58d035d7b7119f955824e842d0b6bbe0 by Ben McGinnes on 22/07/2018 at 15:35..
doc: python bindings howto

* Another retrofitting of the HOWTO Python example code, this time
  following adjustments to python-mode configuration and having
  trawled through the org-mode mailing lists for clues.
https://invent.kde.org/neon/forks/gpgme/-/commit/d7c5366d58d035d7b7119f955824e842d0b6bbe0

Git commit 4d1642b11ea64b8009a8720d9b59e89636d691d2 by Ben McGinnes on 22/07/2018 at 15:35..
docs: python bindings howto

* Fixed and tested the changes necessary for org-mode to correctly
  parse pythonic (Python 3) indentation.
* Updated the source blocks to recommended upper case for BEGIN_SRC
  and END_SRC.
* Tested and confirmed XHTML output matches correct examples.
* Tested against pseudo-control output via exporting from org-mode to
  org-mode and then exporting that to XHTML.  Remaining differences
  appear to be discarding the custom tags used to provide X[HT]ML id
  elements to each section which does not appear to offer any benefit.
* Exporting directly to XHTML or other HTML output should no longer
  cause problems, but if there are any then the first step should be
  exporting from org-to-org and then exporting that to XHTML.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4d1642b11ea64b8009a8720d9b59e89636d691d2

Git commit a6e5c8bf18696007c48c6f362aa355020fe82f21 by Andre Heinecke on 24/07/2018 at 06:40..
cpp: Add safety checks for key update

* lang/cpp/src/key.cpp (Key::update): Check that the key is
not NULL.
* lang/cpp/src/verificationresult.cpp (GpgME::Signature::key):
Check for fingerprint.
https://invent.kde.org/neon/forks/gpgme/-/commit/a6e5c8bf18696007c48c6f362aa355020fe82f21

Git commit 040b1ed40ada7c9ce095dec696406aea730e3766 by Maximilian Krambach on 24/07/2018 at 12:50..
js: Fix wrong encoding in received error messages

--

* The libgpg error strings arrive in the browser in a different
  encoding than used by browsers. Escaping and then decoding it
  should cover most languages in the supported browsers.
https://invent.kde.org/neon/forks/gpgme/-/commit/040b1ed40ada7c9ce095dec696406aea730e3766

Git commit 4b343c4e339862a5faf8dd20590a3c4592fb6abb by Maximilian Krambach on 24/07/2018 at 12:56..
js: include armored Key in import callback

--

* The import answer now also directly contains the armored Key as Key
  property, without need to refresh the Key object created in the
  answer. This allows for direct comparision of input and output.
* BrowserTestExtension: added test for that import callback
https://invent.kde.org/neon/forks/gpgme/-/commit/4b343c4e339862a5faf8dd20590a3c4592fb6abb

Git commit b18b96fb364711025d1e5fa9f135ee682dd0558a by Maximilian Krambach on 27/07/2018 at 09:20..
js: clean up test extension

--

Tests will now run with one instance of gpgmejs each block,
which reduces overhead. Readability is (hopefully) improved),
some negative tests are added.

There is still a performance problem in base64 encoding/decoding,
which causes some tests to fail due to time out.
https://invent.kde.org/neon/forks/gpgme/-/commit/b18b96fb364711025d1e5fa9f135ee682dd0558a

Git commit 94ee0988d4eaac27785de6efb7c19ca9976e1e9c by Maximilian Krambach on 27/07/2018 at 18:36..
js: change the write access for js class methods

--
* src/ [Connection, Error, Key, Keyring, MEssage, Signature, gpgmejs]:
    Functions and values that are not meant to be overwritten are now
    moved into their constructors, thus eliminating the possibility of
    overwrites after initialization.

* Key: The mode of use (synchronous cached, or async promises) ivs now
  determined at initialization of that Key. The property Key.isAsync
  reflects this state.

* unittests: fixed old Key syntax for testing.

* Message.js isComplete is now a method and not a getter anymore.

* Added some startup tests.
https://invent.kde.org/neon/forks/gpgme/-/commit/94ee0988d4eaac27785de6efb7c19ca9976e1e9c

Git commit 522121ea7e105acc22795b1997ca500c7b227b4f by Maximilian Krambach on 27/07/2018 at 18:56..
js: fix indentaion

--

* doing the indentation changes that became neccesary in the last
  commit.
https://invent.kde.org/neon/forks/gpgme/-/commit/522121ea7e105acc22795b1997ca500c7b227b4f

Git commit e16a87e83910ebb6bfdc4148369165f121f0997e by Maximilian Krambach on 30/07/2018 at 10:31..
js: Making objects inmutable

--

* An Object.freeze should stop any malicious third party from changing
  objects' methods once the objects are instantiated (see unittest for
  an approach that would have worked before)
  - An initialized gpgmejs- object doesn't have a '_Keyring' property
    anymore (it still has its 'Keyring')
  - The internal expect='base64' needed to be turned into a method.
https://invent.kde.org/neon/forks/gpgme/-/commit/e16a87e83910ebb6bfdc4148369165f121f0997e

Git commit 9d247b7fd5edd11fb5710a057baec671276f5034 by Maximilian Krambach on 31/07/2018 at 14:54..
js: Fix Key.hasSecret answer

--

* The comparision result between Keyring and Keyring with secrets was
  set to the wrong Object which was not returned at all.
https://invent.kde.org/neon/forks/gpgme/-/commit/9d247b7fd5edd11fb5710a057baec671276f5034

Git commit 6313a2de9ee84a9321292f775e4d6c790486d3dc by Maximilian Krambach on 31/07/2018 at 15:35..
js: fix confusion about loop in last commit

--

* The aim is to iterate through the results of the first request
 (all keys), and then add the propert 'hasSecret' to those that
  are in the second request (secret Keysring)  as well. I messed
  this up in a recent change, and it escaped testing.
https://invent.kde.org/neon/forks/gpgme/-/commit/6313a2de9ee84a9321292f775e4d6c790486d3dc

Git commit 68a012deb3b501d7417778be12c88bd475a37cb5 by Maximilian Krambach on 01/08/2018 at 10:51..
js: make init export immutable

--

* src/index.js: The export now uses a freezed Object, which does not
  allow for simply overwriting the init method by e.g. a third-party
  library.
* BrowsertestExtension: Added some tests trying if decryption of bad
  data properly fails
https://invent.kde.org/neon/forks/gpgme/-/commit/68a012deb3b501d7417778be12c88bd475a37cb5

Git commit d09d19fa9fe1e81dd819b32208b4bd09f83e3918 by Andre Heinecke on 06/08/2018 at 07:30..
Make GNUPGHOME for tests overridable

* lang/python/tests/Makefile.am,
lang/qt/tests/Makefile.am,
tests/Makefile.am,
tests/gpg/Makefile.am,
tests/gpgsm/Makefile.am,
tests/opassuan/Makefile.am (GNUPGHOME): Make variable explict.

--
If the build directory has too long path, gpgme could fail.
This is similar to

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=847206

In order to fix that, this patch extracts the GNUPGHOME variable
to be presented directly in the Makefile and thus overridable by
command line option.

A build system can then create a symlink to the GNUPGHOME directory
in /tmp and use that symlink as the GNUPGHOME directory
thus making the path very short.

GnuPG-Bug-Id: T4091

Patch provided by vlmarek
https://invent.kde.org/neon/forks/gpgme/-/commit/d09d19fa9fe1e81dd819b32208b4bd09f83e3918

Git commit 3b782443600e8091c5f19580cb218100bcbb4ad7 by Andre Heinecke on 08/08/2018 at 07:22..
cpp: Fix use after free in gencardkeyinteractor

* lang/cpp/src/gpggencardkeyinteractor.cpp
(GpgGenCardKeyInteractor::Private::keysize): Change to string.

--
The value is only required as string so we can save it this
way to avoid the need to convert it for the action command.

GnuPG-Bug-Id: T4094
https://invent.kde.org/neon/forks/gpgme/-/commit/3b782443600e8091c5f19580cb218100bcbb4ad7

Git commit 6e48bb0f1cbf662026bf0f70549b52bafe00c017 by Andre Heinecke on 08/08/2018 at 07:49..
json: Don't error out if chunksize is omitted

* src/gpgme-json.c (encode_and_chunk): Don't error out
if no chunksize is provided.

--
This fixes 82e4b900a96c837392259469a9a5821a95e7a707 which
caused every call without chunksize to error out.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e48bb0f1cbf662026bf0f70549b52bafe00c017

Git commit 974a95db04f9cdea02867f0246445b4679517ba0 by Andre Heinecke on 08/08/2018 at 11:30..
json: Add checks when skipping byte

* src/cJSON.c (parse_string, cJSON_Minify): Check for
terminating NULL byte when skipping the byte after a an escaped
quote.
https://invent.kde.org/neon/forks/gpgme/-/commit/974a95db04f9cdea02867f0246445b4679517ba0

Git commit fdc07b3ddc2f68e6fcb33703ea41126d0a841290 by Andre Heinecke on 08/08/2018 at 12:25..
json: Only use calloc instead of malloc

* src/cJSON.c, src/gpgme-json.c (CALLOC_ONLY): New define
to change xmalloc / xtrymalloc to use calloc.

--
Some people consider malloc dangerous as it might allow an
information leak.
https://invent.kde.org/neon/forks/gpgme/-/commit/fdc07b3ddc2f68e6fcb33703ea41126d0a841290

Git commit 4dd1d0abd34a382d1cd67cabb737950a39cb3fdc by Andre Heinecke on 08/08/2018 at 12:27..
json: Wipe memory in cJSON_Delete

* src/cJSON.c (cJSON_Delete): Wipe memory on deletion.
https://invent.kde.org/neon/forks/gpgme/-/commit/4dd1d0abd34a382d1cd67cabb737950a39cb3fdc

Git commit b6d2a66b41fee5b7fb484566aefcdbcc4cdad094 by Ben McGinnes on 09/08/2018 at 17:42..
Link fixes

* lang/python/README: Fixed links in both versions of the README.
https://invent.kde.org/neon/forks/gpgme/-/commit/b6d2a66b41fee5b7fb484566aefcdbcc4cdad094

Git commit 94bf13e78e65e1d1bc2e5d6b2311f9c9657bfe5f by Ben McGinnes on 10/08/2018 at 01:25..
PEP8 compliance and other code fixes

* Ran all the .py files in src/ and below through Yapf.
* Included some manual edits of core.py, this time successfully making
  two notorious sections a bit more pythonic than scheming.
* Left the module imports as is.
* This will be committed if it passes the most essential test:
  compiling, installing and running it.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/94bf13e78e65e1d1bc2e5d6b2311f9c9657bfe5f

Git commit ed5ef8293cdbfcc3b91268eeae1eb6b4f8d271bb by Ben McGinnes on 13/08/2018 at 16:22..
Symmetric encryption example.

* lang/python/examples/howto/symcrypt-file.py: A variation on standard
  key based encryption.
https://invent.kde.org/neon/forks/gpgme/-/commit/ed5ef8293cdbfcc3b91268eeae1eb6b4f8d271bb

Git commit a256d84882616341b3f357340533893a1db8b5c1 by Ben McGinnes on 13/08/2018 at 16:48..
Symmetric encryption example

* lang/python/examples/howto/symcrypt-file.py: Fixed the error code
  and the passphrase key word arg.
https://invent.kde.org/neon/forks/gpgme/-/commit/a256d84882616341b3f357340533893a1db8b5c1

Git commit 279cac0ffbb3d865d997dc7fc9c1b53bbb55d3a2 by Ben McGinnes on 13/08/2018 at 16:55..
Symmetric example

* lang/python/examples/howto/symcrypt-file.py: *sigh*; passphrase was
  right the first time, just the error check that wasn't.
* I really should stop second guessing myself one of these days ...

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/279cac0ffbb3d865d997dc7fc9c1b53bbb55d3a2

Git commit 622db0d1de665dfd93c991cd2d517078b04b3a13 by Maximilian Krambach on 16/08/2018 at 09:25..
js: consistently return uppercase fingerprint

--

* src/Key.js: the fingerprint returned by a Key is now always upper
  case hex, even if the constructor had lower case input. This is to be
  more consistent with gpgme and to be more readable and reliable in
  comparisions.
https://invent.kde.org/neon/forks/gpgme/-/commit/622db0d1de665dfd93c991cd2d517078b04b3a13

Git commit aeb065acc91a22b6548ebf0a558951ed26398214 by Maximilian Krambach on 16/08/2018 at 09:29..
js: simplify getDefaultKey

--

* src/Keyring.js: In case no default Key is set in configuration,
  only Keys reported as having a secret part should be considered
  for default Keys, avoiding some extra requests.
https://invent.kde.org/neon/forks/gpgme/-/commit/aeb065acc91a22b6548ebf0a558951ed26398214

Git commit 715cdc0d7d5bc8d39ff3cc49774c59e5db01c1b6 by Maximilian Krambach on 16/08/2018 at 10:03..
js: get default key fixes

--

* src/Keyring.js: The answer was not parsed correctly, so a config was
  being ignored.

* If no config is set, we return the first non-invalid key with a
  secret, instead of the first key (which may be e.g. an expired one)
https://invent.kde.org/neon/forks/gpgme/-/commit/715cdc0d7d5bc8d39ff3cc49774c59e5db01c1b6

Git commit 43cff5136459c5bca4dca66772eb815f5761c6cd by Maximilian Krambach on 16/08/2018 at 10:13..
js: wrong object assumed in recent commit

--

* src/Keyring.js I wrongly assumed an object to be a GPGME_Key,
  it was the raw answer from nativeMessaging instead. Now it returns
  a GPGME_Key again.
https://invent.kde.org/neon/forks/gpgme/-/commit/43cff5136459c5bca4dca66772eb815f5761c6cd

Git commit ea43158d4043b01058afd7411c84aa38b61c2009 by Maximilian Krambach on 16/08/2018 at 12:40..
js: avoid async getters

--

* src/Key.js get armored was returning a promise on async keys.
  As getters should not do that, it returns an error in this case.
https://invent.kde.org/neon/forks/gpgme/-/commit/ea43158d4043b01058afd7411c84aa38b61c2009

Git commit d65a392670888f86071ca629266ec14b7afb0e46 by Maximilian Krambach on 16/08/2018 at 15:07..
js: fix import feedback

--
* src/Keyring.js For Key imports without prepare_sync the import
  feedback was lacking the summary
https://invent.kde.org/neon/forks/gpgme/-/commit/d65a392670888f86071ca629266ec14b7afb0e46

Git commit 90cb4a684211fe5630f209ba61510e8be3129eae by Maximilian Krambach on 16/08/2018 at 15:58..
js: importKey feedback refactor

--
* src/Keyring.js: An empty result should no longer cause an error,
  the import feedback summary has been refactored slightly
* Browsertests to reflect import feedback change
https://invent.kde.org/neon/forks/gpgme/-/commit/90cb4a684211fe5630f209ba61510e8be3129eae

Git commit 754e799d35fd62d7a979452f44342934659908c7 by Maximilian Krambach on 17/08/2018 at 12:40..
js: disallow bulk set data on key from outside

--

* src/Key.js Key class is not exported anymore, as it should not be
  used directly anywhere. setKeyData is no more a method of the Key,
  (optional) data are now validated and set on Key creation and on
  updates, both from within this module, thus no longer exposing
  setKeyData to the outside.
* createKey now gained an optional parameter which allows to set Key
  data at this point.
https://invent.kde.org/neon/forks/gpgme/-/commit/754e799d35fd62d7a979452f44342934659908c7

Git commit ad39d54d192864b54a155bf5f94d5b6bb3e8612a by Maximilian Krambach on 17/08/2018 at 14:57..
js: removed Key.armor property in synchronous use

--

* src/Key.js The synchronous mode for a Key does not offer an armor/
  armored property anymore. This frees up a lot of performance issues,
  also the armored expoort is expected to change quite often, so a
  cached version is not advisable.

* hasSecret/getHasSecret is now refactored, to reflect their uses.
  With get('hasSecret') there is a method that fetches the result.

* src/Key.js also some refactoring
https://invent.kde.org/neon/forks/gpgme/-/commit/ad39d54d192864b54a155bf5f94d5b6bb3e8612a

Git commit 3fb094a9b8c320fc10e537a9bb5fab34807f4e52 by Maximilian Krambach on 17/08/2018 at 15:14..
js: small documentation fix

--
https://invent.kde.org/neon/forks/gpgme/-/commit/3fb094a9b8c320fc10e537a9bb5fab34807f4e52

Git commit 8e87790db3499b1625fd65f3272192df47b5dfd0 by Maximilian Krambach on 17/08/2018 at 15:20..
js: don't expire new keys if no date is set

--

* src/Keyring.js A new Key without expiration is documented as
  'never expire' here, and should behave accordingly. This requires
  sending '0' here.
https://invent.kde.org/neon/forks/gpgme/-/commit/8e87790db3499b1625fd65f3272192df47b5dfd0

Git commit 5b0f8230b2172bffcb3a3b629a75c9cf1a50a3d8 by Maximilian Krambach on 17/08/2018 at 15:44..
js: decrypt callback is_mime fix

--

* src/gpgmejs: is_mime should report its' counterpart. Also,
  file_name is not optional in specification. We'll send null if
  there is no file_name
https://invent.kde.org/neon/forks/gpgme/-/commit/5b0f8230b2172bffcb3a3b629a75c9cf1a50a3d8

Git commit fff365ffc583ef87ac585df2ac84fd8586202b8e by Maximilian Krambach on 17/08/2018 at 15:55..
js: expect additional 'info' to arrive on decrypt, too

--

* src/permittedOperations.js: if decrypt includes a verification,
  this info needs to pass, too.
https://invent.kde.org/neon/forks/gpgme/-/commit/fff365ffc583ef87ac585df2ac84fd8586202b8e

Git commit 3cbafb97ec4d94c1b9a2232a74f19f432ba67384 by Maximilian Krambach on 17/08/2018 at 16:25..
js: correct decrypt result info (2)

--

* the permittedOperation from last commit ended up in the wrong place.
  sign does not return an additional 'info' object.
https://invent.kde.org/neon/forks/gpgme/-/commit/3cbafb97ec4d94c1b9a2232a74f19f432ba67384

Git commit 74684f24c663af12c88b196fecd5f44863b893e4 by Maximilian Krambach on 17/08/2018 at 17:20..
js: decode arriving gpg message strings

--

* Arriving strings (i.e. user id names, error messages) are not
  always in javascript encoding. This is an attempt to go through
  the whole gpgme answer (with the exception of payload data) and
  to fix the encoding of these
https://invent.kde.org/neon/forks/gpgme/-/commit/74684f24c663af12c88b196fecd5f44863b893e4

Git commit 7962cde13c5cbdc643bbde795e2c29e638dfc186 by Ben McGinnes on 18/08/2018 at 05:05..
Python bindings src: PEP8 compliance

* import namespace clearance for src/*.py.
* Fixed a handful of is/is not None checks as well.
https://invent.kde.org/neon/forks/gpgme/-/commit/7962cde13c5cbdc643bbde795e2c29e638dfc186

Git commit 8a6a73b9c4f92b159450edb5e4a780fc7389ca82 by Ben McGinnes on 18/08/2018 at 05:36..
Python bindings constants: PEP8 compliance (almost)

* PEP8 compliance for all constants except the globals in
  src/constants/__init__.py depending on whether the import sequence
  affects the globals themselves.
https://invent.kde.org/neon/forks/gpgme/-/commit/8a6a73b9c4f92b159450edb5e4a780fc7389ca82

Git commit fc55caccfc87253e1703df66b21917cc399fba62 by Ben McGinnes on 18/08/2018 at 08:19..
Python bindings setup: Near PEP8 compliance

* lang/python/version.py.in: Fixed most things, but there's still an
  issue near the build portion with the existing Python bugs referenced.
* lang/python/setup.py.in: Now PEP8 compliant.
https://invent.kde.org/neon/forks/gpgme/-/commit/fc55caccfc87253e1703df66b21917cc399fba62

Git commit b5fbe90676f46b9615919133753a65b20318fe63 by Ben McGinnes on 18/08/2018 at 08:46..
Python bindings examples: PEP8 conpliance

* Appears to be complete compliance.
https://invent.kde.org/neon/forks/gpgme/-/commit/b5fbe90676f46b9615919133753a65b20318fe63

Git commit 5facba45c83f7daaacc49e66306e13a35aeb74be by Ben McGinnes on 18/08/2018 at 10:29..
Python bindings tests: Near PEP8 compliance

* PEP8 compliance for the vast majoeity of the tests.
https://invent.kde.org/neon/forks/gpgme/-/commit/5facba45c83f7daaacc49e66306e13a35aeb74be

Git commit 03b899dbe14a3c32fd018c20c7d5156366fdcc3d by Ben McGinnes on 18/08/2018 at 14:21..
Python bindings setup file

* Moved the build import back up where it belongs.
* Included comments indicating how to build and install for multiple
  Python versions beyond the first 2 on the same system.
https://invent.kde.org/neon/forks/gpgme/-/commit/03b899dbe14a3c32fd018c20c7d5156366fdcc3d

Git commit 75bc5e6356eca1b7fb76653e7c82c2477f8859b0 by Ben McGinnes on 19/08/2018 at 04:32..
Python bindings examples

* import-key.py: fixed a minor typo.
* pmkey-import.py: locates and imports keys from the ProtonMail keyserver.
* pmkey-import-alt.py: the same as the previous except with setting an
  alternative $GNUPGHOME directory.
https://invent.kde.org/neon/forks/gpgme/-/commit/75bc5e6356eca1b7fb76653e7c82c2477f8859b0

Git commit 1954d27be86b8e4eb801ca6ddcb670f8cfb149f5 by Maximilian Krambach on 20/08/2018 at 10:12..
js: revert changes to class read/write restriction

--

* undoes 94ee0988d4eaac27785de6efb7c19ca9976e1e9c and
  e16a87e83910ebb6bfdc4148369165f121f0997e.
  I do not fully understand why my approach was bad, but I am not in
  a position to argue. This revert was requested to me after a review,
  and I'm doing it in the assumption that more experienced people know
  better than me.
* unittests: Also changed some outdated tests that stopped working
  since 754e799d35fd62d7a979452f44342934659908c7 (as GPGME_Key is not
  exported, one cannot check for instanceof in the tests anymore)
https://invent.kde.org/neon/forks/gpgme/-/commit/1954d27be86b8e4eb801ca6ddcb670f8cfb149f5

Git commit dd32daad0bb21e3d5567326d0b2e548ff8510431 by Maximilian Krambach on 20/08/2018 at 13:12..
js: add and apply eslint rules

--

* mainly spacing, see .eslintrc.json for details
https://invent.kde.org/neon/forks/gpgme/-/commit/dd32daad0bb21e3d5567326d0b2e548ff8510431

Git commit 8103eeba809b6e7156d861783309574b93909169 by Andre Heinecke on 20/08/2018 at 14:38..
json: Add subkey_algo and defaults to createkey

* src/gpgme-json.c (op_createkey, hlp_createkey): Add subkey_algo
handling.
(hlp_createkey): Fix documentation of expiry.
--
Due to the funny quick-gen-key interface generating a key
with an explicit algo would result in bad defaults (only an SC key),
without a subkey.

This adds handling that should probably be in GnuPG proper to fix
the semantics of createkey by adding default subkey_algo handling.
https://invent.kde.org/neon/forks/gpgme/-/commit/8103eeba809b6e7156d861783309574b93909169

Git commit 91c2362550f787cc28d764c0e571e911c740f74f by Maximilian Krambach on 20/08/2018 at 15:46..
js: set expiry date on generateKey

--

* on the javascript side a Date is expected, gpggme-json expects
  seconds from 'now'
https://invent.kde.org/neon/forks/gpgme/-/commit/91c2362550f787cc28d764c0e571e911c740f74f

Git commit d77a1c887d6a5e892329534c94f95eaf8bb88492 by Maximilian Krambach on 20/08/2018 at 16:05..
js: add option "subkey-algo" to generateKey

--

* The option was recently added to gpgme-json; this reflects this on
  javascript side
https://invent.kde.org/neon/forks/gpgme/-/commit/d77a1c887d6a5e892329534c94f95eaf8bb88492

Git commit 8b8c009dee8ae5493e7f888ee518468dbfcf5375 by Maximilian Krambach on 21/08/2018 at 09:42..
js: set expiry of generatedKey to seconds from now

--

* src/Keyring.js: Changed key ecpiration from Date to seconds from
  creation, as in gpgme. The Date parameter used before was due to a
  misunderstanding in documentation and requests from potential users.
https://invent.kde.org/neon/forks/gpgme/-/commit/8b8c009dee8ae5493e7f888ee518468dbfcf5375

Git commit fe3de5b86b4a25f5b23cf1af2fd1809ef6c087a0 by Andre Heinecke on 21/08/2018 at 11:58..
Remove js as language from configure.ac

* configure.ac: Remove js language.

--
It does not make much sense to integrate gpgme-js into the
GPGME build system. gpgme-js will be distrbuted by it's users
as part of the web extensions / their distribution as that
is the JavaScript way.

So they can use their tools etc. to compile gpgme-js JavaScript
style, which is documented in the lang/js folder.
https://invent.kde.org/neon/forks/gpgme/-/commit/fe3de5b86b4a25f5b23cf1af2fd1809ef6c087a0

Git commit 605eb8a8bfcb12141d7cc5626e75af812cda6c75 by Andre Heinecke on 21/08/2018 at 11:58..
js: Improve README

* lang/js/README: Clarify structure at the beginning.
https://invent.kde.org/neon/forks/gpgme/-/commit/605eb8a8bfcb12141d7cc5626e75af812cda6c75

Git commit 9608996d88549b60da490e5eeb41db023f97a038 by Andre Heinecke on 21/08/2018 at 11:58..
Add example manifests for gpgme-json

* doc/examples/gpgme-chrome.json, doc/examples/gpgme-mozilla.json: New.
* doc/Makefile.am (EXTRA_DIST): Include them.

--
The id contained in the examples is the ID of Mailvelope.
https://invent.kde.org/neon/forks/gpgme/-/commit/9608996d88549b60da490e5eeb41db023f97a038

Git commit 738a8e6f950af08305c082d59a91d3d5d45800fa by Andre Heinecke on 21/08/2018 at 11:58..
js: Update extra_dist files

* lang/js/BrowserTestExtension/Makefile.am,
lang/js/Makefile.am (EXTRA_DIST): Update.
https://invent.kde.org/neon/forks/gpgme/-/commit/738a8e6f950af08305c082d59a91d3d5d45800fa

Git commit 0036b9bc493f0482cc7c4619867649481393163e by Andre Heinecke on 21/08/2018 at 11:58..
js: Fix library name mentioned in js Makefiles

--
https://invent.kde.org/neon/forks/gpgme/-/commit/0036b9bc493f0482cc7c4619867649481393163e

Git commit 263dadb04aed4f973248b32c52af6ca59bcb7c1f by Andre Heinecke on 21/08/2018 at 12:36..
json: Add proper decrypt_result_t handling

* src/gpgme-json.c (recipient_to_json, decrypt_result_to_json):
New.
(op_decrypt, hlp_decrypt): Update.

--
The op_decrypt as one of the first operations did not yet
match the current 1 <> 1 mapping of gpgme types to json
dictonaries.

info and dec_info are bad names but used for compatibility reasons.
https://invent.kde.org/neon/forks/gpgme/-/commit/263dadb04aed4f973248b32c52af6ca59bcb7c1f

Git commit 9dd6c67cd5ae8bf394c4c257d6d16907018761c2 by Maximilian Krambach on 21/08/2018 at 12:37..
js: remove outdated checklists

--

* They are heavily outdated and offer no more useful information
https://invent.kde.org/neon/forks/gpgme/-/commit/9dd6c67cd5ae8bf394c4c257d6d16907018761c2

Git commit 6d720137dd9564931bf313a7e7078e63fb00287c by Maximilian Krambach on 21/08/2018 at 13:26..
js: update decrypt/verify results

--

* src/gpgmejs.js: Decrypt now parses additional optional dec_info
  information, as well as any verify information, if present

* src/permittedOperations: Now decrypt also expect the new return
  object dec_inf (containing info such as is_mime and file_name)
https://invent.kde.org/neon/forks/gpgme/-/commit/6d720137dd9564931bf313a7e7078e63fb00287c

Git commit 93f674d33d4dacb115398196a7218c28323fd708 by Maximilian Krambach on 22/08/2018 at 10:18..
js: throw errors in sync functions

--

* synchronous functions should throw errors if something goes wrong,
  Promises should reject. This commit changes some error cases that
  returned Error objects instead of throwing them

  - src/Key.js: createKey() and sync Key.get() throw errors
  - src/Error.js: Exporting the list of errors to be able to test and
    compare against these strings
  - src/Keyring.js: Setting a null value in pattern is not useful, and
    now caused an error with the new changes.
  - src/Message.js: createMessage and Message.setParameter now throw
    errors
https://invent.kde.org/neon/forks/gpgme/-/commit/93f674d33d4dacb115398196a7218c28323fd708

Git commit d8fd4aad8a93f7745c63814b3779469b610a8db0 by Maximilian Krambach on 22/08/2018 at 10:44..
js: changed verify signature result infos

--

* the resulting information of verify now are as documented,
  and the same as in a decrypt callback
https://invent.kde.org/neon/forks/gpgme/-/commit/d8fd4aad8a93f7745c63814b3779469b610a8db0

Git commit 59ed27bae14da6c1ba6848b34acfc836846a27bc by Andre Heinecke on 22/08/2018 at 11:15..
Merge branch 'javascript-binding'

This adds a new language binding "gpgme.js" to GPGME. It
serves as a bridge between the native-messaging service "gpgme-json"
and JavaScript Applications.

The first user of this binding will be Mailvelope which will
see GnuPG integration in the near future.

GnuPG-Bug-Id: T4107
https://invent.kde.org/neon/forks/gpgme/-/commit/59ed27bae14da6c1ba6848b34acfc836846a27bc

Git commit 94a0ed361ea04c2a0a2e144877b0e17b9fea35a2 by Maximilian Krambach on 22/08/2018 at 12:49..
js: Return error if signature has no fingerprint

--

* src/Signature.js/get fingerprint: A signature with no fingerprint
  should not happen, but if it does, we should throw an error here,
  as the method is a getter.
https://invent.kde.org/neon/forks/gpgme/-/commit/94a0ed361ea04c2a0a2e144877b0e17b9fea35a2

Git commit 129fa919b935d97d995bc6b457c7f6984c06e825 by Maximilian Krambach on 22/08/2018 at 14:32..
js: improve decryption performance

--
* src/Connection.js, src/Helpers.js: performance of decoding incoming
  base64 data was improved to about 4 times the speed by introducing
  two more efficient functions (thanks to rrenkert at intevation.de for
  finding and testing them)

* src/gpgmejs.js: Decrypted data will now return as Uint8Array, if the
  caller does not wish for a decoding. Decoding binary data will return
  invalid data, and a Uint8Array may be desired. This can be indicated
  by using the (new) 'binary' option in decrypt.

* src/Errors.js A new error in case this decoding fails

* src/Message.js, src/Connection.js: expected is change from base64
  to binary, to avoid confusion later on.
https://invent.kde.org/neon/forks/gpgme/-/commit/129fa919b935d97d995bc6b457c7f6984c06e825

Git commit f0409bbdafcbd4f8b0be099a6b3ce0d5352c9bcd by Maximilian Krambach on 22/08/2018 at 16:37..
js: make method parameters objects

--

* As requested by using parties, the options to be passed into the
  methods are now objects, with the objects' properties better
  describing what they do, and to avoid the need to type several nulls
  in a method call if one wants the last parameter.
  - src/Keyring.js, src/gpgme.js: Changed parameters and their
    validations
  - BrowserTest/*.js Had to adapt quite some calls to the new format
https://invent.kde.org/neon/forks/gpgme/-/commit/f0409bbdafcbd4f8b0be099a6b3ce0d5352c9bcd

Git commit 24a00058652233775cbe51446cba337b70cefdf1 by Maximilian Krambach on 22/08/2018 at 17:07..
js: add decrypt result options

--

* As a decrypt result cannot be known beforehand, the decrypt operation
  may add an 'expect' property, taking either 'uint8' or 'base64',
  which will return the decrypted data in the appropiate formats.
  the return property 'format' will give a feedback on which option
  was taken.
  A test was added to reflect these changes.
https://invent.kde.org/neon/forks/gpgme/-/commit/24a00058652233775cbe51446cba337b70cefdf1

Git commit 60dc499abd89f7e62a7b9cad943a96faa65187d5 by Maximilian Krambach on 23/08/2018 at 09:28..
js: update getDefaultKey to more precise logic

--

* src/Keyring.js: Adapted Keyring.getDefaultKey() to my current
  understanding  of a default signing key: either the default key set
  in the gpg config, or 'the first usable private key' - usability
  meaning  'not invalid, expired, revoked, and can be used for
  signing'. It should be the same key used as in command line when
  doing a --sign operation.
  In case the user has a smartcard plugged in, we currently
  won't know of this here, so our choice may differ. But as we do all
  javascript-binding sign operations with the key  fingerprint
  explicitly set, this should not be a real problem. This method is
  seen more as a convenience to tell using librarys which key
  represents the main user.
https://invent.kde.org/neon/forks/gpgme/-/commit/60dc499abd89f7e62a7b9cad943a96faa65187d5

Git commit 3fd6837fce9b339b8b09a800a969e0950e78250c by Maximilian Krambach on 23/08/2018 at 10:15..
js: use destructured option parameters

--
* Adds to f0409bbdafcbd4f8b0be099a6b3ce0d5352c9bcd and makes use of
  destructuring, allowing for defaults, and cleaning up the
  validation.
https://invent.kde.org/neon/forks/gpgme/-/commit/3fd6837fce9b339b8b09a800a969e0950e78250c

Git commit 352c53040d75e70dcda16c153d10c21e8eee0e01 by Maximilian Krambach on 23/08/2018 at 10:30..
js: offer an always-trust parameter on encrypt

--

* src/gpgmejs.js: Setting the default to 'always trust' assumes that
  most api users will already have made their internal checks, but may
  not have the gnupg web-of-trust model implemented, thus trusting the
  key themselves, without gnupg having full or even any information.
  Still it should stay an option to have gnupg decide.
https://invent.kde.org/neon/forks/gpgme/-/commit/352c53040d75e70dcda16c153d10c21e8eee0e01

Git commit f62dd4bb27c36e44acf93af1daf24eefda3029c2 by Maximilian Krambach on 23/08/2018 at 15:58..
js: fix syntax inside Keyring methods

--

* recent changes in parameter calling led to a forgotten internal call
  in getDefaultKey using old syntax (and failing in case a default key
  is configured)
https://invent.kde.org/neon/forks/gpgme/-/commit/f62dd4bb27c36e44acf93af1daf24eefda3029c2

Git commit a5f8dac77d50480a208c99398df323c58ce6dc58 by Andre Heinecke on 23/08/2018 at 18:50..
json: Add sender and file name to encrypt

* src/gpgme-json.c (hlp_encrypt, op_encrypt): Support sender
and file_name.
https://invent.kde.org/neon/forks/gpgme/-/commit/a5f8dac77d50480a208c99398df323c58ce6dc58

Git commit 138e1dde027338358a8da19ff8592b7369494534 by Maximilian Krambach on 24/08/2018 at 08:33..
js: add new options to permittedOperations

--

* reflecting the new optional strings accepted by the backend.
  'file_name' and 'sender' can be  used via the 'additional'
  parameter in encrypt operations
https://invent.kde.org/neon/forks/gpgme/-/commit/138e1dde027338358a8da19ff8592b7369494534

Git commit 08cd34afb762975b0273575035dacf69449ef241 by Werner Koch (on behalf of Jasper Spaans) on 27/08/2018 at 07:06..
core: Export gpgme_data_new_from_estream function.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/08cd34afb762975b0273575035dacf69449ef241

Git commit 557fec600248e6ad413af01c9a53d4993f36af0c by Maximilian Krambach on 27/08/2018 at 09:21..
js: fix file_name return on decrypt

--
* src/gpgmejs: Line 228 checked the wrong variable. To avoid further
  confusion, _result was renamed to returnValue in the whole file
https://invent.kde.org/neon/forks/gpgme/-/commit/557fec600248e6ad413af01c9a53d4993f36af0c

Git commit 4f28fbddd3d70eb7e3ce874b1673630142110b72 by Maximilian Krambach on 27/08/2018 at 09:50..
js: extend information on decoding in decrypt

--

* src/Connection.js: resulting data, if not pure ascii, is base64
  encoded in the result message. A further decoding attempt into
  javascript 'string' will be attempted by default, unless specified
  at the decrypt() method. The return value 'format' now shows which
  of the possibilities has been applied. The old boolean 'base64'
  now turns into format:'base64' if the returned payload is a base64
  string after decryption.
https://invent.kde.org/neon/forks/gpgme/-/commit/4f28fbddd3d70eb7e3ce874b1673630142110b72

Git commit 702566b36c1138b2154ce054254641edcbe472fb by Werner Koch on 27/08/2018 at 09:43..
doc: Add warning that FILE_NAME is not part of the signed data.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/702566b36c1138b2154ce054254641edcbe472fb

Git commit 53c5b9a265d33f2cc54f489375a929602338aee8 by Werner Koch on 27/08/2018 at 09:43..
json: Do not put FILE_NAME into the verify result.

* src/gpgme-json.c (verify_result_to_json): Remove "file_name".
--

Having the file name in the verify result may lead developers to
assume that the file name is covered by the signature.  This is not
the case and can easily be checked by hex-editing a signed message.
We better don't output it at all.

The same is true for the is_mime flag but that is anyway only an
advisory and I can't see damage from a faulty one.

Note that we keep file_name in gpgme's output for ABI stability and
because some tools want to display meta information even if they are
subject to tampering.  This is similar to the non-encrypted subject in
mails.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/53c5b9a265d33f2cc54f489375a929602338aee8

Git commit 766d42c248a8c526b831685e93d54db81492f5a8 by Maximilian Krambach on 27/08/2018 at 10:38..
js: typecheck destructured parameters

--

* destructuring just takes the input argument and treats it as object.
  In cases like in src/Keyring/generateKey, where I forgot to change
  the old syntax, the fingerprint as string was destructured into an
  object without "pattern", which caused all Keys to be retrieved.
  So, methods with a destructuring now check if the first argument is
  an object and get a default empty object if no parameter is
  submitted. This allows the further use of destructured parameters,
  while still ensuring nothing vastly incorrect is used.
* src/Kering.js, unittsets.js: fixed old syntax in method usage
https://invent.kde.org/neon/forks/gpgme/-/commit/766d42c248a8c526b831685e93d54db81492f5a8

Git commit 28086252f15e2c124a2a00c2abc87a815d227fbe by Maximilian Krambach on 27/08/2018 at 11:00..
js: make non-payload data more encoding-tolerant

--

* src/Helpers.js: As non-payload data might come in different
  encodings, a conversion has been introduced that worked in most
  cases. Data like the userid might come in different encodings,
  which we don't know of. For now, a try..catch returns the data
  as they are if the utf-8 decoding fails. Sometimes this yields the
  correct result, sometimes it may not work, but it won't stop the
  whole operation anymore.
https://invent.kde.org/neon/forks/gpgme/-/commit/28086252f15e2c124a2a00c2abc87a815d227fbe

Git commit 8aa61fd3a270c167bf85cdd3f4148c48f5ae9ff7 by Maximilian Krambach on 27/08/2018 at 11:25..
js: small documentation update

--
https://invent.kde.org/neon/forks/gpgme/-/commit/8aa61fd3a270c167bf85cdd3f4148c48f5ae9ff7

Git commit 1c261b9fa3462360b6c3f43b243091cd50534903 by Ben McGinnes on 27/08/2018 at 20:42..
docs: python bindings

* Added details on installation troubleshooting.
https://invent.kde.org/neon/forks/gpgme/-/commit/1c261b9fa3462360b6c3f43b243091cd50534903

Git commit 7d3c13df263ed88c17005920e75e0486abeae5b9 by Andre Heinecke on 28/08/2018 at 06:05..
json: Allow NULL request in encode and chunk

* src/gpgme-json.c (encode_and_chunk): Don't error on NULL
request.

--
This fixes the error that is passed when parthing the json
object failed and request would be NULL.
Instead of the JSON parser error it would otherwise report
that encode and chunk failed.
https://invent.kde.org/neon/forks/gpgme/-/commit/7d3c13df263ed88c17005920e75e0486abeae5b9

Git commit 3bdf8be6d2c57319399fe14e27e52b323a17750a by Andre Heinecke on 28/08/2018 at 06:35..
json: Delete primary key if subkey gen fails

* src/gpgme-json.c (op_delete): Delete primary key on
subkey gen error.

--
This can happen for example if the user cancels the
pinentry to unlock the primary key when adding the
subkey.  To avoid an artifact of a pimary key without
an encryption capable subkey we delete the created
key and treat the whole operation as failed.
https://invent.kde.org/neon/forks/gpgme/-/commit/3bdf8be6d2c57319399fe14e27e52b323a17750a

Git commit c2831e2377843c8625df158ef32e01f8c19494eb by Ben McGinnes on 28/08/2018 at 08:45..
docs: python howto

* Added another key import example using ProtonMail's new keyserver.
https://invent.kde.org/neon/forks/gpgme/-/commit/c2831e2377843c8625df158ef32e01f8c19494eb

Git commit a8a983c5bc0f0deeeebda455ad73309fff48b61f by Ben McGinnes on 28/08/2018 at 17:42..
docs: python bindings

* Added section on why no CFFI.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8a983c5bc0f0deeeebda455ad73309fff48b61f

Git commit 02d0b97bfedc732351cc4e89c92fcd9d31209535 by Ben McGinnes on 28/08/2018 at 18:14..
docs: python bindings HOWTO

* Finished CFFI vs SWIG bit in known issues.
* tidied up some of the structure.
* Fixed some minor errors and links.
https://invent.kde.org/neon/forks/gpgme/-/commit/02d0b97bfedc732351cc4e89c92fcd9d31209535

Git commit 16e566f319004d49f55197238380cc4c03e01f48 by Ben McGinnes on 28/08/2018 at 18:16..
Merge branch 'master' of ssh+git://playfair.gnupg.org/git/gpgme
https://invent.kde.org/neon/forks/gpgme/-/commit/16e566f319004d49f55197238380cc4c03e01f48

Git commit f7e5ae7f1618bd355b885c5c32dd028afad35453 by Ben McGinnes on 29/08/2018 at 10:30..
docs: python bindings - protonmail examples

* lang/python/docs/GPGMEpythonHOWTOen.org: Updated links to the
  ProtonMail keyserver import scripts and added a warning regarding
  being unable to update third party keys.
* lang/python/examples/howto/pmkey-import-alt.py: added usage.
* lang/python/examples/howto/pmkey-import.py: added usage.
https://invent.kde.org/neon/forks/gpgme/-/commit/f7e5ae7f1618bd355b885c5c32dd028afad35453

Git commit 1420c3bd681648b032d756536311621a3627bedb by Andre Heinecke on 29/08/2018 at 12:32..
json: Fix detached verify

* src/gpgme-json.c (op_verify): Only create output and
use it for clearsigned and opaque signed.

--
Just passing output to gpgme_op_verify changes the behavior to
no longer do a verify of the signature.
https://invent.kde.org/neon/forks/gpgme/-/commit/1420c3bd681648b032d756536311621a3627bedb

Git commit 6078b5303362b2e5ce56660967fac313ca3d5ae9 by Ben McGinnes on 29/08/2018 at 15:01..
python bindings: core

* lang/python/src/core.py: added new function new_from_estream to wrap
  new_from_fd just like new_from_stream does and for the same reason.
https://invent.kde.org/neon/forks/gpgme/-/commit/6078b5303362b2e5ce56660967fac313ca3d5ae9

Git commit dcedddecb6f8f11682aed3b09b88ee1511010faf by Ben McGinnes on 29/08/2018 at 15:01..
python bindings: core

* lang/python/src/core.py: added gpgme_data_set_flag to the errorcheck
  funtion.
https://invent.kde.org/neon/forks/gpgme/-/commit/dcedddecb6f8f11682aed3b09b88ee1511010faf

Git commit 18ea83867168e8db0a2f2c8057d087363083486c by Ben McGinnes on 29/08/2018 at 15:01..
python bindings: core

* lang/python/src/core.py: expanded gpgme_error check lists.
https://invent.kde.org/neon/forks/gpgme/-/commit/18ea83867168e8db0a2f2c8057d087363083486c

Git commit 61ac70cfb5cf58f92cd97abdde7152040c51201c by Maximilian Krambach on 29/08/2018 at 15:45..
js: return base64 after encrypt with armor=false

--

* src/gpgmejs.js/encrypt: the encrypted data were converted back to a
  (incorrect) string, whereas they should be data with no encoding
  specified. Returning base64 data is the expected way.
* DemoExtension: caught yet another usage of old syntax.
https://invent.kde.org/neon/forks/gpgme/-/commit/61ac70cfb5cf58f92cd97abdde7152040c51201c

Git commit 1d00fb987b903e245d484bddfe3c0a0aba670ac1 by Ben McGinnes on 30/08/2018 at 05:41..
python bindings: estreams fix

* lang/python/src/core.py: Adjusted new_from_estream function to alias
  new_from_stream instead of fd.
* fixed the _gpgme import errors introduced in commit
  08cd34afb762975b0273575035dacf69449ef241 by changing the exported
  functions/types to match the inner module where all the work is
  done, rather than the outer one(s).

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1d00fb987b903e245d484bddfe3c0a0aba670ac1

Git commit a9863717b1b82b3077edd0db85454ba801eac9bd by Maximilian Krambach on 30/08/2018 at 10:09..
js: separate gpgme answer by type of data

--

* src/Connection.js; src/permittedOperations.js: To avoid further
  encoding problems, data sent by gpgme is now sorted  as either
  'payload' or 'info'. Payload data may come in any encoding, and here
  the 'expected' and 'format' options are used, 'info' data may
  contain text created by gnupg which may need re-encoding, but this
  should not be affected by 'expected' and 'format'
https://invent.kde.org/neon/forks/gpgme/-/commit/a9863717b1b82b3077edd0db85454ba801eac9bd

Git commit 44691995b72c483ee8a91f11767b2bd317072d5a by Maximilian Krambach on 30/08/2018 at 12:46..
js: add encoding parameter for encrypt return

--

* src/gpgme.js: In case the encryption was done unarmored, the result
  is binary data. Added an option to either return the binary data as
  base64-encoded string or as Uint8Array, similar to return values of
  decrypt
https://invent.kde.org/neon/forks/gpgme/-/commit/44691995b72c483ee8a91f11767b2bd317072d5a

Git commit 3201ded91f91fcdf501ad966380b6ff29d798b09 by Maximilian Krambach on 30/08/2018 at 13:00..
js: add tests

--

* BrowserTestExtension/tests:

  - decryptTest.js: Check Decryption and return values of binary data
  - encryptTest.js: Return data type of armored/non-armored encryption
  - added a small encoded input png for testing

* DemoExtension/maindemo.js: Fixed unexpected usage of the Demo encrypt
  (non-armored)
https://invent.kde.org/neon/forks/gpgme/-/commit/3201ded91f91fcdf501ad966380b6ff29d798b09

Git commit 5d6039f6bf9bbbfec572055dcf5ca660041461af by Maximilian Krambach on 30/08/2018 at 13:37..
js: decoding of information

--

* src/Helpers.js: This additional escape should 'repair' special
  characters like spaces in filenames. In the strange world of
  encoding there is little hope that this captures all cases, or
  that it will never fail to return some value, let alone meaningful.
  In my test cases it worked.
https://invent.kde.org/neon/forks/gpgme/-/commit/5d6039f6bf9bbbfec572055dcf5ca660041461af

Git commit 87bbe728fa68b0c1a62ead3e48650f8f33883b3f by Maximilian Krambach on 30/08/2018 at 14:16..
js: tests for file name encoding

--

* BrowsertestExtension/tests/decryptTest.js: There were cases in which
  file names returned in a wrong encoding from decryption. The test
  cases here are a  'Hello World' in a text file with different names,
  then being encrypted with cli gnupg.
https://invent.kde.org/neon/forks/gpgme/-/commit/87bbe728fa68b0c1a62ead3e48650f8f33883b3f

Git commit 55991aa91667b9184cc9fc86a3ac21b9640511ef by Ben McGinnes on 31/08/2018 at 07:36..
docs: python bindings

* minor typographic update.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/55991aa91667b9184cc9fc86a3ac21b9640511ef

Git commit 346dfac0de41326553a079af7521a010cc258d6c by Maximilian Krambach on 31/08/2018 at 08:36..
js: cleanup after key import test

--

* one of the public Keys imported was not removed afterwards.
https://invent.kde.org/neon/forks/gpgme/-/commit/346dfac0de41326553a079af7521a010cc258d6c

Git commit dacb1197155cb953953b75677c1783df2cba0ed6 by Maximilian Krambach on 31/08/2018 at 13:24..
js: key deletion after test

--

* Yet again some wrong syntax in Browsertests
https://invent.kde.org/neon/forks/gpgme/-/commit/dacb1197155cb953953b75677c1783df2cba0ed6

Git commit 879cc1f84fbf09cb4eeb78bce16f52a1a36032ba by Ben McGinnes on 02/09/2018 at 09:07..
estreams symbols for python bindings

* It turns out that even though some platforms detect differing
  symbols for estreams, the two types do not appear to be in
  conflict.  At least they don't from the BSD/OS X side of things.
  As a consequence both versions are now included.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/879cc1f84fbf09cb4eeb78bce16f52a1a36032ba

Git commit 1c618166fcd296b4e95f3a6ea9c415d3dca5ce0a by Maximilian Krambach on 05/09/2018 at 16:46..
js: documentation cleanup

--
https://invent.kde.org/neon/forks/gpgme/-/commit/1c618166fcd296b4e95f3a6ea9c415d3dca5ce0a

Git commit 6463b1cd3b52f7b8a0bbaa838ae7b29da9f458e4 by Maximilian Krambach on 06/09/2018 at 08:11..
js: fix error in toKeyIdArray

--
* src/Helpers.js: GPGME_Keys were not parsed as valid, as their
  fingerprint getter is not a fingerprint 'property'.

* BrowserTestExtension: fixed a dsplay typo in counting of tests.
https://invent.kde.org/neon/forks/gpgme/-/commit/6463b1cd3b52f7b8a0bbaa838ae7b29da9f458e4

Git commit 53d69af01492873337a7b819e003a8f63698be1e by Maximilian Krambach on 06/09/2018 at 09:27..
js: add new documentation file to extra_dist

--
* jsdoc_index.md is the documentation's 'main page' to offer a better
  intro than only the parser-generated API confusion.
https://invent.kde.org/neon/forks/gpgme/-/commit/53d69af01492873337a7b819e003a8f63698be1e

Git commit 2375959180aa8eb0d23cc3f8240c3f5b5262b819 by Ben McGinnes on 08/09/2018 at 04:45..
estreams revised

* Egon Spengler was right, crossing the streams is bad.
* Restored both src/gpgme.def and src/libgpgme.vers to use the
  estreams symbols without the leading underscore.
* The new_from_estream() function added to lang/python/src/core.py and
  set to alias the new_from_stream() function remains.
* Opted for the solution favouring Linux onthree main grounds:
  1. Andre reported major problems with Windows as well, so the number
     of potentially affected systems would vastly increase.
  2. All the BSDs and OS X have spent far more time and development
     work in order to accommodate the eccentricities of both Microsoft
     and the GNU Project (ref. GCC), so they're more likely to be able
     to cope with doing so again than the other way around.
  3. If I really have to I can write a custom installer for OS X to
     try this and, if it fails, to then patch the two symbol entries and
     recompile from scratch.  That said, I may not have to since it
     actually behaved during the most recent tests for this
     commit; into ten separate CPython installations and all five
     supported versions (standard source installs and OS X Framework
     installs for each version).

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2375959180aa8eb0d23cc3f8240c3f5b5262b819

Git commit dd7d37ca21684d4d77db4f513c6212776fc6ea82 by Andre Heinecke (on behalf of Thomas Oberndörfer) on 10/09/2018 at 11:11..
js: Fix errorDetails of GPGME_Signature

* lang/js/src/Signature.js (GPGME_Signature.errorDetails):
Access properties from the summary object.
https://invent.kde.org/neon/forks/gpgme/-/commit/dd7d37ca21684d4d77db4f513c6212776fc6ea82

Git commit 864ef9b40f5f9d0c66a458b6033277938d7d1d50 by Ben McGinnes on 15/09/2018 at 02:10..
Python examples: backwards compatibility

* lang/python/examples/howto/groups.py: subprocess update
* lang/python/examples/howto/export-secret-keys.py: subprocess update

  Both of these try the nice and easy method of getting the subprocess
  output available in Python 3, but will fall back to the older Popen
  method if it doesn't work.  Essentially this is to be a little nicer
  to Python 2.7.15 (even though the examples are filled with warnings
  that py2 support is not guaranteed with the examples).
https://invent.kde.org/neon/forks/gpgme/-/commit/864ef9b40f5f9d0c66a458b6033277938d7d1d50

Git commit 4e8a92ed14ea3da3d92f07d5f62fd325a2adebde by Ben McGinnes on 15/09/2018 at 17:34..
Python bindings: examples

* lang/python/examples/howto/export-secret-keys.py and groups.py:
  Updated the backwards compatibility adjustments to account for
  unicode differences between python 2 and 3.
https://invent.kde.org/neon/forks/gpgme/-/commit/4e8a92ed14ea3da3d92f07d5f62fd325a2adebde

Git commit d04fb0bf1271c91b88686c947a5b14ffc9b505ef by Ben McGinnes on 15/09/2018 at 17:36..
Python bindings: docs

* lang/python/docs/GPGMEpythonHOWTOen.org: Fixed a few errors in the
  newer sections.
* Updated code in the examples using secret key exporting and group
  lines to reflect the Python 2.7 compatibility fixes added.
https://invent.kde.org/neon/forks/gpgme/-/commit/d04fb0bf1271c91b88686c947a5b14ffc9b505ef

Git commit b19faa26e01df4d78286e013313e5ab25f517d49 by Ben McGinnes on 15/09/2018 at 18:04..
Docs: Python bindings HOWTO

* Added doc/gpgme-python-howto.texi: generated from
  GPGMEpythonHOWTOen.org and then slightly modified so the generated
  Info file doesn't use camelCase.
* doc/Makefile.am: Updated makefile to include the Python HOWTO with
  gpgme_TEXINFOS and to export the generated files to the webserver
  along with the main GPGME one.
https://invent.kde.org/neon/forks/gpgme/-/commit/b19faa26e01df4d78286e013313e5ab25f517d49

Git commit 2e5b0603709855eb1d8a1a3fd51d3245f4301ada by Ben McGinnes on 15/09/2018 at 18:55..
Docs: including howto with standard docs

* gpgme.spec.in: Added gpgme-python-howto.info build on the grounds
  that it now deals with certain possible installation issues and end
  users encountering them would want the docs to hand.
* doc/gpgme.texi: updated the copyright year to this year.
https://invent.kde.org/neon/forks/gpgme/-/commit/2e5b0603709855eb1d8a1a3fd51d3245f4301ada

Git commit 93a2ea0207fac0a18a48b671df11dc8575579c39 by Ben McGinnes on 15/09/2018 at 19:02..
docs: generated whitespace

* doc/gpgme-python-howto.texi: culled whitespace included with the
  org-mode export.
https://invent.kde.org/neon/forks/gpgme/-/commit/93a2ea0207fac0a18a48b671df11dc8575579c39

Git commit 7e9df9b9e33131f5d7c58ad58249f9ae766f1341 by Ben McGinnes on 15/09/2018 at 20:35..
docs: Python howto update

* lang/python/docs/GPGMEpythonHOWTOen.org: Added corresponding GPGME
  version number to table at the start and cut the shortcut from the
  groups.py example.
* doc/gpgme-python-howto.texi: New export of Texinfo file for docs
  build.
https://invent.kde.org/neon/forks/gpgme/-/commit/7e9df9b9e33131f5d7c58ad58249f9ae766f1341

Git commit 76f77022848894ee9d8490255cefdd0100248b45 by Ben McGinnes on 15/09/2018 at 20:42..
docs: python howto texinfo update

* doc/gpgme-python-howto.texi:
https://invent.kde.org/neon/forks/gpgme/-/commit/76f77022848894ee9d8490255cefdd0100248b45

Git commit 766ec0e4a36c120ed4ef5463b5fdf8e7ed3b4563 by Ben McGinnes on 15/09/2018 at 22:36..
docs: renaming and drafts

* lang/python/docs/gpgme-python-howto.org: Renamed file to better fit
  the rest of the project's docs.
* Added a section on the very unofficial drafts I periodically post
  links to since they're often the easiest way to get a web version in
  front of someone in a hurry.
https://invent.kde.org/neon/forks/gpgme/-/commit/766ec0e4a36c120ed4ef5463b5fdf8e7ed3b4563

Git commit 91b26b0638d9f92f0e90aab1c3750c14d72db301 by Ben McGinnes on 15/09/2018 at 23:47..
docs: whitespace culled

* lang/python/docs/gpgme-python-howto.org: Identified and fixed the
  headings which kept generating lines with trailing whitespace when
  exporting to Texinfo format and adjusted them to prevent that.
https://invent.kde.org/neon/forks/gpgme/-/commit/91b26b0638d9f92f0e90aab1c3750c14d72db301

Git commit 2a1b0b88d96b722817f3ac9edf002a54c65084b8 by Ben McGinnes on 16/09/2018 at 00:52..
docs: more edits

* lang/python/docs/gpgme-python-howto.org: more tweaks and edits,
  along with another build of output formats.
* doc/gpgme-python-howto.texi: updated texinfo version for parent docs.
https://invent.kde.org/neon/forks/gpgme/-/commit/2a1b0b88d96b722817f3ac9edf002a54c65084b8

Git commit fbec29fdac7a4f162e73f24dac2a6b205239ef03 by Ben McGinnes on 16/09/2018 at 01:06..
docs: even more edits

* doc/gpgme-python-howto.texi: hunting down and killing commas,
  Oxford or not it can't stay in a heading.
https://invent.kde.org/neon/forks/gpgme/-/commit/fbec29fdac7a4f162e73f24dac2a6b205239ef03

Git commit 61c08f7435570783f5c267e42d288d31bf77e560 by Ben McGinnes on 16/09/2018 at 03:48..
docs: python bindings howto

* Added new advanced section with an example of using the Python
  bindings with CPython code compiled back to C code using Cython.
* Though it may seem a bit counter-intuitive to use the bindings just
  to go back to C via a different route, this is not actually stupid.
* Added examples/howto/advanced/cython/ directory.
* Added keycount.pyx, setup.py and the keycount.c file which the first
  two generated with Cython.  Not including the .so and .o files from
  the build.
* Exported the .texi version of the howto for the main docs.
https://invent.kde.org/neon/forks/gpgme/-/commit/61c08f7435570783f5c267e42d288d31bf77e560

Git commit 44c846345e91413b9d6a1f7b26f59db5b1c32433 by Ben McGinnes on 16/09/2018 at 03:58..
docs: cython sanitized

* Sanitized the shell command examples of extraneous whitespace.
* Removed keycount.c as sanitising it is pointless and it will be
  generated by Cython when the example is followed.
* Regenerated the .texi version.
https://invent.kde.org/neon/forks/gpgme/-/commit/44c846345e91413b9d6a1f7b26f59db5b1c32433

Git commit f4d83800d89173e618cceca44b584778217fadb3 by Ben McGinnes on 17/09/2018 at 04:33..
docs: python bindings howto

* Tightened up the Cython demonstration.
https://invent.kde.org/neon/forks/gpgme/-/commit/f4d83800d89173e618cceca44b584778217fadb3

Git commit 362caaf02f3a25b7e626572aa30b87771c2c8f4d by Ben McGinnes on 17/09/2018 at 22:32..
docs: python bindings

* Updated the Cython example code slightly, along with the
  corresponding explanation.
https://invent.kde.org/neon/forks/gpgme/-/commit/362caaf02f3a25b7e626572aa30b87771c2c8f4d

Git commit 7f149586062ebae8114f64078771cb25579f5003 by Maximilian Krambach on 19/09/2018 at 08:56..
js: add configuration option on startup

--

* src/index.js: Added an optional configuration object for the startup.

* configuration: timeout - the initial check for a connection ran into
  timeouts on slower testing machines. 500ms for initial startup is
  not sufficient everywhere. The default timeout was raised to 1000ms,
  and as an option this timeout can be increased even further.

* BrowsertestExtension: Set the initial connection timeouts to 2
  seconds, to be able to test on slower machines.
https://invent.kde.org/neon/forks/gpgme/-/commit/7f149586062ebae8114f64078771cb25579f5003

Git commit c569adb5e3e3082bd68cdc34a2d349b7c28d3768 by Werner Koch on 19/09/2018 at 09:51..
json: Remove subkey-algo from createkey command.

* src/gpgme-json.c (op_createkey): Remove subkey-algo param.
(GPG_AGENT_ALLOWS_KEYGEN_TRHOUGH_BROWSER): Fix typo.
* lang/js/src/Keyring.js: Remove subkey-algo support.
* lang/js/src/permittedOperations.js: Ditto.
--

We do not want to expose details of the protocol's key generation and
thus the subkey-algo does not make sense.  Right now we support only
the default and future-default algorithms.  A user can configure them
anyway using new-default-key-algo in gpg.conf.  Eventually we may
officially support a more flexible way of creating special structured
OpenPGP keys but right now that is not part of the API.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c569adb5e3e3082bd68cdc34a2d349b7c28d3768

Git commit 34be6163f6c1057e2a87705925a9d0c70e4ecf17 by Maximilian Krambach on 19/09/2018 at 15:56..
js: add 'default-future' as createKey option

--
* src/Keyring.js: default-future can be used now for key creation as
  algo.
https://invent.kde.org/neon/forks/gpgme/-/commit/34be6163f6c1057e2a87705925a9d0c70e4ecf17

Git commit 5cb67257f2b3b5fcfd3444e366f26a0f2ae09504 by Ben McGinnes on 20/09/2018 at 01:38..
docs: python bindings and its special request

* Added some material on using the new-ish hkp4py module with GPGME.
* Example code will be added later once a couple of little issues are
  addressed.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5cb67257f2b3b5fcfd3444e366f26a0f2ae09504

Git commit a824f4498ea9bae5dca515c56e2455ec0ce98b50 by Werner Koch on 20/09/2018 at 10:13..
tests: Don't try using keys from a scmartcard.

* tests/gpg/Makefile.am: Disable scdaemon
* lang/python/tests/Makefile.am: Ditto.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a824f4498ea9bae5dca515c56e2455ec0ce98b50

Git commit 9f19b3aaecd23a12b2e6692faeefa936e490d343 by Werner Koch on 20/09/2018 at 10:13..
python: Fix regression in the test suite.

* lang/python/tests/Makefile.am (GNUPGHOME): Remove stray backslash.
--

Fixes-commit: d09d19fa9fe1e81dd819b32208b4bd09f83e3918
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9f19b3aaecd23a12b2e6692faeefa936e490d343

Git commit ec2d2b78bc61a730d0d33bd997f386ba381720c5 by Maximilian Krambach on 20/09/2018 at 13:48..
js: renamed keygen algo option

--

* src/Keyring.js: Confused default-future with future-default

* reverts commit 34be6163f6c1057e2a87705925a9d0c70e4ecf17
https://invent.kde.org/neon/forks/gpgme/-/commit/ec2d2b78bc61a730d0d33bd997f386ba381720c5

Git commit dcdabf5f2ef84e1f304fcc0590ec4bb160354af5 by Werner Koch on 20/09/2018 at 15:45..
python: Silence a few warnings.

* src/gpgme.h.in: Obsolete "class" also for Python.
* lang/python/gpgme.i: Silenece a swig warning.  Silence a gcc
warning.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dcdabf5f2ef84e1f304fcc0590ec4bb160354af5

Git commit 6878126b6f53cdf7daeeaf68116dda008564c2fa by Werner Koch on 20/09/2018 at 15:45..
python: Fix a couple of syntax errors.

* lang/python/tests/t-keylist-from-data.py: Add missing line
continuation.
* lang/python/tests/t-keylist.py: Ditto.
* lang/python/tests/t-quick-key-creation.py: Ditto.
* lang/python/tests/t-quick-subkey-creation.py: Ditto.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6878126b6f53cdf7daeeaf68116dda008564c2fa

Git commit 3622576105ae1924d9b40ce0d09bf9a7accc0ed1 by Ben McGinnes on 22/09/2018 at 19:37..
docs: python bindings howto

* Confirmed that updates to the tests have significant'y improved that
  output.
* Updated some of the additional notes for the section on hkp4py.
** This is in anticipation adding at least import examples using that
   module as well.  It may also include adding examples of exporting a
   key and uploading it to the keyservers.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3622576105ae1924d9b40ce0d09bf9a7accc0ed1

Git commit 6ed9a77c92c32f77092b36c149185d4359cd6e55 by Ben McGinnes on 22/09/2018 at 22:18..
python bindings: importing from keyservers with hkp4py

* added a new example script to search the keyservers and import the
  results, this time using Marcel Fest's hkp4py module.
* Updated the key importing section to match this addition.
* Tested with the current version of hkp4py from github.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6ed9a77c92c32f77092b36c149185d4359cd6e55

Git commit ced4bdbbb239c1fe209665b4f5a7aeb9651889ed by Ben McGinnes on 23/09/2018 at 01:43..
examples: python bindings and hkp4py updates

* Mostly tightening up the details on the hkp4py example script.
* Also fixed a typo in the LGPL boiler plate text included in all the
  other example scripts for the HOWTO.
https://invent.kde.org/neon/forks/gpgme/-/commit/ced4bdbbb239c1fe209665b4f5a7aeb9651889ed

Git commit b12b2cc99621fe32a2d698ce7f091f3225f35bd0 by Ben McGinnes on 23/09/2018 at 09:36..
docs and examples: python bindings howto

* Added more comprehensive examples using hkp4py and added a couple
  more example scripts for protonmail.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b12b2cc99621fe32a2d698ce7f091f3225f35bd0

Git commit e9da4d97107b40a48583775df34783f07be5dfdb by Ben McGinnes on 24/09/2018 at 18:32..
docs: python bindings howto

* Added a What's New section to summarise changes since the last
  release.  There have been quite a few and some attention does need
  to be drawn to some of them.
* Confirming certain issues with some platform builds, especially
  BSD/OSX vs. Linux issues which will need to update the installation
  troubleshooting guides.
https://invent.kde.org/neon/forks/gpgme/-/commit/e9da4d97107b40a48583775df34783f07be5dfdb

Git commit 62e4e2cb5edb09183b9f9d448f992fe65cb6db85 by Ben McGinnes on 24/09/2018 at 23:59..
docs and examples: python bindings

* Woumd up the "what's new" section.
* Added an example for sending a key to the keyservers via hkp4py.
* Updated the export key code to use a more complete check for the
  $GNUPGHOME location.
* Expanded on the installation and reinstallation troubleshooting
  section.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/62e4e2cb5edb09183b9f9d448f992fe65cb6db85

Git commit b625258d54782040195cc5ad3b255685af6f6c4e by Ben McGinnes on 25/09/2018 at 00:17..
docs: a typographical two-step

* Sometimes you really do need or want punctuation in a heading, but
  ideally without something else generating whitespace and other
  annoyances to go with it.
* Trying a real decimal point instead.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b625258d54782040195cc5ad3b255685af6f6c4e

Git commit 7c9f49a4991c1ccd0cb582875207b373d4fccf50 by Ben McGinnes on 26/09/2018 at 23:57..
examples: python bindings

* Fixed homedir specifying logic in several cases.
https://invent.kde.org/neon/forks/gpgme/-/commit/7c9f49a4991c1ccd0cb582875207b373d4fccf50

Git commit b9aea3b9c2c2762a9ae8d677196f82acc6a1c028 by Ben McGinnes on 27/09/2018 at 00:07..
tests: python bindings

* Fixed the final assertion to look for what will actually be reported
  in that case instead of something else (i.e. it looks for an
  IMPORT_ERROR status code).
https://invent.kde.org/neon/forks/gpgme/-/commit/b9aea3b9c2c2762a9ae8d677196f82acc6a1c028

Git commit 1d40d360bccb05b4c66313a60a902d04a0d3c9ff by Ben McGinnes on 27/09/2018 at 04:06..
docs: python bindings installation

* lang/python/docs/gpgme-python-howto.org: added a section on
  installing the bindings to a python virtualenv.
https://invent.kde.org/neon/forks/gpgme/-/commit/1d40d360bccb05b4c66313a60a902d04a0d3c9ff

Git commit a047e0f68ef471097e514665249063f267257b19 by Ben McGinnes on 27/09/2018 at 12:45..
example: python bindings

* lang/python/examples/howto/local-sign-group.py: locally sign every
  key in a group line except one's own keys.  Intended to address the
  sort of thing one might see on lists like PGPNET or other closed
  groups amongst activists, journalists, etc. where everyone encrypts
  to all recipients, but may not sign everyone's keys publicly..

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a047e0f68ef471097e514665249063f267257b19

Git commit ce045a1ef9c63042fcffb5487b19646d67addba0 by Ben McGinnes on 27/09/2018 at 13:23..
example: local signatures

* lang/python/examples/howto/local-sign-group.py: added the bit where
  specifying the signing key is actually used for signing rather than
  just pruning the list of keys to certify.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ce045a1ef9c63042fcffb5487b19646d67addba0

Git commit 11403a46358f9b6e98776974f3c70f211d9adf85 by Ben McGinnes on 30/09/2018 at 06:28..
python bindings: ctx.decrypt

* lang/python/src/core.py: Fixed methods of detecting whether verify
  is a boolean variable or a list.
* Added methods of catching the missing keys exceptions.
* Still retained PEP8 compliance (which might have been where one or
  two problems crept in).
* Though this is essentially the correct behaviour, it still does not
  quite fit the otiginal test; so that will also require some adjustment.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/11403a46358f9b6e98776974f3c70f211d9adf85

Git commit 837a4760533e80f075cd727f18354904b8a54132 by Ben McGinnes on 30/09/2018 at 09:32..
python bindings: fixing decrypt-verify

* lang/python/src/core.py: First restoring the exception to the being
  just that.
* The means to manipulate the error output is temporarily in commented
  out code, but ought to be added to a proper test later.
* In the mean time the original test, with a very slight change, works
  again.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/837a4760533e80f075cd727f18354904b8a54132

Git commit 76bdfabb057f4ffc56beee15b48d8fa836ba7cce by Ben McGinnes on 30/09/2018 at 16:10..
docs: python bindings

* Tightened up the docs a little bit, updated the "what's new"
  section, dropped the "-draft" version in preparation for GPGME
  1.12.0's release.
* Exported another .texi version (and updated the draft copies to this
  commit (which ought to be 1.11.1-beta313).

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/76bdfabb057f4ffc56beee15b48d8fa836ba7cce

Git commit 7b861945fdc71fd3c82c91f824172dadd2220fa0 by Werner Koch on 02/10/2018 at 09:18..
core: add experimental GPGME_EXPORT_MODE_NOUID.

* src/gpgme.h.in (GPGME_EXPORT_MODE_NOUID): New.
* src/export.c (export_start): Adjust option check.
* src/engine-gpg.c (export_common): Implement option.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7b861945fdc71fd3c82c91f824172dadd2220fa0

Git commit 23894ac9a96081428a590791010ca8beebaf6f9f by Ben McGinnes on 02/10/2018 at 20:58..
python bindings: CPython order

* Changed the order of python versions the configure/make process
  checks for, placing Python 3.7 ahead of 3.6.
* Updated the HOWTO documentation to reflect this change.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/23894ac9a96081428a590791010ca8beebaf6f9f

Git commit b2802053192ba0000866b145b715a557d34ed0eb by Ben McGinnes on 03/10/2018 at 15:42..
docs: pre-python preparation

* doc/Makefile.am: removed the python howto from this file, restoring
  it to just the main project and the newer .js files.
* deleted: doc/gpgme-python-howto.texi
* renamed the Short_History.org file to short-history.org to keep the
  naming conventions similar.
* All the Python files can (and should) live together.
https://invent.kde.org/neon/forks/gpgme/-/commit/b2802053192ba0000866b145b715a557d34ed0eb

Git commit a982f9131520bce0b25f84cba19040bbe5f275bb by Ben McGinnes on 03/10/2018 at 20:57..
docs: python bindings

* Restructured the docs directory to account for the GNU preferred
  source doc format (.texi) and the Python preferred source doc
  format (.rst) and the real source doc format (.org).
* Both the perceived source formats will need to be generated from the
  .org files and included at this stage.  Unfortunately there is not
  yet a native org-to-rst transformation method in the org-mode
  software in Emacs nor is there a a direct means of going from reST
  to Org-mode from Docutils.  There's only third party packages like
  Pandoc and, while very good, there is no guarantee of consistency;
  so we can't entirely automate this bit (yet).
https://invent.kde.org/neon/forks/gpgme/-/commit/a982f9131520bce0b25f84cba19040bbe5f275bb

Git commit 2151b9828af3760867e856ab939b835a6e2f42e7 by Ben McGinnes on 03/10/2018 at 21:06..
docs: python

* More restructuring.  Also the painstaking task of deciphering some
  of the more eclectic aspects of Texinfo and make.
https://invent.kde.org/neon/forks/gpgme/-/commit/2151b9828af3760867e856ab939b835a6e2f42e7

Git commit 962dfca9b86b53bb00f5b89e453b9eed95454934 by Ben McGinnes on 03/10/2018 at 21:09..
dpcs: python howto

* More updates to the docs themselves and the versions to be available
  with the next release.
* .texi and .rst copies of the HOWTO and the short history of (this
  part) of the project.
https://invent.kde.org/neon/forks/gpgme/-/commit/962dfca9b86b53bb00f5b89e453b9eed95454934

Git commit a174b269432fd37e8546c43e0127580e826432da by Ben McGinnes on 03/10/2018 at 21:20..
docs: more whitespace checks

* lang/python/docs/texinfo/short-history.texi:
https://invent.kde.org/neon/forks/gpgme/-/commit/a174b269432fd37e8546c43e0127580e826432da

Git commit 582f14d97a900106dce0c8d8666a443c6ec25050 by Ben McGinnes on 04/10/2018 at 08:11..
python: make file

* lang/python/Makefile.am: Now that gpg2 has been renamed back to gpg
  and gpg1 is semi-deprecated, we should check what the actual gpg
  binary is with gpgconf and use that rather than make assumptions per
  system.
* Also, it means less worry if gpg3 is ever a thing.  (Trust me, I
  remember the Python 1 to 2 transition as well as the current 2 to 3
  transition).  ;)

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/582f14d97a900106dce0c8d8666a443c6ec25050

Git commit 2cca422ca4b2df831a824393077d0b52d79532aa by Ben McGinnes on 04/10/2018 at 08:28..
python: make file

* lang/python/Makefile.am: Attempting to remove the docs/meta
  directory did a lot worse than I thought it was doing, so better to
  just be sure the documentation is available than destroy the entire
  bindings directory.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2cca422ca4b2df831a824393077d0b52d79532aa

Git commit f3fc73738264d21baf0e9b49fdd5cb67faa11d31 by Ben McGinnes on 04/10/2018 at 11:10..
python: makefiles

* doc/Makefile.am: Removed a bit I forgot about.
* Renamed lang/python/docs to lang/python/doc bvecause apparently
  automake cares about that too.
* Decided to be extra explicit in the manifest because if I don't then
  all sorts of things get deleted ... like lang/python
* Tested on an external linux system just in case my osx workstation
  introduces too much weirdness.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f3fc73738264d21baf0e9b49fdd5cb67faa11d31

Git commit 48258879720a4f423d0efa955da942d69f3c49d4 by Ben McGinnes on 04/10/2018 at 15:47..
docs: python

* lang/python/doc/meta/TODO.org: Added the two major documentation
  build system tasks to the TODO list.
* Added an index page in preparation for sorting out the second of
  those TODO lists (Docutils is a lot easier to handle than Texinfo).
* Meanwhile, have confirmed that it all builds just fine under
  GNU/Linux, OS X and FreeBSD while retaining the documentation, so
  that's a nice improvement from 1.11.1.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/48258879720a4f423d0efa955da942d69f3c49d4

Git commit 0b5930b276186afd1ca1dd91d82db7e60dd20606 by Ben McGinnes on 04/10/2018 at 16:30..
docs: python

* Fixed an error in the new index page and then exported to the other
  two "source" formats.
https://invent.kde.org/neon/forks/gpgme/-/commit/0b5930b276186afd1ca1dd91d82db7e60dd20606

Git commit a8d4aa6f763599bbd8ea36ef98b7b4931bf326dc by Ben McGinnes on 04/10/2018 at 16:38..
docs: org to texinfo whitspace bug

* replaced "." in headings with "·" to prevent whitspace being
  appended by texinfo and breaking git.
https://invent.kde.org/neon/forks/gpgme/-/commit/a8d4aa6f763599bbd8ea36ef98b7b4931bf326dc

Git commit 033da18b88af69b7846de62af4aeea359d27ec20 by Ben McGinnes on 04/10/2018 at 16:41..
docs: whitespace bug

* Same as before, but exported.
https://invent.kde.org/neon/forks/gpgme/-/commit/033da18b88af69b7846de62af4aeea359d27ec20

Git commit ecfa48fffa93f3d1b66354d2d46872ff614c4a68 by Werner Koch on 05/10/2018 at 13:14..
build: Move config.h to conf/config.h

* conf/: New dir.
* configure.ac (AC_CONFIG_HEADER): Move header to conf dir.
* doc/Makefile.am (mkdefsinc): Adjust rule.
* lang/python/Makefile.am (copystamp): Ditto.
--

C++ uses those stupid files without a suffix and thus the new standard
header <version> as included by newer other libc++ versions may
conflict with the VERSION file in out top directory.   This change
should solve the problem.

GnuPG-bug-id: 4168
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ecfa48fffa93f3d1b66354d2d46872ff614c4a68

Git commit 913601f4879f011878b53b885f35524df98b5570 by Werner Koch on 05/10/2018 at 13:16..
core: Apply GPGME_EXPORT_MODE_NOUID also to keyserver exports.

* src/engine-gpg.c (export_common): Add keyserver-options to the
send-keys commands.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/913601f4879f011878b53b885f35524df98b5570

Git commit b4559d30871a6c7b9c92ede17a20b47619258e29 by Werner Koch on 05/10/2018 at 13:46..
build: Update .gitignore

--
https://invent.kde.org/neon/forks/gpgme/-/commit/b4559d30871a6c7b9c92ede17a20b47619258e29

Git commit 1aff2512d846ea640d400caa31c20c40230b3b04 by Werner Koch on 08/10/2018 at 09:17..
Release 1.12.0

* configure.ac: Bump core LT version to C32/A21/R0.  Bump C++ LT
version to C14/A8/R0.

* lang/qt/tests/Makefile.am (CLEANFILES): Add reader status files.
* Makefile.am (EXTRA_DIST): Add conf/whatisthis.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1aff2512d846ea640d400caa31c20c40230b3b04

Git commit 1c7f93fbc8d337f6c7e4ce7b30bf0a452ce5a931 by Werner Koch on 08/10/2018 at 09:36..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/1c7f93fbc8d337f6c7e4ce7b30bf0a452ce5a931

Git commit 822e09d85680010fc8be3832d4067d7e40a8ea05 by Daniel Kahn Gillmor (on behalf of Adrian Bunk) on 09/10/2018 at 05:00..
import debian packaging for 1.11.1-1.1
https://invent.kde.org/neon/forks/gpgme/-/commit/822e09d85680010fc8be3832d4067d7e40a8ea05

Git commit 50be1cb09bcee9237d6f777bc4d604c6622bc89c by Daniel Kahn Gillmor on 09/10/2018 at 05:42..
allow rebuild with older versions of libgpg-error
https://invent.kde.org/neon/forks/gpgme/-/commit/50be1cb09bcee9237d6f777bc4d604c6622bc89c

Git commit aa814c6c1721d630ec67379d58bd0ed8dee9e330 by Daniel Kahn Gillmor on 09/10/2018 at 05:42..
drop python3.5, try to add 3.7
https://invent.kde.org/neon/forks/gpgme/-/commit/aa814c6c1721d630ec67379d58bd0ed8dee9e330

Git commit 94c63d8cd598fe5f30b1f6adaea5d81b563a3e53 by Daniel Kahn Gillmor on 09/10/2018 at 05:42..
d/changelog: strip trailing whitespace
https://invent.kde.org/neon/forks/gpgme/-/commit/94c63d8cd598fe5f30b1f6adaea5d81b563a3e53

Git commit 9c7ed35aca713367462e347bdc67679b36acca68 by Daniel Kahn Gillmor on 09/10/2018 at 05:42..
Standards-Version: bump to 4.2.1 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/9c7ed35aca713367462e347bdc67679b36acca68

Git commit 07812455e44c7637611efd36b4302bb6bbc4fb38 by Daniel Kahn Gillmor on 09/10/2018 at 05:53..
use dh_missing explicitly
https://invent.kde.org/neon/forks/gpgme/-/commit/07812455e44c7637611efd36b4302bb6bbc4fb38

Git commit 01e916591f7f3813729c697b0181ad1aeb2c80d9 by Daniel Kahn Gillmor on 09/10/2018 at 06:53..
avoid shipping gpgme-json yet (we will ship it next release)
https://invent.kde.org/neon/forks/gpgme/-/commit/01e916591f7f3813729c697b0181ad1aeb2c80d9

Git commit a88e7b25720a51ed0b43100e4a4695b5073136ef by Daniel Kahn Gillmor on 09/10/2018 at 06:53..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/a88e7b25720a51ed0b43100e4a4695b5073136ef

Git commit bf4aae45129c1093ee7712bdbcdfe1c8f2ca7c0f by Andre Heinecke on 09/10/2018 at 07:37..
qt, tests: Add test for single get key

* lang/qt/tests/t-keylist.cpp (testGetKey): New.

--
Added this to check if there was a memleak in that function.
https://invent.kde.org/neon/forks/gpgme/-/commit/bf4aae45129c1093ee7712bdbcdfe1c8f2ca7c0f

Git commit ecfa88e65fda9c9766ad526d57e2fc8b2884f634 by Andre Heinecke on 09/10/2018 at 08:45..
core: Ensure r_key init in gpgme_get_key

* src/keylist.c (gpgme_get_key): Move r_key init above
the first invalid value check.

--
This fixes the case where someone passes an unitialized
r_key and no fingerprint.
https://invent.kde.org/neon/forks/gpgme/-/commit/ecfa88e65fda9c9766ad526d57e2fc8b2884f634

Git commit 7a1e6dbfb16f71f692a53f7e0955bde86dbb7fee by Andre Heinecke on 09/10/2018 at 08:47..
cpp: Initialize all gpgme_key_t's in context

* lang/cpp/src/context.cpp (Context::startKeyListing),
(Context::keyListResult, Context::signingKeys): Initialize key.

--
"Should" not be neccessary but it's cleaner and would have
covered the case of the previous commit.
https://invent.kde.org/neon/forks/gpgme/-/commit/7a1e6dbfb16f71f692a53f7e0955bde86dbb7fee

Git commit 85627e58184529e982369cfc00ed7865244c13d6 by Andre Heinecke on 09/10/2018 at 08:48..
core: Add trust-model flag

* src/context.h (gpgme_context): Extend with trust_model.
* src/engine-gpg.c (engine_gpg): Extend with trust_model.
(gpg_set_engine_flags): Take trust_model from context.
(build_argv): Handle trust_model.
(gpg_release): Free trust_model.
* src/gpgme.c (gpgme_set_ctx_flag): Handle trust-model flag.
(gpgme_release): Release trust-model.
* doc/gpgme.texi: Document new flag for gpgme_set_ctx_flag.
(Context Flags): New subsection for the context flags.
* tests/run-keylist.c (show_usage, main): Add new --trust-model
parameter.

--
This gives a GPGME user fine grained control over the
trust-model.

Changing the trust model for only a single application depends
on:
GnuPG-Bug-Id: T4134
Maniphest Tasks: T4134
Differential Revision: https://dev.gnupg.org/D466
https://invent.kde.org/neon/forks/gpgme/-/commit/85627e58184529e982369cfc00ed7865244c13d6

Git commit 9f85f4967e617e9f97529b89f530c1bc36b52a5c by Andre Heinecke on 09/10/2018 at 09:24..
cpp: Add first manual tests

* lang/cpp/Makefile.am: Add tests subdir.
* lang/cpp/tests/Makefile.am: New.
* lang/cpp/tests/README,
lang/cpp/tests/run-getkey.cpp,
lang/cpp/tests/run-keylist.cpp: New.
* configure.ac: Configure tests makefile.

--
The autotests for c++ live in lang/qt/tests these
tests are more for manual experiments to validate some
functionality.
https://invent.kde.org/neon/forks/gpgme/-/commit/9f85f4967e617e9f97529b89f530c1bc36b52a5c

Git commit c565cf42a38a8bda936df8c52936589cc8a06ca3 by Andre Heinecke on 09/10/2018 at 09:26..
cpp: Add KeyListMode::Locate

* cpp/src/global.h (KeyListMode): Add Locate.

--
Similar to locate in core.
https://invent.kde.org/neon/forks/gpgme/-/commit/c565cf42a38a8bda936df8c52936589cc8a06ca3

Git commit 85dd0fa4b5f026a13da842bf64ab8a37a68918d4 by NIIBE Yutaka on 10/10/2018 at 04:39..
build: Let configure create the VERSION file.

* autogen.sh: Update from libgpg-error.
* configure.ac: Use mym4_version to create VERSION file.
* Makefile.am (dist-hook): Do not create VERSION.
(EXTRA_DIST): Add VERSION.

--

GnuPG-bug-id: 3283
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/85dd0fa4b5f026a13da842bf64ab8a37a68918d4

Git commit aafadb859497aa8785b7e19f267f1bfd8acfc062 by Werner Koch on 12/10/2018 at 07:02..
Register DCO for Guillaume LE VAILLANT

--
https://invent.kde.org/neon/forks/gpgme/-/commit/aafadb859497aa8785b7e19f267f1bfd8acfc062

Git commit 85d7af8ff2f6afd63701079e23f31be08d58a15d by Werner Koch (on behalf of Guillaume LE VAILLANT) on 12/10/2018 at 07:02..
cl: Several fixes

--

* Use wrapper types calling translation functions instead of
  TRANSLATE-{FROM,TO}-FOREIGN methods as they seem not to be
  called in some cases.
* Use the (:STRUCT SOME-C-STRUCT) notation instead of the
  deprecated direct reference to SOME-C-STRUCT.
* Add missing values in enums and bit fields.
* Use cffi-grovel to define system types (SIZE-T, OFF-T, etc).
* Wrap GPGME-DATA-T in a class (like contexts).
* Use the FINALIZE function from trivial-garbage to free the
  C objects for contexts, keys and data automatically.
* Make DATA-READ-CB and DATA-WRITE-CB run faster.
* Update the README file.

Signed-off-by: Guillaume LE VAILLANT <glv at posteo.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/85d7af8ff2f6afd63701079e23f31be08d58a15d

Git commit 233d2f3d351c5d3109740e79762ebd723b0d82fa by Werner Koch on 12/10/2018 at 07:05..
cl: Add missing file

--
Fixes-commit: 85d7af8ff2f6afd63701079e23f31be08d58a15d
My fault, sorry.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/233d2f3d351c5d3109740e79762ebd723b0d82fa

Git commit d63d6d8b8030ec1dc19f9f66c8af3b2f3288d309 by Werner Koch on 16/10/2018 at 15:05..
core: Really remove CR from version output.

* src/version.c (_gpgme_get_program_version): Fix test.
--

Fixes-commit: 6bde056355796f15b6e6954372e87f349847515b
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d63d6d8b8030ec1dc19f9f66c8af3b2f3288d309

Git commit f72433b53de9b57f770c3cb9dfa2493a26098336 by Daniel Kahn Gillmor on 16/10/2018 at 22:17..
New upstream version 1.12.0
https://invent.kde.org/neon/forks/gpgme/-/commit/f72433b53de9b57f770c3cb9dfa2493a26098336

Git commit c5ccb375d858b003f89270ef2f6c7503f287d0f1 by Daniel Kahn Gillmor on 16/10/2018 at 22:17..
Update upstream source from tag 'upstream/1.12.0'

Update to upstream version '1.12.0'
with Debian dir d9fd660cfd11c1569b08c75b2b26e0bf5cc0f0c1
https://invent.kde.org/neon/forks/gpgme/-/commit/c5ccb375d858b003f89270ef2f6c7503f287d0f1

Git commit a1d863c78e1e7a1d120a446a391cbc9ad0cd1f06 by Daniel Kahn Gillmor on 16/10/2018 at 22:28..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/a1d863c78e1e7a1d120a446a391cbc9ad0cd1f06

Git commit e14c09ba91578428cb82d738cd155b1062444d48 by Daniel Kahn Gillmor on 16/10/2018 at 22:28..
update .symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/e14c09ba91578428cb82d738cd155b1062444d48

Git commit 8e76b36ad99de25db6c13951e836eaaefa0f660b by Daniel Kahn Gillmor on 16/10/2018 at 22:28..
refresh gpgmepp6.lintian-overrides
https://invent.kde.org/neon/forks/gpgme/-/commit/8e76b36ad99de25db6c13951e836eaaefa0f660b

Git commit 0672052b2b675f5ce88a3e8ea50711c4aa4f7331 by Daniel Kahn Gillmor on 16/10/2018 at 22:29..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/0672052b2b675f5ce88a3e8ea50711c4aa4f7331

Git commit ff6ff616aea6f59b7f2ce1176492850ecdf3851e by Werner Koch on 17/10/2018 at 08:05..
python: Auto-check for all installed python versions.

* m4/python.m4 (AM_PATH_PYTHON): Add a 4th arg.
* configure.ac (available_languages): Remove separate python2 and
python3 and keep just python.  Simplify test for pythons.  Use an
explicit list of python versions to test.
--

This seems to be a starightforward chnage to support more than two
python versions.  I am not sure why we had that complicated thing
before.  On my box I get builds and run tests for 2.7, 3.4 and 3.5.
If 3.6, 3.7 or 3.8 are installed they should also work.

GnuPG-bug-id: 3354
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ff6ff616aea6f59b7f2ce1176492850ecdf3851e

Git commit 9b6ed6a80fc78927de32430706c5b25c1bf07178 by Maximilian Krambach on 17/10/2018 at 11:13..
js: increase default startup timeout

--

* src/index.js: change the init default if none is given, so that all
  initialization defaults line up to 1000 miliseconds
https://invent.kde.org/neon/forks/gpgme/-/commit/9b6ed6a80fc78927de32430706c5b25c1bf07178

Git commit c38efc2f2b6191479ae8c451baaf411a3a20fe47 by Daniel Kahn Gillmor on 17/10/2018 at 12:54..
clean up residue of older build reorganization
https://invent.kde.org/neon/forks/gpgme/-/commit/c38efc2f2b6191479ae8c451baaf411a3a20fe47

Git commit fb45fc480170499dccf29003916dcc88f376637f by Daniel Kahn Gillmor on 18/10/2018 at 02:54..
do out-of-tree builds
https://invent.kde.org/neon/forks/gpgme/-/commit/fb45fc480170499dccf29003916dcc88f376637f

Git commit cdb8f314425e15b1e91e9fd93992d7fd1debcc4b by Daniel Kahn Gillmor on 18/10/2018 at 02:57..
hide HAVE_CXX11 from python bindings
https://invent.kde.org/neon/forks/gpgme/-/commit/cdb8f314425e15b1e91e9fd93992d7fd1debcc4b

Git commit b65b2d2c70691c1519739d93c0c909fe1d1640a2 by Daniel Kahn Gillmor on 18/10/2018 at 02:57..
perform an extra configuration and build to get python 3.7 working
https://invent.kde.org/neon/forks/gpgme/-/commit/b65b2d2c70691c1519739d93c0c909fe1d1640a2

Git commit c7bccdb42e6fdba634f2932a108f1fd09ae2a009 by Daniel Kahn Gillmor on 18/10/2018 at 03:19..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/c7bccdb42e6fdba634f2932a108f1fd09ae2a009

Git commit 2f12427e416a0a40bf680a421f9ed20340d5bb96 by Daniel Kahn Gillmor on 18/10/2018 at 04:28..
doc: use https:// for www.gnu.org

--

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/2f12427e416a0a40bf680a421f9ed20340d5bb96

Git commit a81534fed8ff34b67a2726d333d9725454663c82 by Daniel Kahn Gillmor on 18/10/2018 at 04:28..
doc: convert more http:// links to https://

--

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/a81534fed8ff34b67a2726d333d9725454663c82

Git commit 12b0b5c8941b4ef9ec06002c868ba2bc09216674 by Daniel Kahn Gillmor on 18/10/2018 at 04:28..
doc: convert more links to equivalent https:// URLs

--

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/12b0b5c8941b4ef9ec06002c868ba2bc09216674

Git commit 9de1c96ac3cf6fa126325002b61a1b606037ca88 by Daniel Kahn Gillmor on 18/10/2018 at 04:30..
python: do not export HAVE_CXX11 definition

* lang/python/gpgme.i: ignore HAVE_CXX11 in SWIG interface

--

If there are two distinct builds (a) and (b) of gpgme which both build
python bindings, and build (a) also happens to build the C++ bindings,
then the generated gpg/gpgme.py file from build (a) will not be usable
with the .so generated in build (b), despite them being exactly the
same, and having nothing to do with C++.

In particular, it will fail with:

-----------
  File "…/gpg/__init__.py", line 99, in <module>
    from . import core
  File "…/gpg/core.py", line 10, in <module>
    from . import gpgme
  File "…/gpg/gpgme.py", line 152, in <module>
    HAVE_CXX11 = _gpgme.HAVE_CXX11
AttributeError: module 'gpg._gpgme' has no attribute 'HAVE_CXX11'
-----------

By asking SWIG to ignore this definition, we stabilize the generated
.py and the .so, ensuring that they are more cleanly interoperable.
https://invent.kde.org/neon/forks/gpgme/-/commit/9de1c96ac3cf6fa126325002b61a1b606037ca88

Git commit 7b4314faf9d057e3919f400024a40982e34ecaf5 by Daniel Kahn Gillmor on 18/10/2018 at 04:54..
use upstream patches to build all versions of python
https://invent.kde.org/neon/forks/gpgme/-/commit/7b4314faf9d057e3919f400024a40982e34ecaf5

Git commit ee38b875c18561cefa4b7a2d6dbf3a86122bb94b by Daniel Kahn Gillmor on 18/10/2018 at 04:55..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/ee38b875c18561cefa4b7a2d6dbf3a86122bb94b

Git commit 7789c09f9515d5e4e227639945b98756c5a9cd82 by Daniel Kahn Gillmor on 18/10/2018 at 05:54..
no need to clean up build-py3.7 any longer
https://invent.kde.org/neon/forks/gpgme/-/commit/7789c09f9515d5e4e227639945b98756c5a9cd82

Git commit 174af15725d4989a840ff3098996cc8a0568f724 by Werner Koch on 18/10/2018 at 14:54..
core: Return an error if NULL is provided for genkey's parms.

* src/debug.c (_gpgme_debug_buffer): Bail out of BUF is NULL.
* src/genkey.c (gpgme_op_genkey): Do no deref a NULL in
TRACE_LOGBUF.
(gpgme_op_genkey_start): Ditto. Return an error if PARMS is NULL.
--

This robustness patch should solve one part of
GnuPG-bug-id: 4192
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/174af15725d4989a840ff3098996cc8a0568f724

Git commit fbac11b19d97730494dc9dad3b7f71453ef15581 by Werner Koch on 18/10/2018 at 15:37..
core: Fix segv in genkey when no endtag is provided.

* src/genkey.c (get_key_parameter): Provide a fallback ENDTAG.
--

It would actually be more correct to return an error in this case but
it is possible tha there are users who did not provide an endtag and
out of luck they also didn't trigger a segv.

GnuPG-bug-id: 4192
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fbac11b19d97730494dc9dad3b7f71453ef15581

Git commit 64914a50e82730bbefe7815d2d4ad66cf806cb77 by Daniel Kahn Gillmor on 18/10/2018 at 15:54..
Fix test suite on arches with 32-bit time_t
https://invent.kde.org/neon/forks/gpgme/-/commit/64914a50e82730bbefe7815d2d4ad66cf806cb77

Git commit 7dd183153a693d9e835d7df36eadc022db29da23 by Daniel Kahn Gillmor on 18/10/2018 at 15:54..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/7dd183153a693d9e835d7df36eadc022db29da23

Git commit 651a1afe80bcc421da26f38015e8a322e140f130 by Ben McGinnes on 20/10/2018 at 00:07..
python bindings: callback test

* lang/python/tests/t-callbacks.py: Updated test logic to try
  generating a key which expires in 2099 and if that fails then
  fallback to an expiration in 2037 in an attempt to catch the 32-bit
  systems.
https://invent.kde.org/neon/forks/gpgme/-/commit/651a1afe80bcc421da26f38015e8a322e140f130

Git commit 59e38e3d2c14b40045e15c45b6c2f300e8f097dc by Ben McGinnes on 21/10/2018 at 18:43..
Python: docs tweaks

* Fixed a minor error in how the reST version of the HOWTO is
  generated.
* Updated the help() in __init__.py with a little more detail as to
  why not to use the lower level functions.
https://invent.kde.org/neon/forks/gpgme/-/commit/59e38e3d2c14b40045e15c45b6c2f300e8f097dc

Git commit 04791c896712857feaf9a472a48d7a4c4f287775 by Ben McGinnes on 23/10/2018 at 12:38..
docs: python howto

* Fixed a few spelling and grammatical errors.
https://invent.kde.org/neon/forks/gpgme/-/commit/04791c896712857feaf9a472a48d7a4c4f287775

Git commit 05a0e97f5c12c06082fbeab0fba6f86ddbfbe6b2 by Andre Heinecke on 25/10/2018 at 12:13..
cpp: Add some convenience functions

* lang/cpp/src/context.cpp (Context::create): New.
* lang/cpp/src/context.h: Update accordingly.
* lang/cpp/src/key.cpp, lang/cpp/src/key.h:
(Key::isBad, Subkey::isBad, UserID::isBad)
(UserID::Signature::isBad): Add shorthand for the isX checks.
* NEWS: Mention it.

--
I don't know how often I wrote:
if (key.isNull() || key.isExpired() || key.isRevoked() ...

And for the context it is good practice to use a unique ptr
so the API should make it easy.
https://invent.kde.org/neon/forks/gpgme/-/commit/05a0e97f5c12c06082fbeab0fba6f86ddbfbe6b2

Git commit 62c736ba76a19d3b41af69e1f340a53b80f13fe0 by Andre Heinecke on 29/10/2018 at 14:36..
cpp,tests: Add another test runner

* lang/cpp/tests/run-verify.cpp: New.
* lang/cpp/tests/Makefile.am: Update accordingly.

--
Add another test runner which helps to find problems on windows.
https://invent.kde.org/neon/forks/gpgme/-/commit/62c736ba76a19d3b41af69e1f340a53b80f13fe0

Git commit 8f27511862cabac8fa1dd8f883cb78faebc05ef6 by Andre Heinecke on 29/10/2018 at 15:11..
core: Do not crash if CMS plaintext is ignored

* src/engine-gpgsm.c (gpgsm_verify): Fix handling both
plaintext and signed_text as NULL.

--
Previously if plaintext was NULL and signed_text was NULL
it would set MESSAGE_FD to NULL which resulted in a
crash.

Ignoring the plaintext of an opaque signature might
make sense in some cases and engine-gpg handles it.
https://invent.kde.org/neon/forks/gpgme/-/commit/8f27511862cabac8fa1dd8f883cb78faebc05ef6

Git commit 681525be003433728d127303d40712803b70cb9c by Andre Heinecke on 29/10/2018 at 15:33..
tests: Add repeat argument to run-verify

* tests/run-verify.c (main): Add repeat argument.

--
This helps reproducing rare / random crashes.
https://invent.kde.org/neon/forks/gpgme/-/commit/681525be003433728d127303d40712803b70cb9c

Git commit 7a1b58045f980c4df76daf225a2a1b604e8604d2 by Andre Heinecke on 29/10/2018 at 18:44..
core,w32: Fix memleak of tmp_name in w32-io

* src/w32-io.c (_gpgme_io_spawn): Free tmp_name.

--
GnuPG-Bug-Id: T4238
https://invent.kde.org/neon/forks/gpgme/-/commit/7a1b58045f980c4df76daf225a2a1b604e8604d2

Git commit 9eef23fcf39f2b2eb2645afd31a79ba1286d9885 by Werner Koch on 30/10/2018 at 10:19..
w32: Fix previous commit.

* src/w32-io.c (_gpgme_io_spawn): Move freeing of TMP_NAME behind its
use in an error handling.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/9eef23fcf39f2b2eb2645afd31a79ba1286d9885

Git commit d5c22966d5bf397cccfa171095885cd207ef6ae3 by Ben McGinnes on 30/10/2018 at 16:06..
docs: python

* dropped the ".org" extension and added a mode line for each file as
  this will make scripting format conversions a lot easier.
https://invent.kde.org/neon/forks/gpgme/-/commit/d5c22966d5bf397cccfa171095885cd207ef6ae3

Git commit 78be1e2f543667576a49286476e7d66a707dd17e by Ben McGinnes on 30/10/2018 at 16:41..
docs: python docs restructure

* Moved the what's new section out of the HOWTO (mostly), in
  anticipation of expanding the docs to be more than merely a HOWTO.
https://invent.kde.org/neon/forks/gpgme/-/commit/78be1e2f543667576a49286476e7d66a707dd17e

Git commit 2e07d4f89a26bb56a55b2743d39fb37532028ffd by Werner Koch on 31/10/2018 at 11:00..
w32: Remove cruft in w32-io from WindowsME times.

* src/w32-io.c (set_synchronize): Remove.
(create_reader, create_writer): No need for set_synchronize.
--

The set_synchronize dates back to 2001 at a time when I wrote the
Windows support on WindowsME and Windows2000.  Maybe this was required
then due to bugs in that old NT or partly NT based Windows versions.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2e07d4f89a26bb56a55b2743d39fb37532028ffd

Git commit 3c04dea3ecebed35208f6b631b2e8b04222ea432 by Werner Koch on 31/10/2018 at 11:35..
w32: Remove all support for WindowsCE

* configure.ac: Remove WindwosCE support.
* contrib/: Remove all; it was only used for WindowsCE.
* src/w32-ce.c, src/w32-ce.h: Remove files.
* src/Makefile.am (system_components): Remove these files.
* src/ath.c, src/ath.h: Remove W32CE support.
* src/data-compat.c (gpgme_data_new_from_filepart): Ditto.
(gpgme_data_new_from_file): Ditto.
* src/debug.c (debug_init, _gpgme_debug): Ditto.
* src/gpgme-tool.c (gpgme_server): Ditto.
(main): Ditto.
* src/priv-io.h: Do not include w32-ce.h.
* src/util.h: Remove WindowsCE support.
* src/w32-io.c: Ditto.
* src/w32-util.c: Ditto.
* src/debug.h (TRACE_SUC4): New.
--

There is no more hardware to test our code, the support for Windows CE
terminated along time ago.  Note that our code worked only with the
old WindowsCE with that overall system limit of 31 processes.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3c04dea3ecebed35208f6b631b2e8b04222ea432

Git commit 79fc7c0fe825014e75bb825c4966a04a22e78254 by Werner Koch on 31/10/2018 at 13:58..
w32: Remove unused arg from two functions.

* src/w32-io.c (find_reader, find_writer): Remove unused start_it
arg.  It is always passed as true.  Change callers.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/79fc7c0fe825014e75bb825c4966a04a22e78254

Git commit 338e9edfdb9239f1c9d4409f6d08d79a9d6f285b by Werner Koch on 01/11/2018 at 08:53..
w32: Merge all the object tables of w32-io into one.

* src/w32-io.c (fd_table_size): New.  Used in most places instead of
the MAX_SLAFD constant.
(reader_table, writer_table, notify_table): Merge them into ...
(fd_table): this table.  Chnage all affected code to take just one
lock.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/338e9edfdb9239f1c9d4409f6d08d79a9d6f285b

Git commit 63ba09b541dabbe838253926896e721cb9be564a by Werner Koch on 01/11/2018 at 08:55..
w32: Use CancelSynchronousIo in destroy_reader.

* src/w32-util.c (_gpgme_w32_cancel_synchronous_io): New.
* src/w32-io.c (destroy_reader): Use it here.
--

This has not been tested but should on Vista and later help to fix a
possible hang.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/63ba09b541dabbe838253926896e721cb9be564a

Git commit acef4f775f273bbef63bc81afbad8feaabc7414e by Werner Koch on 02/11/2018 at 07:47..
w32: Fix and improve CancelSynchronousIo use.

* src/w32-util.c (_gpgme_w32_cancel_synchronous_io): Fix name of DLL
and print trace info only on error.
--

Fixes-commit: 63ba09b541dabbe838253926896e721cb9be564a
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/acef4f775f273bbef63bc81afbad8feaabc7414e

Git commit 337c10825525d4084f3f437fde5af3806707e6a4 by Werner Koch on 02/11/2018 at 08:03..
core: Print a dump of the I/O data only at level 8.

* src/debug.h (TRACE_SUC3): New.
(TRACE_LOGBUFX): New.
* src/posix-io.c: Use TRACE_LOGBUFX instead of TRACE_LOGBUF.
* src/w32-glib-io.c: Ditto.
--

This will also be changed for w32-io as part of another commit.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/337c10825525d4084f3f437fde5af3806707e6a4

Git commit da89528ac39b687bfbed2209ca2637e3bd8e0ac5 by Werner Koch on 02/11/2018 at 08:14..
w32: Revamp the closing of system objects.

* src/w32-io.c (hddesc_t): New.
(reader_context_s, writer_context_s): Replace file_sock and file_hd by
the hddesc_t hdd.
(fd_table): Ditto.  Add want_reader and want_writer.
(hddesc_lock): New lock variable.
(new_hddesc, ref_hddesc): New.
(release_hddesc): New.
(reader, writer): Call release_hddesc.
(create_reader, create_writer): Change for new hddesc scheme.
(destroy_reader, destroy_writer): Replace closing by a call to
release_hddesc.
(_gpgme_io_pipe): Change for new hddesc scheme.
(_gpgme_io_close): Ditto.
(_gpgme_io_dup): Ditto.  Use want_reader and want_writer.
(_gpgme_io_socket): Change for new hddesc scheme.
--

GnuPG-bug-id: 4237
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/da89528ac39b687bfbed2209ca2637e3bd8e0ac5

Git commit 4faa0ccf58c7a0f64f51dcbc8466add660080414 by Werner Koch on 02/11/2018 at 10:26..
w32: Don't use CloseHandle on an arbitrary integer.

* src/assuan-support.c (my_waitpid): Do not close the PID = it is not
a handle.
--

At some time in the distant past we might have used the process object
as pid which obviously required a close.  However this was changed and
so what we did here was to close an arbitrary handle (one which
matches the pid).

GnuPG-bug-id: 4237
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4faa0ccf58c7a0f64f51dcbc8466add660080414

Git commit ed3f5ad760a28566fa2571e0c7392467bfc3770d by Werner Koch on 02/11/2018 at 11:28..
w32: Log all errors from CloseHandle and WFSO in w32-io.

* src/w32-io.c (close_handle, _close_handle): New macro and function;
use in place of all CloseHandle calls.
(wait_for_single_object, _wait_for_single_object): Likewise.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ed3f5ad760a28566fa2571e0c7392467bfc3770d

Git commit 5262ce0c815193fc901b00a9b4132925ba672df7 by Werner Koch on 02/11/2018 at 11:54..
w32: Fix a few compiler warnings.

* src/debug.h (TRACE_SYSERR_NR): New.
* src/w32-io.c: Fix compiler warnings.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5262ce0c815193fc901b00a9b4132925ba672df7

Git commit 13e09bd21a531b448f2f34b1f075315502b76fb6 by Ben McGinnes on 03/11/2018 at 07:12..
docs: typo

* lang/python/doc/src/gpgme-python-howto: s/Revokinging/Revoking/g
https://invent.kde.org/neon/forks/gpgme/-/commit/13e09bd21a531b448f2f34b1f075315502b76fb6

Git commit cfd33b706eacec16da30ba94a8360dafadb46a94 by Daniel Kahn Gillmor (on behalf of Helmut Grohne) on 05/11/2018 at 04:57..
Fix FTCBFS (Closes: #912898)

Update Python Build-Depends for cross compilation.
Export Python's fancy cross compilation variables.
https://invent.kde.org/neon/forks/gpgme/-/commit/cfd33b706eacec16da30ba94a8360dafadb46a94

Git commit bded8ebc59c7fdad2617f4c9232a58047656834c by Werner Koch on 05/11/2018 at 09:30..
gpg: Avoid error diagnostics with --override-session-key.

* src/engine-gpg.c (gpg_decrypt): Add --no-keyring.
--

GnuPG-bug-id: 3464
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/bded8ebc59c7fdad2617f4c9232a58047656834c

Git commit 1b9d30db089e9de3ef859195ad58d2164a0231a0 by Ben McGinnes on 06/11/2018 at 03:11..
python examples: protonmail hkp scripts

* fixed a bug in the import try statement for both versions.
https://invent.kde.org/neon/forks/gpgme/-/commit/1b9d30db089e9de3ef859195ad58d2164a0231a0

Git commit 0cb625da84d7e5deeacad113c404a8bc2154c8e7 by Ben McGinnes on 06/11/2018 at 03:58..
python examples: another importer

* Fixed a similar type of bug with the non-protonmail importer.
https://invent.kde.org/neon/forks/gpgme/-/commit/0cb625da84d7e5deeacad113c404a8bc2154c8e7

Git commit d0a5caf73c2d6b73dd043f62574c31946e4f347d by Ben McGinnes on 06/11/2018 at 05:22..
docs: python bindings

* Continued restructuring as part of moving beyond mere;y the HOWTO
  file.
* Generated the alternative source files for reST and Texinfo.
* Fixed some errors and updated links after moving the what's new
  section to two new files (yes, two).
https://invent.kde.org/neon/forks/gpgme/-/commit/d0a5caf73c2d6b73dd043f62574c31946e4f347d

Git commit 2557d0ae6ff0336b041129b7bf5c1e3a8c20a805 by Daniel Kahn Gillmor on 08/11/2018 at 05:34..
spelling: fix misspellings

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/2557d0ae6ff0336b041129b7bf5c1e3a8c20a805

Git commit f3e60521899e6126229b6efedc9f011b84122e11 by NIIBE Yutaka on 12/11/2018 at 00:03..
build: Provide gpgme.pc, generated by configure.

* configure.ac: Generate src/gpgme.pc.
* src/Makefile.am (pkgconfigdir, pkgconfig_DATA): New.
(EXTRA_DIST): Add gpgme.pc.in.
* src/gpgme.pc.in: New.
* src/gpgme-config.in: Use variables.

--

Some usages of gpgme-config is not compatible to pkg-config style;
The --glib option and --thread option which affect the output
by --cflags or --libs are not supported by gpgme.pc.

gpgme-config's embedding information for gpg-error and libassuan at
the build time of gpgme is considered inflexible than pkg-config
style.  It is now handled by dependency of gpgme.pc (Requires field).

To use gpgme.pc, newer libgpg-error (>= 1.33) and libassuan (>= 2.5.3)
are required, which provide gpg-error.pc and libassuan.pc respectively.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f3e60521899e6126229b6efedc9f011b84122e11

Git commit a76e145a1057e11953b71f804cf3a499c3ad5362 by NIIBE Yutaka on 12/11/2018 at 00:59..
build: Provide gpgme-glib.pc too.

* src/gpgme-glib.pc.in: New.
* src/gpgme.pc.in (avail_lang): Remove.

--

Provide gpgme-glib.pc for gpgme-glib library.  The avial_lang
information is no use because *.pc is for C.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a76e145a1057e11953b71f804cf3a499c3ad5362

Git commit 60828a505a1c74fd34476c181df2a588ea6f9c83 by NIIBE Yutaka on 12/11/2018 at 01:01..
build: Make gpgme.m4 use gpgrt-config with *.pc.

* src/gpgme.m4 (_AM_PATH_GPGME_CONFIG): Use gpgrt-config with gpgme.pc
when possible.
(AM_PATH_GPGME_GLIB): Likewise with gpgme-glib.pc.

--

Keeping AM_PATH_GPGME_PTHREAD, as is, untouched.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/60828a505a1c74fd34476c181df2a588ea6f9c83

Git commit 895176f42af3a1b13614f15dd537a426bb4ac16a by NIIBE Yutaka on 12/11/2018 at 10:11..
Fix the previous commit.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/895176f42af3a1b13614f15dd537a426bb4ac16a

Git commit c4aa4af50f3102b251cfff9c9755e2dde8d1bd1f by NIIBE Yutaka on 13/11/2018 at 02:44..
build: Update gpg-error.m4 and libassuan.m4.

* m4/gpg-error.m4: Update from master.
* m4/libassuan.m4: Update from master.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c4aa4af50f3102b251cfff9c9755e2dde8d1bd1f

Git commit 0c31837766e016227b3c8dfd44c476949cd4741e by Andre Heinecke on 14/11/2018 at 10:51..
tests: Add json testrunner

* configure.ac: Configure makefile.
* tests/Makefile.am: Run json tests if gpg tests are run.
* tests/json/t-json.c: New testrunner for json tests.
* tests/json/t-config.in, tests/json/t-config.out: First test.
--
The idea of this test runner is that it only looks for parts
in the output. This should allow it to write robust tests
that check for the basics in the output but don't fail when
the output is extended or slightly changed.
https://invent.kde.org/neon/forks/gpgme/-/commit/0c31837766e016227b3c8dfd44c476949cd4741e

Git commit 3e5684d99b881787f9739e53fd8e8c22eadc2146 by Andre Heinecke on 14/11/2018 at 12:05..
tests,json: Fix and improve t-json

* tests/json/t-json.c (run_test): Terminate argv array correctly.
(run_test): Note and handle empty response.
https://invent.kde.org/neon/forks/gpgme/-/commit/3e5684d99b881787f9739e53fd8e8c22eadc2146

Git commit 9933641cce595ba308d0f3a1f3ae8f13a9743dd1 by Andre Heinecke on 14/11/2018 at 12:14..
tests,json: Improve verbose mode and add verbose 2

* tests/json/t-json.c (main): Handle multiple verbose args.
(test-contains): Improve verbose output
https://invent.kde.org/neon/forks/gpgme/-/commit/9933641cce595ba308d0f3a1f3ae8f13a9743dd1

Git commit 5b61c092e7444749b08e39ac5aa9fb0818e1a076 by Andre Heinecke on 14/11/2018 at 13:50..
tests,gpg: Add version check hlp to t-support

* t-support.h (parse_version_number, parse_version_string)
(compare_versions): New. Copy&Paste from src/version.c
(check_gpg_version): New helper to check for a gpg version.

--
This should make it easier to write tests that e.g.
rely on modern gnupg features.
https://invent.kde.org/neon/forks/gpgme/-/commit/5b61c092e7444749b08e39ac5aa9fb0818e1a076

Git commit ca2e2b3d6973b1f942571ba65bd8b57153847777 by Andre Heinecke on 14/11/2018 at 13:53..
tests,json: Suffix .json to test pattern

* tests/json/t-config.in, tests/json/t-config.out: Renamed.
* t-json.c (run_test): Use new naming pattern.
https://invent.kde.org/neon/forks/gpgme/-/commit/ca2e2b3d6973b1f942571ba65bd8b57153847777

Git commit e55e467d5ffb32c428566a876616d309ef2d15cd by Andre Heinecke on 14/11/2018 at 13:55..
tests,json: Skip tests for older GnuPG versions

* tests/json/t-json.c (main): Skip if version is not at least
2.2.0

--
In the past new tests often failed when a modern GPGME was
used with old GnuPG's.
This should avoid the hassle for packagers without the
requirement that we test against old versions.
https://invent.kde.org/neon/forks/gpgme/-/commit/e55e467d5ffb32c428566a876616d309ef2d15cd

Git commit 9a31fdcb11d04d47dfcc38a8409b84436c549108 by Andre Heinecke on 14/11/2018 at 13:57..
tests,json: Add wildcard string matching

* tests/json/t-json.c (test_contains): When searching for "*" accept
every string.

--
This allows it to write tests that check for the existence of
a string value but don't care about the contents. E.g. for Data.
https://invent.kde.org/neon/forks/gpgme/-/commit/9a31fdcb11d04d47dfcc38a8409b84436c549108

Git commit dd4b80a5f640232bb44eb825ff5a74ec295fad10 by Andre Heinecke on 14/11/2018 at 14:15..
tests,json: Add the bulk of tests

* t-json.c (tests): Register new tests.
* t-createkey.in.json,
  t-createkey.out.json,
  t-decrypt-verify.in.json,
  t-decrypt-verify.out.json,
  t-decrypt.in.json,
  t-decrypt.out.json,
  t-delete.in.json,
  t-delete.out.json,
  t-encrypt-sign.in.json,
  t-encrypt-sign.out.json,
  t-encrypt.in.json,
  t-encrypt.out.json,
  t-export-secret-info.in.json,
  t-export-secret-info.out.json,
  t-export.in.json,
  t-export.out.json,
  t-json.c,
  t-keylist-secret.in.json,
  t-keylist-secret.out.json,
  t-keylist.in.json,
  t-keylist.out.json,
  t-verify.in.json,
  t-verify.out.json,
  t-version.in.json,
  t-version.out.json: New.

--
Except for help and getmore there is now a test for each command.
https://invent.kde.org/neon/forks/gpgme/-/commit/dd4b80a5f640232bb44eb825ff5a74ec295fad10

Git commit 27ca12e815c0a582d357641a04b889d648b8766e by Andre Heinecke on 14/11/2018 at 14:17..
tests,json: Fix match if the first child differs

* tests/json/t-json.c (test_contains): Try all siblings of
the haystack child.

--
This fixes the case where we don't match against the
first child because the order might have changed or
a new element was inserted at the top. Then we
have to try out also all the siblings.
https://invent.kde.org/neon/forks/gpgme/-/commit/27ca12e815c0a582d357641a04b889d648b8766e

Git commit 88b7221eb737a3102ec61ea385990b7ea7ef2b30 by Andre Heinecke on 14/11/2018 at 14:55..
tests,json: Add missing files and chunking test

* tests/json/Makefile.am, tests/json/final.test,
tests/json/initial.test: New.
* tests/json/t-chunking.in.json, tests/json/t-chunking.out.json:
New test.
* tests/json/t-json.c: Register new test.

--
Oops..
https://invent.kde.org/neon/forks/gpgme/-/commit/88b7221eb737a3102ec61ea385990b7ea7ef2b30

Git commit d0087d45f0207bf82a4f078d972c28c4d1cd2690 by Andre Heinecke on 14/11/2018 at 16:05..
tests,json: Add more tests

* t-config-opt.in.json,
 t-config-opt.out.json,
 t-import.in.json,
 t-import.out.json,
 t-sign.in.json,
 t-sign.out.json: New.
--
These should actually have been in a previous commit as
they are already registered.
https://invent.kde.org/neon/forks/gpgme/-/commit/d0087d45f0207bf82a4f078d972c28c4d1cd2690

Git commit def030e843bd4576597272abe9fe12f846066576 by Andre Heinecke on 14/11/2018 at 16:21..
tests,json: Fix distcheck

* tests/json/Makefile.am (EXTRA_DIST): Add inital and final scripts.
(t_json_SOURCES): Don't use cJSON.o as source.
https://invent.kde.org/neon/forks/gpgme/-/commit/def030e843bd4576597272abe9fe12f846066576

Git commit d3dae4a445d950c94c952ddf54e534ef71675bd1 by Andre Heinecke on 14/11/2018 at 16:56..
tests,json: Add sig-notations test

* tests/json/t-sig-notations.in.json,
tests/json/t-sig-notations.out.json: New
* tests/json/Makefile.am (EXTRA_DIST): Add files.
* tests/json/t-json.c: Register it.
https://invent.kde.org/neon/forks/gpgme/-/commit/d3dae4a445d950c94c952ddf54e534ef71675bd1

Git commit 40d962b43a183070ba8602cac1e83f2292ebf2c3 by Andre Heinecke on 15/11/2018 at 09:31..
tests,json: Move version check into t-json

* tests/gpg/t-support.h (check_gpg_version, compare_versions),
(parse_version_string, parse_version_number): Remove version
check code.
* tests/json/t-json.c (check_gpg_version, compare_versions),
(parse_version_string, parse_version_number): Add.
--

t-support header was not a good place for this. It should
go into a library e.g. gpgrt in the future. For now we
can keep it close to where it is needed.
https://invent.kde.org/neon/forks/gpgme/-/commit/40d962b43a183070ba8602cac1e83f2292ebf2c3

Git commit 004e2cad2f26250cd010684f11dc187f08e6f9e1 by Andre Heinecke on 15/11/2018 at 09:33..
tests,json: Clean openpgp-revocs.d

* tests/json/clean-local: Remove revocs.d
https://invent.kde.org/neon/forks/gpgme/-/commit/004e2cad2f26250cd010684f11dc187f08e6f9e1

Git commit d0402f886b720d03369887c807581bd980ee70cf by Andre Heinecke on 15/11/2018 at 10:57..
tests: Add run-threaded for multithread tests

* tests/Makefile.am (run-threaded): Add.
* tests/run-threaded.c: New.

--
This test is intended to help detect race conditions
or other multithread problems. It can also be used
to put the whole GnuPG system under extreme load.
https://invent.kde.org/neon/forks/gpgme/-/commit/d0402f886b720d03369887c807581bd980ee70cf

Git commit 8d91c0f4cdcc26679067ae681ae12600fb450200 by Werner Koch on 16/11/2018 at 12:27..
Add SPDX identifiers to most source files

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8d91c0f4cdcc26679067ae681ae12600fb450200

Git commit 5857491a2aa7d4975100d90f1ad62c08aa345e3e by Werner Koch on 16/11/2018 at 15:25..
core: Simplify the trace maros by using variadics.

* src/debug.h (TRACE_BEG, TRACE_LOG, TRACE_SUC): Use variadic macros
and remove the TRACE_BEG1 et al.  Change all users to always pass a
format string.
(TRACE): Ditto.
* src/debug.c (_gpgme_debugf): New.
* configure.ac <GCC>: Add -Wno-format-zero-length.
--

This makes it easier for use to enable format checks.  The zero-length
format is required to allow for an empty format due to the comman
problematic of __VA_ARGS__.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5857491a2aa7d4975100d90f1ad62c08aa345e3e

Git commit 94d274a1a33c6fb30981290b127f2c4babc27245 by Werner Koch on 16/11/2018 at 15:39..
core: Remove old debug helper function

* src/debug.c (_gpgme_debug): Remove.
(_gpgme_debugf): Rename to _gpgme_debug.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/94d274a1a33c6fb30981290b127f2c4babc27245

Git commit cf423864062a2677d0eeabbb11462a788f527b4c by Werner Koch on 16/11/2018 at 15:57..
core: Fix format string errors in trace macros

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/cf423864062a2677d0eeabbb11462a788f527b4c

Git commit 7eda50a673d15320022375360fd220e8381b69ab by Werner Koch on 16/11/2018 at 17:15..
core: Fix a LF problem in the new debug fucntion.

* src/debug.c (_gpgme_debug): Print a LF for an empty FORMAT unless we
are in legacy mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/7eda50a673d15320022375360fd220e8381b69ab

Git commit 7a1e7006d06fdbab86ea79a197c316744b09d933 by Werner Koch on 16/11/2018 at 17:17..
core: Protect the trace macros for fun and profit.

* src/debug.h: Protect macros using.
(_trace_err, _trace_sysres, _trace_syserr): New helper inline
functions.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7a1e7006d06fdbab86ea79a197c316744b09d933

Git commit f773ad392da57e6be4ade93c44baa5d2057c40b6 by Ben McGinnes on 19/11/2018 at 10:19..
python: import constant

* lang/python/src/constants/__init__.py: dropped use of Import
  capitalisation and renamed lang/python/src/constants/import.py to
  lang/python/src/constants/import_type.py to address bug T4242.
* lang/python/doc/src/gpgme-python-howto: minor docs updates.
https://invent.kde.org/neon/forks/gpgme/-/commit/f773ad392da57e6be4ade93c44baa5d2057c40b6

Git commit fd34415bdd57332424bd5a98d279e2331678a2fb by Ben McGinnes on 19/11/2018 at 10:38..
python: import type

* Fixed bug T4242 and tested that dropping "Import" in favour of
  "import_type" does indeed work just fine.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fd34415bdd57332424bd5a98d279e2331678a2fb

Git commit b182838f71d8349d6cd7be9ecfb859b893d09127 by Werner Koch on 19/11/2018 at 11:49..
core: Fix format string errors in w32-io.c and use of TRACE_SUC.

* src/w32-io.c: Fix use of TRACE_SUC.  Fix some format strung errors.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b182838f71d8349d6cd7be9ecfb859b893d09127

Git commit de6bb23279796b9ae4dc369d58591cb75f818684 by Ben McGinnes on 22/11/2018 at 07:00..
python: version as integers

* lang/python/version.py.in: added gpg.version.versionintlist
* If gpg.version.versionintlist[2] ever returns -1 then there's a
  serious problem with the build and it should be lodged as a bug if
  it's repeatable.  Seeing this should never happen, but checking for
  it is better than not doing so.
https://invent.kde.org/neon/forks/gpgme/-/commit/de6bb23279796b9ae4dc369d58591cb75f818684

Git commit c87155e6eba2e97e4e6c6ee7e2591088a5489556 by Ben McGinnes on 22/11/2018 at 09:00..
python: docs update

* Added documentation for the new methods added to gpgme.version.
* Removed the Flask based advanced use case from the what-is-new
  section as that type of code will not be added here.
https://invent.kde.org/neon/forks/gpgme/-/commit/c87155e6eba2e97e4e6c6ee7e2591088a5489556

Git commit 1c92f3ff55ad0cdda06d05ad0a83193e3a147b7e by Ben McGinnes on 26/11/2018 at 02:19..
python docs: checking key signatures

* Added instructions for checking key certifications or key
  signatures (depending on preferred terminology).
* Added pendulum module to recommended installations, but not to
  requirements.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1c92f3ff55ad0cdda06d05ad0a83193e3a147b7e

Git commit a9cfb6dad8ac60543bcb06f4d0515f4a64ad897a by Andre Heinecke on 28/11/2018 at 09:45..
tests, json: Make them run on debian stable

* tests/json/t-json.c (main): Relax version check a bit.
https://invent.kde.org/neon/forks/gpgme/-/commit/a9cfb6dad8ac60543bcb06f4d0515f4a64ad897a

Git commit 3b056a01a252bb72df5744409ba494e1a6e54d31 by Ben McGinnes on 30/11/2018 at 20:45..
python: documentation

* Added long description to setup.py.in.
* Added maintenance mode details with clarification for what type of
  things would be a bug as far as MM is concerned and what wouldn't
  be.
** Includes a not too subtle hint directed towards the donations page.
* Miscellaneous tightening of documentation.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3b056a01a252bb72df5744409ba494e1a6e54d31

Git commit 2e3a681d0c35bbf6db584fedc9d7f0a010430b51 by Ben McGinnes on 30/11/2018 at 21:15..
python: documentation fixes

* Typographic and whitespace error correction pertaining to the
  previous update.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2e3a681d0c35bbf6db584fedc9d7f0a010430b51

Git commit 649b19688132dd315e361c0f5b63ba6d8f45996d by Werner Koch on 03/12/2018 at 09:41..
doc: Minor comment cleanups.

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/649b19688132dd315e361c0f5b63ba6d8f45996d

Git commit 1d31420650bfa7ca1d1503cc7431b3360e86022c by Andre Heinecke on 03/12/2018 at 11:25..
qt,cpp: Consistently use nullptr and override

* lang/cpp/src/Makefile.am, lang/qt/src/Makefile.am (AM_CPPFLAGS):
Add suggest-override and zero-as-null-pointer-constant warnings.

* lang/cpp/src/*, lang/qt/src/*: Consistenly use nullptr and override.

--
This was especially important for the headers so that downstream
users of GpgME++ or QGpgME do not get flooded by warnings if
they have these warnings enabled.

It also improves compiler errors/warnings in case of accidental
mistakes.
https://invent.kde.org/neon/forks/gpgme/-/commit/1d31420650bfa7ca1d1503cc7431b3360e86022c

Git commit 5dbac555f23bcec4adcfd82de61878f0f23ff272 by NIIBE Yutaka on 04/12/2018 at 03:35..
build: Remove --with-*-prefix, which is no need any more.

* autogen.rc (configure_opts): Remove --with-*-prefix.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5dbac555f23bcec4adcfd82de61878f0f23ff272

Git commit 8613727f1ee985c3cfa2c815523312914f033ffd by Ben McGinnes on 04/12/2018 at 21:42..
python: docs update

* Expanded the section on issues with Windows installations, with
  greater detail of which versions of Visual Studio are needed
  depending on which version of CPython is to be used.
* Included a recommendation which is a bit harsh without being totally
  prickish.
* Updated all files to not link to author's key or related data in
  order to make them all consistent with the changes in commit
  649b19688132dd315e361c0f5b63ba6d8f45996d.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8613727f1ee985c3cfa2c815523312914f033ffd

Git commit 8d2621fcad3ded2a4184c00a04ca1002b4de98cc by Ben McGinnes on 04/12/2018 at 21:49..
Merge branch 'master' of ssh+git://playfair.gnupg.org/git/gpgme
https://invent.kde.org/neon/forks/gpgme/-/commit/8d2621fcad3ded2a4184c00a04ca1002b4de98cc

Git commit 6d8823b81162c18406d40ec59bd252cfdf1df648 by Ben McGinnes on 04/12/2018 at 22:17..
python: Sphinx support

* Added framework from sphinx-quickstart to lang/python/doc/rst/ so
  that Python developers already using Sphinx can use the generated
  reST files with existing documentation systems.
* Note that when generating source files from Org-mode, the index page
  will require manual intervention to match the Sphinx requirements.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6d8823b81162c18406d40ec59bd252cfdf1df648

Git commit c8a04af676d981b42172c9bdad82eb83f91c8ce6 by Ben McGinnes on 04/12/2018 at 22:31..
python: sphinx modification

* The make.bat file incorrectly triggers the trailing whitespace check
  in the git repo (it doesn't actually have any trailing whitespace,
  but triggers the error on every line).
* Will need to add a script to handle future org-mode conversions of
  the index page anyway, so will get that script to deal with this
  problem too by generating the make.bat file if the platform is
  detected as Windows.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c8a04af676d981b42172c9bdad82eb83f91c8ce6

Git commit 1dffdcc6e9d249111eb8761d29ef3b35b32a8c3d by Ben McGinnes on 04/12/2018 at 23:51..
python: windows c and cython

* added warning that he Windows C runtime issues will also affect use
  with Cython and that relying on binary installers would remove that
  possible use case.
https://invent.kde.org/neon/forks/gpgme/-/commit/1dffdcc6e9d249111eb8761d29ef3b35b32a8c3d

Git commit 2491e6f92f5b562cbd6f7f931df630cb106f6688 by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 05/12/2018 at 10:46..
python: simplify Context.decrypt()

In the course of trying to address https://dev.gnupg.org/T4271, i
discovered that gpg.Context.decrypt() has a bit of superfluous code.
This changeset is intended to simplify the code without making any
functional changes.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/2491e6f92f5b562cbd6f7f931df630cb106f6688

Git commit 49af6d76e55f348c7b3cece756d6ac643d17ee68 by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 05/12/2018 at 10:46..
python: clarify documentation for verify argument for Context.decrypt()

It's easy to miss that verify can take a list of keys.  Make it more
obvious to the average python dev who reads docstrings.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/49af6d76e55f348c7b3cece756d6ac643d17ee68

Git commit b8fa76a30c02afc3d7f6aad0a59bb613d1b711fc by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 05/12/2018 at 10:46..
python: gpg.Context.decrypt verify_sigs and sink_result are bools

Both of these function-internal variables are never used for anything
other than a binary state.  Implement them as the booleans they are.
Otherwise, casual readers of the code might think that they're
supposed to represent something other than a flag (e.g. "verify_sigs"
could mean "the signatures to verify", and "sink_result" could mean
"the place where we sink the result").

Signed-Off-By: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/b8fa76a30c02afc3d7f6aad0a59bb613d1b711fc

Git commit 5d8b4f74891af22379899ccee9e8ee849144eee3 by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 05/12/2018 at 10:46..
python: Clarify the meaning of ctx.decrypt(verify=[])

* lang/python/src/core.py (Context.decrypt): docstring clarification
of what it means to pass an empty list to the verify argument.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/5d8b4f74891af22379899ccee9e8ee849144eee3

Git commit 878a0ad01265dba5b06429276bdcc5c21fedb6f5 by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 05/12/2018 at 10:46..
python: ctx.decrypt() has problematic error handling

* lang/python/src/core.py (Context.decrypt): document odd
error-handling behavior as a potential problem to be addressed.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/878a0ad01265dba5b06429276bdcc5c21fedb6f5

Git commit 65c28da4e49a8778607fdcf6f51a840166616d9f by Andre Heinecke (on behalf of Daniel Kahn Gillmor) on 05/12/2018 at 10:46..
python: overhaul logic of Context.decrypt()

* lang/python/src/core.py (Context.decrypt): simplify and clarify the
logic behind handling verify=False.
* lang/python/tests/t-decrypt.py: ensure that we test verify=False

--

The function-internal variables were pretty unclear to the reader, and
the logic caused pretty nasty breakage when verify=False.

GnuPG-Bug-Id: 4271
Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/65c28da4e49a8778607fdcf6f51a840166616d9f

Git commit dc5600d306f808767068bad5117232fc3d35ac43 by Ben McGinnes on 05/12/2018 at 14:50..
python: examples

* cut some of then poor len usage.
https://invent.kde.org/neon/forks/gpgme/-/commit/dc5600d306f808767068bad5117232fc3d35ac43

Git commit ad030234b4b50f1152731a17c54a53be2f2e0c25 by Ben McGinnes on 05/12/2018 at 14:53..
Merge branch 'master' of ssh+git://playfair.gnupg.org/git/gpgme
https://invent.kde.org/neon/forks/gpgme/-/commit/ad030234b4b50f1152731a17c54a53be2f2e0c25

Git commit 78f6291a3bf56769f53af66fe39718ddd2d74bf2 by Andre Heinecke on 07/12/2018 at 09:43..
core: Fix ERR_INV_ARG check in genkey_start

* src/genkey.c (gpgme_op_genkey_start): Fix check for
parms.

--
This fixes a regression introduced by:
174af15725d4989a840ff3098996cc8a0568f724

So that the error was triggered by usual args.

GnuPG-Bug-Id: T4265
https://invent.kde.org/neon/forks/gpgme/-/commit/78f6291a3bf56769f53af66fe39718ddd2d74bf2

Git commit 7c63bfe4ab434b61a871aec4bc1d0a05b4c068e6 by Ben McGinnes on 10/12/2018 at 05:05..
python: docs updates

* Multiple updates, expanding on the Windows installation issues.
* Also adding to the new maintenance mode reference document.
* Includes content relating to the resolution of T4271 and T4191.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7c63bfe4ab434b61a871aec4bc1d0a05b4c068e6

Git commit fe7e01d164b64ad5e7f65cb80e4bf13f06d8d3ef by Ben McGinnes on 10/12/2018 at 17:41..
python: key import via HKP example

* Fixed the logic used to search for any given pattern.
* Added a sensible method of checking whether a pattern is a key ID or
  fingerprint.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fe7e01d164b64ad5e7f65cb80e4bf13f06d8d3ef

Git commit 2e7a14c9b369096775a035091c197f2d438142a0 by Ben McGinnes on 10/12/2018 at 20:14..
python: HKP search and import updates

* Tweaked the code again so that it can also handle the cases where
  someone has included a hexadecimal string in their user ID.
* Updated the HOWTO to match.
* Exported to .rst and .texi.
https://invent.kde.org/neon/forks/gpgme/-/commit/2e7a14c9b369096775a035091c197f2d438142a0

Git commit 772b5aae24a2a3a996f399024845de612192fc2f by Ben McGinnes on 10/12/2018 at 22:55..
python: hkp key importer

* Tweaked it slightly to avoid repetition of key searches when there
  is only one search pattern to check (i.e. usually a single key ID or
  fingerprint).
https://invent.kde.org/neon/forks/gpgme/-/commit/772b5aae24a2a3a996f399024845de612192fc2f

Git commit 4c324ac1beb710714262af0040dea21232ba87d9 by Ben McGinnes on 12/12/2018 at 12:01..
python: howto examples equirements

* Added small requirements.txt file for additional modules not in the
  standard python library and not including the bindings themselves
  and not including Cython, which is for more advanced examples.
https://invent.kde.org/neon/forks/gpgme/-/commit/4c324ac1beb710714262af0040dea21232ba87d9

Git commit 64758a0dac4c7c3b312dccbc1661813e2c3e2888 by Ben McGinnes on 12/12/2018 at 12:05..
python: advanced howto example

* Added Cython requirement to this advanced use case.
https://invent.kde.org/neon/forks/gpgme/-/commit/64758a0dac4c7c3b312dccbc1661813e2c3e2888

Git commit 3ca7cf07f5d3ec4af89e69ed13ea7ab701e33c03 by Ben McGinnes on 12/12/2018 at 12:18..
python: what's new summary

* Added a little more detail to the what's new section.
https://invent.kde.org/neon/forks/gpgme/-/commit/3ca7cf07f5d3ec4af89e69ed13ea7ab701e33c03

Git commit 3849b60e22432ef33f0d1d39b88e07922ad7779e by Ben McGinnes on 12/12/2018 at 17:54..
python: new example script

* Though Keybase really should not be encouraged due to
  disengenuosness and FUD emanating from that souce, this new script
  will obtain a key hosted on that site and import it when supplied
  with the keybase username.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3849b60e22432ef33f0d1d39b88e07922ad7779e

Git commit 4308d172816f3172454fac1dc0771014056764a1 by Ben McGinnes on 13/12/2018 at 18:17..
python: examples bugfix

* Fixed a bug in the ProtonMail importers (pmkey-*.py) where multiple
  keys found for a username would always result in the last email
  address checked being returned in the printed output for all located
  keys.
https://invent.kde.org/neon/forks/gpgme/-/commit/4308d172816f3172454fac1dc0771014056764a1

Git commit fbc298dc1b0fbb51ebc92a9d56c45b78c5e9989d by Ben McGinnes on 16/12/2018 at 06:12..
python: howto and examples

* Tightening up both the documentation and some of the example code.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fbc298dc1b0fbb51ebc92a9d56c45b78c5e9989d

Git commit 8b41fb08f00f01fe0dd8b2b5455d3422d97ddc60 by Werner Koch on 17/12/2018 at 15:47..
core: Silence newer compiler warnings.

* configure.ac: Add -Wno-format-truncation and
  -Wno-sizeof-pointer-div.
* src/b64dec.c (_gpgme_b64dec_proc): Add fallthrough annotation.
* src/cJSON.c (parse_string): Ditto.
* src/gpgme-json.c (main): Ditto.
--

gcc 8 enables a couple of new warnings.  Some of them are useless for
us.  In particular:

  util.h:42:26: warning: division 'sizeof (char *) / sizeof (char)'
  does not compute the number of array elements [-Wsizeof-pointer-div]
  #define DIM(v) (sizeof(v)/sizeof((v)[0])) ^

  trustlist.c:101:22: note:
  in expansion of macro 'DIM' if (strlen (p) == DIM(item->keyid) - 1)

Which is a real standard way to use DIM, here the right hand side is
equivalent to sizeof but nevertheless it is correct.  Yes sir, we know
C.

The format string warnings I have seen were assuming that the time
structure returns valued out of scope - but if the system is that
broken, the s_n_printf catches this.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8b41fb08f00f01fe0dd8b2b5455d3422d97ddc60

Git commit daded4925489d306f6a65271c2f55101b331187c by Ben McGinnes on 17/12/2018 at 17:07..
python docs: house keeping

* Dropped the ASCII copyright line, since even MS have conceded their
  battle against Unicode enough to load UTF-8.
* Fixed the drafts section since there will be less need of multiple
  output format testing from next year.
https://invent.kde.org/neon/forks/gpgme/-/commit/daded4925489d306f6a65271c2f55101b331187c

Git commit dc5f416351e47bfafb46a53f8fd8435dd6c231ba by Ben McGinnes on 21/12/2018 at 10:01..
python: groups example

* Tightened code a little more.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dc5f416351e47bfafb46a53f8fd8435dd6c231ba

Git commit 06bca0eaa8de8405fafc892ab7864990f8853bcf by Ben McGinnes on 21/12/2018 at 22:39..
python: docs

* Found a bug in org-mode's export to texinfo function which will
  require either manual modification of each file or a customs sed run
  over the generated files for all updates.
* Manually updated the current files for now, but will need to add
  some post-install processing scripts for future use (I already have
  some of these for my specific setup, they just need to be made a
  little more generic and platform independent for here).

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/06bca0eaa8de8405fafc892ab7864990f8853bcf

Git commit ef9355c2fe8f81ccd73e0ed45ce33e925928f8e1 by Ben McGinnes on 24/12/2018 at 13:18..
python: docs processing

* Added some EPUB specific config options to the Sphinx config file
  which might help reduce some of Sphinx's more stupid default errors
  with EPUB validation.
* Added lang/python/post_installer.py script for automating the
  generation of .texi and .rst "source" files from the real source
  files written in Org mode.  Includes recreating the Sphinx Makefile
  which is excluded due to the m4 toolchain in parent directories, it
  also handles the rewriting of the reST index file properly and
  rewrites the .texi files so they don't impale themselves on Unicode.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ef9355c2fe8f81ccd73e0ed45ce33e925928f8e1

Git commit d406471d4bf9c79140e4bc91de7d316ec7465892 by Ben McGinnes on 26/12/2018 at 00:01..
python: examples

* Fixed inter-edit.py so it will actually work now.
* made 3 others executable.
* Fixed the semantics of assuan.py's instructions.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d406471d4bf9c79140e4bc91de7d316ec7465892

Git commit 207d4289d84971d11ec1824fbe7d4a2be63b56e4 by Ben McGinnes on 02/01/2019 at 00:08..
python: examples

* Fixed inter-edit.py so it will actually work now.
* made 3 others executable.
* Fixed the semantics of assuan.py's instructions.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/207d4289d84971d11ec1824fbe7d4a2be63b56e4

Git commit a2e7c863c821ca035f1e3f8077bdae3b0f81f5eb by Ben McGinnes on 02/01/2019 at 00:08..
python: post installer doc fix script

* Got rid of the bash bit in the comments.
* Made the final printed instructions far more obvious.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a2e7c863c821ca035f1e3f8077bdae3b0f81f5eb

Git commit a0dbdfebbb60f0d34dd16894803e95221d8be668 by Ben McGinnes on 02/01/2019 at 00:19..
python docs: post installer

* Merging post installer script.
* Included ammended Sphinx config file to try to reduce the
  auto-generated EPUB validation failures it produces.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a0dbdfebbb60f0d34dd16894803e95221d8be668

Git commit 66376f3e206a1aa791d712fb8577bb3490268f60 by Andre Heinecke on 09/01/2019 at 07:26..
qt: Use tofu conflict test keys without expiry

* lang/qt/tests/t-tofuinfo.cpp: Use new test keys without
expiry.

--
The old keys expired on 2019-01-06.

GnuPG-Bug-Id: T3815
https://invent.kde.org/neon/forks/gpgme/-/commit/66376f3e206a1aa791d712fb8577bb3490268f60

Git commit ce327f994a2888b807b63cf202ddcecc3fb9c685 by Andre Heinecke on 15/01/2019 at 07:36..
tests: Add diagnostic example to run-import.c

* tests/run-import.c (main): Show diagnostics in verbose mode.
https://invent.kde.org/neon/forks/gpgme/-/commit/ce327f994a2888b807b63cf202ddcecc3fb9c685

Git commit 66bcb8acb2452cf19318023ed0ff1ea7d7bb8439 by NIIBE Yutaka on 16/01/2019 at 01:59..
build: With LD_LIBRARY_PATH defined, use --disable-new-dtags.

* configure.ac (LDADD_FOR_TESTS_KLUDGE): New for --disable-new-dtags.
* tests/Makefile.am (LDADD): Use LDADD_FOR_TESTS_KLUDGE.
* lang/cpp/tests/Makefile.am, lang/qt/tests/Makefile.am: Likewise.
* tests/gpg/Makefile.am, tests/gpgsm/Makefile.am: Likewise.
* tests/json/Makefile.am, tests/opassuan/Makefile.am: Likewise.

--

GnuPG-bug-id: 4298
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/66bcb8acb2452cf19318023ed0ff1ea7d7bb8439

Git commit c2807d07ecc4c75e9a2ad22f943984f979ae25a1 by Roger Shimizu on 19/01/2019 at 15:11..
Prepare to release 1.12.0-5

Backport upstream patch to fix RC bug that TofuInfoTest key expires
on 2019-Jan-06.

Closes: #919293
https://invent.kde.org/neon/forks/gpgme/-/commit/c2807d07ecc4c75e9a2ad22f943984f979ae25a1

Git commit a5b5c1a344851db8a1816cede5ed45e6d8625afa by Roger Shimizu on 23/01/2019 at 11:20..
Prepare to release 1.12.0-6

d/tests: Fix autopkgtest by removing test for python3.6, and
         python3.7, since we already have test for python3.
https://invent.kde.org/neon/forks/gpgme/-/commit/a5b5c1a344851db8a1816cede5ed45e6d8625afa

Git commit 7f2423371964263784252cf839269023b6573bd2 by Werner Koch on 25/01/2019 at 12:45..
json: Fix minor memory leaks.

* src/gpgme-json.c (interactive_repl): Fix memleak.
(subkey_to_json): Ditto
(op_config): Delay init of j_comps to avoid a leak on error.
--

GnuPG-bug-id: 4341, 4342, 4343
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7f2423371964263784252cf839269023b6573bd2

Git commit ed81892917f47dddc23aa99d88733e3f8f344256 by Werner Koch on 25/01/2019 at 14:20..
json: Better use gpgme_free

* src/gpgme-json.c (subkey_to_json): here
--

Avoid Windows ugliness of allowing different CRTs in the same
process.

Fixes-commit: 7f2423371964263784252cf839269023b6573bd2
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ed81892917f47dddc23aa99d88733e3f8f344256

Git commit 1e265723653042bc1010b457537b69a2011b43b7 by Ben McGinnes on 27/01/2019 at 03:57..
python: post installer docs fix script

* Moved post_installer.py into the examples/howto/ directory.
* Added instructions for its use to the Python Bindings HOWTO.
* Ran it as intended from the lang/python/ directory in order to both
  prove it works and quickly and easily get the updated howto
  replicated.  Also to fix all those .texi files.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1e265723653042bc1010b457537b69a2011b43b7

Git commit 2de1e599770cdb129b84302d963f65fdd3ddd2a4 by Ben McGinnes on 27/01/2019 at 05:02..
python: post installer script

* Removed auto-generated .texi files from doc/src/ so only the
  corrected versions are left.
* Which means now it is complete, but with the initial work to expand
  it with info file generation later.
https://invent.kde.org/neon/forks/gpgme/-/commit/2de1e599770cdb129b84302d963f65fdd3ddd2a4

Git commit e005052f4d5b29beda2252f8042dbf5728f5e2aa by Ben McGinnes on 30/01/2019 at 18:52..
python: docs

* Version bump in preparation for whenever GPGME 1.13.0 happens.
* Ran the post_installer.py for docs preparation again.

Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e005052f4d5b29beda2252f8042dbf5728f5e2aa

Git commit 302d5ef52e095378231efd54677b5c315354ad78 by Ben McGinnes on 10/02/2019 at 19:34..
python: examples

* A rather obvious variant of the existing key import examples, except
  directed at Mailvelope's keyserver.
* Yeah, Werner, I know ... but it exists because I used it and there's
  no harm in sharing.

Tested-by: Ben McGinnes <ben at adversary.org>
Signed-off-by: Ben McGinnes <ben at adversary.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/302d5ef52e095378231efd54677b5c315354ad78

Git commit f8312d7c333193582dcb5816198219b9564023f0 by Andre Heinecke on 11/02/2019 at 14:33..
tests: Fix memleak in run-threaded

* tests/run-threaded.c (verify): Free msg.
https://invent.kde.org/neon/forks/gpgme/-/commit/f8312d7c333193582dcb5816198219b9564023f0

Git commit 4c49417cc0dbd7f34269aff00fccafba150af744 by Werner Koch on 19/02/2019 at 11:11..
core,w32: Fix missing sentinel in dir name builder.

* src/w32-util.c (_gpgme_get_gpgconf_path): Add NULL top strconcat.
--

Fortunately this is called early and the stack like cleared out so
that we have not seen wrong behaviour until now.  We should really fix
all these annoying HANDLE/int cast warnings and alike so that real
bugs are not drowned by them.

GnuPG-bug-id: 4369
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4c49417cc0dbd7f34269aff00fccafba150af744

Git commit 6175025c822678102c3f089e37952aa84b19a3ec by Andre Heinecke on 21/02/2019 at 12:04..
cpp: Make GpgME::Data::toKeys really const

* lang/cpp/src/data.cpp (GpgME::Data::toKeys): Rewind afterards.

--
This fixes unexpected behavior that the seek pointer is changed
after calling the const toKeys.
https://invent.kde.org/neon/forks/gpgme/-/commit/6175025c822678102c3f089e37952aa84b19a3ec

Git commit 73b2f40ae5e6881991dea609b0781373b28d7d30 by Andre Heinecke on 21/02/2019 at 12:05..
cpp: Add ostream operators for import result

* lang/cpp/src/importresult.cpp: Add ostream operators.
* lang/cpp/src/importresult.h: Update accordingly.
https://invent.kde.org/neon/forks/gpgme/-/commit/73b2f40ae5e6881991dea609b0781373b28d7d30

Git commit 4a117859e7a512458ab78cfedfae0372805196b1 by Andre Heinecke on 27/02/2019 at 13:27..
json: Limit recursion depth

* src/cJSON.c (MAX_DEPTH): New. Maximum recursion depth.
(parse_value, parse_array, parse_object): Carry and check
depth argument.
(cJSON_ParseWithOpts): Initialize depth.

--
This fixes a stack overflow if we get weird recursive
json data.

GnuPG-Bug-Id: T4331
https://invent.kde.org/neon/forks/gpgme/-/commit/4a117859e7a512458ab78cfedfae0372805196b1

Git commit b159b2eddd9df5df6cc8f29bd999cf1603c56991 by Werner Koch on 28/02/2019 at 13:01..
tests: Let run-verify print the de-vs flag.

* tests/run-verify.c (print_result): Chack is_de_vs.
* tests/run-import.c (main): Fix bad parameter for format string.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b159b2eddd9df5df6cc8f29bd999cf1603c56991

Git commit 1bdab961c51fc038c33ae8116595aa0213ab1dd5 by Werner Koch on 28/02/2019 at 13:05..
json: Fix cosmetic error in the repl.

* src/gpgme-json.c (native_messaging_repl): Use correct var with sizeof.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1bdab961c51fc038c33ae8116595aa0213ab1dd5

Git commit c4cc47ee8f0bedc58e58ab416689d7014b0df2e7 by Andre Heinecke on 13/03/2019 at 11:02..
cpp: Fix Error::hasSystemError

* lang/cpp/src/context.cpp (Error::hasSystemError): Invert logic to
do what it says.

--
This is safe because according to codesearch it is only used
in QGpgME
https://invent.kde.org/neon/forks/gpgme/-/commit/c4cc47ee8f0bedc58e58ab416689d7014b0df2e7

Git commit dd21ec997cf4b6ba18538c63c728478110ad1f60 by Werner Koch on 19/03/2019 at 18:53..
core: Support GPGME_AUDITLOG_DIAG for gpgsm.

* src/engine-gpgsm.c (struct engine_gpgsm): Add fields diag_cb and
diagnostics.
(close_notify_handler): Close the diag fd on status fd close.
Handle diag close.
(gpgsm_cancel): Handle diag.
(gpgsm_release): Free DIAGNOSTICS.
(gpgsm_new): Support the diag feature.
(start): Set a handler for the diag fd.
(gpgsm_getauditlog): Support GPGME_AUDITLOG_DIAG.
--

Co-authored-by: Andre Heinecke <aheinecke at gnupg.org>
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dd21ec997cf4b6ba18538c63c728478110ad1f60

Git commit 47369569e23482bdd24a136b071192352b1d1347 by Andre Heinecke on 20/03/2019 at 08:56..
qt: Handle diagnostic audit log for CMS

* lang/qt/src/threadedjobmixin.cpp(_detail::audit_log_as_html):
Handle CMS audit log.
https://invent.kde.org/neon/forks/gpgme/-/commit/47369569e23482bdd24a136b071192352b1d1347

Git commit 129def87b262241483ba3a8b6771ad6d07c2e3be by Andre Heinecke on 25/03/2019 at 13:56..
core, w32: Add hack to translate diag logger-fd

* src/assuan-support.c (my_spawn): Add hack to
mark the logger fd for w32spawn translation.

--
The w32 spawn code needs to modify argv with
an updated fd that matches the real id
in the spawned process.

It uses spawn_fd_item_s.arg_loc for that.
We hack it here so that the arg_loc is set
for gpgsm's logger-fd without changing
the assuan API.

GnuPG-Bug-Id: T4426
https://invent.kde.org/neon/forks/gpgme/-/commit/129def87b262241483ba3a8b6771ad6d07c2e3be

Git commit ffdb75217bc09561cf651dab15cd26e0024d89a7 by Andre Heinecke on 26/03/2019 at 11:02..
cpp: Fix GenCardKeyInteractor and extend it

* NEWS: Mention interface change.
* lang/cpp/src/gpggencardkeyinteractor.cpp
(GpgGenCardKeyInteractor::setAlgo): New.
(GpgGenCardKeyInteractor::action),
(GpgGenCardKeyInteractor::nextState: Handle new interface.

--
Tested that this workes with the old interface of GnuPG 2.2.5
and the new interface since GnuPG 2.2.6

GnuPG-Bug-Id: T4428
https://invent.kde.org/neon/forks/gpgme/-/commit/ffdb75217bc09561cf651dab15cd26e0024d89a7

Git commit 10576dc427b3746e2c3b9bc40efe618a3bd40519 by Andre Heinecke on 26/03/2019 at 15:35..
core: Fix a strtoul to strtol

* src/assuan-support.c (my_spawn): Fix using strtoul for
a long.

--
This was commented on in129def87b262 and is correct.
It is signed here to better handle cases where an
invalid handle value (-1) would be passed.
https://invent.kde.org/neon/forks/gpgme/-/commit/10576dc427b3746e2c3b9bc40efe618a3bd40519

Git commit 1b5a6bf27ac9b2e5a1fc4d5e879bd4901fcad5bb by Werner Koch on 26/03/2019 at 16:17..
Release GPGME 1.13.0

* configure.ac: Bump LT versions.
                For C to C33/A22/R0.
                For C++ to C15/A9/R0.
                For Qt to C10/A3/R3.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1b5a6bf27ac9b2e5a1fc4d5e879bd4901fcad5bb

Git commit 5d2b3b28aa2d0d2bb160e92054f11f469471d86f by Werner Koch on 26/03/2019 at 17:42..
Post release updates.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/5d2b3b28aa2d0d2bb160e92054f11f469471d86f

Git commit 213c4bc1eb1f45695cc3955cc722ebb363dcbdd0 by Andre Heinecke on 26/03/2019 at 18:22..
core,w32,glib: Fix build of w32-glib-io.c

* src/w32-glib-io.c (_gpgme_io_pipe, _gpgme_io_connect): Do not
use TRACE_SUC in a return statement.
https://invent.kde.org/neon/forks/gpgme/-/commit/213c4bc1eb1f45695cc3955cc722ebb363dcbdd0

Git commit 19a4c4daa2cfd075b181d5131a4b8b4d54714b8c by Andre Heinecke on 27/03/2019 at 15:12..
core: Fix assuan logger-fd hack for windows

* src/assuan-support.c (my_spawn): Zero is a perfectly fine fd.
https://invent.kde.org/neon/forks/gpgme/-/commit/19a4c4daa2cfd075b181d5131a4b8b4d54714b8c

Git commit 4a4680f8901ecdcb7e8d5ed55f48226ccfccd7c8 by Andre Heinecke on 27/03/2019 at 16:47..
core, w32: Fix format string errors on windows

* src/debug.c (_gpgme_debug): Use gpgrt_vasprintf instead of
vfprintf to have a more portable format.

--
This fixes crashes on Windows because "%zu" is used which
is not natively supported on Windows but which gpgrt supports.
https://invent.kde.org/neon/forks/gpgme/-/commit/4a4680f8901ecdcb7e8d5ed55f48226ccfccd7c8

Git commit 937adfdcbb22f715c5a331e5e2d4546ac15a1b7e by Andre Heinecke on 09/04/2019 at 11:25..
core,w32: Show w32-spawn warning only once

* src/w32-io.c (_gpgme_io_spawn): Show MessageBox only once.

--
This prevents multiple message boxes from showing when
the GPGME installation is unworkable.

GnuPG-Bug-Id: T4453
https://invent.kde.org/neon/forks/gpgme/-/commit/937adfdcbb22f715c5a331e5e2d4546ac15a1b7e

Git commit a82e3a0ae57a48ba173e282a050680751006c074 by Andre Heinecke on 09/04/2019 at 11:42..
core,w32: Improve handling of Unicode paths

* src/dirinfo.c (get_gpgconf_item): Use _gpgme_access.
* src/posix-util.c (_gpgme_access): Add forward to normal access.
* src/sys-util.h (_gpgme_access): New for posix and w32.
* src/w32-io.c (_gpgme_io_spawn): Use _gpgme_crate_process_utf8.
* src/w32-util.c (utf8_to_wchar, utf8_to_wchar0): The usual w32 conv.
(find_program_in_dir): Use _gpgme_access.
(find_program_at_standard_place): Use wchar API and convert to UTF-8.
(_gpgme_access): Convert UTF-8 to wchar and use wchar API.
(_gpgme_create_process_utf8): Convert UTF-8 to wchar and use wchar API.

--
While we should not say that we have full support for unicode path
installations of GnuPG, this ensures that GPGME works if GPGME
itself is installed in a unicode path. e.g.: Libreoffice supports
this.

GnuPG-Bug-Id: T4453

Based on a patch provided by Egor Pugin. Thanks.
https://invent.kde.org/neon/forks/gpgme/-/commit/a82e3a0ae57a48ba173e282a050680751006c074

Git commit ecbba12b869106ba03e10b7b7dd80f74d086831b by Andre Heinecke on 09/04/2019 at 12:11..
core,w32: Fix new w32-util functions

* src/w32-util.c (_gpgme_access): Respect mode parameter.
(_gpgme_create_process_utf8): Convert startupinfo, too.

--
This both did not show up in testing as we only use
mode F_OK and STARTUPINFOA is basically the same as
STARTUPINFOW.

Fixes commit: a82e3a0ae57a48ba173e282a050680751006c074

GnuPG-Bug-Id: T4453
https://invent.kde.org/neon/forks/gpgme/-/commit/ecbba12b869106ba03e10b7b7dd80f74d086831b

Git commit 140d694e1fddf16fa3fd2371b9a852ebb14622c8 by Andre Heinecke on 09/04/2019 at 12:24..
core,w32: Fix minor potential memleak

* src/w32-util.c (_gpgme_create_process_utf8): Free converted
startup info strings.
https://invent.kde.org/neon/forks/gpgme/-/commit/140d694e1fddf16fa3fd2371b9a852ebb14622c8

Git commit 814f6c8de8006830f19a029a879bd92f9e584789 by NIIBE Yutaka on 19/04/2019 at 02:34..
core: Fix error return.

* src/engine.c (_gpgme_set_engine_info): Add error return.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/814f6c8de8006830f19a029a879bd92f9e584789

Git commit 7673ef7953482f42cab50dca1810e5c9d10f461e by NIIBE Yutaka on 19/04/2019 at 05:54..
core: Fix duplication of close_notify_handler for gpgsm.

* src/engine-gpgsm.c [!USE_DESCRIPTOR_PASSING] (gpgsm_new): Remove
last call to _gpgme_io_set_close_notify.

--

It is called just after the code in question for all cases.

GnuPG-bug-id: 4456
Fixes-commit: dd21ec997cf4b6ba18538c63c728478110ad1f60
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7673ef7953482f42cab50dca1810e5c9d10f461e

Git commit 7981ec4147f3058d5b56905903456247993dc6f7 by Andre Heinecke on 24/04/2019 at 10:36..
cpp: Add wrapper for gpgme_set_global_flag

* lang/cpp/src/context.cpp (setGlobalFlag): New.
* lang/cpp/src/global.h (setGlobalFlag): Export it.

--
GnuPG-Bug-Id: T4471
https://invent.kde.org/neon/forks/gpgme/-/commit/7981ec4147f3058d5b56905903456247993dc6f7

Git commit 4746c5c9e2dd9a3ee471a429c19bc1f7fd1d07db by Andre Heinecke on 02/05/2019 at 08:26..
tests: Add cms mode to run-import

* tests/run-import.c (show_usage): Add doc for cms / openpgp.
(main): Handle protocol.
https://invent.kde.org/neon/forks/gpgme/-/commit/4746c5c9e2dd9a3ee471a429c19bc1f7fd1d07db

Git commit 30bd1c097544376f257d426d5feb4706fb5d3afd by Daniel Kahn Gillmor on 03/05/2019 at 02:23..
python: make it easier to run a limited number of tests

* lang/python/tests/Makefile.am: prefer py_tests from the environment
if present.

--

I'm trying to make it nicer/quicker to hack on the testsuite for
python bindings. With this change, if you're improving the python
bindings test suite, you can selectively run only a few specific tests
like so:

   lang/python$ make check py_tests='t-decrypt.py t-decrypt-verify.py'

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/30bd1c097544376f257d426d5feb4706fb5d3afd

Git commit c5c3a9d10be415ea7bc0cd9730ad6085f16ee7a0 by Daniel Kahn Gillmor on 03/05/2019 at 02:23..
tests: add two new types of encrypted data

* tests/gpg/cipher-3.asc: add an encrypted file containing signatures
(one from a known key, and one from an unknown key)
* tests/gpg/cipher-no-sig.asc: add an encrypted file containing no
signatures at all

--

We currently aren't using these files yet, but they should be useful
for exercising the library in unusual circumstances (where the bugs
are).

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/c5c3a9d10be415ea7bc0cd9730ad6085f16ee7a0

Git commit bd2d282e572b5d02669238c9e087259b85638477 by Daniel Kahn Gillmor on 03/05/2019 at 02:23..
python/tests: try to decrypt and verify new test data

* lang/python/tests/t-decrypt.py: test decryption of cipher-3.asc and
cipher-no-sig.asc
* lang/python/tests/t-decrypt-verify.py: test decryption and
verification of cipher-3.asc and cipher-no-sig.asc

--

note that this introduces a failed test -- decrypt-verify.py
misbehaves on cipher-3.asc by throwing a BadSignature even though

GnuPG-bug-id: 4276
Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/bd2d282e572b5d02669238c9e087259b85638477

Git commit 4100794e305ba22241ea5a4f7b42bb5189fbd948 by Daniel Kahn Gillmor on 03/05/2019 at 03:28..
python: stop raising BadSignatures from decrypt(verify=True)

* src/core.py (decrypt): filter out signatures with errors from the
returned verify_result, but avoid raising BadSignatures
* tests/t-decrypt-verify.py: ensure that only a single signature is
returned when evaluating cipher-3.asc, since the other signature is
unknown.

--

This change preserves the invariant that decrypt() only ever returns
valid signatures in the verify_result, but it avoids unnecessary
errors in the face of the presence of an additional bad signature.

GnuPG-bug-id: 4276
Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/4100794e305ba22241ea5a4f7b42bb5189fbd948

Git commit 0ed81498147723f0e9282df5ae08b8b8e40edd2f by Andre Heinecke on 03/05/2019 at 06:49..
cpp: Fix initialization warning

* lanc/cpp/src/gpggencardkeyinteractor.cpp
(GpgGenCardKeyInteractor::Private): Fix initialization warning.
https://invent.kde.org/neon/forks/gpgme/-/commit/0ed81498147723f0e9282df5ae08b8b8e40edd2f

Git commit 33b13d1c290d7ce35c636cce4265b512fb8e64c3 by Andre Heinecke on 03/05/2019 at 08:56..
Always use maintainer mode -Wno cflags

* configure.ac (CFLAGS): Move -Wno flags out of the maintainer mode.

--
It makes sense to have more warnings in maintainer mode and
not more warnings in release builds.

GnuPG-Bug-Id: T4477
https://invent.kde.org/neon/forks/gpgme/-/commit/33b13d1c290d7ce35c636cce4265b512fb8e64c3

Git commit 6c928f1dcd00e924ae66fd96c46504a00997fdec by Daniel Kahn Gillmor on 03/05/2019 at 11:57..
move to DEP-14 debian/experimental branch
https://invent.kde.org/neon/forks/gpgme/-/commit/6c928f1dcd00e924ae66fd96c46504a00997fdec

Git commit 8d13cdc13788428f7559fddac73ea85a9ffb39f7 by Daniel Kahn Gillmor on 03/05/2019 at 11:58..
move to debhelper 12
https://invent.kde.org/neon/forks/gpgme/-/commit/8d13cdc13788428f7559fddac73ea85a9ffb39f7

Git commit bcadc103c9b9ecf67308c236fbffb63fab42e9f1 by Daniel Kahn Gillmor on 03/05/2019 at 11:58..
standards-version: bump to 4.3.0 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/bcadc103c9b9ecf67308c236fbffb63fab42e9f1

Git commit 762b805ae7487a15916d2779a5ccef776a9ad56e by Daniel Kahn Gillmor on 03/05/2019 at 11:59..
New upstream version 1.13.0
https://invent.kde.org/neon/forks/gpgme/-/commit/762b805ae7487a15916d2779a5ccef776a9ad56e

Git commit 89c26a0caaaafdce1ef3f4e0a329b9fd786bbdc1 by Daniel Kahn Gillmor on 03/05/2019 at 11:59..
Update upstream source from tag 'upstream/1.13.0'

Update to upstream version '1.13.0'
with Debian dir be8d9468e7d804f57726f3076e82e4b5ddfbb43c
https://invent.kde.org/neon/forks/gpgme/-/commit/89c26a0caaaafdce1ef3f4e0a329b9fd786bbdc1

Git commit 7ae2e41acb3cb41b6ffac39edc5798335bf20fb6 by Daniel Kahn Gillmor on 03/05/2019 at 12:29..
refresh patches (dropping those already upstream)
https://invent.kde.org/neon/forks/gpgme/-/commit/7ae2e41acb3cb41b6ffac39edc5798335bf20fb6

Git commit 47db2ea888079c7db37736ff06b8bf0f89c7b3a4 by Daniel Kahn Gillmor on 03/05/2019 at 12:29..
refresh lintian-overrides
https://invent.kde.org/neon/forks/gpgme/-/commit/47db2ea888079c7db37736ff06b8bf0f89c7b3a4

Git commit 5c6fff075979472ab5cfabe1335035887086288c by Daniel Kahn Gillmor on 03/05/2019 at 12:29..
add Build-Depends-Package field to libgpgme11.symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/5c6fff075979472ab5cfabe1335035887086288c

Git commit 5a025be4c9919aaf3b710fb5eaf61631b3f29188 by Daniel Kahn Gillmor on 03/05/2019 at 12:29..
gbp import-orig: filter out generated VERSION file and emacs turds
https://invent.kde.org/neon/forks/gpgme/-/commit/5a025be4c9919aaf3b710fb5eaf61631b3f29188

Git commit 6f9f001c7ea884669d5a9e4e364ab7aee2ea82b4 by Daniel Kahn Gillmor on 03/05/2019 at 12:39..
Re-export upstream signing key without extra signatures.

Fixes lintian: public-upstream-key-not-minimal
See https://lintian.debian.org/tags/public-upstream-key-not-minimal.html for more details.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f9f001c7ea884669d5a9e4e364ab7aee2ea82b4

Git commit 25edc5b70f5982ca6c8a085bb19a37f893c0f9f3 by Daniel Kahn Gillmor on 03/05/2019 at 12:39..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/25edc5b70f5982ca6c8a085bb19a37f893c0f9f3

Git commit f303806a110a9813023a5fd9468a55ab0f7fb39d by Andre Heinecke on 06/05/2019 at 06:10..
Merge remote-tracking branch 'origin/dkg/fix-T4276'
https://invent.kde.org/neon/forks/gpgme/-/commit/f303806a110a9813023a5fd9468a55ab0f7fb39d

Git commit 63055f13407760c877e5a3a94e564dfb3077dd47 by Andre Heinecke on 06/05/2019 at 06:36..
Python, doc: Minor style improvement

* lang/python/src/core.py (Context): Retab and shorten
max line length.
https://invent.kde.org/neon/forks/gpgme/-/commit/63055f13407760c877e5a3a94e564dfb3077dd47

Git commit f9c923bb2d87711235312e8085964372d7480ce4 by Andre Heinecke on 06/05/2019 at 14:08..
python: Make EXTRA_DIST files explicit

* configure.ac: Configure new Makefiles.
* lang/python/Makefile.am: Remove dirs from extra dist and use
subdirs.
* lang/python/examples/Makefile.am, lang/python/src/Makefile.am,
lang/python/doc/Makefile.am: New. Files that list EXTRA_DIST files.

--
This is similar to what lang/js does by explicitly listing the
files. This ensures that we have clean distribution tarballs
without accidentall additions that just lay in the directory.

GnuPG-Bug-Id: T4481
https://invent.kde.org/neon/forks/gpgme/-/commit/f9c923bb2d87711235312e8085964372d7480ce4

Git commit 55c4b7d267c937ad2a45b950833ea42fce02c636 by Daniel Kahn Gillmor on 29/05/2019 at 22:00..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/55c4b7d267c937ad2a45b950833ea42fce02c636

Git commit 32c8d9d297106cb4429062e948e3421ced30fc0f by Daniel Kahn Gillmor on 29/05/2019 at 22:01..
fix signature verification failure when decrypting with session keys
https://invent.kde.org/neon/forks/gpgme/-/commit/32c8d9d297106cb4429062e948e3421ced30fc0f

Git commit 5749db4db00d9e1f4051176c9c51e2c7dd456ab6 by Daniel Kahn Gillmor on 29/05/2019 at 23:42..
ship pkgconfig file gpgme.pc
https://invent.kde.org/neon/forks/gpgme/-/commit/5749db4db00d9e1f4051176c9c51e2c7dd456ab6

Git commit 0e9105b2d856785ea7f6b1de9e9831564cc2196e by Daniel Kahn Gillmor on 29/05/2019 at 23:42..
Definitively avoid shipping gpgme-glib.pc

gpgme-glib.pc is only relevant on the win32 platform, which we don't
build in debian.  See https://dev.gnupg.org/T4548 for more discussion.
https://invent.kde.org/neon/forks/gpgme/-/commit/0e9105b2d856785ea7f6b1de9e9831564cc2196e

Git commit 12056290b5a6e773712b7d8b30439f47c9510478 by Daniel Kahn Gillmor on 29/05/2019 at 23:42..
dh_missing --fail-missing
https://invent.kde.org/neon/forks/gpgme/-/commit/12056290b5a6e773712b7d8b30439f47c9510478

Git commit 2ee1d87093d31c3fccf65870379af13db3bc09fa by Daniel Kahn Gillmor on 29/05/2019 at 23:42..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/2ee1d87093d31c3fccf65870379af13db3bc09fa

Git commit 49883023f661a18d73f9f2c7a3a98902af62ef6b by Andre Heinecke on 03/06/2019 at 11:01..
Add NEWS for 1.13.1

* NEWS: Add news for 1.13.1

--
https://invent.kde.org/neon/forks/gpgme/-/commit/49883023f661a18d73f9f2c7a3a98902af62ef6b

Git commit 47135ffdb923de66bc275a37e31811ad22c73dd7 by NIIBE Yutaka on 04/06/2019 at 01:38..
python: Fix typo in DecryptionError exception.

* lang/python/src/errors.py (DecryptionError): Rename from
DeryptionError.
(UnsupportedAlgorithm): Use DecryptionError.

--

GnuPG-bug-id: 4478
Reported-by: Jan Girlich
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/47135ffdb923de66bc275a37e31811ad22c73dd7

Git commit e9ca36f876e1066227668981f5a9e1a7f1031d9e by Werner Koch on 04/06/2019 at 06:27..
core: Make gpgme_op_encrypt_ext work for CMS.

* src/engine-gpgsm.c (gpgsm_encrypt): Fix argument check.
--

It is pretty obvious thar the string based new encrypt function has
never been tested for S/MIME.  The fix was easy.  A followup patch
will extend it to allow for keywords in the future.

GnuPG-bug-id: 4556
Fixes-commit: a1f76b3b54b75a150fe272b804d85ffd40a507a6
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e9ca36f876e1066227668981f5a9e1a7f1031d9e

Git commit 1024884e07f750ce781fa74dffa62e126bdda622 by Werner Koch on 04/06/2019 at 07:29..
core: Implement recpstring option parsing for gpgsm.

* src/engine-gpg.c (append_args_from_recipients_string): Detect bad
options.
* src/engine-gpgsm.c (set_recipients_from_string): Implement option
parsing.
--

The only option we actually implement is "--" but the code layout is
now very simlar to engine-gpg and can easily be extended if ever
needed.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1024884e07f750ce781fa74dffa62e126bdda622

Git commit fabe96126b4ed9c5e07b713813d7db26a02e5e5f by Werner Koch on 04/06/2019 at 08:42..
json: Improve handling of large exponents in the JSON parsor.

* src/cJSON.c: Include stdint.h.
(parse_number): Avoid overflob in SUBSCALE and cap integer values.
--

GnuPG-bug-id: 4330
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fabe96126b4ed9c5e07b713813d7db26a02e5e5f

Git commit f56c996318dfa1c9f0d10582b18c2fce10d24668 by Werner Koch on 04/06/2019 at 08:56..
json: Print "nan", "-inf", "inf" if needed.

* src/cJSON.c (print_number): Print NaN and INF.
--

GnuPG-bug-id: 4328
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f56c996318dfa1c9f0d10582b18c2fce10d24668

Git commit 856d2e8d64f668855b1c22d3d38fe783904c6c48 by Werner Koch on 05/06/2019 at 11:11..
core: Avoid explicit locks in the debug code.

* src/debug.c (debug_lock): Remove.  Also remove all users.
(_gpgme_debug): Use gpgrt_bsprintf to prepare the output and finally
print using standard fprintf.  Reformat to prefix to be narrower.
--

Note that the locks are now implicitly done using the systems stdio.

The threadid is now printed with 4 digits in hex and thus without the
angle brackets and the 0x.  However it is still a hex number even if it
may look like an octal number.  The hex letters are uppercase to make
searching in locks easier iff the threadid happens to have a letter in
it.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/856d2e8d64f668855b1c22d3d38fe783904c6c48

Git commit 8f9f3224aac78ce9d54e19e73acf7ab659787168 by Werner Koch on 05/06/2019 at 13:54..
core: Improve the debug messages even more.

* src/debug.c (_gpgme_debug): Add arg LINE.  Chnage all callers.
(_gpgme_debug_begin): Remove.
* src/debug.h (TRACE_SEQ): Use the LINE arg of _gpgme_debug.
--

This includes chnages to always print fds in decimal as weel as
tweaking the TARCE_SEQ function to make use of the new machinery.

The standard 'tag' can now always be NULL and no tag information will
be printed.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8f9f3224aac78ce9d54e19e73acf7ab659787168

Git commit 9bbe15ebbc41533fa219d5b3017a26a75bc72731 by Andre Heinecke on 05/06/2019 at 14:20..
tests,w32: Fix thread creation in run-threaded

* tests/run-threaded.c (create_thread): Check proper return
value and not return value of CloseHandle.
https://invent.kde.org/neon/forks/gpgme/-/commit/9bbe15ebbc41533fa219d5b3017a26a75bc72731

Git commit 3a11421d0f63b8cb5afa407cd65f763b11033241 by Andre Heinecke on 05/06/2019 at 14:20..
tests: Avoid variable named the same as a macro

* tests/run-threaded.c (decrypt, verify): Don't use a variable name
that is also a macro.

--
It just looks confusing and strange at first glance.
https://invent.kde.org/neon/forks/gpgme/-/commit/3a11421d0f63b8cb5afa407cd65f763b11033241

Git commit 3a3648e3a56712261bda4fa866bd2419a740cec8 by Andre Heinecke on 05/06/2019 at 14:20..
tests: Use synced output for error in run-threaded

* tests/run-threaded.c (do_data_op): Use synced out macro.
https://invent.kde.org/neon/forks/gpgme/-/commit/3a3648e3a56712261bda4fa866bd2419a740cec8

Git commit 0f68c9f16bdae7295cac4cbf3c9a197840989a85 by Werner Koch on 05/06/2019 at 14:48..
core: Prettify _gpgme_io_select debug output again and fix TRACE_SYSRES.

* src/debug.c (_gpgme_debug): Take better care of NULL userinfo.
(_gpgme_debug_end): Rework.
(_trace_sysres): Print ERRNO and not the supplied RES.
--

The TRACE_SYSRES patch fixes
Regression-due-to: 7a1e7006d06fdbab86ea79a197c316744b09d933

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0f68c9f16bdae7295cac4cbf3c9a197840989a85

Git commit 024a7f75d4b8e017b92a13552b23e7fb1d22a5ce by Andre Heinecke on 05/06/2019 at 15:23..
tests: Implement import in run-threaded

* tests/run-threaded.c (import): New.
(do_data_op): Call it.
https://invent.kde.org/neon/forks/gpgme/-/commit/024a7f75d4b8e017b92a13552b23e7fb1d22a5ce

Git commit e6f28273062ff26344163e219c1b784ae99de980 by Andre Heinecke on 06/06/2019 at 07:19..
tests: Add option "allow-del" to run-threaded

* tests/run-threaded.c (main): Handle allow-del.
(allow-del): New. Variable to allow deletion of keys.
(import): Delete key after import if allow-del is set.
(delete_impres): Delete keys from an import result.
(delete_fpr): Delete a key by fingerprint.

--
This is intended to test write access and locking of the
keyring by repeatedly importing and deleting pubkeys.

It is an option because it might cause keyring corruption
etc. so it should be explicitly enabled.
https://invent.kde.org/neon/forks/gpgme/-/commit/e6f28273062ff26344163e219c1b784ae99de980

Git commit 6b9ff1ba391a4364b37cb116748194f3f33b4f12 by Werner Koch on 06/06/2019 at 16:57..
core: Fix error return value of _gpgme_run_io_cb.

* src/wait.c (_gpgme_run_io_cb): Fix return code.
--

The function needs to return an gpg_error_t and not ERRNO.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/6b9ff1ba391a4364b37cb116748194f3f33b4f12

Git commit f84abcad253ace782708c05760e52793814896f4 by Werner Koch on 06/06/2019 at 16:57..
core: Add commented debug helper to posix-io.c.

* src/posix-io.c (_gpgme_is_fd_valid): New out-commented function.
--

This code is sometimes useful to track down invalid file descriptors.
We keep it commented in the code.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f84abcad253ace782708c05760e52793814896f4

Git commit f6fd90c99aea8b604d76ae49d29bc5269c236a98 by Werner Koch on 06/06/2019 at 16:59..
tests: Minor fix to run-threaded.c.

* tests/run-threaded.c (random_data_close): Correct FD test.
--

An invalid DS is -1 and not 0; this fix is for correctness and does
not chnage anything in the real world.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f6fd90c99aea8b604d76ae49d29bc5269c236a98

Git commit 4f11210b21a1914a1daf67474e9b82084b2cac01 by Werner Koch on 13/06/2019 at 06:46..
core: At debug levels up to 9 print only an ascii dump.

* src/debug.c (_gpgme_debug_buffer): Switch between two output
formats.
--

The new format is much more practical than the bunch of hex digits
followed by just 16 ascii chars.  To get the old behaviour use a debug
level of 10.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4f11210b21a1914a1daf67474e9b82084b2cac01

Git commit ad1395f210f3a3d5839f482f1933eac80a94d174 by Werner Koch on 13/06/2019 at 09:56..
python: Set a default-key into gpg.conf for the tests.

* lang/python/tests/Makefile.am (gpg.conf): Set a default key.

--

It seems we need to set a default key because at least t-sign.py does
not specify the key to use and we do not want to rely on the order of
keys in the keyring.

Also
Fixes-commit: f3ca2c9ce9fd4a03e293065f10b92589a7e642d6

gpg 2.0 is end-of-life and we don't need these extra options anymore.
In fact they for the use of some gpg version and don't use the version
gpgconf knows about.  This also aligns the python tests to what we use
for the C test suite.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ad1395f210f3a3d5839f482f1933eac80a94d174

Git commit 7d0a979c07d2a32c1e39a9403f009cbe026f77ff by Werner Koch on 13/06/2019 at 13:18..
python: Fix regression in t-decrypt-verify test.

* lang/python/tests/t-decrypt-verify.py: Comment recent changes.
--

Fixes-commit: bd2d282e572b5d02669238c9e087259b85638477
GnuPG-bug-id: 4276
https://invent.kde.org/neon/forks/gpgme/-/commit/7d0a979c07d2a32c1e39a9403f009cbe026f77ff

Git commit ea11c2a13cd44caf0bab395bd5132bf232318ad8 by Werner Koch on 13/06/2019 at 13:18..
Release 1.13.1

* configure.ac: Bump LT versions to c=C33/A22/R1 cpp=C16/A10/R0
qt=C10/A3/R4.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ea11c2a13cd44caf0bab395bd5132bf232318ad8

Git commit 44cedf97962a141f752fc840de69eb3d493fb56a by Werner Koch on 13/06/2019 at 13:35..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/44cedf97962a141f752fc840de69eb3d493fb56a

Git commit f5e27a12d3fd22b95e83c03a5650659bfa2299b9 by Maximilian Krambach on 19/06/2019 at 10:58..
js: Error handling for browser errors

--

* Connection.js
  - Add some meaningful nativeMessaging feedback for failing
    communication due to misconfiguration or other browser-originated
    fails
  - add an "isDisconnected" property
  - "isNativeHostUnknown" tries to match browser's feedback string if
    the browser does not find gpgme-json
* init.js
  - initialization will now reject with a more meaningful error if the
    configuration is not set up or other browser-based errors
    (chrome.runtime.lastError) are present. This should speed up
    the normal initialization (not having to waiting for a timeout
    any more in case of improper setup)
* errors.js
  - CONN_NATIVEMESSAGE: New error that passes the browser's
    nativeMessaging error
  - CONN_NO_CONFIG: native messaging error indicating that the
    nativeMessaging host was not set up properly
* unittests.js:
  - added the "isDisconnected" property to the startup tests
  - added tests for proper behavior of connection checks
https://invent.kde.org/neon/forks/gpgme/-/commit/f5e27a12d3fd22b95e83c03a5650659bfa2299b9

Git commit ed1dffb4748e686e525883b5efde9288b8e003d3 by Maximilian Krambach on 03/07/2019 at 14:19..
js: improve connection check

--

* Connection.js: In some cases, the browser disconnect does not
  happen inmediately (e.g. wrong extension for the app). I added a
  delay of 25 ms to see if the connection was closed by the browser.
  Also, I tried to make the checkConnection more readable.
https://invent.kde.org/neon/forks/gpgme/-/commit/ed1dffb4748e686e525883b5efde9288b8e003d3

Git commit 59550710baa39349e243683071c907d6b22d3524 by Daniel Kahn Gillmor on 08/07/2019 at 02:33..
Merge branch 'debian/experimental' into debian/master
https://invent.kde.org/neon/forks/gpgme/-/commit/59550710baa39349e243683071c907d6b22d3524

Git commit 98bc7497f2c753c6bcfa73be53a6ecdbab3565e9 by Daniel Kahn Gillmor on 08/07/2019 at 02:53..
d/{control,gpb.conf}: fix up Vcs branch name for DEP-14
https://invent.kde.org/neon/forks/gpgme/-/commit/98bc7497f2c753c6bcfa73be53a6ecdbab3565e9

Git commit 6a032fcd02e88b28986ba11ae5da1cd46e2c0a39 by Daniel Kahn Gillmor on 08/07/2019 at 02:54..
New upstream version 1.13.1
https://invent.kde.org/neon/forks/gpgme/-/commit/6a032fcd02e88b28986ba11ae5da1cd46e2c0a39

Git commit 70a60a997d52c793036733c134b3a76c36b380fe by Daniel Kahn Gillmor on 08/07/2019 at 02:54..
Update upstream source from tag 'upstream/1.13.1'

Update to upstream version '1.13.1'
with Debian dir 2cc976ef399899f395aaf6f0b634eaf961f2dbe4
https://invent.kde.org/neon/forks/gpgme/-/commit/70a60a997d52c793036733c134b3a76c36b380fe

Git commit 6f5879419eaa011cda5c4aeed61f0a9b43ec79d7 by Daniel Kahn Gillmor on 08/07/2019 at 02:56..
make sure to test python decryption and verification
https://invent.kde.org/neon/forks/gpgme/-/commit/6f5879419eaa011cda5c4aeed61f0a9b43ec79d7

Git commit d9387650ffb159bbd04db74c4a1dba6f94e83116 by NIIBE Yutaka on 12/07/2019 at 05:53..
python: doc: Add suffix for org files.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d9387650ffb159bbd04db74c4a1dba6f94e83116

Git commit 36428d8cf153a33faac6a951752cdc76e23f9737 by NIIBE Yutaka on 12/07/2019 at 05:53..
python: doc: Remove generated files, put rules in Makefile.

* lang/python/doc/Makefile.am (EXTRA_DIST): Remove files not
distributed like files under meta.
* Add rules to generate .rst and .texi files.
* lang/python/doc/rst: Remove .rst files to be generated.
* lang/python/doc/texinfo: Remove .texi files to be generated.

GnuPG-bug-id: 4275
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/36428d8cf153a33faac6a951752cdc76e23f9737

Git commit 6f4a886b30caaac3a30fcf30a7525d656d7e25ce by Andre Heinecke on 16/07/2019 at 09:39..
core: Fix arg counting in enginge-gpg

* src/engine-gpg.c (build_argv): Properly check for all
arguments and allocate memory for them.

--
This fixes a potential buffer overflow which could be created
by using unusual and partially contradictory options.
Like offline and auto-key-locate together while
using ignore-mdc-error.
As the list of arguments should not be user controlled the
impact of this is very low.

To ensure that this does not happen in the future an
assert is also added with this patch.
https://invent.kde.org/neon/forks/gpgme/-/commit/6f4a886b30caaac3a30fcf30a7525d656d7e25ce

Git commit b97434fbf087f3176daf39699ff579d38d265317 by NIIBE Yutaka on 06/08/2019 at 02:19..
json: Fix t-decrypt-verify.out for GnuPG >= 2.3.

* tests/json/t-decrypt-verify.out.json: Remove check with key of
04071FB807287134.

--

GnuPG 2.3 changes how public key decryption works; It collects list of
PUBKEY_ENC packets and then processes an ENCRYPTED* packet.  At the
stage of processing an ENCRYPTED* packet, it checks if private keys
can decrypt any of PUBKEY_ENC packets.  It does not necessarily
examine all of PUBKEY_ENC packets.  Only when it finds a PUBKEY_ENC
packet cannot be decrypted, it reports STATUS_NO_SECKEY with keyid of
that packet.

GnuPG 2.2 or older tries PUBKEY_ENC packets in order, and the first
successful PUBKEY_ENC packet is used.  Rest of PUBKEY_ENC packets are
not examined, but STATUS_NO_SECKEY with keyid is reported even when
there is a valid private key.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b97434fbf087f3176daf39699ff579d38d265317

Git commit ef8091358f4493c25e79377bc5cd3b62e184b5c8 by Daniel Kahn Gillmor on 23/08/2019 at 16:20..
Standards-Version: bump to 4.4.0 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/ef8091358f4493c25e79377bc5cd3b62e184b5c8

Git commit 76f3dac26a9b6c12c8dd7e0684add18e7a7b3d71 by Daniel Kahn Gillmor on 24/08/2019 at 02:16..
Drop python2 support, only build for python3

The only reverse dependency in debian for python-gpg is an older
version of dput.  Newer versions of dput use python3 anyway, and
python 2 is going away.

This also makes the build simpler and quicker, and makes any flakiness
in the test suite less likely to be triggered.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/76f3dac26a9b6c12c8dd7e0684add18e7a7b3d71

Git commit cca3edca66df4dd21868dfe44488d2cf7206f21c by Daniel Kahn Gillmor on 24/08/2019 at 02:16..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/cca3edca66df4dd21868dfe44488d2cf7206f21c

Git commit a9f2ac06e0bd22bd67723d22b748303a923d7420 by Daniel Kahn Gillmor on 26/08/2019 at 19:24..
go with upstream python, ignoring intermittent decrypt problems
https://invent.kde.org/neon/forks/gpgme/-/commit/a9f2ac06e0bd22bd67723d22b748303a923d7420

Git commit 942154fe894a2b0ab81abad88a4f70d64ae35e9b by Daniel Kahn Gillmor on 26/08/2019 at 19:24..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/942154fe894a2b0ab81abad88a4f70d64ae35e9b

Git commit 2b2977c215fe9e5bbd6ac6309d500445cd3ba7d7 by Werner Koch on 01/10/2019 at 06:08..
doc: Remove cruft from a doc entry.

--

Reported-by: dkg at fifthhorseman.net
https://invent.kde.org/neon/forks/gpgme/-/commit/2b2977c215fe9e5bbd6ac6309d500445cd3ba7d7

Git commit fe2892618c20cd40c342cce26ffb6ac4644fd3c3 by Andre Heinecke on 28/10/2019 at 15:02..
core,w32: Initialize dbg_help for socket debugging

* src/w32-io.c (_gpgme_io_select): Initialize dbg_help.

--
This fixes a crash on Windows because dbg_help might
be used unitialized.
https://invent.kde.org/neon/forks/gpgme/-/commit/fe2892618c20cd40c342cce26ffb6ac4644fd3c3

Git commit 9d836988188200aa6c7de1db02b08ad73f770005 by Andre Heinecke on 29/10/2019 at 10:04..
cpp: Minor coding style fix

--
https://invent.kde.org/neon/forks/gpgme/-/commit/9d836988188200aa6c7de1db02b08ad73f770005

Git commit 0224408c6332648461bdbba562f1a61c947c8ed3 by Andre Heinecke on 29/10/2019 at 15:11..
core: Add cert-notation support and extended-edit

* src/context.h (gpgme_context): Add new flag for extended-edit.
* src/engine-gpg.c (append_args_from_sig_notations): Add flags to
control the kind of notations.
(gpg_edit): Respect extended-edit and notations.
(gpg_encrypt_sign, gpg_sign): Update call to
append_args_from_sig_notations.
* src/gpgme.c (gpgme_set_ctx_flag, gpgme_get_ctx_flag): Support
extended-edit.
* NEWS, doc/gpgme.texi: Mention extended-edit.

--
This provides a way to get the extended key-edit interface without
breaking bad state machines that rely on the current command flow.

A use case for this is to enable multiple local signatures, which
can be used together with annotations for:

GnuPG-Bug-Id: T4734
https://invent.kde.org/neon/forks/gpgme/-/commit/0224408c6332648461bdbba562f1a61c947c8ed3

Git commit 83ecf1686a9a4e7de3a7b176cf272d9f9f640445 by Andre Heinecke on 29/10/2019 at 15:24..
cpp: Add convenience API to obtain remarks

* lang/cpp/src/key.h, lang/cpp/src/key.cpp (UserID::remark): New.

--
A remark made by one key on another is a signature notation on
a user id certification signature with the name "rem at gnupg.org".

This helps with:
GnuPG-Bug-Id: T4734
https://invent.kde.org/neon/forks/gpgme/-/commit/83ecf1686a9a4e7de3a7b176cf272d9f9f640445

Git commit 36f7f7a478228a64d3d51a4901a264c8f55f90bb by Andre Heinecke on 29/10/2019 at 15:31..
cpp: Add support for multiple keysigs in edit

* lang/cpp/src/gpgsignkeyeditinteractor.cpp
(GpgSignKeyEditInteractor::setDupeOk): New.
(makeTable): Add new tansitions.
(SignKeyState): Add DUPE_OK Status.
(GpgSignKeyEditInteractor::action): Handle DUPE_OK.
(GpgSignKeyEditInteractor::Private::Private): Carry flag.

--
When extended-edit is enabled this can be used to answer
the "dupe_ok" query from the edit-key with yes.

This is for:
GnuPG-Bug-Id: T4734
https://invent.kde.org/neon/forks/gpgme/-/commit/36f7f7a478228a64d3d51a4901a264c8f55f90bb

Git commit 373acd6923f2fc968fb870d2a8a9b49398cb652f by Andre Heinecke on 29/10/2019 at 15:33..
qt: Extend signkeyjob to handle remarks and dups

* lang/qt/src/qgpgmesignkeyjob.cpp: Handle remarks and
dupeOK.
* lang/qt/src/signkeyjob.h (SignKeyJob::setDupeOk),
(SignKeyJob::setRemark): New.

--
This API makes it easy for Kleopatra to add remarks for:
GnuPG-Bug-Id: T4734
https://invent.kde.org/neon/forks/gpgme/-/commit/373acd6923f2fc968fb870d2a8a9b49398cb652f

Git commit 1f3ca698f16465761649d402b999f0e2c9184344 by Andre Heinecke on 29/10/2019 at 15:36..
qt,tests: Add test for remarks

* lang/qt/tests/t-various.cpp (testRemark): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/1f3ca698f16465761649d402b999f0e2c9184344

Git commit 1242c6c93ac63383f648dd84cff847b86f4925f9 by Andre Heinecke on 29/10/2019 at 15:43..
core: Fix parsing of userid sigs after a subpkg

* src/keylist.c (keylist_colon_handler): Do not clear
out the tmp_uid when a subpacket line is encountered.

--
When the uid is cleared no more signatures following
the subpacket are parsed, so we now no longer clear
it when a subpacket is encountered.
https://invent.kde.org/neon/forks/gpgme/-/commit/1242c6c93ac63383f648dd84cff847b86f4925f9

Git commit a4d5394b4607382d846e8c156439ac182f9945d7 by Andre Heinecke on 01/11/2019 at 11:00..
cpp: Add env var to control editinteractor debug

* lang/cpp/src/editinteractor.cpp (EditInteractor::Private::Private):
Read "GPGMEPP_INTERACTOR_DEBUG" env var.
(EditInteractor::Private::~Private): Close debug file.

--
While it was possible for the application to control the
debug through setDebugChannel it is often times helpful
to just debug without changing the application using
GPGME
https://invent.kde.org/neon/forks/gpgme/-/commit/a4d5394b4607382d846e8c156439ac182f9945d7

Git commit 266e05eee859b83d97079c2fbbd2f1da010fa412 by Andre Heinecke on 01/11/2019 at 11:02..
cpp: Fix adding duplicated sigs on multiple uids

* lang/cpp/src/gpgsignkeyeditinteractor.cpp: Add another
state DUPE_OK2 to allow gpg looping over all uids.

--
When duplicated signatures should be added to multiple
user ids GnuPG will ask for each uid so we have to
add a transition for that.

GnuPG-Bug-Id: T4734
https://invent.kde.org/neon/forks/gpgme/-/commit/266e05eee859b83d97079c2fbbd2f1da010fa412

Git commit 174caaa6f53e1125724a47dad3a5c991298aee6d by Andre Heinecke on 01/11/2019 at 11:04..
cpp: Minor optimization in remark lookup

* lang/cpp/src/key.cpp (UserID::remark): Use C-API.

--
The other parts of that function already use the C API
so we can also avoid function calls for the keyListMode.
https://invent.kde.org/neon/forks/gpgme/-/commit/174caaa6f53e1125724a47dad3a5c991298aee6d

Git commit d61491dd25d86a2bee54e4be29b715d97840be67 by Andre Heinecke on 01/11/2019 at 11:05..
qt: Allow adding empty remarks

* lang/qt/src/qgpgmesignkeyjob.cpp (sign_key): Allow empty
remarks.
https://invent.kde.org/neon/forks/gpgme/-/commit/d61491dd25d86a2bee54e4be29b715d97840be67

Git commit 067b1a73d98615ea9de562447c2ec699a0536270 by Werner Koch on 04/11/2019 at 08:15..
doc: Note the need for a base tag.

--
https://invent.kde.org/neon/forks/gpgme/-/commit/067b1a73d98615ea9de562447c2ec699a0536270

Git commit 08933c183a4c299eb4696092d6d229f607fce985 by Andre Heinecke on 04/11/2019 at 10:17..
cpp: Fix dupe_ok state for single uid

* lang/cpp/src/gpgsignkeyeditinteractor.cpp (makeTable):
Add transition from command to dupe_ok
https://invent.kde.org/neon/forks/gpgme/-/commit/08933c183a4c299eb4696092d6d229f607fce985

Git commit db888b1cc05723423a3154fe89e6191812c9c869 by Andre Heinecke on 04/11/2019 at 10:18..
qt,tests: Move remarks test out and extend it

* lang/qt/tests/t-various.cpp (testRemarks): Move out.
* lang/qt/tests/t-remarks.cpp: New.
* lang/qt/tests/Makefile.am: Update accordingly.
--
While t-various is nice to add a quick test for more
extensive stuff it is better to move it in its own test.

This also tests with a key that has only a single uid.
https://invent.kde.org/neon/forks/gpgme/-/commit/db888b1cc05723423a3154fe89e6191812c9c869

Git commit cb7668caeb71429afce1aded9128334182b233e1 by Andre Heinecke on 04/11/2019 at 12:54..
cpp: Add API to obtain mutliple remarks

* lang/cpp/src/key.cpp, lang/cpp/src/key.h (UserID::remarks): New.
* NEWS: Mention this.

--
This can be useful if we want to show remarks made by others, too.

For:
GnuPG-Bug-Id: T4734
https://invent.kde.org/neon/forks/gpgme/-/commit/cb7668caeb71429afce1aded9128334182b233e1

Git commit 9cf4db1e5271ae1dd6f7ecb11513203cec368bc6 by Andre Heinecke on 04/11/2019 at 12:56..
qt, tests: Add testcase for multiple remarsk

* lang/qt/tests/t-remarks.cpp (testMultipleRemarks): New.
https://invent.kde.org/neon/forks/gpgme/-/commit/9cf4db1e5271ae1dd6f7ecb11513203cec368bc6

Git commit 1b840a151ad7f9680ec5144da5efb0ee6c1dcf1f by NIIBE Yutaka on 06/11/2019 at 01:30..
python: Fix how to generate documentation.

* lang/python/doc/Makefile.am: Explicitly write rules to generate rst
and texinfo files.

Fixes-commit: 36428d8cf153a33faac6a951752cdc76e23f9737
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1b840a151ad7f9680ec5144da5efb0ee6c1dcf1f

Git commit a56f6015e9518180237a70b8abc5ab9804212986 by Andre Heinecke on 06/11/2019 at 08:10..
qt,tests: Add test to add an exportable certify

* lang/qt/test/t-remarks.cpp (testRemarkReplaceSingleUIDExportable):
New.

--
Just checking in case the edit-key offers new states for that.
https://invent.kde.org/neon/forks/gpgme/-/commit/a56f6015e9518180237a70b8abc5ab9804212986

Git commit 024edbbd3c0059654e13c1c6acf78456450469ab by Andre Heinecke on 06/11/2019 at 08:12..
qt, tests: Replace accidentally commited assert

* lang/qt/test/t-remarks.cpp (testRemarkReplaceSingleUIDExportable):
Use QVERIFY instead of assert.

--
An assert causes the temp directory not to be cleaned up. I
use this to analyze test failures.
If you want to see the tests home directory after a failure you
can just change a failing verify to an assert.
https://invent.kde.org/neon/forks/gpgme/-/commit/024edbbd3c0059654e13c1c6acf78456450469ab

Git commit e7b5c6405da515101f62acce2837e6c0cc115b76 by Andre Heinecke on 06/11/2019 at 08:21..
qt, tests: Add check for supported versions

* lang/qt/tests/t-encrypt.cpp (decryptSupported): Moved to
t-support as loopbackSupported.
* lang/qt/tests/t-remarks.cpp: Check for loopbackSupported.
* lang/qt/tests/t-support.cpp, lang/qt/tests/t-support.h
(loopbackSupported): New.

--
This ensures that the tests do not fail with GnuPG 2.0.x
https://invent.kde.org/neon/forks/gpgme/-/commit/e7b5c6405da515101f62acce2837e6c0cc115b76

Git commit c49324200734e8ee8524bc096195e24e8aae87cb by NIIBE Yutaka on 07/11/2019 at 23:07..
qt,tests: Take care for old DSA key using deprecated digest algo.

* lang/qt/tests/t-remarks.cpp (initTestCase): Supply
allow-weak-key-signatures flag for GnuPG 2.3, which
normally rejects use of SHA1 digest.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c49324200734e8ee8524bc096195e24e8aae87cb

Git commit 1b2ad3b73c37d0583b8e438b4707dca60e26ae7e by Andre Heinecke on 12/11/2019 at 10:04..
doc: Remove UI Server documentation

* doc/Makefile.am: Remove uiserver.texi
* doc/gpgme.texi: Remove UI-Server mentions.
* doc/uiserver.texi: Removed.

--
This prepares the removal of UI Server from implementing
applications like Kleopatra.
The only user of the UI Server is GpgEX and even that
does not need it at all and is better served with process
calls.

GnuPG-Bug-Id: T4030
https://invent.kde.org/neon/forks/gpgme/-/commit/1b2ad3b73c37d0583b8e438b4707dca60e26ae7e

Git commit d480a3c8f3a3fff867b84fd8feca9f111ae4adc7 by Werner Koch on 27/11/2019 at 19:40..
core,w32: Silence compiler warnings.

* src/w32-util.c (_gpgme_w32_cancel_synchronous_io): Add some casts.
--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d480a3c8f3a3fff867b84fd8feca9f111ae4adc7

Git commit c0c97dbbe6e08d338ba56abec023bd57287e3239 by Daniel Kahn Gillmor on 03/12/2019 at 23:42..
gpgme-tool: Fix help text for INCLUDE_CERTS.

* src/gpgme-tool.c (hlp_include_certs): added missing newline.

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/c0c97dbbe6e08d338ba56abec023bd57287e3239

Git commit 5430298008bbef06f89abc1f0aaffdebc54dad27 by Daniel Kahn Gillmor on 04/12/2019 at 15:53..
Update standards version to 4.4.1, no changes needed.

Fixes lintian: out-of-date-standards-version
See https://lintian.debian.org/tags/out-of-date-standards-version.html for more details.
https://invent.kde.org/neon/forks/gpgme/-/commit/5430298008bbef06f89abc1f0aaffdebc54dad27

Git commit 39e8511de5ea8311ba34f9e8d91878cecbb954f8 by Daniel Kahn Gillmor on 04/12/2019 at 16:15..
add buildtime and runtime tests for platform time limits
https://invent.kde.org/neon/forks/gpgme/-/commit/39e8511de5ea8311ba34f9e8d91878cecbb954f8

Git commit 9bc498a83a3a5aeea490bbdb8a5776144e545a8b by Daniel Kahn Gillmor on 04/12/2019 at 18:46..
remove python-gpg autopkgtest entirely (Closes: #943390)

We don't ship python2 packages any more.
https://invent.kde.org/neon/forks/gpgme/-/commit/9bc498a83a3a5aeea490bbdb8a5776144e545a8b

Git commit 8b540fb3fc42009c8cee3988abc24fb81ef9e6e9 by Daniel Kahn Gillmor on 04/12/2019 at 20:11..
update lintian-overrides for untracked C++ symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/8b540fb3fc42009c8cee3988abc24fb81ef9e6e9

Git commit ae4d7761a15b82eb98b0bcc72af2ae2e8973e1f9 by NIIBE Yutaka (on behalf of Daniel Kahn Gillmor) on 06/12/2019 at 01:41..
gpg: Avoid error diagnostics with --override-session-key when verifying

* src/engine-gpg.c (gpg_decrypt): only send --no-keyring when we are
not verifying.

--

Without this change, the signature verification would fail.  This
problem was introduced in bded8ebc59c7fdad2617f4c9232a58047656834c in
an attempt to avoid an error when *not* verifying.  Clearly more test
suite coverage is needed to avoid introducing this sort of problem in
the future.

GnuPG-bug-id: 3464
Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/ae4d7761a15b82eb98b0bcc72af2ae2e8973e1f9

Git commit 7e7eaf43424556c3c25edc7b67e760ab60de55ce by Andre Heinecke on 11/12/2019 at 09:30..
Revert "doc: Remove UI Server documentation"

This reverts commit 1b2ad3b73c37d0583b8e438b4707dca60e26ae7e.

--
Just removing the documentation was not the right way as
this is still in use.
https://invent.kde.org/neon/forks/gpgme/-/commit/7e7eaf43424556c3c25edc7b67e760ab60de55ce

Git commit 5eeae535ee0df981d8ae8b758b5bb0d190c7fd89 by Werner Koch on 13/12/2019 at 14:11..
core: Extend gpgme_user_id_t with uidhash member.

* src/gpgme.h.in (struct _gpgme_user_id): Add field 'uidhash'.
* src/key.c (gpgme_key_unref): Free it.
* src/keylist.c (keylist_colon_handler): Set it.
* tests/run-keylist.c (main): Print it.
--

The uidhash value is part of gpg's output since the year 2005.  This
now adds support to gpgme.  The application for uidhash is to select
a user id in an edit interactor: Instead of giving the number of the
user id, the uidhash value can be be used to avoid tracking the user
id numbers.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/5eeae535ee0df981d8ae8b758b5bb0d190c7fd89

Git commit 194272dbc3e326cc32c1464bc6fda0c0d10b5559 by Andre Heinecke on 13/12/2019 at 17:06..
cpp, qt: Use uidhash to select uids for signing

* lang/cpp/src/gpgsignkeyeditinteractor.cpp (action):
Use uidhash instead of number.
(GpgSignKeyEditInteractor::setKey): New.
* lang/cpp/src/gpgsignkeyeditinteractor.h: Update accordingly.
* lang/cpp/src/key.h, lang/cpp/src/key.cpp: Wrap uidhash.
* lang/qt/src/qgpgmesignkeyjob.cpp: Set the key.

--
Using the uidhash avoids problems when the user ids
on --edit-key are different ones then the uids
captured by gpgme when listing keys. Or if
they are in a different order. This can happen
with cached keys or keys with user attributes.
https://invent.kde.org/neon/forks/gpgme/-/commit/194272dbc3e326cc32c1464bc6fda0c0d10b5559

Git commit d3d567fb8613e6e9c8b060acda518d42609ceccc by Daniel Kahn Gillmor on 08/01/2020 at 22:19..
include python 3.8
https://invent.kde.org/neon/forks/gpgme/-/commit/d3d567fb8613e6e9c8b060acda518d42609ceccc

Git commit bd433fc7e39eb14a62ae329b66eaf8ae1a570170 by Daniel Kahn Gillmor on 09/01/2020 at 15:47..
Use default Python system configuration module

Note that this may re-open #912898, but is necessary, because python
3.8 uses _sysconfigdata__${DEB_HOST_ARCH_OS}_${DEB_HOST_MULTIARCH}
instead of _sysconfigdata_m_${DEB_HOST_ARCH_OS}_${DEB_HOST_MULTIARCH}
https://invent.kde.org/neon/forks/gpgme/-/commit/bd433fc7e39eb14a62ae329b66eaf8ae1a570170

Git commit 39052913f2154fa8e9575727e27d4101ef8b6460 by Andre Heinecke on 17/01/2020 at 11:42..
core: Add MacOS fallbacks to look for binaries

* src/posix-util.c (find_executable): New.
(walk_path_str): Factored out from walk_path.
(walk_path): Replaced by find_executable.
(_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Use find_executable.

--
This should help to locate GnuPG on MacOS systems where
it is not part of the PATH environment variable and
should reduce the need to have fixed path known
at GPGME compile time.

mailvelope/issue699
https://invent.kde.org/neon/forks/gpgme/-/commit/39052913f2154fa8e9575727e27d4101ef8b6460

Git commit fb83af03ccf0897cce92833aee2e02974d5eda9b by Daniel Kahn Gillmor on 23/01/2020 at 22:12..
fix json tests
https://invent.kde.org/neon/forks/gpgme/-/commit/fb83af03ccf0897cce92833aee2e02974d5eda9b

Git commit bc7db5e86429e3a603ab614523e921814d5ab9d3 by Daniel Kahn Gillmor on 23/01/2020 at 22:33..
d/control: drop unused ${shlibs:Depends} from libgpgmepp-dev
https://invent.kde.org/neon/forks/gpgme/-/commit/bc7db5e86429e3a603ab614523e921814d5ab9d3

Git commit ec46e6e76877d0fd5f9324c47150d0988669cda3 by Daniel Kahn Gillmor on 23/01/2020 at 22:33..
d/control: added ${python3:Versions} to python3-gpg
https://invent.kde.org/neon/forks/gpgme/-/commit/ec46e6e76877d0fd5f9324c47150d0988669cda3

Git commit d69a2d192b6e0fe5f4c43ca78256c1218288ee87 by Daniel Kahn Gillmor on 23/01/2020 at 22:33..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/d69a2d192b6e0fe5f4c43ca78256c1218288ee87

Git commit f9d1e50d9fcb24577792a776821548418ea39437 by Daniel Kahn Gillmor on 23/01/2020 at 22:46..
drop ${python3:Versions} from python3-gpg
https://invent.kde.org/neon/forks/gpgme/-/commit/f9d1e50d9fcb24577792a776821548418ea39437

Git commit cbf3aed896f3b6beb741809fd4d654b8fe4cf316 by Daniel Kahn Gillmor on 23/01/2020 at 22:47..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/cbf3aed896f3b6beb741809fd4d654b8fe4cf316

Git commit 414938cfedbdb97b83d00e8619dec9502096be22 by Daniel Kahn Gillmor on 23/01/2020 at 23:26..
m4/python: Scan for python 3.8 as well

* m4/python.m4: Scan for python 3.8 as well.

--

It's not clear to me why python3.8 should be commented out of the
python path search.  This change simplifies and normalizes the search
for modern versions of python 3.

Signed-Off-By: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/414938cfedbdb97b83d00e8619dec9502096be22

Git commit e50539a9dfad2355ebf19902393b37e4c60722c3 by Daniel Kahn Gillmor on 28/01/2020 at 19:06..
fix up tests, cover all supported python3 versions

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/e50539a9dfad2355ebf19902393b37e4c60722c3

Git commit b9ba581db1ebeaae0104d3e773bdd9f8c5c00b5a by Daniel Kahn Gillmor on 28/01/2020 at 19:07..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/b9ba581db1ebeaae0104d3e773bdd9f8c5c00b5a

Git commit cff600f1f65a2164ab25ff2b039cba008776ce62 by Andre Heinecke on 29/01/2020 at 10:01..
Do not test for a bug in older GnuPG versions

* tests/json/t-keylist-secret.out.json

--
Since at least 2.2.19 GnuPG no longer emits secret = true
for keys where it does not have a secret. To avoid
failures with older versions we remove the check altogether.

GnuPG-Bug-Id: T4820
https://invent.kde.org/neon/forks/gpgme/-/commit/cff600f1f65a2164ab25ff2b039cba008776ce62

Git commit 42cf5e2aca79e3a46ab8a67d88bf0e98f2078ee6 by Daniel Kahn Gillmor on 29/01/2020 at 18:16..
checky2106 should not cause the build to fail

Upstream has explicitly declared that they will not fix this problem,
see https://dev.gnupg.org/T4766
https://invent.kde.org/neon/forks/gpgme/-/commit/42cf5e2aca79e3a46ab8a67d88bf0e98f2078ee6

Git commit 8a673bfa1181c56a398095268dd1921bd4f9b5d5 by Daniel Kahn Gillmor on 29/01/2020 at 18:28..
Standards-Version: bump to 4.5.0 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/8a673bfa1181c56a398095268dd1921bd4f9b5d5

Git commit e5964e7705cb0e72c89c876c1230072072648af6 by Daniel Kahn Gillmor on 29/01/2020 at 18:28..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/e5964e7705cb0e72c89c876c1230072072648af6

Git commit 0562dfacc13c601859fa62f438014b15e05f175f by Daniel Kahn Gillmor on 30/01/2020 at 16:12..
brown paper bag bugfix :(
https://invent.kde.org/neon/forks/gpgme/-/commit/0562dfacc13c601859fa62f438014b15e05f175f

Git commit 8c77eeb29d809605a71173d35f2aa8affaf546c3 by Daniel Kahn Gillmor on 30/01/2020 at 16:37..
try to improve reproducibility for generated docs
https://invent.kde.org/neon/forks/gpgme/-/commit/8c77eeb29d809605a71173d35f2aa8affaf546c3

Git commit 3318c0eae1f1395958b1e3531e037f32a3e52bc8 by Daniel Kahn Gillmor on 30/01/2020 at 16:37..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/3318c0eae1f1395958b1e3531e037f32a3e52bc8

Git commit 77feaa451074741c2d07051915bc23d8b8377242 by Andre Heinecke on 12/02/2020 at 10:57..
qt: Add GpgCardJob following the job pattern

* lang/qt/src/Makefile.am: Add new files.
* lang/qt/src/job.cpp (GpgCardJob): Add impl stuff.
* lang/qt/src/protocol.h (gpgCardJob): Get one.
* lang/qt/src/qgpgmebackend.cpp,
lang/qt/src/qgpgmebackend.h: Add helpers to get the job.
* lang/qt/src/qgpgmegpgcardjob.cpp,
lang/qt/src/gpgcardjob.h,
lang/qt/src/qgpgmegpgcardjob.h: New.

--
This is annoyingly complex to add a simple new job.
In the future we should implement something like this
without the threadedjobmixin stuff. But the idea was
to follow the usual job pattern.

GnuPG-Bug-Id: T4794
https://invent.kde.org/neon/forks/gpgme/-/commit/77feaa451074741c2d07051915bc23d8b8377242

Git commit 9ca679c15054fbc1cc20e428a6ddf6a67dd0491e by Andre Heinecke on 12/02/2020 at 14:50..
qt: Add dummy context to make mixin happy

* lang/qt/qgpgmegpgcardjob.cpp (QGpgMEGpgCardJob): Add context.
--
Otherwise it fails with an assert.
https://invent.kde.org/neon/forks/gpgme/-/commit/9ca679c15054fbc1cc20e428a6ddf6a67dd0491e

Git commit 2b8680aba9f1ab18c8acf7fb30ebf80440d1c3d5 by Werner Koch on 14/02/2020 at 12:16..
python: Also detect python 3.9.

--

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/2b8680aba9f1ab18c8acf7fb30ebf80440d1c3d5

Git commit ba08aadfa7d254f459f51470a7331c6cc2de5199 by Andre Heinecke on 19/02/2020 at 10:15..
qt: Log execution args of gpg-card

* lang/qt/src/qgpgmegpgcardjob.cpp (do_work): Log call.
https://invent.kde.org/neon/forks/gpgme/-/commit/ba08aadfa7d254f459f51470a7331c6cc2de5199

Git commit ec9690cf5ce85f43997ac2a3abd3e728012aee4a by Andre Heinecke on 19/02/2020 at 10:15..
qt: Change logging category

* lang/qt/src/*: Change logging category to macro to QGPGME_LOG.

--
The old logging category macro had a typo and this way we
are more consistent with other logging rules. For example
you could write gpg.* in the logging conf.
https://invent.kde.org/neon/forks/gpgme/-/commit/ec9690cf5ce85f43997ac2a3abd3e728012aee4a

Git commit 11edc073a3d2bf72e49827e97349cb364612f300 by Bernhard Reiter on 03/03/2020 at 07:52..
python: fix minor typo in howto
https://invent.kde.org/neon/forks/gpgme/-/commit/11edc073a3d2bf72e49827e97349cb364612f300

Git commit 657d9618fbd95d7346a6b64a24f6f93d97709a4c by Daniel Kahn Gillmor (on behalf of Helmut Grohne) on 09/03/2020 at 16:45..
Adapt cross building for python3.8 (Closes: #925797)

Signed-off-by: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/657d9618fbd95d7346a6b64a24f6f93d97709a4c

Git commit 1bc26974f5438d8c9584d19ce320f8a22f8f5d88 by Daniel Kahn Gillmor on 09/03/2020 at 16:48..
Mark libgpgmepp-{doc,dev} with Multi-Arch: {foreign,same}

 (Thanks, Multiarch hinter!)
https://invent.kde.org/neon/forks/gpgme/-/commit/1bc26974f5438d8c9584d19ce320f8a22f8f5d88

Git commit b3f78801048c14cbbafcd6db19e858f0bcdb6e4b by Daniel Kahn Gillmor on 09/03/2020 at 16:56..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/b3f78801048c14cbbafcd6db19e858f0bcdb6e4b

Git commit 3afa534645e3826c95e7c70d7ae61ffa2d63acec by Werner Koch on 17/03/2020 at 16:24..
core: New context flags "include-key-block" and "auto-key-import".

* src/gpgme.c (gpgme_set_ctx_flag): Add flags "include-key-block" and
"auto-key-import".
(gpgme_get_ctx_flag): Ditto.
* src/context.h (struct gpgme_context): Add flags include_key_block
and auto_key_import.
* src/engine-gpg.c (struct engine_gpg): Likewise.
(gpg_set_engine_flags): Set the flags for gpg versions >= 2.2.20.
(gpg_decrypt): Set option according to the new flags.
(gpg_encrypt): Ditto.
(gpg_encrypt_sign): Ditto.
(gpg_sign): Ditto.
(gpg_verify): Ditto.

tests/run-verify: Add option --auto-key-import.
tests/run-sign: add option --include-key-block.
--

GnuPG-bug-id: 4856
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3afa534645e3826c95e7c70d7ae61ffa2d63acec

Git commit 71ef398bfd72d505290376d82575eb4f3aece035 by NIIBE Yutaka on 27/03/2020 at 07:24..
build: Fix library dependency.

* src/Makefile.am (gpgme_tool_LDADD): Add @GPG_ERROR_LIBS at .

--

Since gpgme-tool uses gpg_strerror, it should be linked
to -lgpg-error.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/71ef398bfd72d505290376d82575eb4f3aece035

Git commit 3658e2df65d321e334a8c96b4d252a4be20354bd by NIIBE Yutaka on 27/03/2020 at 10:50..
tests: Add ECC key generation for tests/gpgsm.

* tests/gpgsm/t-genkey.c (check_result): New.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3658e2df65d321e334a8c96b4d252a4be20354bd

Git commit 5c0d1c7f76c95bad8bce4ad3bafd121ec5101d3c by Andre Heinecke on 08/05/2020 at 08:30..
tests, json: Do not check for keygrip of pubkeys

* tests/json/t-keylist-secret.out.json: Do not check for keygrip
of bravo key.

--
Since GnuPG 2.2.19 the keygrip is not emitted for public keys
in a keylisting --with-secret.

As the GPGME test suite should pass with several versions
the json test cannot test this as the suite does not allow
version checks for different output.

What the intended behavior is might still be up for discussion,
always adding --with-keygip is not a good solution because
it slows down keylistings for large keyrings.

GnuPG-Bug-Id: T4820
https://invent.kde.org/neon/forks/gpgme/-/commit/5c0d1c7f76c95bad8bce4ad3bafd121ec5101d3c

Git commit 004fdf61c8b94f646409f4d5855adf8e43b29627 by Werner Koch on 08/05/2020 at 09:18..
core: Make sure the keygrip is available in WITH_SECRET mode.

* src/engine-gpg.c (gpg_keylist_build_options): Send --with-keygrip
if --with-secret is used.
--

Since GnuPG 2.2.19 the keygrip was not anymore send if only
--with-secret was used in a public key listing.  Given that
--with-secret requires computation of the keygrip anyway, there is no
point in not requesting the keyrip in this case.

GnuPG-bug-id: 4820
https://invent.kde.org/neon/forks/gpgme/-/commit/004fdf61c8b94f646409f4d5855adf8e43b29627

Git commit 49c13854f3bf49bc0bf18c6ae6bbf9d66b6625c2 by Andre Heinecke (on behalf of dupgit) on 08/05/2020 at 10:34..
GPGME_CREATE_NOEXPIRE is only available since 1.9.0

 * doc/gpgme.texi: Fixes version number from 1.8.0 to
   1.9.0 for GPGME_CREATE_NOEXPIRE.

GnuPG-Bug-Id: T4922
Signed-off-by: dupgit <olivier.delhomme at free.fr>
https://invent.kde.org/neon/forks/gpgme/-/commit/49c13854f3bf49bc0bf18c6ae6bbf9d66b6625c2

Git commit 52f930c1ed7eee6336a41598c90ef3605b7ed02b by Andre Heinecke on 08/05/2020 at 14:38..
w32: Explicitly link ws2_32

* src/Makefile.am (gpgme_w32_extra_libs): New.
(libgpgme_la_LIBADD, libgpgme_glib_la_LIBADD): Use it.

--
Since w32-io.c directly uses functions from ws2_32 it should
not rely on libgpg-error to pull in this dependency.
https://invent.kde.org/neon/forks/gpgme/-/commit/52f930c1ed7eee6336a41598c90ef3605b7ed02b

Git commit 0cc040e82f9943792a58e73dbc97e20d312858fb by NIIBE Yutaka on 11/05/2020 at 05:20..
tests: Remove/change tests for GnuPG 2.3 with no gpg.keyserver.

* lang/qt/tests/t-config.cpp (testKeyserver): Remove.
* tests/gpg/t-gpgconf.c (main): Test with dirmngr.keyserver.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0cc040e82f9943792a58e73dbc97e20d312858fb

Git commit 728ead8ebd426307c6b3f1e3794b3a7ab585eebd by Werner Koch on 05/06/2020 at 12:46..
core: Fix setting of the chain_model signature result.

* src/verify.c (parse_trust): Fix detection of "chain" keyword.
--

Fixes-commit: da6f3dc0c53f11f7432b3c258702db07d6c37f9a
from 2007 shortly after introducing this.  I doubt that this info has
ever been used (it is for qualified signatures, which are only
supported using the legacy German RegTP rules for them which were soon
overturned by the commercial CAs).

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/728ead8ebd426307c6b3f1e3794b3a7ab585eebd

Git commit 88f3202521d422d94bfd79e61bde00707d6f28c9 by Andre Heinecke on 09/06/2020 at 08:22..
doc: Explain verify_result_t.status == 0 more

* doc/gpgme.texi (gpgme_verify_result_t): Explain
GPGME_STATUS_NO_ERROR more clearly.

--
This might help to avoid misunderstandings how the
status can be interpreted and explains why a verify
of unsigned PGP Data returns no error.

As a reaction to CVE-2020-10759 discovered by Justin Steven.
https://invent.kde.org/neon/forks/gpgme/-/commit/88f3202521d422d94bfd79e61bde00707d6f28c9

Git commit 69da3d6e2bb494bd0b8b57ffb24428b7a9856f1f by Daniel Kahn Gillmor on 24/06/2020 at 18:56..
32-bit ulong platforms can ignore failures until 2031 (Closes: #953800)

This is not a real fix to the underlying problem: it just gives GPGME
upstream a window of time to deal with 75-year expiration dates.  If
and signature or certification is created with a 75-year expiration
date in 2031, that signature will not be parsed correctly by GPGME on
these platforms.

Hopefully upstream can fix this before 2031, but they seem resistant
to fixing it upstream.

Perhaps by 2031 they will have changed their opinion and resolved the
issue, or nothing will depend on this software any more.
https://invent.kde.org/neon/forks/gpgme/-/commit/69da3d6e2bb494bd0b8b57ffb24428b7a9856f1f

Git commit a5757e7b6917a2979921b606c43e70856689edab by Daniel Kahn Gillmor on 24/06/2020 at 19:10..
d/changelog: correct closing #952797
https://invent.kde.org/neon/forks/gpgme/-/commit/a5757e7b6917a2979921b606c43e70856689edab

Git commit f5a221b97290f5fe325b448b81b5d560a64a7355 by Daniel Kahn Gillmor on 24/06/2020 at 19:27..
move to dh 13
https://invent.kde.org/neon/forks/gpgme/-/commit/f5a221b97290f5fe325b448b81b5d560a64a7355

Git commit a6c9e2e484d61ad1c0f93eeff5468e35a1250382 by Daniel Kahn Gillmor on 24/06/2020 at 19:27..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/a6c9e2e484d61ad1c0f93eeff5468e35a1250382

Git commit 49e9ab1a00e52c05d513131088a856e1d15228bb by Daniel Kahn Gillmor (on behalf of Gianfranco Costamagna) on 01/07/2020 at 18:50..
fix test sadness on 32bit systems due to bad bash syntax
https://invent.kde.org/neon/forks/gpgme/-/commit/49e9ab1a00e52c05d513131088a856e1d15228bb

Git commit 40d66f09b8f7371b2b0a82653ca8f1298194d563 by Daniel Kahn Gillmor on 01/07/2020 at 18:50..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/40d66f09b8f7371b2b0a82653ca8f1298194d563

Git commit 32b80cf3c7d278ddf27117617a3e95e4a12c28c8 by Werner Koch on 14/07/2020 at 12:48..
python: Workaround for a regression in GnuPG 2.2.21

* lang/python/tests/support.py (is_gpg_version): New.
* lang/python/tests/t-encrypt-sym.py: Add workaround.
--

GnuPG-bug-id: 4991
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/32b80cf3c7d278ddf27117617a3e95e4a12c28c8

Git commit c8048bf8eb988f22b20215197f4739bedafc4264 by Werner Koch on 15/07/2020 at 12:11..
core: New keylist mode GPGME_KEYLIST_MODE_WITH_KEYGRIP.

* src/gpgme.h.in (GPGME_KEYLIST_MODE_WITH_KEYGRIP): New.
* src/gpgme-json.c (op_keylist): New flag "keygrip".
* src/engine-gpg.c (gpg_keylist_build_options): Pass the options.

* lang/cpp/src/global.h (WithKeygrip): New.
* lang/cpp/src/context.cpp: Add check.
* lang/cpp/src/key.cpp (Key::update): Handle WithKeygrip.
* lang/cpp/src/verificationresult.cpp: Ditto.
* lang/cpp/src/util.h (add_to_gpgme_keylist_mode_t): Ditto.
--

GnuPG-bug-id: 4939
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/c8048bf8eb988f22b20215197f4739bedafc4264

Git commit 858909168298e8c6fb6f9f9009be2ee2d0d9f0ec by Werner Koch on 15/07/2020 at 14:34..
core: Deprecate the non-working trustlist functions.

* src/gpgme.h.in: Clarify that the trustlist function should not be
used.
* src/engine.c (_gpgme_engine_op_trustlist): Always return an error.
* src/engine-backend.h (struct engine_ops): Remove trustlist member.
* src/engine-gpg.c (gpg_trustlist): Remove.
(struct engine_ops): Remove that member.  Also in all other engines.
* tests/gpg/t-trustlist.c: Remove.
* lang/python/tests/t-trustlist.py: Remove.
--

This never worked in reality because the required feature has been
removed from GnuPG version 1.3.2 soon after introduction of this
feature in gpgme - 17 years ago.  It was anyway marked as
experimental.  We keep the API and ABI, though.

GnuPG-bug-id: 4834
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/858909168298e8c6fb6f9f9009be2ee2d0d9f0ec

Git commit 7f9e0ca57b29cc96bd1ca717d891c11db7435c5a by Werner Koch on 16/07/2020 at 10:00..
core: New export mode to export as OpenSSH public key.

* 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 <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7f9e0ca57b29cc96bd1ca717d891c11db7435c5a

Git commit dfeedcc28d0406f5ad8ff8ad397e1ef930676535 by Werner Koch on 16/07/2020 at 14:47..
core: Also allow GPGME_EXPORT_MODE_SSH for gpgme_op_export.

* src/export.c (export_start): Allow that mode.
--

The test tools uses gpgme_op-export_ext and thus did not caught it.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/dfeedcc28d0406f5ad8ff8ad397e1ef930676535

Git commit 690d967196d9f888e2b7c12d8c77ad752d7e15bf by Andre Heinecke on 16/07/2020 at 15:00..
qt, cpp: Support export modes

* lang/cpp/context.cpp, lang/cpp/context.h
(Context::startPublicKeyExport, Context::exportPublicKeys): Extend
with flags paramenter.
(Context::ExportMode): New.
* lang/qt/src/exportjob.h (ExportJob::setExportMode): New.
* lang/qt/src/qgpgmeexportjob.cpp, lang/qt/src/qgpgmeexportjob.h:
Update accordingly.

--
This adds the C++ and Qt API for export modes.
https://invent.kde.org/neon/forks/gpgme/-/commit/690d967196d9f888e2b7c12d8c77ad752d7e15bf

Git commit 6d7bf78ca5af35b0860aa20b12f799ab03752190 by Werner Koch on 16/07/2020 at 15:17..
Release 1.14.0

* configure.ac: Bump LT versions to c=C34/A23/R0 cpp=C17/A11/R0
qt=C11/A4/R0.
--
GnuPG-bug-id: 4996
https://invent.kde.org/neon/forks/gpgme/-/commit/6d7bf78ca5af35b0860aa20b12f799ab03752190

Git commit 81db4122450bf7ba57ed478d89ae6e449c6e8366 by Werner Koch on 16/07/2020 at 15:33..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/81db4122450bf7ba57ed478d89ae6e449c6e8366

Git commit db82e99a8a40c57a237dad030928d0fcf6b03ad7 by Ingo Klöcker on 04/08/2020 at 14:51..
core: New function gpgme_op_setexpire.

* 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 <aheinecke at gnupg.org>
GnuPG-bug-id: 4999
https://invent.kde.org/neon/forks/gpgme/-/commit/db82e99a8a40c57a237dad030928d0fcf6b03ad7

Git commit 197ba151e70c0aef35ee713b119d49e4637c1d05 by Ingo Klöcker on 04/08/2020 at 14:53..
cpp: Add ostream operator for subkey

* lang/cpp/src/key.cpp (Subkey): Add ostream operator.
* lang/cpp/src/key.h: Update accordingly.
--

This is helpful for debugging / showing the state of a subkey.
https://invent.kde.org/neon/forks/gpgme/-/commit/197ba151e70c0aef35ee713b119d49e4637c1d05

Git commit aa03205fe5e8a8fa2b0feecb8a142aff2a1b25df by Ingo Klöcker on 04/08/2020 at 14:53..
cpp: Add support for gpgme_op_setexpire

* lang/cpp/src/context.cpp
(Context::setExpire, Context::startSetExpire): New.
(Context::getLFSeparatedListOfFingerprintsFromSubkeys):
New helper.
* lang/cpp/src/context.h
(Context::SetExpireFlags): New enum.
(Context::setExpire, Context::startSetExpire): Add
prototypes.
(Context::getLFSeparatedListOfFingerprintsFromSubkeys):
Add as private helper.
--

GnuPG-bug-id: 5003
https://invent.kde.org/neon/forks/gpgme/-/commit/aa03205fe5e8a8fa2b0feecb8a142aff2a1b25df

Git commit 84c6b6e2fea1176991bd89ac421af492d4550d6e by Ingo Klöcker on 04/08/2020 at 14:53..
qt: Add test for setExpire

* lang/qt/tests/t-various.cpp (TestVarious::testSetExpire): New.
--

GnuPG-bug-id: 5003
https://invent.kde.org/neon/forks/gpgme/-/commit/84c6b6e2fea1176991bd89ac421af492d4550d6e

Git commit 89501509134ab9cff87219fcaee9c1a758efa2fe by Ingo Klöcker on 05/08/2020 at 14:49..
qt: Port to new setExpire()

* lang/qt/src/qgpgmechangeexpiryjob.cpp (change_expiry): Use new
setExpire() instead of edit() with GpgSetExpiryTimeEditInteractor
--

Using the new setExpire() (which uses --quick-set-expire) is a lot less
complex than using gpg's edit interface. It also feels faster. Next,
I'll add support for changing the expiration time of subkeys.

GnuPG-bug-id: 5003
https://invent.kde.org/neon/forks/gpgme/-/commit/89501509134ab9cff87219fcaee9c1a758efa2fe

Git commit 0676d41ef57db4da469aa9b733f8965606b667ec by Andre Heinecke on 06/08/2020 at 07:50..
cpp: Use cstdlib getenv for portability

* lang/cpp/src/editinteractor.cpp (EditInteractor::Private::Private):
Use std::getenv.

--
This should fix compiling on MacOS X

GnuPG-Bug-Id: T5013
https://invent.kde.org/neon/forks/gpgme/-/commit/0676d41ef57db4da469aa9b733f8965606b667ec

Git commit c813734c9ce0a77f5a9d463a6b16074e522cc2ce by Ingo Klöcker on 10/08/2020 at 09:06..
cpp: Make private helper a file static

* lang/cpp/src/context.h, lang/cpp/src/context.cpp
(Context::getLFSeparatedListOfFingerprintsFromSubkeys): Remove
from Context; make it a static function instead
--

GnuPG-bug-id: 5003
https://invent.kde.org/neon/forks/gpgme/-/commit/c813734c9ce0a77f5a9d463a6b16074e522cc2ce

Git commit f391e2675e452e3e55bbe460fc15299c87e1364c by Daniel Kahn Gillmor on 10/08/2020 at 21:07..
gbp: use debian/sid branch to track unstable
https://invent.kde.org/neon/forks/gpgme/-/commit/f391e2675e452e3e55bbe460fc15299c87e1364c

Git commit 5cf703706eedcdd9f62d2e0f18f30d0b3c55a05f by Daniel Kahn Gillmor on 10/08/2020 at 21:10..
New upstream version 1.14.0
https://invent.kde.org/neon/forks/gpgme/-/commit/5cf703706eedcdd9f62d2e0f18f30d0b3c55a05f

Git commit 30b928c02acefdc164a586886a2648e059beb5bf by Daniel Kahn Gillmor on 10/08/2020 at 21:10..
Update upstream source from tag 'upstream/1.14.0'

Update to upstream version '1.14.0'
with Debian dir 98f222d4e4f3bdf24e0563f72f0e7a214ef471eb
https://invent.kde.org/neon/forks/gpgme/-/commit/30b928c02acefdc164a586886a2648e059beb5bf

Git commit d927fdba1399f8adfa4fdafc43c6aace232c166d by Daniel Kahn Gillmor on 10/08/2020 at 21:33..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/d927fdba1399f8adfa4fdafc43c6aace232c166d

Git commit 2a666a1ee31f40f84457532ee136086645c5915a by Daniel Kahn Gillmor on 10/08/2020 at 23:01..
d/copyright: clean up
https://invent.kde.org/neon/forks/gpgme/-/commit/2a666a1ee31f40f84457532ee136086645c5915a

Git commit 85cb8fd26e0d3b20aac6eadbb9e4c640194b61af by Daniel Kahn Gillmor on 10/08/2020 at 23:01..
updated lintian-overrides for new C++ library versions
https://invent.kde.org/neon/forks/gpgme/-/commit/85cb8fd26e0d3b20aac6eadbb9e4c640194b61af

Git commit 058cf9c850ec0e03aea7686d940607058171f4ee by Daniel Kahn Gillmor on 10/08/2020 at 23:01..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/058cf9c850ec0e03aea7686d940607058171f4ee

Git commit 4f2cd3a0c6a8f3633040ff0e8cca787b2bd61fb2 by Ingo Klöcker on 11/08/2020 at 15:02..
qt: Support changing expiry of subkeys

* lang/qt/src/changeexpiryjob.h (ChangeExpiryJob::start): New overload
that accepts subkeys (with empty implementation).
* lang/qt/src/qgpgmechangeexpiryjob.h,
lang/qt/src/qgpgmechangeexpiryjob.cpp (QGpgMEChangeExpiryJob::start):
New overload that accepts subkeys.
--

This adds the possibility to change the expiry of subkeys.

GnuPG-bug-id: 4717
https://invent.kde.org/neon/forks/gpgme/-/commit/4f2cd3a0c6a8f3633040ff0e8cca787b2bd61fb2

Git commit f66f856c89b7c02e368afe2343de7cce50e6109e by Ingo Klöcker on 14/08/2020 at 09:11..
core: Add error handling to setexpire

* src/genkey.c (setexpire, gpgme_op_setexpire_start,
gpgme_op_setexpire): Move to ...
* src/setexpire.c: New.
* src/Makefile.am (main_sources): Add that file.
* src/context.h (ctx_op_data_id_t): Add OPDATA_SETEXPIRE.

* lang/qt/tests/t-various.cpp (testSetExpire): Test error handling.
--

Errors (and failures) emitted via status-fd need to be handled
explicitly, i.e. we need to provide an appropriate status handler with
corresponding op_data_t. Additionally, we need to set a passphrase
command handler if a passphrase callback is set in the context, e.g.
during tests.

GnuPG-bug-id: 4395
https://invent.kde.org/neon/forks/gpgme/-/commit/f66f856c89b7c02e368afe2343de7cce50e6109e

Git commit b088d81cefe45c16409085f1560ad1d4c235a696 by Werner Koch on 28/08/2020 at 07:13..
qt: Fix an rfc2253 parser flaw

* lang/qt/src/dn.cpp (parse_dn_part): Fix parser.

--

This could in theory result in reading bytes after a after Nul in a
string and thus possible segv on unallocated memory or reading other
parts of the memory.  However, it is harmless because the rfc2253
strings have been received from GnuPG which is expected to emit
correct syntax.

GnuPG-bug-id: 5037
https://invent.kde.org/neon/forks/gpgme/-/commit/b088d81cefe45c16409085f1560ad1d4c235a696

Git commit 4d87ea2851ae1156cfb1d754cf32b5c9073d4252 by Ingo Klöcker on 03/09/2020 at 10:24..
cpp: Copy some more subkey properties when merging keys

* lang/cpp/src/key.cpp (Key::mergeWith): Also merge secret flag and
keygrip
--

The keygrip was lost if the result of a public key listing was merged
with the result of a secret key listing as done by QGpgMEListAllKeysJob.

GnuPG-bug-id: 4794
https://invent.kde.org/neon/forks/gpgme/-/commit/4d87ea2851ae1156cfb1d754cf32b5c9073d4252

Git commit b714a6bbc8038c1b226bc920dd02ce8fbae7da8a by Ingo Klöcker on 07/09/2020 at 09:36..
cpp: Add missing keylist modes

* lang/cpp/src/util.h
(add_to_gpgme_keylist_mode_t): Sort modes as in enum definition and
add missing modes to check.
(convert_from_gpgme_keylist_mode_t): Add missing handling of
GPGME_KEYLIST_MODE_WITH_TOFU and GPGME_KEYLIST_MODE_WITH_KEYGRIP.
https://invent.kde.org/neon/forks/gpgme/-/commit/b714a6bbc8038c1b226bc920dd02ce8fbae7da8a

Git commit 188cc9e9b553998d2a8ec52bd8282365e22bf400 by Ingo Klöcker on 07/09/2020 at 09:55..
cpp: Add keylist mode WithSecret

* lang/cpp/src/global.h (WithSecret): New.
* lang/cpp/src/context.cpp (operator<<): Handle WithSecret.
* lang/cpp/src/util.h (add_to_gpgme_keylist_mode_t,
convert_from_gpgme_keylist_mode_t): Ditto.
--

GnuPG-bug-id: 4794
https://invent.kde.org/neon/forks/gpgme/-/commit/188cc9e9b553998d2a8ec52bd8282365e22bf400

Git commit 13bcc6680ac2030d45e4f36a64864bcd6a1d42a9 by Ingo Klöcker on 07/09/2020 at 10:02..
qt: List keys once with --with-secret instead of twice

* lang/qt/src/qgpgmelistallkeysjob.cpp
(do_list_keys): Rename to do_list_keys_legacy and put into unnamed
namespace.
(merge_keys): Put into unnamed namespace.
(list_keys): Rename to list_keys_legacy and put into unnamed namespace.
(do_list_keys, list_keys): New.
* lang/qt/tests/t-keylist.cpp (testListAllKeysSync): New.
--

With gpg >= 2.1, list keys once with --with-secret instead of listing
public keys and secret keys and then merging (part of) the information
about the keys.

GnuPG-bug-id: 4794
https://invent.kde.org/neon/forks/gpgme/-/commit/13bcc6680ac2030d45e4f36a64864bcd6a1d42a9

Git commit 3dd7377e120f10576b3b4334b6149f027ceec126 by Ingo Klöcker on 08/09/2020 at 12:55..
cpp: Update key with --with-secret instead of updating it twice

* lang/cpp/src/key.cpp (Key::update): Call Context::key() only once
with KeyListMode::WithSecret.
--

With gpg >= 2.1, get the key with --with-secret instead of first trying
to get the secret key and, if that fails, getting the public key.

GnuPG-bug-id: 4794
https://invent.kde.org/neon/forks/gpgme/-/commit/3dd7377e120f10576b3b4334b6149f027ceec126

Git commit 973c8116c840b4f1e0c3c80a7956641550c3388d by Ingo Klöcker on 08/09/2020 at 13:38..
qt: Update the documentation of ListAllKeysJob

* lang/qt/src/listallkeysjob.h (ListAllKeysJob::start): Document that
the mergeKeys argument is ignored with gpg >= 2.1.
--

GnuPG-bug-id: 4794
https://invent.kde.org/neon/forks/gpgme/-/commit/973c8116c840b4f1e0c3c80a7956641550c3388d

Git commit e4ee706e270c38937afe26ce9f54d17d037cb86f by Werner Koch on 09/09/2020 at 10:13..
core: Fully implement the inquire callback for assuan_transact

* src/engine-assuan.c (inquire_cb): Implement returning data.

* tests/opassuan/t-command.c (inq_cb): Send some test data.
--

The old code only allowed to send an empty response which was good
enough for scdaemon's KNOWNCARDP inquire but not to send actual data.
A quick test using a test smartcard might be

 ./t-command 'scd setattr --inquire PRIVATE-DO-1'

and then reading the data back using

  gpg-connect-agent 'scd getattr PRIVATE-DO-1' /bye

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/e4ee706e270c38937afe26ce9f54d17d037cb86f

Git commit fd904f87f8d43ad477b9d35d834f384e917b26fd by NIIBE Yutaka on 01/10/2020 at 02:18..
gpgsm: Fix leaked fd.

* src/engine-gpgsm.c (gpgsm_new): Close gpgsm->diag_cb.server_fd.

--

GnuPG-bug-id: 5074
Reported by: VladislavGrudinin
Fixes-commit: dd21ec997cf4b6ba18538c63c728478110ad1f60
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fd904f87f8d43ad477b9d35d834f384e917b26fd

Git commit 25e2d717f44682f83c483ceba6ba81bad7fc3e97 by Werner Koch on 03/10/2020 at 17:54..
tests: Fix gcc incompatibility

* tests/json/t-json.c: Remove var definitions inside a for statement.
--

This useful C99 feature seems to work only in recent gcc versions.  We
can't use it; see gnupg/doc/HACKING.

GnuPG-bug-id: 5088
https://invent.kde.org/neon/forks/gpgme/-/commit/25e2d717f44682f83c483ceba6ba81bad7fc3e97

Git commit 2f53a2f4be86c0829213e2a9f846b7f8f0b106dc by Ingo Klöcker on 23/10/2020 at 11:50..
cpp, qt: Fix version info comparison

* lang/cpp/src/engineinfo.h
(EngineInfo::Version::operator>(const Version &)): Fix logic.
(EngineInfo::Version::operator>(const char *)): Use Version-overload of
operator>.

* lang/qt/tests/t-various.cpp: Add test.
--

This fixes a logic error that 2.0.0 > 2.0.0 would return true.
https://invent.kde.org/neon/forks/gpgme/-/commit/2f53a2f4be86c0829213e2a9f846b7f8f0b106dc

Git commit c3406462d11b4241d4feee9be08e0ebe4f2e0bfa by Ingo Klöcker on 23/10/2020 at 11:50..
cpp, qt: Add missing comparison operators for version info comparison

* lang/cpp/src/engineinfo.h (EngineInfo::Version::operator<=,
EngineInfo::Version::operator>=, EngineInfo::Version::operator!=):
New.
* lang/qt/tests/t-various.cpp (TestVarious::testVersion): Add tests for
new comparison operators.
* NEWS: Mention added API
https://invent.kde.org/neon/forks/gpgme/-/commit/c3406462d11b4241d4feee9be08e0ebe4f2e0bfa

Git commit b21cabb311803677104fa98809bc88b21243f358 by Ingo Klöcker on 23/10/2020 at 11:50..
qt: Add QDebug stream operator for GpgME::Error

* lang/qt/src/Makefile.am: Add new files.
* lang/qt/src/debug.h, lang/qt/src/debug.cpp: New.
* NEWS: Mention it.
--

This was previously implemented in Kleopatra, but it makes sense for
all users of qgpgme.
https://invent.kde.org/neon/forks/gpgme/-/commit/b21cabb311803677104fa98809bc88b21243f358

Git commit ff23e24063feb9e1628858fd32df37be557072a6 by Ingo Klöcker on 23/10/2020 at 11:50..
Add Assuan transaction that forwards status lines to another object

* lang/cpp/src/Makefile.am: Add new files.
* lang/cpp/src/interfaces/statusconsumer.h,
lang/cpp/src/statusconsumerassuantransaction.cpp,
lang/cpp/src/statusconsumerassuantransaction.h: New.
* NEWS: Mention new API.
--

This Assuan transaction is useful for long running Assuan commands.
Classes implementing the StatusConsumer interface can process received
status lines while the Assuan command is still running.

GnuPG-bug-id: 5066
https://invent.kde.org/neon/forks/gpgme/-/commit/ff23e24063feb9e1628858fd32df37be557072a6

Git commit 74c8131d809be49d64f482961fee1e6e0dbe4f4f by Ingo Klöcker on 23/10/2020 at 11:50..
cpp: Add support for gpgme_cancel

* lang/cpp/src/context.cpp, lang/cpp/context.h
(Context::cancelPendingOperationImmediately): New.
* NEWS: Mention added API
--

This allows immediate canceling of running operations, e.g. when a
thread with a long running operation (like SCD DEVINFO --watch) is
going to be terminated (on application shutdown).

GnuPG-bug-id: 5066
https://invent.kde.org/neon/forks/gpgme/-/commit/74c8131d809be49d64f482961fee1e6e0dbe4f4f

Git commit 089164a0c0d6024cbb133327d47a28ca3716cd56 by NIIBE Yutaka on 27/10/2020 at 23:49..
python: Handle the when case __doc__ is None.

* lang/python/src/core.py (GpgmeWrapper): Check if None.

--

GnuPG-bug-id: 5075
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/089164a0c0d6024cbb133327d47a28ca3716cd56

Git commit f3407d0ee4e34ed33be18de5f886a4da2affbf9f by Ingo Klöcker on 29/10/2020 at 11:57..
core: New function gpgme_op_revsig.

* 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
https://invent.kde.org/neon/forks/gpgme/-/commit/f3407d0ee4e34ed33be18de5f886a4da2affbf9f

Git commit 4166d263e421cb4f98c4ca6bef549613c35e149e by Ingo Klöcker on 29/10/2020 at 11:57..
cpp: Add support for gpgme_op_revsig

* lang/cpp/src/context.cpp, lang/cpp/src/context.h
(Context::revokeSignature, Context::startRevokeSignature): New.
* lang/cpp/src/context.cpp
(getLFSeparatedListOfStrings, getLFSeparatedListOfUserIds): New.
(getLFSeparatedListOfFingerprintsFromSubkeys): Extracted second part
of function to getLFSeparatedListOfStrings.
--

GnuPG-bug-id: 5094
https://invent.kde.org/neon/forks/gpgme/-/commit/4166d263e421cb4f98c4ca6bef549613c35e149e

Git commit 60328c4690beb8a82f5a3cc0d35b434e151c6365 by Ingo Klöcker on 29/10/2020 at 11:57..
qt: Some minor cleanups

* lang/qt/src/qgpgmequickjob.h: (GpgME::Key, QDateTime, QString):
Remove superfluous forward declarations.
(QGpgMEQuickJob): Remove superfluous second template argument. It is
identical to the default.
(QGpgMEQuickJob::result): Remove. It is already defined in the base
class.
https://invent.kde.org/neon/forks/gpgme/-/commit/60328c4690beb8a82f5a3cc0d35b434e151c6365

Git commit f042739d3a2ed23a90441a81782e4c3ac6ffb1c5 by Ingo Klöcker on 29/10/2020 at 11:57..
qt: Add support for revoke signature quick command

* lang/qt/src/quickjob.h (QuickJob::startRevokeSignature): New.
* lang/qt/src/qgpgmequickjob.h, lang/qt/src/qgpgmequickjob.cpp
(QGpgMEQuickJob::startRevokeSignature): New.
* lang/qt/src/qgpgmequickjob.cpp (revokeSignatureWorker): New.
--

GnuPG-bug-id: 5094
https://invent.kde.org/neon/forks/gpgme/-/commit/f042739d3a2ed23a90441a81782e4c3ac6ffb1c5

Git commit 6a6d2a27648490f08aaf0759a533aef08b32070d by Ingo Klöcker on 03/11/2020 at 07:59..
cpp: Make signatures belonging to the same user ID sortable

lang/cpp/src/key.h, lang/cpp/src/key.cpp (UserID::Signature::operator<):
New.
lang/cpp/src/key.cpp (signature_index): New.
--

operator< defines a canonical sort order for signatures belonging to
the same user ID. It is based on the sort order defined by
cmp_signodes() in g10/keylist.c of gnupg. In particular, the ordering
of signatures made with the same key by creation time allows to see
easily whether the most recent signature is a certification or a
revocation.

GnuPG-bug-id: 5094
recent
https://invent.kde.org/neon/forks/gpgme/-/commit/6a6d2a27648490f08aaf0759a533aef08b32070d

Git commit b41f5fec1c42e0113ccbdbb7c258899793631b0a by Ingo Klöcker on 03/11/2020 at 08:01..
cpp: Mark helper functions as static

lang/cpp/src/key.cpp (find_subkey, verify_subkey, find_uid, verify_uid,
find_signature, verify_signature): Mark as static.
https://invent.kde.org/neon/forks/gpgme/-/commit/b41f5fec1c42e0113ccbdbb7c258899793631b0a

Git commit 0fee135997438c63ab30891ec7e662093ec57491 by Ingo Klöcker on 03/11/2020 at 12:50..
qt: Make audit parameters of result signal optional

lang/qt/src/quickjob.h (QuickJob::result): Make parameters
auditLogAsHtml and audigLogError optional.
--

This aligns the signature of QuickJob's result signal with the result
signals of the other Job subclasses.

GnuPG-bug-id: 5094
https://invent.kde.org/neon/forks/gpgme/-/commit/0fee135997438c63ab30891ec7e662093ec57491

Git commit 35ca460019ea29ae646d08c954d4d4bf2dc1e8e1 by Ben Kibbey on 04/11/2020 at 01:47..
Parse STATUS_CANCELED_BY_USER.

* 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 <bjk at luxsci.net>
https://invent.kde.org/neon/forks/gpgme/-/commit/35ca460019ea29ae646d08c954d4d4bf2dc1e8e1

Git commit eb99e8c483a70764408868602ef322602e9e72ce by Werner Koch on 09/11/2020 at 10:50..
Require at least libgpg-error 1.36

* configure.ac (NEED_GPG_ERROR_VERSION): Require 1.36.
* src/cJSON.c: Remove code for older version.
* src/engine.c (gpgme_get_engine_info): Ditto.
* src/gpgme-json.c: Ditto.
* src/op-support.c: Ditto.
* src/util.h: Ditto.
--

Libgpg-error 1.36 has been released more than 18 months ago so it is
time to avoid hacks and require this verion.  This will for example
help Kleopatra to support PIV cards and improves the gpgme-json.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/eb99e8c483a70764408868602ef322602e9e72ce

Git commit 276f3390e18b34e6211b4c75876a0ab4c10a5ac9 by NIIBE Yutaka on 11/11/2020 at 02:58..
qt: Allow build with older GnuPG (< 2.2.18).

* lang/qt/tests/t-remarks.cpp (initTestCase): Check gpg for
allow-weak-key-signatures option.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/276f3390e18b34e6211b4c75876a0ab4c10a5ac9

Git commit 81f0dc7293a525af7cfbcb53cce050df718e0f91 by Andre Heinecke on 11/11/2020 at 17:12..
qt: Add export macro for QDebug operator

* lang/qt/src/debug.h: Add export macro.

--
This is public API so it should be exported. This did not
resolve a link issue for Windows that I've experienced
when building. But this might be to some uncleanlyness
in my build environment.
https://invent.kde.org/neon/forks/gpgme/-/commit/81f0dc7293a525af7cfbcb53cce050df718e0f91

Git commit 7139afc5cdc0d8203dc75d7c91fa94b704b3d64f by NIIBE Yutaka on 12/11/2020 at 02:11..
python: Fix a test for newer GnuPG (>= 2.3).

* lang/python/tests/t-quick-subkey-creation.py: Specify RSA.

--

Using GnuPG 2.3, a key with default (ed25519/cv25519) cannot have some
combination of capabilities (e.g., "encr auth").

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7139afc5cdc0d8203dc75d7c91fa94b704b3d64f

Git commit 3382ecb17eb5d2a373cf2eccb301854fff42f6aa by NIIBE Yutaka on 12/11/2020 at 04:11..
core: Support exporting secret keys.

* src/export.c (export_start): Set command handler for passphrase
interaction for the case when it's secret keys.
(export_ext_start): Likewise.

--

GnuPG-bug-id: 5046
Co-authored-by: Louis Dupré Bertoni
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3382ecb17eb5d2a373cf2eccb301854fff42f6aa

Git commit feea38c89d4ceb40334f884da9ab07cc4b73e757 by Werner Koch on 12/11/2020 at 09:24..
Release 1.15.0

* configure.ac: Bump LT versions to c=C35/A24/R0, cpp=C18/A13/R0,
qt=C12/A5/R0.
--

GnuPG-bug-id: 5131
https://invent.kde.org/neon/forks/gpgme/-/commit/feea38c89d4ceb40334f884da9ab07cc4b73e757

Git commit 01a0d8ec1aa8543dca0986c6dcb5cabc535aae2c by Werner Koch on 12/11/2020 at 10:02..
Post release updates
https://invent.kde.org/neon/forks/gpgme/-/commit/01a0d8ec1aa8543dca0986c6dcb5cabc535aae2c

Git commit 27abdac25dcd4ba57e073a5de2f057830e623282 by Werner Koch on 12/11/2020 at 10:10..
build: Use ~/.gnupg-autogen.sh for the release targets

* Makefile.am (sign-release): Use global config vars.
https://invent.kde.org/neon/forks/gpgme/-/commit/27abdac25dcd4ba57e073a5de2f057830e623282

Git commit df5a89e6929479dc1bf301974fe7d607d024bc1f by Andre Heinecke on 12/11/2020 at 15:07..
qt: Fix export of qDebug GpgME::Error overload

* lang/qt/src/debug.cpp: Include debug.h to get the export decl.
https://invent.kde.org/neon/forks/gpgme/-/commit/df5a89e6929479dc1bf301974fe7d607d024bc1f

Git commit 223779dfdeb7808809372587fa135a8cc2616ce8 by NIIBE Yutaka on 18/11/2020 at 05:34..
build: Update with newer autoconf constructs.

* configure.ac: Use AC_USE_SYSTEM_EXTENSIONS instead of AC_GNU_SOURCE.
Use AS_HELP_STRING instead of AC_HELP_STRING.
* m4/libtool.m4: Update from libgpg-error.
* m4/gpg-error.m4: Update from libgpg-error.
* m4/libassuan.m4: Update from libassuan.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/223779dfdeb7808809372587fa135a8cc2616ce8

Git commit 3c185c2159cdcc23f44773fe1cfb624b27598c80 by Ingo Klöcker on 18/11/2020 at 11:43..
qt: Avoid empty "rem at gnupg.org" signature notations

* lang/qt/src/qgpgmesignkeyjob.cpp (sign_key): Check remark for being
an empty string instead of a null QString.
--

GnuPG-bug-id: 5142
Co-authored-by: Daniel Kahn Gillmor
https://invent.kde.org/neon/forks/gpgme/-/commit/3c185c2159cdcc23f44773fe1cfb624b27598c80

Git commit 88294023c196497cfa6737be262c8b0c09d2a3ce by Andre Heinecke on 18/11/2020 at 14:14..
cpp: Use portable off_t size_t

* configure.ac: Configure cpp data.h.in
* lang/cpp/src/Makefile.am: Generate data.h
* lang/cpp/src/data.cpp, lang/cpp/src/data.h: Use portable
types.
* lang/qt/src/Makefile.am: Include build dir.
* lang/qt/tests/makefile.am: Include build dir.

--
These kind of patches have been around for a while, IMO this
should not create an ABI incompatbility for cases where
it already works because the types should be the same
so I think this is not an interface break.

GnuPG-Bug-Id: T3996
https://invent.kde.org/neon/forks/gpgme/-/commit/88294023c196497cfa6737be262c8b0c09d2a3ce

Git commit 4c6fd361593e22092770d120d68a18b4f70e0bb8 by NIIBE Yutaka on 20/11/2020 at 03:07..
m4: Update with newer autoconf constructs.

* src/gpgme.m4: Replace AC_HELP_STRING to AS_HELP_STRING.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4c6fd361593e22092770d120d68a18b4f70e0bb8

Git commit a5c4b030258714dd72a2e276114183309cad3ec3 by Andre Heinecke on 20/11/2020 at 09:10..
Revert "cpp: Use portable off_t size_t"

This reverts commit 88294023c196497cfa6737be262c8b0c09d2a3ce.

--
This commit was too early and i needed to test more
this is breaking more then it helps so for now
revert it before we can do a proper solution.
https://invent.kde.org/neon/forks/gpgme/-/commit/a5c4b030258714dd72a2e276114183309cad3ec3

Git commit 53ac732bae46e1f883998e987fc84d4cababde12 by NIIBE Yutaka on 24/11/2020 at 06:00..
core: Call _gpgme_passphrase_status_handler when exporting keys.

* src/export.c (export_status_handler): Call the handler.

--

Fixes-commit: 3382ecb17eb5d2a373cf2eccb301854fff42f6aa
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/53ac732bae46e1f883998e987fc84d4cababde12

Git commit 7a4fe82a017b751ad756c93d2b9e31d7be045275 by NIIBE Yutaka on 03/12/2020 at 02:35..
python: Fix key_export*.

* lang/python/src/core.py (key_export): Just raise an error.
(key_export_minimal, key_export_secret): Ditto.

--

GnuPG-bug-id: 5149
Fixes-commit: 7faef33d13fa8efce152ca7aa6e9d39030c1cf08
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/7a4fe82a017b751ad756c93d2b9e31d7be045275

Git commit 543e2106386f00ebecf7653e7896fa12a6e828ff by Andre Heinecke on 04/01/2021 at 12:35..
Qt: Undeprecate QByteArray based start functs

* lang/qt/src/encryptjob.h, lang/qt/src/signjob.h (start):
Undeprecate QByteArray based functions.

--
While the QIODevice access might avoid a copy it is more
difficult to manage the data and lifetime of the
QIODevices in calling code. The QByteArray calls are
convienient for small data objects like mails where
an in memory copy is not really expensive anymore.
https://invent.kde.org/neon/forks/gpgme/-/commit/543e2106386f00ebecf7653e7896fa12a6e828ff

Git commit a6220adf3081c9c848f6d0a6fc3774cb168ccf9c by Ingo Klöcker on 04/01/2021 at 15:30..
cpp: Add const-overload of UserID::Signature::operator<

lang/cpp/src/key.h, lang/cpp/src/key.cpp (UserID::Signature::operator<):
Add const-overload. Deprecate non-const overload.

--

This fixes compilation on FreeBSD with clang 10.
https://invent.kde.org/neon/forks/gpgme/-/commit/a6220adf3081c9c848f6d0a6fc3774cb168ccf9c

Git commit 5137d7fc214d0d9dcb947ccdc32fa87979f9a6d0 by Ingo Klöcker on 05/01/2021 at 16:44..
core: Make listing of signatures work if only secret keys are listed

* src/engine-gpg.c (gpg_keylist_build_options): Add "--with-sig-check"
argument if signatures shall be listed.
* tests/gpg/t-keylist-secret-sig.c: New.
* tests/gpg/Makefile.am (c_tests): Add new test.
--

GnuPG-bug-id: 3580
https://invent.kde.org/neon/forks/gpgme/-/commit/5137d7fc214d0d9dcb947ccdc32fa87979f9a6d0

Git commit 133050b3fa28122a4b60dbbde698fb14379ccf95 by Werner Koch on 08/01/2021 at 17:12..
Make distcheck make target a bit more reliable.

* Makefile.am (release): Do not pass --parallel
https://invent.kde.org/neon/forks/gpgme/-/commit/133050b3fa28122a4b60dbbde698fb14379ccf95

Git commit bb9880778fb16cdb6de83905e45bf6c965770013 by Werner Koch on 08/01/2021 at 17:14..
Release 1.15.1
https://invent.kde.org/neon/forks/gpgme/-/commit/bb9880778fb16cdb6de83905e45bf6c965770013

Git commit 13221933ed4f414142e641d1a242325e97df514a by Werner Koch on 08/01/2021 at 18:01..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/13221933ed4f414142e641d1a242325e97df514a

Git commit c8fd8870b3bf089f99156448b7d1e59c1150f994 by Werner Koch on 01/02/2021 at 15:48..
core: Remove experimental feature GPGME_EXPORT_MODE_NOUID.

* 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
https://invent.kde.org/neon/forks/gpgme/-/commit/c8fd8870b3bf089f99156448b7d1e59c1150f994

Git commit 519853335e92d06dfa73ae564a443c06e2149d0d by Daniel Kahn Gillmor on 12/02/2021 at 14:11..
update upstream signing key for Werner Koch
https://invent.kde.org/neon/forks/gpgme/-/commit/519853335e92d06dfa73ae564a443c06e2149d0d

Git commit 7fbd53efde1f2d8072c1d82dbddb61f1061528a1 by Daniel Kahn Gillmor on 12/02/2021 at 14:12..
New upstream version 1.15.1
https://invent.kde.org/neon/forks/gpgme/-/commit/7fbd53efde1f2d8072c1d82dbddb61f1061528a1

Git commit 7da997175fbe2a3f050d55861e3f291f1005f690 by Daniel Kahn Gillmor on 12/02/2021 at 14:12..
Update upstream source from tag 'upstream/1.15.1'

Update to upstream version '1.15.1'
with Debian dir 95ff30d356214712d42ba6579f60ff97aa404801
https://invent.kde.org/neon/forks/gpgme/-/commit/7da997175fbe2a3f050d55861e3f291f1005f690

Git commit 59c0f504ebd958a30eecc68418f2009cc52c4a5d by Daniel Kahn Gillmor on 12/02/2021 at 14:12..
Standards-Version: bump to 4.5.1 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/59c0f504ebd958a30eecc68418f2009cc52c4a5d

Git commit 0b82d2e2a2ca9a22274cea79852f9d10748b9534 by Daniel Kahn Gillmor on 12/02/2021 at 14:50..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/0b82d2e2a2ca9a22274cea79852f9d10748b9534

Git commit 9c76fedb66c1ee04491167d526aa6d97a71fe9cf by Daniel Kahn Gillmor on 12/02/2021 at 14:52..
remove experimental feature GPGME_EXPORTMODE_NOUID
https://invent.kde.org/neon/forks/gpgme/-/commit/9c76fedb66c1ee04491167d526aa6d97a71fe9cf

Git commit b96d17b237a477f127d874538b05e8ca0a86eac2 by Daniel Kahn Gillmor on 12/02/2021 at 16:25..
update gpg-error dependency to require 1.36
https://invent.kde.org/neon/forks/gpgme/-/commit/b96d17b237a477f127d874538b05e8ca0a86eac2

Git commit e31fe4bd617a34e074b67be418aba016f6fd7bdc by Daniel Kahn Gillmor on 12/02/2021 at 16:25..
refresh lintian overrides
https://invent.kde.org/neon/forks/gpgme/-/commit/e31fe4bd617a34e074b67be418aba016f6fd7bdc

Git commit 61fc7d315eb5c38cd293ae9b289f2bd6e78f4358 by Daniel Kahn Gillmor on 12/02/2021 at 16:25..
update exported symbols to include new expiration and revocation
https://invent.kde.org/neon/forks/gpgme/-/commit/61fc7d315eb5c38cd293ae9b289f2bd6e78f4358

Git commit ffa2471ce9ee5293ab2732b5da299c9e0cd99b96 by Daniel Kahn Gillmor on 12/02/2021 at 16:25..
note that patches are forwarded upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/ffa2471ce9ee5293ab2732b5da299c9e0cd99b96

Git commit 08224af63aa79c91ce24ad6cd4da5692b270c477 by Daniel Kahn Gillmor on 12/02/2021 at 16:25..
drop directives for missing package python-gpg
https://invent.kde.org/neon/forks/gpgme/-/commit/08224af63aa79c91ce24ad6cd4da5692b270c477

Git commit d33d7f8b52288e005b9b6d02124ad4e5ada11744 by Daniel Kahn Gillmor on 12/02/2021 at 16:25..
python3-gpg: ship howto/ folder of examples
https://invent.kde.org/neon/forks/gpgme/-/commit/d33d7f8b52288e005b9b6d02124ad4e5ada11744

Git commit 5be6ce275c1bef3c543501b644425343eb3afbb2 by Daniel Kahn Gillmor on 17/02/2021 at 00:40..
move to packaging branch debian/experimental
https://invent.kde.org/neon/forks/gpgme/-/commit/5be6ce275c1bef3c543501b644425343eb3afbb2

Git commit cd593fc0421ca862511c63ebae684c13f77b934f by Daniel Kahn Gillmor on 17/02/2021 at 00:40..
ship all example python scripts with python3 shebang
https://invent.kde.org/neon/forks/gpgme/-/commit/cd593fc0421ca862511c63ebae684c13f77b934f

Git commit 63d57bc0abd63949ad8a2ad6345af2ee26a4bad1 by Daniel Kahn Gillmor on 17/02/2021 at 00:40..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/63d57bc0abd63949ad8a2ad6345af2ee26a4bad1

Git commit fe900a41bf809b263f05d5df21b6ed7fbfb2bbbc by Ingo Klöcker on 05/03/2021 at 08:24..
qt: Add method for getting config entries for components by entry name

* lang/qt/src/cryptoconfig.h, lang/qt/src/cryptoconfig.cpp
(CryptoConfig::entry): Move implementation to cpp. Add overload not
requiring a group name.
--

The group name is not needed for identifying a config entry because the
groups only provide a logical grouping of config entry for user
interfaces. To improve usability entries are sometimes moved to a
different group, but this shouldn't break existing applications trying
to access those entries. The new group-agnostic overload makes
applications robust against regrouping of config entries.

GnuPG-bug-id: 5217
https://invent.kde.org/neon/forks/gpgme/-/commit/fe900a41bf809b263f05d5df21b6ed7fbfb2bbbc

Git commit 84e1e6c9942cebccd707047835c557721177330a by Daniel Kahn Gillmor on 05/03/2021 at 13:37..
Avoid sending --with-keygrip unconditionally (Closes: #984594)
https://invent.kde.org/neon/forks/gpgme/-/commit/84e1e6c9942cebccd707047835c557721177330a

Git commit 1a166bf7dbc10345a40aafe68a9e384cdea334a7 by Daniel Kahn Gillmor on 06/03/2021 at 03:40..
prepare debian release to experimental
https://invent.kde.org/neon/forks/gpgme/-/commit/1a166bf7dbc10345a40aafe68a9e384cdea334a7

Git commit 0821e2b1495e8944a5a1b5ba20ad5f403dde0dd0 by Werner Koch on 11/03/2021 at 10:49..
core: New flag GPGME_KEYSIGN_FORCE.

* 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
https://invent.kde.org/neon/forks/gpgme/-/commit/0821e2b1495e8944a5a1b5ba20ad5f403dde0dd0

Git commit 3ffd7bd4039d90cd15fbf76f8c116814bffdab7c by Werner Koch on 11/03/2021 at 12:49..
doc: Add MIT license notice.

* LICENSES: New.
--

Suggested-by: Jiri Kucera <sanczes at gmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/3ffd7bd4039d90cd15fbf76f8c116814bffdab7c

Git commit 276187f6b62a73e92b1c20f589510f80ab9e88d2 by Ingo Klöcker on 05/05/2021 at 17:23..
core: Extend gpgme_key_sig_t with trust signature members.

* 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
https://invent.kde.org/neon/forks/gpgme/-/commit/276187f6b62a73e92b1c20f589510f80ab9e88d2

Git commit e391a08c6f96cd2d93c49b888459ee3f42058118 by Ingo Klöcker on 05/05/2021 at 17:25..
cpp: Add getters for the attributes of a trust signature

* lang/cpp/src/key.h (TrustSignatureTrust): New enum.
* lang/cpp/src/key.h, lang/cpp/src/key.cpp
(UserID::Signature::isTrustSignature): New.
(UserID::Signature::trustValue): New.
(UserID::Signature::trustDepth): New.
(UserID::Signature::trustScope): New.
--

GnuPG-bug-id: 5245, 5420
https://invent.kde.org/neon/forks/gpgme/-/commit/e391a08c6f96cd2d93c49b888459ee3f42058118

Git commit a8d7b9d16796efd6f21abaeb43ccaeb2388eb6e4 by Ingo Klöcker on 05/05/2021 at 17:26..
cpp: Add support for trust signatures to sign key edit interactor

* lang/cpp/src/gpgsignkeyeditinteractor.h,
lang/cpp/src/gpgsignkeyeditinteractor.cpp
(GpgSignKeyEditInteractor::setTrustSignatureTrust): New.
(GpgSignKeyEditInteractor::setTrustSignatureDepth): New.
(GpgSignKeyEditInteractor::setTrustSignatureScope): New.
* lang/cpp/src/gpgsignkeyeditinteractor.cpp
(GpgSignKeyEditInteractor::Private::Private): Initialize new member.
(makeTable): Add new transition. Fix typos in existing transitions.
(GpgSignKeyEditInteractor::action): Handle SET_TRUST_VALUE,
SET_TRUST_DEPTH, and SET_TRUST_REGEXP.
--

GnuPG-bug-id: 5245, 5421
https://invent.kde.org/neon/forks/gpgme/-/commit/a8d7b9d16796efd6f21abaeb43ccaeb2388eb6e4

Git commit dae01f8185e0f1bc9c65d93078c7ccda0b79611f by Ingo Klöcker on 05/05/2021 at 17:26..
qt: Pimpl QGpgMESignKeyJob

* lang/qt/src/qgpgmesignkeyjob.h: Remove unneeded includes. Include
<memory>.
(QGpgMESignKeyJob): Remove all member variables. Add pimpl pointer.
* lang/qt/src/qgpgmesignkeyjob.cpp: Include <QString>. Don't include
<memory>.
(QGpgMESignKeyJob::Private): New.
(QGpgMESignKeyJob::QGpgMESignKeyJob): Remove initialization of removed
members. Initialize d.
(QGpgMESignKeyJob::start, QGpgMESignKeyJob::setUserIDsToSign,
QGpgMESignKeyJob::setCheckLevel, QGpgMESignKeyJob::setExportable,
QGpgMESignKeyJob::setSigningKey, QGpgMESignKeyJob::setNonRevocable,
QGpgMESignKeyJob::setRemark, QGpgMESignKeyJob::setDupeOk): Adapt to move
of member variables to pimpl.
--

GnuPG-bug-id: 5245, 5421
https://invent.kde.org/neon/forks/gpgme/-/commit/dae01f8185e0f1bc9c65d93078c7ccda0b79611f

Git commit f0858e45b0be260730e742643e741547123d4287 by Ingo Klöcker on 05/05/2021 at 17:26..
qt: Extend SignKeyJob to create trust signatures

* lang/qt/src/signkeyjob.h (SignKeyJob::setTrustSignature): New.
* lang/qt/src/qgpgmesignkeyjob.h, lang/qt/src/qgpgmesignkeyjob.cpp
(QGpgMESignKeyJob::setTrustSignature): New.
* lang/qt/src/qgpgmesignkeyjob.cpp (sign_key): Handle trust signatures.
(QGpgMESignKeyJob::start): Pass trust signature attributes to sign_key.
(QGpgMESignKeyJob::setTrustSignature): New.
--

This allows Kleopatra to create trust signatures for trusted
introducers.

GnuPG-bug-id: 5245, 5421
https://invent.kde.org/neon/forks/gpgme/-/commit/f0858e45b0be260730e742643e741547123d4287

Git commit 58a217b108e4c4c92306542bf9f2995254809ffb by Ingo Klöcker on 06/05/2021 at 08:14..
cpp: Do not close stdout/stderr when destroying EditInteractor

* lang/cpp/src/editinteractor.cpp (EditInteractor::Private): Initialize
members 'state' and 'debug' in-class. Add member 'debugNeedsClosing'.
(EditInteractor::Private::Private): Remove members initializers.
Remember if 'debug' needs to be closed.
(EditInteractor::Private::~Private): Only close 'debug' if it needs to
be closed.
--

This fixes the problem that after destroying an edit interactor all
debug output went to /dev/null instead of stderr (or stdout) if one
enabled debugging of the edit interactors with GPGMEPP_INTERACTOR_DEBUG
set to stderr (or stdout).
https://invent.kde.org/neon/forks/gpgme/-/commit/58a217b108e4c4c92306542bf9f2995254809ffb

Git commit 88db69e1a964c9a36989e36fe5d972548432fb5c by Werner Koch on 12/05/2021 at 06:48..
core: Make sure to stay ABI compatible.

* 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.
https://invent.kde.org/neon/forks/gpgme/-/commit/88db69e1a964c9a36989e36fe5d972548432fb5c

Git commit aa98081356b5f7c9ef2422021e05aed01a7e4d46 by Werner Koch on 12/05/2021 at 06:50..
core: Allow for older compilers.

* tests/run-verify.c (main): Remove C99-only syntax.
* tests/run-threaded.c (start_keylistings): Ditto.
--

Older gcc's do not grok this and there is no real need for it.

  run-verify.c:324: error: ‘for’ loop initial declarations are only
  allowed in C99 mode
  run-verify.c:324: note: use option -std=c99 or -std=gnu99 to compile
  your code

Reported-by: Lars Hecking
https://invent.kde.org/neon/forks/gpgme/-/commit/aa98081356b5f7c9ef2422021e05aed01a7e4d46

Git commit 792a7e7f04ead7643561439b773e740549340b99 by NIIBE Yutaka on 27/05/2021 at 04:35..
build: Update gpg-error.m4

* m4/gpg-error.m4: Update from libgpg-error.

--

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/792a7e7f04ead7643561439b773e740549340b99

Git commit 367b9e7488601cdf2cbec4d593a235c89f9a4281 by NIIBE Yutaka on 27/05/2021 at 04:36..
build: _DARWIN_C_SOURCE should be 1.

* configure.ac (*-apple-darwin*): Set _DARWIN_C_SOURCE 1.

--

GnuPG-bug-id: 5440
Reported-by: Jay Freeman
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/367b9e7488601cdf2cbec4d593a235c89f9a4281

Git commit 31eb45f01620d3e8811fe18460c281837bb3359f by Werner Koch on 28/05/2021 at 16:31..
tests: Improve the output of the run-keylist helper.

* tests/run-keylist.c (main): Print all infos from the primary key.
--

The test tool printed only the computed infos for the key and not the
detailed one fro the primary key.  The new output better reflects the
data structure.

Related to
GnuPG-bug-id: 5454
https://invent.kde.org/neon/forks/gpgme/-/commit/31eb45f01620d3e8811fe18460c281837bb3359f

Git commit 27aa7c4a0fc8f7cef6219443cee0d040c2774746 by Ingo Klöcker on 01/06/2021 at 13:29..
qt: Add support for flags in LDAP server options

* lang/qt/src/qgpgmenewcryptoconfig.cpp (parseURL): Handle extended
LDAP server option syntax.
(portToString): New.
(splitURL): Append flags to LDAP server option.
--

This adds support for the extended syntax of LDAP server options
introduced in gpg 2.2.18/2.3. The flags are stored as fragment of a
QUrl.

GnuPG-bug-id: 5217
https://invent.kde.org/neon/forks/gpgme/-/commit/27aa7c4a0fc8f7cef6219443cee0d040c2774746

Git commit 5512133de4e9bca2defb744e2b42e55b5487d72c by Ingo Klöcker on 02/06/2021 at 08:20..
core: Fix a few checks for number of fields in keylist result parser.

* src/keylist.c (keylist_colon_handler): Check for correct number of
fields.
--

This prevents NULL pointer dereferencing with older versions of gpg
that may output less fields.
https://invent.kde.org/neon/forks/gpgme/-/commit/5512133de4e9bca2defb744e2b42e55b5487d72c

Git commit 5bc4e23a57f149c2a7008c1b88ab3d398ce75e9b by Ingo Klöcker on 02/06/2021 at 08:56..
qt: Add separate logging category for result of config loading

* lang/qt/src/qgpgme_debug.h: Make include guard match file name.
* lang/qt/src/qgpgme_debug.h, lang/qt/src/qgpgme_debug.cpp
(QGPGME_CONFIG_LOADING_LOG): New.
* lang/qt/src/qgpgmenewcryptoconfig.cpp
(QGpgMENewCryptoConfig::reloadConfiguration): Use new logging category.
--

Use a separate logging category for the extremely noisy logging of
the result of config loading to make debug logging more useful.

GnuPG-bug-id: 5217
https://invent.kde.org/neon/forks/gpgme/-/commit/5bc4e23a57f149c2a7008c1b88ab3d398ce75e9b

Git commit 4041e2c62a10a149776a78e9221de6732693dad9 by Andre Heinecke on 09/06/2021 at 08:47..
core: Explicitly add GPG_ERROR_CFLAGS

* src/Makefile.am (AM_CFLAGS): Add GPG_ERROR_CFLAGS

--
This fixes the include directory for libgpg error if
it is installed in a different prefix then libassuan. Previously
libassuan provided the include directory also implicitly.
https://invent.kde.org/neon/forks/gpgme/-/commit/4041e2c62a10a149776a78e9221de6732693dad9

Git commit e6095e54718fe2463fb54adf5879d55e2fba4fef by Andre Heinecke on 09/06/2021 at 08:53..
qt: Explicitly link libgpg-error

* lang/qt/src/Makefile.am (libqgpgme_la_LIBADD): Explicitly link
gpg-error.

--
Previously this was implicit from the libassuan flags.
https://invent.kde.org/neon/forks/gpgme/-/commit/e6095e54718fe2463fb54adf5879d55e2fba4fef

Git commit ceb8387460b05de5c8cec6e02950176b09c4f38b by Andre Heinecke on 10/06/2021 at 13:33..
core,w32: Increase BUFFER_SIZE to 4096

* src/data.h (BUFFER_SIZE): Increase to 4096 for Windows.

--
This brings it in line to the PIPE_BUF size on desktop Linux
systems. This should increase performance when working with
large files on Windows a bit.

GnuPG-Bug-Id: T5478
https://invent.kde.org/neon/forks/gpgme/-/commit/ceb8387460b05de5c8cec6e02950176b09c4f38b

Git commit b3b75c37e2d3ef313031ceba8063feeccb0583ec by Andre Heinecke on 10/06/2021 at 13:36..
qt: Flush output after write for QProcess output

* lang/qt/src/dataprovider.cpp (QIODeviceDataProvider::write): Call
waitForBytesWritten.

--
The problem here is that QProcess writes into an internal buffer
which is written to stdin of the process triggered by a
signal/slot connection. That connection is broken when we move
the QProcess into our GPGME thread and only restablished when
our Job is finished. This caused Kleopatra to basically keep
everything when decrypting a large archive in memory and
only write it out to the unpack process once the decryption
was finished.

GnuPG-Bug-Id: T5475
https://invent.kde.org/neon/forks/gpgme/-/commit/b3b75c37e2d3ef313031ceba8063feeccb0583ec

Git commit ea290108e4df9f93eda79789d9cde5441d6bdd55 by Werner Koch on 14/06/2021 at 15:10..
core: Also detect AuthEnvelopedData (AEAD for CMS)

* src/data-identify.c (basic_detection): Add OID.

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/ea290108e4df9f93eda79789d9cde5441d6bdd55

Git commit fde20940b5ca6986dc12215209e8858601bb0c2e by Werner Koch on 14/06/2021 at 17:51..
core: New data flags "io-buffer-size" and "sensitive".

* src/data.c (_gpgme_data_release): Free buffers.
(gpgme_data_seek): Adjust from renamed fields.
(gpgme_data_set_flag): Implement new flags.
(_gpgme_data_inbound_handler): Allow the use of a malloced buffer.
(_gpgme_data_outbound_handler): Ditto.
* src/data.h (BUFFER_SIZE): Move out of the struct definition.
(struct gpgme_data): Remove pending filed and introduce inbound and
outbound fields.

* src/conversion.c (_gpgme_wipememory): New.  Taken from GnuPG.
* src/cJSON.c (wipememory): Use this here too.

* tests/run-decrypt.c (main): Add options "--large-buffers" and
"--sensitive".
--

GnuPG-bug-id: 5478
Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/fde20940b5ca6986dc12215209e8858601bb0c2e

Git commit 0d03f31e07e683efbdb206cc3407bf222d71d8fe by Ingo Klöcker on 17/06/2021 at 07:13..
qt: Fix API documentation

* lang/qt/src/signkeyjob.h (SignKeyJob::start,
SignKeyJob::setUserIDsToSign, SignKeyJob::setCheckLevel): Fix
documentation of parameters.
--

GnuPG-bug-id: 5245
https://invent.kde.org/neon/forks/gpgme/-/commit/0d03f31e07e683efbdb206cc3407bf222d71d8fe

Git commit 1dca8c2b3c6d6aa3dfd4215c911207f08a3bf9f1 by Ingo Klöcker on 17/06/2021 at 07:38..
qt: Do not set empty base DN as query of keyserver URL

* lang/qt/src/qgpgmenewcryptoconfig.cpp (parseURL): Only set non-empty
base DN as URL query.
--

This makes it possible to differentiate an unset query from an empty
query.

GnuPG-bug-id: 5465
https://invent.kde.org/neon/forks/gpgme/-/commit/1dca8c2b3c6d6aa3dfd4215c911207f08a3bf9f1

Git commit 72de06417e32bd6573acd0b73a72fcf98232fe81 by Ingo Klöcker on 17/06/2021 at 07:41..
qt: Add some error logging

* lang/qt/src/qgpgmenewcryptoconfig.cpp (setURLValueList): Log error
if setting config value failed.
--

GnuPG-bug-id: 5465
https://invent.kde.org/neon/forks/gpgme/-/commit/72de06417e32bd6573acd0b73a72fcf98232fe81

Git commit 5340bb7ccfa7086054823fac48d178e6206d66c0 by Ingo Klöcker on 18/06/2021 at 10:33..
qt: Add missing }

* lang/qt/src/qgpgmenewcryptoconfig.cpp (parseURL): Add missing }.
--

Fixes-commit: 1dca8c2b3c6d6aa3dfd4215c911207f08a3bf9f1
GnuPG-bug-id: 5465
https://invent.kde.org/neon/forks/gpgme/-/commit/5340bb7ccfa7086054823fac48d178e6206d66c0

Git commit ab1d4ef580794a86da754d516db35091f6997e2c by Ingo Klöcker on 21/06/2021 at 08:48..
Update NEWS.

* NEWS: Add news for recent changes
--

GnuPG-bug-id: 5421, 5217
https://invent.kde.org/neon/forks/gpgme/-/commit/ab1d4ef580794a86da754d516db35091f6997e2c

Git commit 34d9defc42bacfaf2bb1ce70b2c3f0fdf0a106c3 by Ingo Klöcker on 22/06/2021 at 14:35..
core: Allow specifying an expiration date for key signatures

* src/context.h (struct gpgme_context): Add 'cert_expire'.
* src/engine-gpg.c (append_args_from_cert_expire): New.
(gpg_edit): Set option according to the new flag.
* src/gpgme.c (gpgme_release): Free 'cert_expire'.
(gpgme_set_ctx_flag, gpgme_get_ctx_flag): Add "cert-expire".

* tests/gpg/Makefile.am (c_tests): Add new test.
(gpg.conf): Write "allow-weak-key-signatures" to gpg.conf.
* tests/gpg/t-edit-sign.c: New.
--

The new context flag "cert-expire" allows setting the expiration date
for key signatures created with gpgme_op_interact.

GnuPG-bug-id: 5336, 5505
https://invent.kde.org/neon/forks/gpgme/-/commit/34d9defc42bacfaf2bb1ce70b2c3f0fdf0a106c3

Git commit ac4536990a4fed4a45a0851260c029e69d0cadf6 by Ingo Klöcker on 22/06/2021 at 16:49..
qt: Extend SignKeyJob to create signatures with expiration date

* lang/qt/src/signkeyjob.h (SignKeyJob::setExpirationDate): New.
* lang/qt/src/qgpgmesignkeyjob.h, lang/qt/src/qgpgmesignkeyjob.cpp
(QGpgMESignKeyJob::setExpirationDate): New.
* lang/qt/src/qgpgmesignkeyjob.cpp (QGpgMESignKeyJob::Private): Add
member m_expiration.
(sign_key): Handle expiration date.
(QGpgMESignKeyJob::start): Pass expiration date to sign_key.

* lang/qt/tests/t-various.cpp
(TestVarious::testSignKeyWithoutExpiration,
TestVarious::testSignKeyWithExpiration): New.
(TestVarious::initTestCase): Add "allow-weak-key-signatures" to
gpg.conf.
--

This allows Kleopatra (and other users of QGpgme) to create key
signatures with expiration date.

GnuPG-bug-id: 5336, 5506
https://invent.kde.org/neon/forks/gpgme/-/commit/ac4536990a4fed4a45a0851260c029e69d0cadf6

Git commit 14b148b7d34038fac863ab882de29c6d35d425f1 by Werner Koch (on behalf of Jasper Spaans) on 24/06/2021 at 16:09..
python: Allow returning signatures made by unknown keys in `decrypt`

--
This functionality got dropped somewhere after 1.12, as part of the
cleanup of the `Context.decrypt` call signature. Reintroduce it again,
now using an explicit keyword argument `filter_signatures` (which
defaults to hiding signatures by unknown keys).

GnuPG-bug-id: 5292
https://invent.kde.org/neon/forks/gpgme/-/commit/14b148b7d34038fac863ab882de29c6d35d425f1

Git commit 768b7892e37878a853949d502347c771d076ab1c by Werner Koch on 24/06/2021 at 16:13..
python: Do not include the full file names in the docs.

--

GnuPG-bug-id: 5299
https://invent.kde.org/neon/forks/gpgme/-/commit/768b7892e37878a853949d502347c771d076ab1c

Git commit 1021c8645555502d914afffaa3707609809c9459 by Werner Koch on 24/06/2021 at 17:03..
Release 1.16.0
https://invent.kde.org/neon/forks/gpgme/-/commit/1021c8645555502d914afffaa3707609809c9459

Git commit e8e055e682f8994d62012574e1c8d862ca72a35d by Werner Koch on 24/06/2021 at 17:36..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/e8e055e682f8994d62012574e1c8d862ca72a35d

Git commit 81a33ea5e1b86d586b956e893a5b25c4cd41c969 by Ingo Klöcker on 26/06/2021 at 16:03..
core: Fix use-after-free issue in test

* tests/gpg/t-edit-sign.c (sign_key, verify_key_signature): New.
(main): Factored out signing and verifying the result.
--

Factoring the two steps of the test into different functions fixes the
use-after-free issue that was caused by accidentaly using a variable
of the first step in the second step.

GnuPG-bug-id: 5509
https://invent.kde.org/neon/forks/gpgme/-/commit/81a33ea5e1b86d586b956e893a5b25c4cd41c969

Git commit ade95b25ce473a3c9ebcb77b7bd76a2fa6ed2805 by Ingo Klöcker on 26/06/2021 at 16:03..
qt: Remove superfluous trailing ';'

lang/qt/src/signkeyjob.h (class SignKeyJob): Remove trailing ';' from
inline implemented member functions
https://invent.kde.org/neon/forks/gpgme/-/commit/ade95b25ce473a3c9ebcb77b7bd76a2fa6ed2805

Git commit 3503816570a19352e4b8a81d1cd0f3a9337b8c55 by Ingo Klöcker on 28/06/2021 at 09:56..
qt: Add mechanism for missing d-pointer in Job

* lang/qt/src/job_p.h: New.
* lang/qt/src/job.cpp (typedef JobPrivateHash, d_func, setJobPrivate,
getJobPrivate): New.
--

Because of ABI compatibility requirements we cannot add a d-pointer
to Job. Therefore we store the d-pointers in a global static. This
mechanism will allow Job subclasses to store additional data without
breaking the ABI.

GnuPG-bug-id: 4717
https://invent.kde.org/neon/forks/gpgme/-/commit/3503816570a19352e4b8a81d1cd0f3a9337b8c55

Git commit 144d580607dd0b70bb20542e2f457153b9cc4ecb by Ingo Klöcker on 28/06/2021 at 09:56..
qt: Allow changing expiration date of primary key and all subkeys

* lang/qt/src/Makefile.am (qgpgme_sources): Add changeexpiryjob.cpp.
* lang/qt/src/changeexpiryjob.cpp: New.
* lang/qt/src/changeexpiryjob.h (enum ChangeExpiryJob::Option,
typedef ChangeExpiryJob::Options, ChangeExpiryJob::setOptions,
ChangeExpiryJob::options): New.
* lang/qt/src/qgpgmechangeexpiryjob.cpp (change_expiry): Update the
expiration date of primary key and/or some/all subkeys.
(QGpgMEChangeExpiryJob::start): Add options to call of change_expiry.
(ChangeExpiryJob::start): Moved implementation to changeexpiryjob.cpp.
--

Additionally, to the default behavior (update expiration of primary
key if no subkeys are specified resp. update expiration of specified
subkeys) it is now possible to update the expiration of the primary key
_and_ the specified/all subkeys.

GnuPG-bug-id: 4717
https://invent.kde.org/neon/forks/gpgme/-/commit/144d580607dd0b70bb20542e2f457153b9cc4ecb

Git commit 801acd89b234fcd7226f3fb39ec01634460cfa50 by Ingo Klöcker on 28/06/2021 at 09:56..
qt: Add test for ChangeExpiryJob

* lang/qt/tests/Makefile.am (TESTS, moc_files, noinst_PROGRAMS): Add
new test.
(t_changeexpiryjob_SOURCES): New.
* lang/qt/tests/t-changeexpiryjob.cpp: New.
--

GnuPG-bug-id: 4717
https://invent.kde.org/neon/forks/gpgme/-/commit/801acd89b234fcd7226f3fb39ec01634460cfa50

Git commit 9d2b876093c25f604d9efe2775143c8f0361916d by Ingo Klöcker on 28/06/2021 at 09:56..
qt: Fix filenames in copyright headers

* lang/qt/src/qgpgmechangeownertrustjob.h,
lang/qt/tests/t-trustsignatures.cpp: Use correct filenames.
https://invent.kde.org/neon/forks/gpgme/-/commit/9d2b876093c25f604d9efe2775143c8f0361916d

Git commit d8638ed0aa5bf7f970787155a35d37a4f5d320f8 by Ingo Klöcker on 28/06/2021 at 10:13..
Update NEWS.

* NEWS: Add changes of ChangeExpiryJob.
--

GnuPG-bug-id: 4717
https://invent.kde.org/neon/forks/gpgme/-/commit/d8638ed0aa5bf7f970787155a35d37a4f5d320f8

Git commit 12006a782900687a7f0158a3f931528cfc5ff451 by Ingo Klöcker on 29/06/2021 at 10:12..
qt: Allow retrieving the default value of a config entry

* lang/qt/src/cryptoconfig.cpp, lang/qt/src/cryptoconfig.h
(CryptoConfigEntry::defaultValue): New.
* lang/qt/src/qgpgmenewcryptoconfig.cpp,
lang/qt/src/qgpgmenewcryptoconfig.h
(QGpgMENewCryptoConfigEntry::defaultValue): New.
* lang/qt/tests/t-config.cpp (CryptoConfigTest::testDefault()):
Add test of CryptoConfigEntry::defaultValue(). Port away from deprecated
CryptoConfig::entry overload.
--

GnuPG-bug-id: 5515
https://invent.kde.org/neon/forks/gpgme/-/commit/12006a782900687a7f0158a3f931528cfc5ff451

Git commit 6a79e90dedc19877ae1c520fed875b57089a5425 by Ingo Klöcker on 08/07/2021 at 09:54..
Make sure expiration time is interpreted as unsigned number

* lang/qt/tests/t-various.cpp (testSignKeyWithExpiration): Convert
expiration time to uint_least32_t.
--

This fixes the test on 32-bit systems where time_t (the return type of
expirationTime()) is a signed 32-bit integer type.

GnuPG-bug-id: 5522
https://invent.kde.org/neon/forks/gpgme/-/commit/6a79e90dedc19877ae1c520fed875b57089a5425

Git commit a5662a801fc11a533fb3b1a69a17e119064972a3 by Ingo Klöcker on 08/07/2021 at 10:18..
core: Ensure gpg.conf for tests is recreated if necessary

* tests/gpg/gpg.conf.in: New.
* tests/gpg/Makefile.am (gpg.conf): Copy gpg.conf.in instead of using
echo to fill gpg.conf.
--

This change ensures that gpg.conf is updated whenever new options are
added for some tests.
https://invent.kde.org/neon/forks/gpgme/-/commit/a5662a801fc11a533fb3b1a69a17e119064972a3

Git commit 4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e by Werner Koch (on behalf of Jiri Kucera) on 27/07/2021 at 08:52..
core: Support closefrom also for glibc.

* src/posix-io.c (_gpgme_io_spawn): Use glibc's closefrom.
--

Since 2.34, glibc introduces closefrom (the implementation
follows *BSD standard).

Signed-off-by: Werner Koch <wk at gnupg.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e

Git commit 7cfc93193d535ec5037e48b86544e1b4dbf949f6 by Ingo Klöcker on 03/08/2021 at 10:13..
core: Fix results returned by gpgme_data_* functions

src/debug.h (TRACE_SYSRES_OFF_T, _trace_sysres_off_t,
TRACE_SYSRES_SSIZE_T, _trace_sysres_ssize_t): New.
src/data.c (gpgme_data_read, gpgme_data_write, gpgme_data_seek): Use
appropriate new tracing macros instead of casting the results to int.
--

This change adds tracing macros for results of system functions of
type __off_t and __ssize_t.

GnuPG-bug-id: 5481
https://invent.kde.org/neon/forks/gpgme/-/commit/7cfc93193d535ec5037e48b86544e1b4dbf949f6

Git commit 3c1c98a43413e429459ca7d3615659f8149534b8 by NIIBE Yutaka on 13/08/2021 at 05:52..
core: Use flexible array member if compiler has support.

* configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Add.
* src/engine-gpg.c (struct arg_and_data_s): Use FLEXIBLE_ARRAY_MEMBER.
(_add_arg): Use offsetof instead of sizeof.
(add_data): Likewise.

--

Before this fix, GCC 11 warns (with its bound checking feature).

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/3c1c98a43413e429459ca7d3615659f8149534b8

Git commit 733a0f255c5b3cd65e9cff474243809c1ca262fc by Daniel Kahn Gillmor on 20/08/2021 at 00:57..
move back to debian unstable
https://invent.kde.org/neon/forks/gpgme/-/commit/733a0f255c5b3cd65e9cff474243809c1ca262fc

Git commit c0f32618985724fa4a1aa3d206dffb9bb61c7e07 by Daniel Kahn Gillmor on 20/08/2021 at 00:58..
Standards-Version: bump to 4.6.0 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/c0f32618985724fa4a1aa3d206dffb9bb61c7e07

Git commit 2d9928d017cc93f94cfeee4ea5a397a7704eda8d by Daniel Kahn Gillmor on 20/08/2021 at 21:15..
prepare unstable release
https://invent.kde.org/neon/forks/gpgme/-/commit/2d9928d017cc93f94cfeee4ea5a397a7704eda8d

Git commit a8b7fd7b6d247189e7ff44f32b0ceb366f4eac44 by Daniel Kahn Gillmor on 20/08/2021 at 21:54..
New upstream version 1.16.0
https://invent.kde.org/neon/forks/gpgme/-/commit/a8b7fd7b6d247189e7ff44f32b0ceb366f4eac44

Git commit 3b1eca93845040942e1672f16af1f362db660048 by Daniel Kahn Gillmor on 20/08/2021 at 21:54..
Update upstream source from tag 'upstream/1.16.0'

Update to upstream version '1.16.0'
with Debian dir 2aa0334741bba9fb89e451289d21b62450067e08
https://invent.kde.org/neon/forks/gpgme/-/commit/3b1eca93845040942e1672f16af1f362db660048

Git commit 5eb5b4fb62142a206879f475542ca0aa30f3677d by Daniel Kahn Gillmor on 23/08/2021 at 15:30..
drop already-upstream patches
https://invent.kde.org/neon/forks/gpgme/-/commit/5eb5b4fb62142a206879f475542ca0aa30f3677d

Git commit a13f5876d1a4915bb0fb67b4374561b2db94cccb by Daniel Kahn Gillmor on 23/08/2021 at 15:30..
refresh remaining patches
https://invent.kde.org/neon/forks/gpgme/-/commit/a13f5876d1a4915bb0fb67b4374561b2db94cccb

Git commit ecff0fd085eb5ebe9e2d4d15055f2c9c33c97ad7 by Daniel Kahn Gillmor on 23/08/2021 at 15:30..
update lintian overrides
https://invent.kde.org/neon/forks/gpgme/-/commit/ecff0fd085eb5ebe9e2d4d15055f2c9c33c97ad7

Git commit d34e8508bee3981f3f24825ca76a117662222255 by Daniel Kahn Gillmor on 23/08/2021 at 15:30..
drop dh-exec, relying instead on debhelper 13 for substitutions
https://invent.kde.org/neon/forks/gpgme/-/commit/d34e8508bee3981f3f24825ca76a117662222255

Git commit f645f14f4c079eca8bd94759d954e95ba40a462d by Daniel Kahn Gillmor on 23/08/2021 at 15:30..
prepare new upstream release
https://invent.kde.org/neon/forks/gpgme/-/commit/f645f14f4c079eca8bd94759d954e95ba40a462d

Git commit bc774104bbf461805f875c2bfd2d02aa6dd0945d by Andre Heinecke on 27/08/2021 at 10:58..
Add missing files for distribution

* lang/qt/src/Makefile.am (private_qgpgme_headers): Add job_p.h
* tests/gpg/Makefile.am (EXTRA_DIST): Add gpg.conf.in
https://invent.kde.org/neon/forks/gpgme/-/commit/bc774104bbf461805f875c2bfd2d02aa6dd0945d

Git commit 8fe15462829b5049137b3f631564b72c4f63c5e2 by Andre Heinecke on 27/08/2021 at 11:01..
qt: Expect UTF-8 on stderr on Windows

* lang/qt/src/threadedjobmixin.cpp (stringFromGpgOutput): Expect
UTF-8.

--
In recent versions more and more output was changed to be
UTF-8 on Windows. Werner advised to always expect UTF-8
diagnostics.
https://invent.kde.org/neon/forks/gpgme/-/commit/8fe15462829b5049137b3f631564b72c4f63c5e2

Git commit aaf448b1e81e7421e539ac2deb9dc9d3d1459016 by Werner Koch on 27/08/2021 at 12:13..
build: Fix make distcheck problem.

* tests/start-stop-agent: Use -f with rm.  Also use cat instead of cp.
--

Also shorted some lines.
https://invent.kde.org/neon/forks/gpgme/-/commit/aaf448b1e81e7421e539ac2deb9dc9d3d1459016

Git commit ab9bca09eb869b2013c85fee232f1e62aed925f6 by Ingo Klöcker on 13/09/2021 at 15:30..
qt: Fix build against Qt 5.9

* lang/qt/tests/t-keylist.cpp (KeyListTest::testListAllKeysSync):
Ensure same type for both arguments of QCOMPARE.
* lang/qt/tests/t-various.cpp (TestVarious::testSetExpire):
Ensure same type for both arguments of QCOMPARE.
--

Qt 5.9 does not yet have the generic qCompare helper which supports
arguments of any type that can be compared with ==.

GnuPG-bug-id: 5592
https://invent.kde.org/neon/forks/gpgme/-/commit/ab9bca09eb869b2013c85fee232f1e62aed925f6

Git commit b75b08e94b738f3eb95ee0cd38f98890b949dfcd by Daniel Kahn Gillmor (on behalf of Norbert Preining) on 18/09/2021 at 16:09..
record changes to 1.16.0-1.1
https://invent.kde.org/neon/forks/gpgme/-/commit/b75b08e94b738f3eb95ee0cd38f98890b949dfcd

Git commit a6c44868d42364526930a43a0edb6ce1b9dd4ed3 by Daniel Kahn Gillmor on 18/09/2021 at 16:15..
Refresh patches imported from upstream using gbp pq

Thanks to Norbert Preining for doing the initial cherry-picking!
https://invent.kde.org/neon/forks/gpgme/-/commit/a6c44868d42364526930a43a0edb6ce1b9dd4ed3

Git commit 50daf3d75d666d34fecc0dbecc31c51a7989eda3 by NIIBE Yutaka on 10/11/2021 at 02:06..
libtool: Link without -flat_namespace for macOS.

* m4/libtool.m4: Not setting 10.0 to MACOSX_DEPLOYMENT_TARGET when not
defined.  Only specify -flat_namespace to linker for specific
(older) versions and hosts.

--

Original patch was by: Jeremy Huddleston Sequoia <jeremyhu at apple.com>
in

    https://lists.gnu.org/archive/html/libtool-patches/
    2020-06/msg00001.html

Reported-by: Aleix Conchillo Flaque
GnuPG-bug-id: 5610
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/50daf3d75d666d34fecc0dbecc31c51a7989eda3

Git commit 8cd2fe7b3de4abd2331bcb637b7e2c26ce4faa29 by NIIBE Yutaka on 11/11/2021 at 01:08..
tests: Use GPG_ERROR_MT_LIBS for a test with threads.

* tests/Makefile.am (run_threaded_CPPFLAGS): New.
(run_threaded_LDADD): Replace GPG_ERROR_LIBS to GPG_ERROR_MT_LIBS.

--

Reported-by: Ben Kibbey <bjk at luxsci.net>
Fixes-commit: d0402f886b720d03369887c807581bd980ee70cf
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8cd2fe7b3de4abd2331bcb637b7e2c26ce4faa29

Git commit 1cedac2bba246ff411843aaef10ca8ea0a0756cf by NIIBE Yutaka on 12/11/2021 at 01:22..
tests: Build using GPG_ERROR_MT_LIBS for thread use.

* tests/gpg/Makefile.am (WITH_THREAD_CPPFLAGS): New.
(WITH_THREAD_LDADD): New.
(t_thread1_CPPFLAGS, t_thread_keylist_CPPFLAGS)
(t_thread_keylist_verify_CPPFLAGS)
(t_cancel_CPPFLAGS): Use WITH_THREAD_CPPFLAGS.
(t_thread1_LDADD, t_thread_keylist_LDADD)
(t_thread_keylist_verify_LDADD)
(t_cancel_LDADD): Use WITH_THREAD_LDADD.

--

For library dependency at runtime, it's not 100% right to use
GPG_ERROR_MT_LIBS here, because those test programs don't use
libgpg-error directly at runtime.  But, it's OK, because these are
test programs, which don't need specifying minimum library dependency.

It would be too much for configure of gpgme, to check how threaded
application should be built, just for these test programs.

Co-authored-by: Ben Kibbey <bjk at luxsci.net>
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/1cedac2bba246ff411843aaef10ca8ea0a0756cf

Git commit 4583ab77e5af3f0da5b307a169d07b58dddf652f by NIIBE Yutaka on 12/11/2021 at 02:05..
gpgme.pc: Fix library dependency and use of includedir, libdir.

* src/gpgme.pc.in (Require): Move gpg-error, libassuan to...
(Requires.private): ... here.
(Cflags): Add -I${includedir}.
(Libs): Add -L${libdir}.

--

This will result better library dependency for applications using
gpgme.  It will break build of an application which directly uses
gpg-error or libassuan without specifying them (which means, depending
on redundant/wrong gpgme.pc).

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/4583ab77e5af3f0da5b307a169d07b58dddf652f

Git commit 5e33e66210583a2a98394cd6d90cd8340aa250de by Stefano Rivera on 24/11/2021 at 01:40..
Patch: Avoid a hardcoded list of known Python versions. (Closes: #998471)
https://invent.kde.org/neon/forks/gpgme/-/commit/5e33e66210583a2a98394cd6d90cd8340aa250de

Git commit 2171ca40381d8711d858058b04d5aa4b79169714 by Stefano Rivera on 24/11/2021 at 02:28..
Non-maintainer upload.
https://invent.kde.org/neon/forks/gpgme/-/commit/2171ca40381d8711d858058b04d5aa4b79169714

Git commit 8148237cb4ae20755c06a44d71761c7030973c3d by NIIBE Yutaka on 25/11/2021 at 02:13..
posix: Use poll instead, when available, removing use of select.

* configure.ac (HAVE_POLL_H): Add the check.
* src/ath.c [!HAVE_POLL_H] (ath_select): Enable conditionally.
* src/posix-io.c [HAVE_POLL_H] (_gpgme_io_select_poll): Use poll.
* tests/gpg/t-cancel.c [HAVE_POLL_H] (do_select): Use poll.
* tests/gpg/t-eventloop.c [HAVE_POLL_H] (do_select): Use poll.

--

GnuPG-bug-id: 2385
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/8148237cb4ae20755c06a44d71761c7030973c3d

Git commit eb37d6469e722ae5ff187962c216474b5ec476de by Werner Koch on 25/11/2021 at 10:40..
core: Support dirinfo("socketdir")

* src/dirinfo.c (WANT_SOCKETDIR): New.
(dirinfo): Add field socketdir.
(parse_output): Support "socketdir".
(get_gpgconf_item): Return socketdir.

* tests/t-engine-info.c (main): Add socketdir to the output.

* src/w32-util.c (_gpgme_create_process_utf8): Fix indentation.
--

GnuPG-bug-id: 5613

This is not strictly necessary because we could deduce this from one
of the other socket info items but it is more clean to have a
dedicated info item.  The socketdir item is available for 5 years now
(GnuPG commit 8e3fa5a4b205c534de2142e5d071712f957cf06a)
https://invent.kde.org/neon/forks/gpgme/-/commit/eb37d6469e722ae5ff187962c216474b5ec476de

Git commit 43de18a292b29436783127bd6c275817f0cd86b7 by Werner Koch on 25/11/2021 at 10:43..
tests: Silence libtool warning on Windows.

* tests/Makefile.am (AM_LDFLAGS): Use --no-fast-install on Windows.
https://invent.kde.org/neon/forks/gpgme/-/commit/43de18a292b29436783127bd6c275817f0cd86b7

Git commit b8b49c11e95fd978a8a2eed23f191d087ab056da by Werner Koch on 25/11/2021 at 10:48..
core: Make the gpgconf option parsing of string types more robust

* src/engine-gpgconf.c (gpgconf_parse_option): Skip the string
indicator if it is not the empty string.
--

Some versions of GnuPG (~2.2.28 to 2.2.33) returned a compliance
indicator which should be an int but actually used string as type.
Simply skipping the indicator without checking that this is the
indicator does not allow to work around this type mismatch by the
gpgme users.
https://invent.kde.org/neon/forks/gpgme/-/commit/b8b49c11e95fd978a8a2eed23f191d087ab056da

Git commit 1a1e9145877a60632346ae3ab68b1ae9d722a867 by Ingo Klöcker on 07/12/2021 at 10:14..
cpp: Factor out common code of GpgME::engineInfo() overloads

* lang/cpp/src/context.cpp (get_engine_info, get_static_engine_info):
New.
(GpgME::engineInfo(GpgME::Protocol), GpgME::engineInfo(GpgME::Engine)):
Use get_static_engine_info().
--

GnuPG-bug-id: 5722
https://invent.kde.org/neon/forks/gpgme/-/commit/1a1e9145877a60632346ae3ab68b1ae9d722a867

Git commit 0eddc867c31dd7239a1a9c4196bf8dc1372ea4b1 by Ingo Klöcker on 07/12/2021 at 10:14..
cpp: Return engine info for engine used by the context

lang/cpp/src/context.cpp (Context::engineInfo()): Return engine info
for protocol of context.
--

This change also fixes Context::setEngineFileName() and
Context::setEngineHomeDirectory() which overwrote home dir resp.
file name of the engine info for the protocol of context with the
corresponding value of the "first" engine info (i.e. engine info for
gpg) instead of keeping the current home dir resp. file name.

GnuPG-bug-id: 5722
https://invent.kde.org/neon/forks/gpgme/-/commit/0eddc867c31dd7239a1a9c4196bf8dc1372ea4b1

Git commit 0ac3679a74505b782388402b3743ee65c271340f by Ingo Klöcker on 10/12/2021 at 11:04..
core: Support all components with dirinfo()

* src/dirinfo.c (WANT_KEYBOXD_NAME, WANT_AGENT_NAME, WANT_SCDAEMON_NAME,
WANT_DIRMNGR_NAME, WANT_PINENTRY_NAME): New.
(dirinfo): Add fields keyboxd_name, agent_name, scdaemon_name,
dirmngr_name, pinentry_name.
(parse_output): Support "keyboxd", "gpg-agent", "scdaemon", "dirmngr",
"pinentry".
(get_gpgconf_item): Return new components.

tests/t-engine-info.c (main): Add new components to the output.
--

GnuPG-bug-id: 5727
https://invent.kde.org/neon/forks/gpgme/-/commit/0ac3679a74505b782388402b3743ee65c271340f

Git commit 5f1ba40116199cd77987c3c2797d600f6df018c2 by Ingo Klöcker on 10/12/2021 at 11:10..
cpp: Add new supported components to API docs of dirInfo()

lang/cpp/src/global.h: Update API doc of dirInfo().
--

GnuPG-bug-id: 5727
https://invent.kde.org/neon/forks/gpgme/-/commit/5f1ba40116199cd77987c3c2797d600f6df018c2

Git commit f3177d3ee0a1d30e15f33ff226b5e4c96b7610db by Ingo Klöcker on 10/12/2021 at 11:51..
cpp,tests: Add test runner for doing a WKD lookup without import

* lang/cpp/tests/Makefile.am (run_wkdlookup_SOURCES, programs_unix):
New.
(noinst_PROGRAMS): Add $(programs_unix).
* lang/cpp/tests/run-wkdlookup.cpp: New.
--

This test runner is a prototype for doing a WKD lookup without implicit
import of the found key(s).

Building this test runner is disabled on Windows because it may not
work there. Feel free to enable it on Windows if the test runner works
there.

GnuPG-bug-id: 5728
https://invent.kde.org/neon/forks/gpgme/-/commit/f3177d3ee0a1d30e15f33ff226b5e4c96b7610db

Git commit 0e70a2313afbbaaec6859a1edb478587ff82a6b5 by Ingo Klöcker on 13/12/2021 at 08:24..
qt: Fix example for using the asynchronous job API

* lang/qt/src/protocol.h (class Protocol): Fix API documentation.
--
https://invent.kde.org/neon/forks/gpgme/-/commit/0e70a2313afbbaaec6859a1edb478587ff82a6b5

Git commit ed7e7df2e14feb443e84d87e518ff61b1f7aa6d8 by Ingo Klöcker on 13/12/2021 at 09:48..
qt: Support WKD lookup without implicit import

* lang/qt/src/Makefile.am (qgpgme_sources): Add qgpgmewkdlookupjob.cpp,
wkdlookupresult.cpp.
(qgpgme_headers): Add wkdlookupjob.h, wkdlookupresult.h.
(camelcase_headers): Add WKDLookupJob, WKDLookupResult.
(private_qgpgme_headers): Add qgpgmewkdlookupjob.h.
(qgpgme_moc_sources): Add qgpgmewkdlookupjob.moc, wkdlookupjob.moc.
* lang/qt/src/job.cpp: Define c'tor and d'tor of WKDLookupJob.
* lang/qt/src/protocol.h (Protocol::wkdLookupJob): New.
* lang/qt/src/protocol_p.h (Protocol::wkdLookupJob): New.
* lang/qt/src/qgpgmewkdlookupjob.cpp, lang/qt/src/qgpgmewkdlookupjob.h,
lang/qt/src/wkdlookupjob.h, lang/qt/src/wkdlookupresult.cpp,
lang/qt/src/wkdlookupresult.h: New.

* lang/qt/tests/Makefile.am (EXTRA_DIST): Add final.test.
(the_tests): New.
(TESTS): Remove all t-*. Add $(the_tests) and final.test.
(moc_files): Add t-wkdlookup.moc.
(t_wkdlookup_SOURCES): New.
(noinst_PROGRAMS): Add t-wkdlookup.
* lang/qt/tests/final.test: New.
* lang/qt/tests/t-support.h (QTest::toString): New template
specialization for std::string.
* lang/qt/tests/t-wkdlookup.cpp: New.
--

The new WKDLookupJob allows running a WKD lookup without implicit
import of the retrieved key. This makes it possible to do WKD lookups
similar to keyserver lookups (aka external keylistings).

The new final.test pseudo test stops a dirmngr that may have been
started by the tests. The toString() template specialization enables
printing of the actual and expected values in case of failed QCOMPARE.

GnuPG-bug-id: 5728
https://invent.kde.org/neon/forks/gpgme/-/commit/ed7e7df2e14feb443e84d87e518ff61b1f7aa6d8

Git commit c89226d47fa8c7b1d03d07bc180b36f83b885925 by Ingo Klöcker on 13/12/2021 at 15:07..
doc: Fix a few errors in the documentation of gpgme_op_import_*

--
https://invent.kde.org/neon/forks/gpgme/-/commit/c89226d47fa8c7b1d03d07bc180b36f83b885925

Git commit 60880adafa93e1a1e8e9fecf03c14d56bbd55345 by Ingo Klöcker on 13/12/2021 at 15:52..
core: Allow specifiying a key origin when importing keys

* src/context.h (struct gpgme_context): New field key_origin.
* src/engine-backend.h (struct engine_ops): Add arg key_origin to
field 'import'.
* src/engine-gpg.c (gpg_import): Add arg key_origin and pass option
--key-origin with argument value to gpg. Adjust all callers.
* src/engine-gpgsm.c (gpgsm_import): Add dummy arg key_origin.
* src/gpgme.c (gpgme_release): Free 'key_origin'.
(gpgme_set_ctx_flag, gpgme_get_ctx_flag): New flag "key-origin".

* tests/run-import.c (main): Add option --key-origin.
* tests/gpg/t-import.c (main): Set and verify key origin.
--

This makes the --key-origin option available in the GPGME API for
key imports.

GnuPG-bug-id: 5733
https://invent.kde.org/neon/forks/gpgme/-/commit/60880adafa93e1a1e8e9fecf03c14d56bbd55345

Git commit 3a43d9dc67970db323c3e49eb964d52c4eb3ac6c by Ingo Klöcker on 14/12/2021 at 10:04..
qt,tests: Skip WKD lookup tests by default

* lang/qt/tests/t-support.cpp, lang/qt/tests/t-support.h
(class QGpgMETest): Add member function doOnlineTests.
* lang/qt/tests/t-wkdlookup.cpp (testWKDLookupAsync, testWKDLookupSync,
testLookupWithNoResultAsync): Skip tests if online tests are not
enabled.
--

GnuPG-bug-id: 5728
https://invent.kde.org/neon/forks/gpgme/-/commit/3a43d9dc67970db323c3e49eb964d52c4eb3ac6c

Git commit fd6bec617d8fb6ddcbc622a5d8cf94594a7d5520 by Ingo Klöcker on 14/12/2021 at 10:47..
qt: Allow setting key origin when importing keys

* lang/qt/src/Makefile.am (qgpgme_sources): Add importjob.cpp.
* lang/qt/src/importjob.cpp: New.
* lang/qt/src/importjob.h (class ImportJob): Add member functions
setKeyOrigin, keyOrigin, keyOriginUrl.
* lang/qt/src/qgpgmeimportjob.cpp (originToString): New.
(import_qba): Set key origin context flag.
(QGpgMEImportJob::start, QGpgMEImportJob::exec): Add options to call
of import_qba.

* lang/qt/tests/Makefile.am (the_tests, moc_files, noinst_PROGRAMS):
Add new test.
(t_import_SOURCES): New.
* lang/qt/tests/t-import.cpp: New.
--

GnuPG-bug-id: 5733
https://invent.kde.org/neon/forks/gpgme/-/commit/fd6bec617d8fb6ddcbc622a5d8cf94594a7d5520

Git commit fd680254dae58a6bf6fb83688bf7c849257688a4 by Ingo Klöcker on 14/12/2021 at 13:41..
core: Set --key-origin option only if supported by gpg

* src/engine-gpg.c (gpg_import): Do not pass --key-origin option to
gpg if gpg is too old.
--

GnuPG-bug-id: 5733
https://invent.kde.org/neon/forks/gpgme/-/commit/fd680254dae58a6bf6fb83688bf7c849257688a4

Git commit af820811ec7d0818f988cd728d745cede88ab45f by Ingo Klöcker on 14/12/2021 at 13:49..
qt: Add pattern used for WKD lookup to result

* lang/qt/src/qgpgmewkdlookupjob.cpp (run_wkd_get): Change type of
arg email.
(lookup_keys): Add pattern to result.
* lang/qt/src/wkdlookupresult.h (class WKDLookupResult): Add arg
pattern to c'tors. Add member function pattern.
* lang/qt/src/wkdlookupresult.cpp (class WKDLookupResult::Private):
Add field pattern.
(WKDLookupResult::WKDLookupResult): Pass pattern to pimpl.
(WKDLookupResult::pattern): New.

* lang/qt/tests/t-wkdlookup.cpp (testWKDLookupAsync, testWKDLookupSync,
testLookupWithNoResultAsync): Check pattern.
--

GnuPG-bug-id: 5728
https://invent.kde.org/neon/forks/gpgme/-/commit/af820811ec7d0818f988cd728d745cede88ab45f

Git commit d35d44efaf72f90ee4f92af8382c4bcb9982da3f by Ingo Klöcker on 14/12/2021 at 14:44..
core: Allow setting import filters when importing keys

* src/context.h (struct gpgme_context): New field import_filter.
* src/engine-backend.h (struct engine_ops): Add arg import_filter to
field 'import'.
* src/engine-gpg.c (gpg_import): Add arg import_filter and pass option
--import-filter with argument value to gpg. Adjust all callers.
* src/engine-gpgsm.c (gpgsm_import): Add dummy arg import_filter.
* src/gpgme.c (gpgme_release): Free 'import_filter'.
(gpgme_set_ctx_flag, gpgme_get_ctx_flag): New flag "import-filter".

* tests/run-import.c (main): Add option --import-filter.
--

This makes the --import-filter option available in the GPGME API for
key imports.

GnuPG-bug-id: 5739
https://invent.kde.org/neon/forks/gpgme/-/commit/d35d44efaf72f90ee4f92af8382c4bcb9982da3f

Git commit 3c770013d7233cb0a803251af54c0a2c1fb61e35 by Ingo Klöcker on 15/12/2021 at 11:00..
qt: Fix erroneous reuse of JobPrivate objects

* lang/qt/src/job.cpp (Job::~Job): Destroy JobPrivate object belonging
to destroyed job.
--

In some tests different Job objects reused the same JobPrivate object
because they were created with the same memory address. Obviously, this
shouldn't happen.

GnuPG-bug-id: 5739
https://invent.kde.org/neon/forks/gpgme/-/commit/3c770013d7233cb0a803251af54c0a2c1fb61e35

Git commit 3e81a4a336e093d075f83afe3e1bd26493e64cac by Ingo Klöcker on 15/12/2021 at 11:21..
qt: Avoid test failure when test is run multiple times

* lang/qt/tests/t-import.cpp (ImportTest): Add member tempGpgHome and
member function initTestCase.
(keyFpr, keyData): Move to ImportTest::testImportWithKeyOrigin.
--

Use different temporary GNUPGHOME's when running the test. This ensures
that the import in the test is always done with a new keyring.

GnuPG-bug-id: 5733
https://invent.kde.org/neon/forks/gpgme/-/commit/3e81a4a336e093d075f83afe3e1bd26493e64cac

Git commit 619579bb172579d766956b5d1690d18934fd5986 by Ingo Klöcker on 15/12/2021 at 14:00..
qt: Allow specifying an import filter when importing keys

* lang/qt/src/importjob.cpp (struct ImportJobPrivate): Add member
m_importFilter.
* lang/qt/src/importjob.cpp, lang/qt/src/importjob.h (class ImportJob):
Add member functions setImportFilter and importFilter.
* lang/qt/src/qgpgmeimportjob.cpp (import_qba): Add arg importFilter
and adjust the callers. Set import filter context flag.

* lang/qt/tests/t-import.cpp (ImportTest): Add member function
testImportWithImportFilter.
--

GnuPG-bug-id: 5739
https://invent.kde.org/neon/forks/gpgme/-/commit/619579bb172579d766956b5d1690d18934fd5986

Git commit 0636e229d7edfcb0a357ffcce62079488be32495 by NIIBE Yutaka on 22/12/2021 at 00:27..
build: Update for newer autoconf.

* configure.ac (AC_PREREQ): Require >= 2.69.
(AC_CONFIG_HEADERS): Use it instead of AC_CONFIG_HEADER.

--

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/0636e229d7edfcb0a357ffcce62079488be32495

Git commit 305d8668ca724982c50fe4e05315c48a20cc33e5 by Ingo Klöcker on 22/12/2021 at 14:25..
core: Detect bad passphrase error on certificate import

* src/import.c (gpgme_op_import_result): Check fpr for NULL.
(parse_error): New.
(import_status_handler): Handle error status line.

* doc/gpgme.texi (gpgme_import_status_t): Mention that fpr can be NULL.

* tests/gpg/t-import.c (check_result): Check fpr for NULL.
* tests/run-threaded.c (delete_impres): Check fpr for NULL.
--

When importing an encrypted certificate a wrong passphrase may be
entered. In this case gpgsm emits a status line with a bad passphrase
error and an "invalid object" error. To make it possible for callers
to handle a wrong passphrase error more gracefully, an import status
with bad passphrase error is added to the import result for each
status line with bad passphrase error.

GnuPG-bug-id: 5713
https://invent.kde.org/neon/forks/gpgme/-/commit/305d8668ca724982c50fe4e05315c48a20cc33e5

Git commit 300776f39165da068757864e9cb3029f06f3be5b by Ingo Klöcker on 22/12/2021 at 14:25..
cpp: Check fpr of import status for NULL

* lang/cpp/src/importresult.cpp (GpgME::ImportResult::Private): Check
fpr for NULL.
--

GnuPG-bug-id: 5713
https://invent.kde.org/neon/forks/gpgme/-/commit/300776f39165da068757864e9cb3029f06f3be5b

Git commit f99451e20fd2f84ac653aa6021a475026a9d4dc9 by Ingo Klöcker on 22/12/2021 at 14:25..
qt,tests: Add test runner for testing the import job

* lang/qt/tests/Makefile.am (run_importjob_SOURCES): New.
(noinst_PROGRAMS): Add run-importjob.
* lang/qt/tests/run-importjob.cpp: New.
--

GnuPG-bug-id: 5713
https://invent.kde.org/neon/forks/gpgme/-/commit/f99451e20fd2f84ac653aa6021a475026a9d4dc9

Git commit 82f43455e9412d8b4792b35371e0b6704a619d07 by Ingo Klöcker on 22/12/2021 at 14:25..
qt: Detect an import error caused by a wrong password

* lang/qt/src/qgpgmeimportjob.cpp (import_qba): Check import statuses of
import result for bad passphrase errors.
--

To allow users of the import job to handle a failed import caused by
a wrong password more gracefully, check if all import statuses of the
import result have a bad passphrase error and return a bad passphrase
error as import result in this case.

GnuPG-bug-id: 5713
https://invent.kde.org/neon/forks/gpgme/-/commit/82f43455e9412d8b4792b35371e0b6704a619d07

Git commit 326857511587fa7878757d3884f91bf7eb86771c by Ingo Klöcker on 04/01/2022 at 08:21..
core: Factor out the check for valid export mode flags.

* src/export.c (check_mode): New.
(export_start, export_ext_start): Call check_mode.
--

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/326857511587fa7878757d3884f91bf7eb86771c

Git commit c0581adabe7f5f63c0b96dac449790aa6ac4c291 by Ingo Klöcker on 04/01/2022 at 08:22..
core: Check for combination of ssh mode with other mode flags

* src/export.c (check_mode): Return error if ssh mode is combined with
another mode flag.
--

The SSH mode flag cannot be used in combination with other flags.

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/c0581adabe7f5f63c0b96dac449790aa6ac4c291

Git commit c710af223cc2476d5f4d46c00d8e0521f6c13211 by Ingo Klöcker on 04/01/2022 at 08:22..
core: Check for unsupported export mode flags

src/engine-gpgsm.c (gpgsm_export, gpgsm_export_ext): Return error if an
unsupported mode flag is set.
--

The minimal mode flag has no effect for X.509 certificates, but we still
treat it as supported (as documented in the API documentation).

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/c710af223cc2476d5f4d46c00d8e0521f6c13211

Git commit 414bbdd53c380018621a2a5800e9a9c46869a56e by Ingo Klöcker on 04/01/2022 at 08:23..
doc: Remove documentation of obsolete export mode flag

* doc/gpgme.texi: Remove GPGME_EXPORT_MODE_NOUID.
--

Support for this experimental flag has been removed with revision
c8fd8870b3bf089f99156448b7d1e59c1150f994.

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/414bbdd53c380018621a2a5800e9a9c46869a56e

Git commit 0e19c4879193ed7fa61ad5d488f237b2b5b5d1d7 by Ingo Klöcker on 04/01/2022 at 08:23..
core: New export mode to export secret subkeys.

* 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
https://invent.kde.org/neon/forks/gpgme/-/commit/0e19c4879193ed7fa61ad5d488f237b2b5b5d1d7

Git commit fa5f1b57cc12f9305d112f11c2c2d95751ed1a25 by Ingo Klöcker on 04/01/2022 at 08:56..
cpp: Remove obsolete workaround

* lang/cpp/src/context.cpp (Context::startKeyListing,
Context::exportPublicKeys, Context::startPublicKeyExport): Remove
workaround.
--

gpgme_op_keylist_ext[_start] supports GPGME_KEYLIST_MODE_EXTERN
since a long time. And the export doesn't use a keylisting (anymore),
so that the keylisting mode is irrelevant for the export.

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/fa5f1b57cc12f9305d112f11c2c2d95751ed1a25

Git commit 2752e81f892568a9725fdd8d6a997a1cc80d2f88 by Ingo Klöcker on 04/01/2022 at 11:30..
core: Add new option --secret-subkey to help texts.

* src/gpgme-tool.c (hlp_export): Add new option.
* tests/run-export.c (show_usage): Print new option.
--

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/2752e81f892568a9725fdd8d6a997a1cc80d2f88

Git commit 4888191014c24d5954685814e06c9ff0ee38739f by Ingo Klöcker on 04/01/2022 at 13:55..
cpp: Mark ExportNoUID flag as obsolete

* lang/cpp/src/context.h (enum Context::ExportMode): Mark value
ExportNoUID as obsolete
--

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/4888191014c24d5954685814e06c9ff0ee38739f

Git commit 3da06d1096ee29d70656f07edcabc3bc4351104e by Ingo Klöcker on 04/01/2022 at 14:44..
cpp: Allow export of secret keys

* lang/cpp/src/context.h (class Context): New member functions
exportSecretKeys, startSecretKeyExport, exportKeys, startKeyExport.
(Context::exportPublicKeys, Context::startPublicKeyExport): Rename
argument flags/export_mode to mode.
* lang/cpp/src/context.cpp (Context::exportPublicKeys): Return error if
ExportSecret mode flag is set. Call exportKeys().
(Context::startPublicKeyExport): Return error if
ExportSecret mode flag is set. Call startKeyExport().
(Context::exportSecretKeys, Context::startSecretKeyExport,
Context::exportKeys, Context::startKeyExport): Implement.
--

This adds export functions for secret key exports and generic export
functions that can be used for any key export supported by
gpgme_op_export[_ext][_start].

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/3da06d1096ee29d70656f07edcabc3bc4351104e

Git commit 4e80563fabfdf1d1c136d65252e5353fdd1e9092 by Ingo Klöcker on 04/01/2022 at 14:44..
qt: Use QGpgMEExportJob also for export of secret keys

* lang/qt/src/protocol.h (Protocol::secretKeyExportJob): Document
charset argument as ignored.
* lang/qt/src/protocol_p.h (Protocol::secretKeyExportJob): Use
QGpgMEExportJob instead of QGpgMESecretKeyExportJob.
* lang/qt/src/qgpgmeexportjob.h (class QGpgMEExportJob): Add c'tor
taking an export mode. Add member m_exportMode. Rename member m_flags to
m_additionalExportModeFlags.
(QGpgMEExportJob::~QGpgMEExportJob): Mark as override.
* lang/qt/src/qgpgmeexportjob.cpp (QGpgMEExportJob::QGpgMEExportJob):
Delegate to new c'tor. Implement new c'tor.
(QGpgMEExportJob::~QGpgMEExportJob): Use default.
(export_qba): Rename argument flags to mode.
(QGpgMEExportJob::start): Pass combination of export mode and additional
mode flags to export_qba.
(QGpgMEExportJob::setExportFlags): Adapt to renaming of member.

* lang/qt/tests/run-exportjob.cpp: New.
--

This change makes it possible to export secret OpenPGP keys.

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/4e80563fabfdf1d1c136d65252e5353fdd1e9092

Git commit 88ad37ea96e4645a9e23aac9eae0d8da747559b8 by Ingo Klöcker on 04/01/2022 at 14:45..
qt: Remove obsolete QGpgMESecretKeyExportJob

* lang/qt/src/Makefile.am: Remove all occurrences of
qgpgmesecretkeyexportjob.*.
* lang/qt/src/qgpgmesecretkeyexportjob.cpp,
lang/qt/src/qgpgmesecretkeyexportjob.h: Remove.
--

QGpgMESecretKeyExportJob is an internal class, so that we can safely
remove it.

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/88ad37ea96e4645a9e23aac9eae0d8da747559b8

Git commit e5c7fc3e022841be8f68fad8b9b64dd601b89ba7 by Ingo Klöcker on 04/01/2022 at 14:50..
cpp: Allow export of secret subkeys

* lang/cpp/src/context.h (enum Context::ExportMode): Add value
ExportSecretSubkey.
(class Context): Add member functions exportSecretSubkeys and
startSecretSubkeyExport.
* lang/cpp/src/context.cpp (Context::exportPublicKeys,
Context::startPublicKeyExport): Return error if ExportSecretSubkey
mode flag is set.
(Context::exportSecretSubkeys, Context::startSecretSubkeyExport):
Implement.
--

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/e5c7fc3e022841be8f68fad8b9b64dd601b89ba7

Git commit 04723a6e96be77dbc43bf71c54e268424a1823ba by Ingo Klöcker on 04/01/2022 at 14:56..
qt: Add factory function for secret subkey export job

* lang/qt/src/protocol.h (class Protocol): Add member function
secretSubkeyExportJob.
* lang/qt/src/protocol_p.h (Protocol::secretSubkeyExportJob): Implement.

* lang/qt/tests/run-exportjob.cpp (showUsageAndExitWithCode): Print
new option.
(createExportJob): Create secret subkey export job if requested.
(main): New option --secret-subkey.
--

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/04723a6e96be77dbc43bf71c54e268424a1823ba

Git commit 062e4b1f0f4cd2ff420829c91fc52347da3caaa8 by Ingo Klöcker on 04/01/2022 at 15:08..
doc: Update NEWS

--

GnuPG-bug-id: 5757
https://invent.kde.org/neon/forks/gpgme/-/commit/062e4b1f0f4cd2ff420829c91fc52347da3caaa8

Git commit a527bd7cf58563d07c89bec458c8967ab1b3e60f by Ingo Klöcker on 10/01/2022 at 11:34..
core: Return an error for secret key export operations

src/export.c (export_status_handler): Handle "export_keys.secret".
--

This allows callers of the synchronous export operations to react
properly to errors (e.g. wrong passphrase) during the export of secret
keys.

GnuPG-bug-id: 5766
https://invent.kde.org/neon/forks/gpgme/-/commit/a527bd7cf58563d07c89bec458c8967ab1b3e60f

Git commit a4dcb17486bb42890ffe6453eeb2c6f301dc1fae by Ingo Klöcker on 12/01/2022 at 15:38..
cpp: Add interactor to add existing subkeys to other keys

* lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp,
lang/cpp/src/gpgaddexistingsubkeyeditinteractor.h: New.
* lang/cpp/src/Makefile.am: Add new files.
--

GnuPG-bug-id: 5770
https://invent.kde.org/neon/forks/gpgme/-/commit/a4dcb17486bb42890ffe6453eeb2c6f301dc1fae

Git commit a54402fc2d1c1364843d3c88b5b07dbb7fc007d1 by Ingo Klöcker on 13/01/2022 at 10:36..
qt,tests: Add asyncDone signal to base class of all tests

* lang/qt/tests/t-support.h (class QGpgMETest): Add signal asyncDone.
* lang/qt/tests/t-changeexpiryjob.cpp,
lang/qt/tests/t-encrypt.cpp,
lang/qt/tests/t-import.cpp,
lang/qt/tests/t-keylist.cpp,
lang/qt/tests/t-keylocate.cpp,
lang/qt/tests/t-ownertrust.cpp,
lang/qt/tests/t-remarks.cpp,
lang/qt/tests/t-tofuinfo.cpp,
lang/qt/tests/t-trustsignatures.cpp,
lang/qt/tests/t-various.cpp,
lang/qt/tests/t-wkdlookup.cpp,
lang/qt/tests/t-wkspublish.cpp: Remove signal asyncDone from the test
classes.
--

This reduces duplication and makes it possible to use the signal in
the base class.

GnuPG-bug-id: 5770
https://invent.kde.org/neon/forks/gpgme/-/commit/a54402fc2d1c1364843d3c88b5b07dbb7fc007d1

Git commit d308910cdfb31accae7cf790a956eb2f3cc6ae71 by Ingo Klöcker on 13/01/2022 at 11:40..
qt,tests: Add helper to hook up the test passphrase provider

* lang/qt/tests/t-support.h, lang/qt/tests/t-support.cpp
(class QGpgMETest): Add member function hookUpPassphraseProvider.
Add member mPassphraseProvider.
* lang/qt/tests/t-changeexpiryjob.cpp,
lang/qt/tests/t-encrypt.cpp,
lang/qt/tests/t-remarks.cpp,
lang/qt/tests/t-tofuinfo.cpp,
lang/qt/tests/t-trustsignatures.cpp,
lang/qt/tests/t-various.cpp: Use new helper.
--

GnuPG-bug-id: 5770
https://invent.kde.org/neon/forks/gpgme/-/commit/d308910cdfb31accae7cf790a956eb2f3cc6ae71

Git commit 4d913a8aa5dad1327bed5987dada89e9d7c5d292 by Ingo Klöcker on 13/01/2022 at 14:18..
qt: Add job to add existing subkeys to other keys

* lang/qt/src/addexistingsubkeyjob.h,
lang/qt/src/qgpgmeaddexistingsubkeyjob.cpp,
lang/qt/src/qgpgmeaddexistingsubkeyjob.h: New.
* lang/qt/src/protocol.h (class Protocol): Add pure virtual member
function addExistingSubkeyJob.
* lang/qt/src/protocol_p.h (Protocol::addExistingSubkeyJob): Implement.
* lang/qt/src/job.cpp, lang/qt/src/Makefile.am: Update accordingly.

* lang/qt/tests/Makefile.am (the_tests, moc_files, noinst_PROGRAMS):
Add new test.
(t_addexistingsubkey_SOURCES): New.
* lang/qt/tests/t-addexistingsubkey.cpp: New.
* lang/qt/tests/t-support.h (VERIFY_OR_RETURN_VALUE,
COMPARE_OR_RETURN_VALUE, VERIFY_OR_OBJECT, COMPARE_OR_OBJECT,
VERIFY_OR_FALSE, COMPARE_OR_FALSE): New.
* lang/qt/tests/t-support.h, lang/qt/tests/t-support.cpp
(class QQGpgMETest): New member function importSecretKeys.
--

The new job allows adding existing subkeys to other keys as with the
"addkey" edit-key command of gpg. The added subkey will have the same
expiration date (+/- 1 second) as the original subkey.

GnuPG-bug-id: 5770
https://invent.kde.org/neon/forks/gpgme/-/commit/4d913a8aa5dad1327bed5987dada89e9d7c5d292

Git commit e4625885a851112a15636727388f11146be17f15 by Ingo Klöcker on 13/01/2022 at 14:23..
tests: Remove unsupported option --status from usage help

* tests/run-swdb.c (show_usage): Remove option --status.
--

run-swdb does not support the option --status.
https://invent.kde.org/neon/forks/gpgme/-/commit/e4625885a851112a15636727388f11146be17f15

Git commit e16729edcbdf2c35e3729b6d54c21b9b27250326 by Ingo Klöcker on 13/01/2022 at 15:30..
tests: Fix generation of keys without expiration

* tests/run-genkey.c (parse_expire_string): Support default expiration
and no expiration. Set flag for no expiration.
(main): Allow update of flags when generating new key.
--

This makes the parsing of different values for expiration match the
parsing done by gpg's --quick-gen-key. In particular, this makes it
possible again to generate keys without expiration.
https://invent.kde.org/neon/forks/gpgme/-/commit/e16729edcbdf2c35e3729b6d54c21b9b27250326

Git commit 9c03bde06be97403a8c392a3befc6c203bcdce6d by Ingo Klöcker on 17/01/2022 at 13:41..
qt: Fix build without installed GpgME++ headers

* lang/qt/src/importjob.h, lang/qt/src/wkdlookupresult.h: Include
headers of GpgME++ without "gpgme++/" prefix when building QGpgme.
* lang/qt/src/qgpgmeimportjob.cpp, lang/qt/src/qgpgmewkdlookupjob.cpp,
lang/qt/src/wkdlookupresult.cpp, lang/qt/tests/t-import.cpp: Include
headers of GpgME++ without "gpgme++/" prefix.
--
https://invent.kde.org/neon/forks/gpgme/-/commit/9c03bde06be97403a8c392a3befc6c203bcdce6d

Git commit ec71eb1d7d9f1156cc48d1c9959b07981ecd16e5 by Ingo Klöcker on 17/01/2022 at 13:44..
qt: Remove superfluous include

* lang/qt/src/importjob.h: Remove include of QByteArray.
--

QByteArray is included by other headers already. Besides: Qt headers
shouldn't be included with the package/module prefixes.
https://invent.kde.org/neon/forks/gpgme/-/commit/ec71eb1d7d9f1156cc48d1c9959b07981ecd16e5

Git commit 5bb4174efa63038004a263cb6aa7bf30a1410dde by Werner Koch on 20/01/2022 at 19:36..
doc: Fixed type of an object member

--

GnuPG-bug-id: 5719
https://invent.kde.org/neon/forks/gpgme/-/commit/5bb4174efa63038004a263cb6aa7bf30a1410dde

Git commit 3c2cff74b535422532e1256ee8177fa9c03eaf18 by Ingo Klöcker on 03/02/2022 at 14:56..
core: New function gpgme_op_receive_keys

* 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
https://invent.kde.org/neon/forks/gpgme/-/commit/3c2cff74b535422532e1256ee8177fa9c03eaf18

Git commit 3d7810e8d940229435feb8f9811607ee831abf4b by Ingo Klöcker on 03/02/2022 at 14:56..
cpp: Add internal adapter for passing a vector of strings to gpgme

* lang/cpp/src/util.h (class StringsToCStrings): New.
* lang/cpp/src/util.cpp: New.
* lang/cpp/src/Makefile.am: Add new file.
--

This adapter simplifies passing a vector of strings as NULL-terminated
array of const char* to the C-interface of gpgme.

GnuPG-bug-id: 5808
https://invent.kde.org/neon/forks/gpgme/-/commit/3d7810e8d940229435feb8f9811607ee831abf4b

Git commit bbaeeb5b9d5cca99c332cb88c7ae5f14e8745427 by Ingo Klöcker on 03/02/2022 at 14:56..
cpp: Allow import of keys given by key ids

* lang/cpp/src/context.h (class Context): Add overloads of member
functions importKeys and startKeyImport
* lang/cpp/src/context.cpp (class Context): ... and implement them.
--

GnuPG-bug-id: 5808
https://invent.kde.org/neon/forks/gpgme/-/commit/bbaeeb5b9d5cca99c332cb88c7ae5f14e8745427

Git commit ec8d1ee13fce21a1f52b084212827914dfcd0db6 by Ingo Klöcker on 03/02/2022 at 14:56..
qt: Add helper for converting QStringList to vector of strings

* lang/qt/src/util.h, lang/qt/src/util.cpp: New.
* lang/qt/src/Makefile.am (qgpgme_sources, private_qgpgme_headers):
Add new files.
--

Additionally to the internal helper function toStrings(), this adds
a copy of the internal make_error helper of GpgME++ which is used
in a few places by QGpgME. We use the same error source id as GpgME++.

GnuPG-bug-id: 5808
https://invent.kde.org/neon/forks/gpgme/-/commit/ec8d1ee13fce21a1f52b084212827914dfcd0db6

Git commit ca1c30b6fa29a7a1f18ecda14375b47893a0c1a3 by Ingo Klöcker on 03/02/2022 at 14:56..
qt: Add job to import keys given by key ids

* lang/qt/src/receivekeysjob.h, lang/qt/src/qgpgmereceivekeysjob.h,
lang/qt/src/qgpgmereceivekeysjob.cpp: New.
* lang/qt/src/protocol.h (class Protocol): Add pure virtual member
function receiveKeysJob.
* lang/qt/src/protocol_p.h (Protocol::receiveKeysJob): Implement it.
* lang/qt/src/job.cpp, lang/qt/src/Makefile.am: Update accordingly.

* lang/qt/tests/run-receivekeysjob.cpp: New.
* lang/qt/tests/Makefile.am: Add new test runner.
--

This job allows importing keys that are given by their key ids (or
fingerprints) from keyservers as with gpg's recv-keys command.

GnuPG-bug-id: 5808
https://invent.kde.org/neon/forks/gpgme/-/commit/ca1c30b6fa29a7a1f18ecda14375b47893a0c1a3

Git commit 451a42f0d21c5a402d455c78d63eeaaa139e56cc by Werner Koch on 07/02/2022 at 12:10..
qt: Fix build for older Qt versions.

* lang/qt/src/util.cpp: Include <functional>.
https://invent.kde.org/neon/forks/gpgme/-/commit/451a42f0d21c5a402d455c78d63eeaaa139e56cc

Git commit 72bb46b34f5191f672a5356e2f152e6ad9440554 by Werner Koch on 07/02/2022 at 14:02..
Release 1.17.0
https://invent.kde.org/neon/forks/gpgme/-/commit/72bb46b34f5191f672a5356e2f152e6ad9440554

Git commit fb5369161f9d9f66aa626723f961d2914753600e by Werner Koch on 07/02/2022 at 17:09..
Post release updates

--
https://invent.kde.org/neon/forks/gpgme/-/commit/fb5369161f9d9f66aa626723f961d2914753600e

Git commit ad3aabdd8a64156c7e3a75d695ae1ab2c4bec841 by Ingo Klöcker on 17/02/2022 at 08:54..
qt: Fix ABI compatibility with 1.16.0

* lang/qt/src/protocol.h (class Protocol): Move new virtual methods to
the end of the class.
--

This makes the vtable offsets of the old virtual methods match those
in 1.16.0 again.

GnuPG-bug-id: 5834
https://invent.kde.org/neon/forks/gpgme/-/commit/ad3aabdd8a64156c7e3a75d695ae1ab2c4bec841

Git commit ee50a38823daaa16b151a549a7dafef34bbd1e81 by Werner Koch on 06/03/2022 at 16:48..
Release 1.17.1

* configure.ac: Bump QT LT version to C15/A0/R0.
https://invent.kde.org/neon/forks/gpgme/-/commit/ee50a38823daaa16b151a549a7dafef34bbd1e81

Git commit f61a14f189d33ca320f6c4ee6323f1e48c46e4ea by Werner Koch on 06/03/2022 at 17:02..
Post release updates
https://invent.kde.org/neon/forks/gpgme/-/commit/f61a14f189d33ca320f6c4ee6323f1e48c46e4ea

Git commit 71d4c9f4527d7bacbae678b38813536f3501d75f by Ingo Klöcker on 07/03/2022 at 08:28..
doc: Update NEWS

--

Add a few more changes in version 1.17.0.
https://invent.kde.org/neon/forks/gpgme/-/commit/71d4c9f4527d7bacbae678b38813536f3501d75f

Git commit 5a5a748e2359bea1636184f1397a5e62010b7b1b by Ingo Klöcker on 07/03/2022 at 08:28..
qt,doc: Remove comments about throwing exceptions

--

The jobs do not throw GpgME::Exception anymore since a long time.
https://invent.kde.org/neon/forks/gpgme/-/commit/5a5a748e2359bea1636184f1397a5e62010b7b1b

Git commit 55861ba9ccc6b1087cb81acd93bed81fc0787208 by Ingo Klöcker on 07/03/2022 at 08:28..
qt: Add missing include of config.h

* lang/qt/src/util.cpp: Include config.h.
--

GnuPG-bug-id: 5871
https://invent.kde.org/neon/forks/gpgme/-/commit/55861ba9ccc6b1087cb81acd93bed81fc0787208

Git commit b2a2158384a9f048ff61ee0cebef8346055f0454 by NIIBE Yutaka on 16/03/2022 at 07:19..
core: Support keylist mode for op_keylist_from_data.

* src/engine-backend.h (keylist_data): Add MODE argument.
* src/engine-gpg.c (gpg_keylist_data): Add MODE argument.
* src/engine.c (_gpgme_engine_op_keylist_data): Likewise.
* src/engine.h (_gpgme_engine_op_keylist_data): Declaration.
* src/keylist.c (gpgme_op_keylist_from_data_start): Call
_gpgme_engine_op_keylist_data with ctx->keylist_mode.

--

GnuPG-bug-id: 5438
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b2a2158384a9f048ff61ee0cebef8346055f0454

Git commit ff3c93881ad91d34194293d333605fb99da948b8 by Ingo Klöcker on 28/03/2022 at 15:22..
doc: Remove bogus documentation

--

These lines were accidentally added with the documentation for
gpgme_op_setexpire. The actual documentation for gpgme_op_revuid_start
is a bit further down.
https://invent.kde.org/neon/forks/gpgme/-/commit/ff3c93881ad91d34194293d333605fb99da948b8

Git commit 92139e7b6b5fe84015d44d9516f3e1df7a3fc3bc by Ingo Klöcker on 28/03/2022 at 15:22..
cpp: Put local helper function into unnamed namespace

lang/cpp/src/context.cpp (to_auditlog_flags): Wrap in unnamed namespace.
--

GnuPG-bug-id: 5906
https://invent.kde.org/neon/forks/gpgme/-/commit/92139e7b6b5fe84015d44d9516f3e1df7a3fc3bc

Git commit fe588fef0963987b5624dc8c4bc73202ac2c9298 by Ingo Klöcker on 28/03/2022 at 15:22..
cpp: Set default visibility of all symbols to hidden

* configure.ac: Add -fvisibility=hidden to GPGME_CPP_CFLAGS if gcc
supports the flag.
* lang/cpp/src/Makefile.am (AM_CPPFLAGS): Add GPGME_CPP_CFLAGS.
* m4/ax_gcc_func_attribute.m4: New.
--

With this change all defined symbols are hidden by default, so that they
are not exported anymore. All symbols that are part of the ABI and that
shall still be exported are already marked as having default visibility.

The m4 macro was taken from the website mentioned in the License header
of the file.

GnuPG-bug-id: 5906
https://invent.kde.org/neon/forks/gpgme/-/commit/fe588fef0963987b5624dc8c4bc73202ac2c9298

Git commit 3b3b36a60749ea5c3b166bb1c8f3f6dda8ce6fcd by Ingo Klöcker on 28/03/2022 at 15:22..
qt: Set default visibility of all symbols to hidden

* configure.ac: Add -fvisibility=hidden to GPGME_QT_CFLAGS if gcc
supports the flag.
--

With this change all defined symbols are hidden by default, so that they
are not exported anymore. All symbols that are part of the ABI and that
shall still be exported are already marked as having default visibility.

GnuPG-bug-id: 5906
https://invent.kde.org/neon/forks/gpgme/-/commit/3b3b36a60749ea5c3b166bb1c8f3f6dda8ce6fcd

Git commit 7317139ef9ebb1f7d1aba2544bf3562a2767eff2 by Ingo Klöcker on 29/03/2022 at 13:14..
doc: Update NEWS

--

GnuPG-bug-id: 5906
https://invent.kde.org/neon/forks/gpgme/-/commit/7317139ef9ebb1f7d1aba2544bf3562a2767eff2

Git commit d96e8a7a6bfcaad4587dd2bb648aa764b0d4e1ba by Ingo Klöcker on 30/03/2022 at 10:05..
cpp: Add interactor to revoke a key

* lang/cpp/src/global.h (enum class RevocationReason): New.
* lang/cpp/src/gpgrevokekeyeditinteractor.cpp,
lang/cpp/src/gpgrevokekeyeditinteractor.h: New.
* lang/cpp/src/Makefile.am: Add new files.
--

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/d96e8a7a6bfcaad4587dd2bb648aa764b0d4e1ba

Git commit 41297520da32081d0a34ac2799812f210b7a9335 by Ingo Klöcker on 30/03/2022 at 10:29..
qt: Add job to revoke own OpenPGP keys

* lang/qt/src/revokekeyjob.h, lang/qt/src/qgpgmerevokekeyjob.h,
lang/qt/src/qgpgmerevokekeyjob.cpp: New.
* lang/qt/src/protocol.h (class Protocol): Add pure virtual member
function revokeKeyJob.
* lang/qt/src/protocol_p.h (Protocol::revokeKeyJob): New.
* lang/qt/src/job.cpp, lang/qt/src/Makefile.am: Update accordingly.

* lang/qt/tests/Makefile.am (the_tests, moc_files, noinst_PROGRAMS):
Add new test.
(t_revokekey_SOURCES): New.
* lang/qt/tests/t-revokekey.cpp: New.
--

The new job allows revoking own OpenPGP keys as with the "revkey"
edit-key command of gpg.

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/41297520da32081d0a34ac2799812f210b7a9335

Git commit 3856ae8621bb28873123578a64eb81a4a591758e by Ingo Klöcker on 30/03/2022 at 10:29..
qt,tests: Verify reason code and description of revocation

* lang/qt/tests/t-revokekey.cpp (RevokeKeyJobTest::testRevokeKeyAsync,
RevokeKeyJobTest::testRevokeKeySync_noReasonDescription,
RevokeKeyJobTest::testRevokeKeySync_oneLineReasonDescription,
RevokeKeyJobTest::testRevokeKeySync_twoLinesReasonDescription): Call
verifyReason.
(class RevokeKeyJobTest): Add private member function verifyReason.
--

gpgme doesn't parse the information, so we run gpg manually to verify
the revocation reason and the description.

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/3856ae8621bb28873123578a64eb81a4a591758e

Git commit 7f089165e3ae42274e75e0e6fa1c45ca641f4023 by Ingo Klöcker on 31/03/2022 at 16:39..
qt: Check arguments passed to the revoke key job

* lang/qt/src/qgpgmerevokekeyjob.cpp (check_arguments): New.
(QGpgMERevokeKeyJob::start, QGpgMERevokeKeyJob::exec): Call
check_arguments.
* lang/qt/tests/t-revokekey.cpp (RevokeKeyJobTest): Add member functions
testErrorHandling_nullKey, testErrorHandling_invalidReason,
testErrorHandling_invalidDescription.
--

Check that the key is not a null key, that the reason has a valid
value, and that the description lines do not contain endline characters
and are not empty.

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/7f089165e3ae42274e75e0e6fa1c45ca641f4023

Git commit 110a375401878b72984241c0dd84cb7fdeaae795 by NIIBE Yutaka on 05/04/2022 at 05:25..
core: Don't keep using deprecated ath_ API.

* src/posix-io.c: Don't include ath.h.
(_gpgme_io_read): Call read directly.
(_gpgme_io_write): Call write directly.
(_gpgme_io_waitpid): Call waitpid directly.
(_gpgme_io_select_select): Call select directly.
(_gpgme_io_recvmsg): Call recvmsg directly.
(_gpgme_io_sendmsg): Call sendmsg directly.
(_gpgme_io_connect): Call connect directly.
* src/assuan-support.c: Don't include ath.h.
(my_waitpid): Call waitpid directly.

--

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/110a375401878b72984241c0dd84cb7fdeaae795

Git commit a36d71a8e33e817b1cc2fde5d0fd476ddc6ac560 by NIIBE Yutaka on 05/04/2022 at 05:42..
core: Don't use internal __assuan functions.

* configure.ac (nanosleep): Detect.
* src/assuan-support.c: Don't use __assuan_usleep.
(my_socketpair): Don't use __assuan_socketpair.

--

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/a36d71a8e33e817b1cc2fde5d0fd476ddc6ac560

Git commit 4beb6f419954b0df475d88bef7fc8b8065848b75 by Ingo Klöcker on 05/04/2022 at 08:05..
cpp: Do not export symbols of the Private class

* lang/cpp/src/gpgrevokekeyeditinteractor.h (class
GpgRevokeKeyEditInteractor): Mark nested class Private as hidden.
--

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/4beb6f419954b0df475d88bef7fc8b8065848b75

Git commit c965b45bcd915ce92943fd4d436b5bd790f0442f by Ingo Klöcker on 05/04/2022 at 08:05..
cpp: Add internal utility function for splitting strings

* lang/cpp/src/util.h (split): New.
--

This function splits a given string using the given delimiter into
several strings.

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/c965b45bcd915ce92943fd4d436b5bd790f0442f

Git commit db532eca8ebd64536985e7a40af22e803e3b3df9 by Ingo Klöcker on 05/04/2022 at 08:15..
cpp: Return actual error if revocation fails

* lang/cpp/src/editinteractor.cpp, lang/cpp/src/editinteractor.h
(EditInteractor::parseStatusError): New.
* lang/cpp/src/gpgrevokekeyeditinteractor.cpp
(GpgRevokeKeyEditInteractor::Private::nextState): Handle status
error.
--

With this change the interactor returns a proper error like "Bad
Passphrase" or "Empty Passphrase" instead of an unspecific "General
Error" if a status error occurred.

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/db532eca8ebd64536985e7a40af22e803e3b3df9

Git commit 28cdbfdccb347e1ef15f794d4afd36f9275f073c by Ingo Klöcker on 05/04/2022 at 08:17..
cpp: Handle canceling of an edit operation

* lang/cpp/src/editinteractor.cpp
(CallbackHelper::edit_interactor_callback_impl): Check for error _or_
canceled state.
--

Without this canceling an edit operation resulted in a "General error".

GnuPG-bug-id: 5904
https://invent.kde.org/neon/forks/gpgme/-/commit/28cdbfdccb347e1ef15f794d4afd36f9275f073c

Git commit 102024f7e65612178a49fee8c39a22ab17608f9d by Ingo Klöcker on 05/04/2022 at 08:17..
qt,doc: Fix typo and grammar in API documentation

--
https://invent.kde.org/neon/forks/gpgme/-/commit/102024f7e65612178a49fee8c39a22ab17608f9d

Git commit b10791b055f00a3212d7d44449b2836115b274d4 by NIIBE Yutaka on 08/04/2022 at 00:19..
doc: Remove explanation about AM_PATH_GPGME_PTH for GNU Pth.

--

The commit 3ddf4c3d4000a9b0b52180c3aa3acf1387a193bf in 2011 removed
the support.

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/b10791b055f00a3212d7d44449b2836115b274d4

Git commit 321c8a0254f4729ff1ffe56956fb049555272321 by Ingo Klöcker on 22/04/2022 at 15:30..
cpp: Allow changing the error of a result

* lang/cpp/src/result.h (class Result): Add member function setError.
--

This can be used to replace the error of a result with a more suitable
error.

GnuPG-bug-id: 5939
https://invent.kde.org/neon/forks/gpgme/-/commit/321c8a0254f4729ff1ffe56956fb049555272321

Git commit d8e5871dca9425811873058150677a158235613d by Ingo Klöcker on 22/04/2022 at 15:34..
qt: Report better error if decryption failed because of bad passphrase

* lang/qt/src/qgpgmedecryptverifyjob.cpp (patch_decryption_result): New.
(decrypt_verify): Call patch_decryption_result.
--

Replace the generic "decryption failed" error with the more specific
"bad passphrase" error if the audit log indicates that a wrong symmetric
password caused the decryption to fail.

GnuPG-bug-id: 5939
https://invent.kde.org/neon/forks/gpgme/-/commit/d8e5871dca9425811873058150677a158235613d

Git commit e21c3b559dfb59c61f789572071e72e31bb089bf by Ingo Klöcker on 25/04/2022 at 10:14..
core: Return BAD_PASSPHRASE error code on symmetric decryption.

* src/decrypt.c (op_data_t): Add field symdecrypt_failed.
(parse_status_error): Handle BAD_PASSPHRASE error code.
(_gpgme_decrypt_status_handler): Consult new field.
--

Return a bad passphrase error if the failure during symmetric decryption
is likely caused by the user entering a wrong passphrase. The special
error code of a failed public key decryption takes precedence.

GnuPG-bug-id: 5939
https://invent.kde.org/neon/forks/gpgme/-/commit/e21c3b559dfb59c61f789572071e72e31bb089bf

Git commit 512f11b458d82bb8a42b5764f11e11978173f896 by Ingo Klöcker on 25/04/2022 at 10:18..
qt: Rely on the bad passphrase error reported by gpg

* lang/qt/src/qgpgmedecryptverifyjob.cpp (patch_decryption_result):
Removed.
(decrypt_verify): Remove usage of patch_decryption_result.
--

This reverts most of revision d8e5871dca9425811873058150677a158235613d.

GnuPG-bug-id: 5939
https://invent.kde.org/neon/forks/gpgme/-/commit/512f11b458d82bb8a42b5764f11e11978173f896

Git commit aff9aaac68450e76f84d0f9a3feabffe9e82dd7e by Ingo Klöcker on 27/04/2022 at 14:57..
core: Support --locate-external-keys command of gpg

* src/gpgme.h.in (GPGME_KEYLIST_MODE_FORCE_EXTERN): New.
(GPGME_KEYLIST_MODE_LOCATE_EXTERNAL): New.
* src/gpgme.c (gpgme_set_keylist_mode): Check for invalid mode.
* src/engine-gpg.c (gpg_keylist_build_options): Use
"--locate-external-keys" instead of "--locate-keys" if flag is set.
* src/gpgme-json.c (op_keylist): New flag "force-extern".
* src/gpgme-tool.c (gt_get_keylist_mode, cmd_keylist_mode): Handle
new mode.
--

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/aff9aaac68450e76f84d0f9a3feabffe9e82dd7e

Git commit dea872f21ff77cd58bafe0966d89d6331c8d2e07 by Ingo Klöcker on 27/04/2022 at 15:21..
cpp: Support new keylist modes

* lang/cpp/src/global.h (ForceExtern, LocateExternal, KeyListModeMask):
New.
* lang/cpp/src/context.cpp (operator<<): Add check.
* lang/cpp/src/util.h (gpgme_keylist_mode_t,
convert_from_gpgme_keylist_mode_t): Handle ForceExtern.
* lang/cpp/tests/run-getkey.cpp (show_usage, main): Add arguments
--force-extern and --locate-external.
* lang/cpp/tests/run-keylist.cpp (show_usage, main): Ditto.
--

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/dea872f21ff77cd58bafe0966d89d6331c8d2e07

Git commit 359906c8bcde7e351540708777e3678fee0cc2c1 by Ingo Klöcker on 28/04/2022 at 08:33..
cpp,tests: Verify that requested keylist mode is used

* lang/cpp/tests/run-getkey.cpp, lang/cpp/tests/run-keylist.cpp (main):
Check used keylist mode.
--

Since Context::setKeyListMode() does not return the error returned by
gpgme, we need to verify explicitly that the keylist mode was set
successfully.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/359906c8bcde7e351540708777e3678fee0cc2c1

Git commit f47bc992ae6ca6a9043d4de5bfc10179e4676256 by Ingo Klöcker on 29/04/2022 at 08:39..
qt: Rename QGpgMERefreshKeysJob to QGpgMERefreshSMIMEKeysJob

* lang/qt/src/qgpgmerefreshkeysjob.h,
lang/qt/src/qgpgmerefreshkeysjob.cpp: Change name to
* lang/qt/src/qgpgmerefreshsmimekeysjob.h,
lang/qt/src/qgpgmerefreshsmimekeysjob.cpp: ... this, and adapt the
include guard.
(class QGpgMERefreshKeysJob): Rename to QGpgMERefreshSMIMEKeysJob.
* lang/qt/src/Makefile.am: Adapt mentioned file names accordingly.
* lang/qt/src/protocol_p.h (Protocol::refreshKeysJob): Use renamed
class.
--

To avoid confusion with a similar job for OpenPGP keys with a completely
different implementation, we rename this class to make clear that it is
specific for S/MIME keys.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/f47bc992ae6ca6a9043d4de5bfc10179e4676256

Git commit 62e770971786f272ecc079b78b11e798ec699d77 by Ingo Klöcker on 29/04/2022 at 08:46..
qt: Minor refactoring

* lang/qt/src/qgpgmerefreshsmimekeysjob.cpp: Use namespace QGpgME.
--

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/62e770971786f272ecc079b78b11e798ec699d77

Git commit fd97cbaa44b8e7914089319afac1e776c9a64283 by Ingo Klöcker on 29/04/2022 at 08:50..
qt: Allow refreshing a list of keys

* lang/qt/src/refreshkeysjob.h (class RefreshKeysJob): Add pure virtual
member function start taking a list of keys.
* lang/qt/src/qgpgmerefreshsmimekeysjob.h,
lang/qt/src/qgpgmerefreshsmimekeysjob.cpp (class
QGpgMERefreshSMIMEKeysJob): Implement new member function.
--

The new overload makes it easier to refresh some keys if one does
already have Keys.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/fd97cbaa44b8e7914089319afac1e776c9a64283

Git commit f4c35609257156d0e32b8dd7315011b484919f05 by Ingo Klöcker on 29/04/2022 at 09:24..
qt: Make RefreshKeysJob result compatible with standard job result

* lang/qt/src/refreshkeysjob.h (RefreshKeysJob::result): Add optional
parameters auditLogAsHtml and auditLogError.
--

This is necessary for the OpenPGP-implementation of this job.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/f4c35609257156d0e32b8dd7315011b484919f05

Git commit 9686258bd16707a5e1eb292262a6c28faa581c34 by Ingo Klöcker on 29/04/2022 at 09:44..
qt: Add test runner for refresh job

* lang/qt/tests/run-refreshkeysjob.cpp: New.
* lang/qt/tests/Makefile.am (run_refreshkeysjob_SOURCES): New.
(noinst_PROGRAMS): Add new build artifact.
--

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/9686258bd16707a5e1eb292262a6c28faa581c34

Git commit 54c4fd16d1832fcce05aa9e471a4acebff0e3269 by Ingo Klöcker on 29/04/2022 at 09:55..
qt: Fix connection to readyReadStandardOutput signal

* lang/qt/src/qgpgmerefreshsmimekeysjob.h,
lang/qt/src/qgpgmerefreshsmimekeysjob.cpp
(QGpgMERefreshSMIMEKeysJob::slotStderr): Remove.
* lang/qt/src/qgpgmerefreshsmimekeysjob.cpp
(QGpgMERefreshSMIMEKeysJob::startAProcess): Handle
readyReadStandardOutput and readyReadStandardError signals with lambdas.
--

For now output stdout and stderr of gpgsm process as debug log. In
particular, this "adds" the missing slot slotStdout.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/54c4fd16d1832fcce05aa9e471a4acebff0e3269

Git commit 8e7330c286d7f8b3edd11c82da347cddd59ad8da by Daniel Kahn Gillmor on 30/04/2022 at 18:38..
move to DEP-14 branch naming
https://invent.kde.org/neon/forks/gpgme/-/commit/8e7330c286d7f8b3edd11c82da347cddd59ad8da

Git commit 0434eecb137e7a5238aebb13b2bbe359d2a2eddc by Daniel Kahn Gillmor on 30/04/2022 at 18:41..
New upstream version 1.17.1
https://invent.kde.org/neon/forks/gpgme/-/commit/0434eecb137e7a5238aebb13b2bbe359d2a2eddc

Git commit d0143a00162794de2a122d46d6ee0b5071efe06b by Daniel Kahn Gillmor on 30/04/2022 at 18:41..
Update upstream source from tag 'upstream/1.17.1'

Update to upstream version '1.17.1'
with Debian dir 40908cf3116fc28778ac3ad0a2634dd617ee87db
https://invent.kde.org/neon/forks/gpgme/-/commit/d0143a00162794de2a122d46d6ee0b5071efe06b

Git commit dd7562ccb1e943d5e3423d07fd357d8d6e70599d by Daniel Kahn Gillmor on 30/04/2022 at 18:43..
drop patches already upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/dd7562ccb1e943d5e3423d07fd357d8d6e70599d

Git commit e88355b83b9659855d032bd2506d2abe41abba76 by Daniel Kahn Gillmor on 30/04/2022 at 18:45..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/e88355b83b9659855d032bd2506d2abe41abba76

Git commit 421ad6cb2a9a348dda1de75fec388c74f64e8a0e by Daniel Kahn Gillmor on 01/05/2022 at 05:15..
update symbols
https://invent.kde.org/neon/forks/gpgme/-/commit/421ad6cb2a9a348dda1de75fec388c74f64e8a0e

Git commit bf38a97314f12ccd94fafbd052e0f8b3baf4c993 by Daniel Kahn Gillmor on 01/05/2022 at 05:15..
d/libgpgmepp6.lintian-overrides: update
https://invent.kde.org/neon/forks/gpgme/-/commit/bf38a97314f12ccd94fafbd052e0f8b3baf4c993

Git commit 3202d68765eab860794120521c55a8f8e2003b44 by Daniel Kahn Gillmor on 01/05/2022 at 05:15..
qgpgme: ABI bump: Change from libqgpgme7 to libqgpgme15
https://invent.kde.org/neon/forks/gpgme/-/commit/3202d68765eab860794120521c55a8f8e2003b44

Git commit a6e3d1b5e47a053392da32b43d9452545ea56345 by Daniel Kahn Gillmor on 01/05/2022 at 05:15..
move to experimental to test transition to libqgpgme15
https://invent.kde.org/neon/forks/gpgme/-/commit/a6e3d1b5e47a053392da32b43d9452545ea56345

Git commit 5f63490f89c2c40fa07a982a4f0fe60bb8cac756 by Daniel Kahn Gillmor on 01/05/2022 at 05:15..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/5f63490f89c2c40fa07a982a4f0fe60bb8cac756

Git commit 97e09fb96400c50fa207926eb3ea9bd4805406a8 by Ingo Klöcker on 02/05/2022 at 12:58..
qt,doc: Fix some API documentation

--

Fix or remove API documentation that has been copied and pasted from
other jobs.
https://invent.kde.org/neon/forks/gpgme/-/commit/97e09fb96400c50fa207926eb3ea9bd4805406a8

Git commit 0c304beeaab54dc25a8572270704fd5fa90cf836 by Ingo Klöcker on 02/05/2022 at 13:04..
qt: Factor out helper for getting the fingerprints of some keys

* lang/qt/src/util.h, lang/qt/src/util.cpp (toFingerprints): New.
* lang/qt/src/qgpgmerefreshsmimekeysjob.cpp: Use the helper.
--

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/0c304beeaab54dc25a8572270704fd5fa90cf836

Git commit 99fd565889f3d22459ff82296b206fa228a4c468 by Ingo Klöcker on 02/05/2022 at 13:06..
qt: Add debug helper for Result classes with output stream operator

* lang/qt/src/util.h (toLogString): New.
--

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/99fd565889f3d22459ff82296b206fa228a4c468

Git commit 34786132fed0a776d4cd314c44ed62e29ff75328 by Ingo Klöcker on 02/05/2022 at 13:51..
cpp: Add RAII class for saving/restoring the key list mode

* lang/cpp/src/context.h, lang/cpp/src/context.cpp (class Context):
Add nested class KeyListModeSaver.
--

This RAII-style class can be used to save the currently used key list
mode in case it needs to be changed temporarily. On destruction, it
will restore the key list mode that was active at construction time.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/34786132fed0a776d4cd314c44ed62e29ff75328

Git commit e12861f18c6b431b40bfa78eb6f1d149690a5fcd by Ingo Klöcker on 02/05/2022 at 13:51..
qt: Add job for refreshing OpenPGP keys

* lang/qt/src/qgpgmerefreshopenpgpkeysjob.h,
lang/qt/src/qgpgmerefreshopenpgpkeysjob.cpp: New.
* lang/qt/src/Makefile.am: Add new files.
* lang/qt/src/protocol_p.h (Protocol::refreshKeysJob): Add support for
OpenPGP protocol.
--

The new job performs a --locate-external-keys for the email addresses
of all not revoked user IDs of the given keys, and it performs a
--recv-keys for the fingerprints of the given keys. The former may
import new keys from WKD or an LDAP server or via some other
(hopefully trusted) auto-key-locate mechanism.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/e12861f18c6b431b40bfa78eb6f1d149690a5fcd

Git commit 540e7bf3d457a78497b6b7ac33b486b3c5b50857 by Ingo Klöcker on 02/05/2022 at 14:00..
qt: Use GpgME::Locate alias

* lang/qt/src/protocol_p.h (Protocol::locateKeysJob): Use Locate alias
instead of Extern|Local.
* lang/qt/src/qgpgmekeyformailboxjob.cpp (do_work): Ditto.
--
https://invent.kde.org/neon/forks/gpgme/-/commit/540e7bf3d457a78497b6b7ac33b486b3c5b50857

Git commit f1a354fd57d6cc9e34ff33ea60aa4ef0aca382a3 by Ingo Klöcker on 02/05/2022 at 14:04..
qt: Apply compiler hint

* lang/qt/tests/t-verify.cpp (VerifyTest::testSignatureKey): Use
reference type to prevent copying.
--
https://invent.kde.org/neon/forks/gpgme/-/commit/f1a354fd57d6cc9e34ff33ea60aa4ef0aca382a3

Git commit d911a1536488a5645f257a48b4d9cf221c0ed6b6 by Ingo Klöcker on 04/05/2022 at 10:37..
cpp: Allow merging the results of two imports

* lang/cpp/src/importresult.h, lang/cpp/src/importresult.cpp (class
ImportResult): Add member function mergeWith.
--

This allows creating a consolidated result of several independent
imports. If the import results to merge considered the same keys, then
not all counts can be consolidated correctly, but the important numbers
like the number of considered keys, the number of imported keys, the
number of unchanged keys and the numbers of new user IDs, subkeys,
signatures and revocations should be correct.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/d911a1536488a5645f257a48b4d9cf221c0ed6b6

Git commit f3ca57dfd7af19f9b2fd01616a81dc889707a4d3 by Ingo Klöcker on 04/05/2022 at 12:23..
core: Handle import status lines during keylist operation

* src/import.c (import_status_handler): Rename to ...
(_gpgme_import_status_handler): this. Make non-static.
(_gpgme_op_import_init_result): New.
(_gpgme_op_import_start, _gpgme_op_import_keys_start,
_gpgme_op_receive_keys_start): Call _gpgme_op_import_init_result.
* src/keylist.c (keylist_status_handler): Call
_gpgme_import_status_handler to handle import status lines.
(gpgme_op_keylist_start, gpgme_op_keylist_ext_start): Call
_gpgme_op_import_init_result.
* src/ops.h (_gpgme_op_import_init_result,
_gpgme_import_status_handler): New prototypes.
--

If a keylist operation with keylist mode GPGME_KEYLIST_MODE_LOCATE is
run, then gpg emits import status lines. Handling those status lines
allows users to retrieve the result of a --locate-(external)-keys
command.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/f3ca57dfd7af19f9b2fd01616a81dc889707a4d3

Git commit 3519d6117332f25b601c9c0636878baf4e8cf55b by Ingo Klöcker on 04/05/2022 at 12:31..
cpp: Allow retrieving import result of key listing with locate mode

* lang/cpp/src/context_p.h (enum Context::Private::Operation): Add
value KeyListWithImport.
* lang/cpp/src/context.cpp (Context::startKeyListing, Context::nextKey):
Set lastop to KeyListWithImport if keylist mode includes Locate.
--

Adding Import to lastop for keylist operations that perform a locate
allows retrieving the import result with Context::importResult.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/3519d6117332f25b601c9c0636878baf4e8cf55b

Git commit c64a8daf507a2216611861a12f312466b0bae8b2 by Ingo Klöcker on 04/05/2022 at 12:51..
qt: Emit import result when refreshing OpenPGP keys

* lang/qt/src/refreshopenpgpkeysjob.h: New.
* lang/qt/src/Makefile.am, lang/qt/src/job.cpp: Update accordingly.
* lang/qt/src/qgpgmerefreshopenpgpkeysjob.h (class
QGpgMERefreshOpenPGPKeysJob): Derive from RefreshOpenPGPKeysJob with
result ImportResult. Remove unused start overload.
* lang/qt/src/qgpgmerefreshopenpgpkeysjob.cpp (locate_external_keys):
Ignore result of KeyListJob. Return import result.
(receive_keys): Return import result.
(refresh_keys): Merge the two import results and return the result.
* lang/qt/src/protocol.h (class Protocol): Add pure virtual member
function refreshOpenPGPKeysJob.
* lang/qt/src/protocol_p.h (Protocol::refreshKeysJob): Return nullptr
for OpenPGP protocol.
(Protocol::refreshOpenPGPKeysJob): New.

* lang/qt/tests/run-refreshkeysjob.cpp (main): Use appropriate job
for the protocol of the key to refresh.
--

This adds RefreshOpenPGPKeysJob complementing RefreshKeysJob (for S/MIME
keys). Changing the result type of RefreshKeysJob would break the ABI.
Therefore we have to introduce a new base class for the refresh job for
OpenPGP. We derive this base class from AbstractImportJob because we
want to return an import result.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/c64a8daf507a2216611861a12f312466b0bae8b2

Git commit 15a4940aa73019bce002302b14aaa73312da3df4 by Ingo Klöcker on 05/05/2022 at 08:32..
qt: Use lambda instead of std::bind

* lang/qt/src/qgpgmerefreshopenpgpkeysjob.cpp
(QGpgMERefreshOpenPGPKeysJob::start): Replace std::bind call with a
lambda.
--

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/15a4940aa73019bce002302b14aaa73312da3df4

Git commit 9e8c8e448ec83c454fb310f80ce0bf9f828a7145 by Ingo Klöcker on 05/05/2022 at 08:39..
qt: Revert change of result signal of RefreshKeysJob

* lang/qt/src/refreshkeysjob.h (RefreshKeysJob::result): Remove optional
parameters auditLogAsHtml and auditLogError.
* lang/qt/tests/run-refreshkeysjob.cpp (main): Update accordingly.
--

This reverts f4c35609257156d0e32b8dd7315011b484919f05. The reason for
the previous change does no longer apply.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/9e8c8e448ec83c454fb310f80ce0bf9f828a7145

Git commit e029fd27350fcbda1b4689bc557e996d749d78ac by Ingo Klöcker on 05/05/2022 at 15:24..
cpp,tests: Actually parse the --with-secret option

* lang/cpp/tests/run-keylist.cpp (main): Handle --with-secret option.
Print error for unknown option.
--

The --with-secret option was already listed in the help. Now it also
works.

GnuPG-bug-id: 5965
https://invent.kde.org/neon/forks/gpgme/-/commit/e029fd27350fcbda1b4689bc557e996d749d78ac

Git commit 306fd9c915cbccddbd146f37ba9bd826f10d2535 by Ingo Klöcker on 05/05/2022 at 15:25..
cpp: Output more properties of a subkey

* lang/cpp/src/key.cpp (ostream operator<< for Subkey): Fix wrong output
of isInvalid and isDisabled flags. Add output of key grip, card serial
number and the flags isSecret, isQualified, isDeVs, and isCardKey.
--

This makes it easier to check those properties for different keys, e.g.
with the run-keylist test program.

GnuPG-bug-id: 5965
https://invent.kde.org/neon/forks/gpgme/-/commit/306fd9c915cbccddbd146f37ba9bd826f10d2535

Git commit f72cf726ca749a138a8950b02c51e7b3a50c6a83 by Ingo Klöcker on 06/05/2022 at 07:34..
core: Set SECRET flag of subkeys stored on smart cards

* src/keylist.c (parse_sec_field15): Set SECRET flag.
--

Explicitly setting the SECRET flag for subkeys stored on smart cards
makes sure that the flag is also set if GPGME_KEYLIST_MODE_WITH_SECRET
is used when listing OpenPGP keys (as documented in the API
documentation). If secret keys are listed, then the flag is already set
when the packet type is parsed.

GnuPG-bug-id: 5965
https://invent.kde.org/neon/forks/gpgme/-/commit/f72cf726ca749a138a8950b02c51e7b3a50c6a83

Git commit f3011b5a1918dbe9d2b1316707a2c1034c847507 by Andre Heinecke on 12/05/2022 at 07:34..
cpp: Export KeyListModeSaver

* lang/cpp/src/context.h (Context::KeyListModeSaver): Add Export.

--
This is required for Windows.
https://invent.kde.org/neon/forks/gpgme/-/commit/f3011b5a1918dbe9d2b1316707a2c1034c847507

Git commit 822958a688ac1e5871089f62057746f0464cf33a by Daniel Kahn Gillmor on 21/05/2022 at 03:54..
avoid -unknown suffix (Closes: #1004742)
https://invent.kde.org/neon/forks/gpgme/-/commit/822958a688ac1e5871089f62057746f0464cf33a

Git commit a02e63bec3f15193a34f349e039d265c2b505956 by Daniel Kahn Gillmor on 21/05/2022 at 03:55..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/a02e63bec3f15193a34f349e039d265c2b505956

Git commit ff18d9f3ca47bfd136496ea5881cd8437c6de2c4 by Daniel Kahn Gillmor on 21/05/2022 at 06:02..
adopt upstream patch to fix build in 32-bit platforms
https://invent.kde.org/neon/forks/gpgme/-/commit/ff18d9f3ca47bfd136496ea5881cd8437c6de2c4

Git commit 2ea8d79f45c3f60e43c004d8b05320dd3befebf5 by Daniel Kahn Gillmor on 21/05/2022 at 06:04..
prepare another experimental release with upstream bugfix
https://invent.kde.org/neon/forks/gpgme/-/commit/2ea8d79f45c3f60e43c004d8b05320dd3befebf5

Git commit 5ba0e454a37c9b0d3badddfc2dad8bcc7c7af874 by Werner Koch on 23/05/2022 at 06:20..
tests: Avoid problems with local time across a day boundary.

--

GnuPG-bug-id: 5991
https://invent.kde.org/neon/forks/gpgme/-/commit/5ba0e454a37c9b0d3badddfc2dad8bcc7c7af874

Git commit 7cbf1574d165d16375b3ada31a77f6a0e7ed3ae7 by Daniel Kahn Gillmor on 27/05/2022 at 22:20..
release to unstable
https://invent.kde.org/neon/forks/gpgme/-/commit/7cbf1574d165d16375b3ada31a77f6a0e7ed3ae7

Git commit 5d19eb4ad5ad9e93c34bf9b03ed6f583c6bf8491 by Ingo Klöcker on 09/06/2022 at 13:30..
core: Handle import status lines during keylist operation

* src/keylist.c (gpgme_op_keylist_from_data_start): Call
_gpgme_op_import_init_result.
--

This fixes a crash when importing keys from data. Initializing the
import result was missing for this keylist operation.

Fixes-commit: f3ca57dfd7af19f9b2fd01616a81dc889707a4d3
GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/5d19eb4ad5ad9e93c34bf9b03ed6f583c6bf8491

Git commit 918afc809d40e057266ced6dfc98a5b3e5b4d3ee by Ingo Klöcker on 09/06/2022 at 13:43..
Revert "tests: Avoid problems with local time across a day boundary."

This reverts commit 5ba0e454a37c9b0d3badddfc2dad8bcc7c7af874.
https://invent.kde.org/neon/forks/gpgme/-/commit/918afc809d40e057266ced6dfc98a5b3e5b4d3ee

Git commit 7870fdbfeff47755138136dbd6648b18f6b4fc76 by Ingo Klöcker on 10/06/2022 at 09:54..
qt: Prevent u32 overflow when calculating expiration date

* lang/qt/src/qgpgmesignkeyjob.cpp (sign_key): Change maxAllowedDate to
2106-02-05. Change log-level from warning to debug.
* lang/qt/tests/t-various.cpp (TestVarious::testSignKeyWithExpiration):
Remove check for warning. Adapt assertion.
--

Capping the expiration date at 2106-02-05 prevents a u32 overflow when
adding the number of days until the maximal date to the current time.

GnuPG-bug-id: 5991
https://invent.kde.org/neon/forks/gpgme/-/commit/7870fdbfeff47755138136dbd6648b18f6b4fc76

Git commit fd813f5c3938423137db1fcb02c3c527bd9f58c6 by Ingo Klöcker on 10/06/2022 at 10:03..
qt,tests: Allow 1-day-offset for expiration date

* lang/qt/tests/t-various.cpp (TestVarious::testSignKeyWithExpiration):
Assert that the expiration date is either 2106-02-05 or 2106-02-04.

--

This avoids a test failure if the test is run at 00:xx:xx in a location
that uses DST.

GnuPG-bug-id: 5991
https://invent.kde.org/neon/forks/gpgme/-/commit/fd813f5c3938423137db1fcb02c3c527bd9f58c6

Git commit d59cf1725755f24e79a0ce12ddc59fedc97292c6 by Ingo Klöcker on 14/06/2022 at 08:10..
tests: Add support for clear text signatures to test runner

* tests/run-sign.c (show_usage): Add new argument "--clear".
(main): Handle new argument "--clear".
--

GnuPG-bug-id: 6028
https://invent.kde.org/neon/forks/gpgme/-/commit/d59cf1725755f24e79a0ce12ddc59fedc97292c6

Git commit 676de9f878053440b12423f361a2e07c8a9b8f59 by Daniel Kahn Gillmor on 15/06/2022 at 17:03..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/676de9f878053440b12423f361a2e07c8a9b8f59

Git commit aa94b4cee5aabfa9097abd4560fdf002516db82a by NIIBE Yutaka on 28/06/2022 at 02:28..
build: Update gpg-error.m4

* m4/gpg-error.m4: Update from libgpg-error.

--

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/aa94b4cee5aabfa9097abd4560fdf002516db82a

Git commit 02a2f350359013bf33c3957e95c98726273ced8c by NIIBE Yutaka on 28/06/2022 at 02:28..
build: When no gpg-error-config, not install gpgme-config.

* configure.ac (USE_GPGRT_CONFIG): New.
* src/Makefile.am [USE_GPGRT_CONFIG]: Conditionalize the install
of gpgme-config.

--

When system will migrate use of gpgrt-config and removal of
gpg-error-config, gpgme-config will not be installed (but use gpgme.pc
by gpgrt-config).

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/02a2f350359013bf33c3957e95c98726273ced8c

Git commit 6e45da30ae787dd45836e55d34f7aa4e001b641c by Ingo Klöcker on 30/06/2022 at 10:30..
cpp: Remove obsolete compatibility with KF5 variants

* lang/cpp/src/GpgmeppConfig-w32.cmake.in.in,
lang/cpp/src/GpgmeppConfig.cmake.in.in: Remove find_package() call.
--

The KF5 variants have been removed years ago with revision
a3cf30f89418c8a6bc9456533d95ba7fc2a33a4c.
https://invent.kde.org/neon/forks/gpgme/-/commit/6e45da30ae787dd45836e55d34f7aa4e001b641c

Git commit d42323f90213157a5e847bfa89bee55a29ee8df0 by Ingo Klöcker (on behalf of Laurent Montel) on 04/07/2022 at 14:58..
qt: Add #include <QStringList> needed for building against qt6

* lang/qt/src/downloadjob.h, lang/qt/src/exportjob.h,
lang/qt/src/keylistjob.h lang/qt/src/refreshkeysjob.h: in qt6 we need
to use #include <QStringList>
--

It fixes some compile qt6 compile error.

Signed-off-by: Laurent Montel <montel at kde.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/d42323f90213157a5e847bfa89bee55a29ee8df0

Git commit 31423945d214292f24dd1f700cd8ab53722dd1eb by Ingo Klöcker on 04/07/2022 at 15:10..
qt: Fix filename of cmake config files for w32

* lang/qt/src/Makefile.am (EXTRA_DIST): Add
QGpgmeConfig-w32.cmake.in.in.
--
https://invent.kde.org/neon/forks/gpgme/-/commit/31423945d214292f24dd1f700cd8ab53722dd1eb

Git commit bc10169724d2806b38f91beff39ef637b5e52b8d by Ingo Klöcker on 05/07/2022 at 16:10..
qt: Allow setting the file name of encrypted data

* lang/qt/src/Makefile.am (qgpgme_sources): Add encryptjob.cpp.
* lang/qt/src/encryptjob.cpp: New.
* lang/qt/src/encryptjob.h (class EncryptJob): Add member functions
setFileName, fileName.
* lang/qt/src/qgpgmeencryptjob.cpp (encrypt): Set file name of input.
(encrypt_qba, QGpgMEEncryptJob::exec, QGpgMEEncryptJob::start): Pass
file name to encrypt resp. encrypt_qba.
--

This makes it possible to store the original name of an encrypted file
in the encryption result.

GnuPG-bug-id: 6056
https://invent.kde.org/neon/forks/gpgme/-/commit/bc10169724d2806b38f91beff39ef637b5e52b8d

Git commit 5436b309fe67dd3c4531f751d99c98128ca66e4d by Ingo Klöcker on 05/07/2022 at 16:13..
qt: Allow setting the file name of signed and encrypted data

* lang/qt/src/Makefile.am (qgpgme_sources): Add signencryptjob.cpp.
* lang/qt/src/signencryptjob.cpp: New.
* lang/qt/src/signencryptjob.h (class SignEncryptJob): Add member
functions setFileName, fileName.
* lang/qt/src/qgpgmesignencryptjob.cpp (sign_encrypt): Set file name of
input.
(sign_encrypt_qba, QGpgMESignEncryptJob::exec,
QGpgMESignEncryptJob::start): Pass file name to sign_encrypt resp.
sign_encrypt_qba.
--

This makes it possible to store the original name of a signed and
encrypted file in the resulting data.

GnuPG-bug-id: 6056
https://invent.kde.org/neon/forks/gpgme/-/commit/5436b309fe67dd3c4531f751d99c98128ca66e4d

Git commit 16020c5fd96427961734c4a8f5b2b5e901b1bb60 by NIIBE Yutaka on 21/07/2022 at 04:47..
build: Fix for modern Autoconf.

* m4/glib-2.0.m4: Use AC_RUN_IFELSE and AC_LINK_IFELSE.

--

Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/16020c5fd96427961734c4a8f5b2b5e901b1bb60

Git commit cc37447b625b45efb5c94c40461084460f03f24a by NIIBE Yutaka on 21/07/2022 at 04:47..
build: Update config.guess and config.sub.

* build-aux/config.guess: Update from upstream.
* build-aux/config.sub: Ditto.

--

GnuPG-bug-id: 6078
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/cc37447b625b45efb5c94c40461084460f03f24a

Git commit c3b183831db5a2a490ba49bf4804730679eb59d0 by Ingo Klöcker on 04/08/2022 at 10:06..
qt: Remove job for refreshing OpenPGP keys

* lang/qt/src/qgpgmerefreshopenpgpkeysjob.cpp,
lang/qt/src/qgpgmerefreshopenpgpkeysjob.h,
lang/qt/src/refreshopenpgpkeysjob.h: Remove.
* lang/qt/src/Makefile.am, lang/qt/src/job.cpp: Update accordingly.
* lang/qt/src/protocol.h (class Protocol): Remove pure virtual member
function refreshOpenPGPKeysJob.
* lang/qt/src/protocol_p.h (Protocol::refreshOpenPGPKeysJob): Remove.

* lang/qt/tests/run-refreshkeysjob.cpp (main): Use ReceiveKeysJob for
OpenPGP keys.
--

The RefreshOpenPGPKeysJob did more than it was intended to do, e.g. it
imported new keys with the email addresses of the key to be refreshed
via the configured auto-key-locate methods, but only a refresh from the
key servers is wanted. For this we can use the ReceiveKeysJob.

This commit mostly reverts the commits
e12861f18c6b431b40bfa78eb6f1d149690a5fcd
c64a8daf507a2216611861a12f312466b0bae8b2

The changes are source- and binary-compatible to the last release.

GnuPG-bug-id: 5951
https://invent.kde.org/neon/forks/gpgme/-/commit/c3b183831db5a2a490ba49bf4804730679eb59d0

Git commit b2f224a471fecce566443bf0f0e554de6f567f4e by NIIBE Yutaka (on behalf of Jasper Spaans) on 05/08/2022 at 02:02..
python: Reset passphrase callback correctly.

* lang/python/src/core.py (Context(GpgmeWrapper)): Reset passphrase
callback correctly, for encrypt, decrypt, create_key, and
create_subkey methods.

--

Signed-off-by: Jasper Spaans <jasper at startmail.com>
https://invent.kde.org/neon/forks/gpgme/-/commit/b2f224a471fecce566443bf0f0e554de6f567f4e

Git commit 180899c7c313335128606bfff738da00dce4f5c9 by NIIBE Yutaka on 05/08/2022 at 05:57..
python: Don't access gpgme with wrapped=None.

* lang/python/src/core.py (GpgmeWrapper, Context): Check self.wrapped
is valid.

--

GnuPG-bug-id: 6060
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/180899c7c313335128606bfff738da00dce4f5c9

Git commit f8d99bb9e4a7f6229c19c4fbd951ccad6fa97bde by NIIBE Yutaka on 09/08/2022 at 00:57..
python: Don't call __del__ from __exit__ method.

* lang/python/src/core.py (Context, Data): Don't call __del__
from __exit__ method, as the object may be still in use.
* lang/python/tests/t-idiomatic.py: Fix the test.

--

GnuPG-bug-id: 6060
Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
https://invent.kde.org/neon/forks/gpgme/-/commit/f8d99bb9e4a7f6229c19c4fbd951ccad6fa97bde

Git commit 125867f268f2a49ff060a7adc859500500b77025 by Ingo Klöcker on 09/08/2022 at 12:52..
cpp: Add support for gpgme_op_set_uid_flag

* lang/cpp/src/context.cpp, lang/cpp/src/context.h
(Context::setPrimaryUid, Context::startSetPrimaryUid): New.
--

GnuPG-bug-id: 5938
https://invent.kde.org/neon/forks/gpgme/-/commit/125867f268f2a49ff060a7adc859500500b77025

Git commit db7d79063f57c6e0ccf382fdf1cf47d514e12f6e by Ingo Klöcker on 09/08/2022 at 12:52..
qt: Add job to set the primary user ID of OpenPGP keys

* lang/qt/src/qgpgmesetprimaryuseridjob.cpp,
lang/qt/src/qgpgmesetprimaryuseridjob.h,
lang/qt/src/setprimaryuseridjob.h: New.
* lang/qt/src/protocol.h (class Protocol): Add pure virtual member
function setPrimaryUserIDJob.
* lang/qt/src/protocol_p.h (Protocol::setPrimaryUserIDJob): New.
* lang/qt/src/job.cpp, lang/qt/src/Makefile.am: Update accordingly.

* lang/qt/tests/t-setprimaryuserid.cpp: New.
* lang/qt/tests/Makefile.am: Add new test.
--

GnuPG-bug-id: 5938
https://invent.kde.org/neon/forks/gpgme/-/commit/db7d79063f57c6e0ccf382fdf1cf47d514e12f6e

Git commit 99c1b14470f226537fd2c81afaad21f04ec65be1 by Ingo Klöcker on 10/08/2022 at 08:15..
doc: Update NEWS

--

GnuPG-bug-id: 5951, 6056
https://invent.kde.org/neon/forks/gpgme/-/commit/99c1b14470f226537fd2c81afaad21f04ec65be1

Git commit 5d91182c955d128c8ff7cdd29189fc3ae06201d9 by Ingo Klöcker on 10/08/2022 at 10:00..
qt: Add missing include

* lang/qt/tests/t-revokekey.cpp: Include QDebug.
--

Doesn't seem to matter with Qt 5.15.5, but seems to be needed for older
versions of Qt.
https://invent.kde.org/neon/forks/gpgme/-/commit/5d91182c955d128c8ff7cdd29189fc3ae06201d9

Git commit 9ee74b68e688b474881768a5ae59d857397c8fbf by Werner Koch on 10/08/2022 at 10:34..
tests: Make t-edit-sign more robust.

* tests/gpg/t-edit-sign.c (interact_fnc): Provide the default answer.
--

A default answer to prompts should always be given.
https://invent.kde.org/neon/forks/gpgme/-/commit/9ee74b68e688b474881768a5ae59d857397c8fbf

Git commit 26ff163bd6912fa7e8cb522d0799e17095ac1efb by Werner Koch on 10/08/2022 at 10:37..
Release 1.18.0
https://invent.kde.org/neon/forks/gpgme/-/commit/26ff163bd6912fa7e8cb522d0799e17095ac1efb

Git commit fe75eb3e0279291fc2b90f213f4cf4df1ff5d2da by Paul Gevers (on behalf of Alexandre Ghiti) on 06/09/2022 at 18:59..
Patch: fix FTBFS caused by missing PYTHON

Closes: #1015995
https://invent.kde.org/neon/forks/gpgme/-/commit/fe75eb3e0279291fc2b90f213f4cf4df1ff5d2da

Git commit 84accdbfe372ad8622f87fb9353f18308704c957 by Paul Gevers on 06/09/2022 at 19:36..
Patch: fix FTBFS patch to test all PYTHONS
https://invent.kde.org/neon/forks/gpgme/-/commit/84accdbfe372ad8622f87fb9353f18308704c957

Git commit 164119aff1ff5bfef7ff96715636092d59287770 by Paul Gevers on 06/09/2022 at 19:37..
Update d/changelog for 1.17.1-4.1
https://invent.kde.org/neon/forks/gpgme/-/commit/164119aff1ff5bfef7ff96715636092d59287770

Git commit e3eb043fa1fea43b78e7ca8542d08d15c8115f3c by Daniel Kahn Gillmor on 28/09/2022 at 23:54..
New upstream version 1.18.0
https://invent.kde.org/neon/forks/gpgme/-/commit/e3eb043fa1fea43b78e7ca8542d08d15c8115f3c

Git commit 1c22952a056712a139a830c5caad7190d600dd6f by Daniel Kahn Gillmor on 28/09/2022 at 23:54..
Update upstream source from tag 'upstream/1.18.0'

Update to upstream version '1.18.0'
with Debian dir 776d83cffbefd063a97698574105926bf1e6f280
https://invent.kde.org/neon/forks/gpgme/-/commit/1c22952a056712a139a830c5caad7190d600dd6f

Git commit 51d4e07b2c576fa1d1348c9069aaf32b1ff337f7 by Daniel Kahn Gillmor on 28/09/2022 at 23:56..
drop patch already upstream
https://invent.kde.org/neon/forks/gpgme/-/commit/51d4e07b2c576fa1d1348c9069aaf32b1ff337f7

Git commit 14d46e0cde064dac1bd487482fad2e24036b2d8c by Daniel Kahn Gillmor on 28/09/2022 at 23:56..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/14d46e0cde064dac1bd487482fad2e24036b2d8c

Git commit 603e0a6ae05bde2da7a1ab15387ff0f8715c82bd by Daniel Kahn Gillmor on 28/09/2022 at 23:59..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/603e0a6ae05bde2da7a1ab15387ff0f8715c82bd

Git commit e9433ea60078f07b34aca6396e7c1b4856429999 by Daniel Kahn Gillmor on 29/09/2022 at 00:28..
Standards-Version: bump to 4.6.1 (no changes needed)
https://invent.kde.org/neon/forks/gpgme/-/commit/e9433ea60078f07b34aca6396e7c1b4856429999

Git commit 99189918b6bdba67f08e2ba746458466a87a3c76 by Daniel Kahn Gillmor on 29/09/2022 at 00:30..
update lintian overrides
https://invent.kde.org/neon/forks/gpgme/-/commit/99189918b6bdba67f08e2ba746458466a87a3c76

Git commit 501c3fd248be03d7597566c75e8580907e54533d by Daniel Kahn Gillmor on 29/09/2022 at 00:31..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/501c3fd248be03d7597566c75e8580907e54533d

Git commit e28494012041e446f12243ac985918aaa8bd15b5 by Andreas Metzler on 26/10/2022 at 16:04..
Fix FTBFS after removal of gpg-error-config

Pull patches from upstream GIT master
Closes: #1022348
https://invent.kde.org/neon/forks/gpgme/-/commit/e28494012041e446f12243ac985918aaa8bd15b5

Git commit fcd36b83bbe828726194e7b39203dcaaaa0af469 by Andreas Metzler on 26/10/2022 at 16:06..
gpgme-config not installed anymore

The upstream buildsystem only installs gpgme-config if libgpg-error
ships gpg-error-config. libgpg-error 1.46-1 does not.
https://invent.kde.org/neon/forks/gpgme/-/commit/fcd36b83bbe828726194e7b39203dcaaaa0af469

Git commit 4810af995849bcc54661fce81eb6dddffb1576ea by Jelmer Vernooij on 29/10/2022 at 00:00..
debian/upstream/metadata: Set Repository and Repository-Browse.
https://invent.kde.org/neon/forks/gpgme/-/commit/4810af995849bcc54661fce81eb6dddffb1576ea

Git commit 6bff4b8331ff795a7a4f72bb8dc39814d8cce011 by Jelmer Vernooij on 30/10/2022 at 13:58..
Merge branch 'upstream-metadata' into 'debian/unstable'

debian/upstream/metadata: Set Repository and Repository-Browse

See merge request debian/gpgme!8
https://invent.kde.org/neon/forks/gpgme/-/commit/6bff4b8331ff795a7a4f72bb8dc39814d8cce011

Git commit a60ac97b15338851cd66ef9c5d4df9a93ddafcc2 by Daniel Kahn Gillmor on 02/11/2022 at 14:53..
Merge upstream changes into debian/unstable

thanks, Andreas Metzler
https://invent.kde.org/neon/forks/gpgme/-/commit/a60ac97b15338851cd66ef9c5d4df9a93ddafcc2

Git commit 3568716fd9100c8cb289cf6a3fe2bf352b0db9fe by Daniel Kahn Gillmor on 02/11/2022 at 15:20..
d/upstream/metadata: add upstream bug reporting details
https://invent.kde.org/neon/forks/gpgme/-/commit/3568716fd9100c8cb289cf6a3fe2bf352b0db9fe

Git commit 93c1b3308436ac945024173026b5d2835edfd6ef by Daniel Kahn Gillmor on 02/11/2022 at 15:20..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/93c1b3308436ac945024173026b5d2835edfd6ef

Git commit 0bfb33b6f5b141f9eea911e79d32f71d73d3b3a8 by Andreas Metzler on 20/11/2022 at 05:53..
Update gpgme.m4 for gpgme-config removal

Let AM_PATH_GPGME work without preceding AM_PATH_GPG_ERROR when gpgme-config is absent.
https://invent.kde.org/neon/forks/gpgme/-/commit/0bfb33b6f5b141f9eea911e79d32f71d73d3b3a8

Git commit 73b3bb455b8c8cebf786b233f429e8b78e260525 by Andreas Metzler on 20/11/2022 at 05:54..
Update docs regarding gpgme-config being superseded by pkg-config.
https://invent.kde.org/neon/forks/gpgme/-/commit/73b3bb455b8c8cebf786b233f429e8b78e260525

Git commit 6c95631240b9225a391434ab18ef4b33a745eb29 by Andreas Metzler on 20/11/2022 at 06:24..
Document previous changes, upload as LowThresholdNmu.
https://invent.kde.org/neon/forks/gpgme/-/commit/6c95631240b9225a391434ab18ef4b33a745eb29

Git commit 3932a8a6b873e7eb44098cf20d68a872b728d6fe by Daniel Kahn Gillmor on 20/11/2022 at 23:14..
refresh patches
https://invent.kde.org/neon/forks/gpgme/-/commit/3932a8a6b873e7eb44098cf20d68a872b728d6fe

Git commit fb3d2842518eb4cf3311f494d96070b59ca572e8 by Daniel Kahn Gillmor on 20/11/2022 at 23:17..
prepare debian release
https://invent.kde.org/neon/forks/gpgme/-/commit/fb3d2842518eb4cf3311f494d96070b59ca572e8

Git commit b9fd37a8992012f0ea4d79a38a2c5af6d34d36db by Carlos De Maine on 11/05/2023 at 02:42..
Update signing-key.asc
https://invent.kde.org/neon/forks/gpgme/-/commit/b9fd37a8992012f0ea4d79a38a2c5af6d34d36db

Git commit 5685862d33a3620f9e4bafce00ec0956123c335d by Carlos De Maine on 11/05/2023 at 03:56..
New release
https://invent.kde.org/neon/forks/gpgme/-/commit/5685862d33a3620f9e4bafce00ec0956123c335d

Git commit 92ca0cbd6ac24238d236f8f406a001b47926d3f9 by Neon CI on 11/05/2023 at 03:56..
Merging Neon/stable into Neon/unstable.
https://invent.kde.org/neon/forks/gpgme/-/commit/92ca0cbd6ac24238d236f8f406a001b47926d3f9

Git commit f72f5c4dbab5af7007372eebda5eb5bb2b463c01 by Carlos De Maine on 11/05/2023 at 04:04..
1.20.0
https://invent.kde.org/neon/forks/gpgme/-/commit/f72f5c4dbab5af7007372eebda5eb5bb2b463c01

Git commit 1fcf6d75e7ef7a51101903b796aa13e448e46c57 by Carlos De Maine on 11/05/2023 at 08:38..
drop patches
https://invent.kde.org/neon/forks/gpgme/-/commit/1fcf6d75e7ef7a51101903b796aa13e448e46c57

Git commit a057fcd59aa653d2935c38fe220e945fa2cee8e5 by Carlos De Maine on 11/05/2023 at 08:53..
select qt6
https://invent.kde.org/neon/forks/gpgme/-/commit/a057fcd59aa653d2935c38fe220e945fa2cee8e5

Git commit 8e0b3fd76ed961bbc26bb5f7d71187e4f9597edf by Carlos De Maine on 11/05/2023 at 08:58..
add python3-distutils and qt6-base-dev
https://invent.kde.org/neon/forks/gpgme/-/commit/8e0b3fd76ed961bbc26bb5f7d71187e4f9597edf

Git commit 44929ab38d38ba406667c52a7383587daf68625a by Carlos De Maine on 11/05/2023 at 09:09..
forgot a comma
https://invent.kde.org/neon/forks/gpgme/-/commit/44929ab38d38ba406667c52a7383587daf68625a

Git commit 7d5ce87bbf63a2ecc90e4edf37508d9d12d7a303 by Carlos De Maine on 11/05/2023 at 09:25..
python3-distutils:any and python3-setuptools:any
https://invent.kde.org/neon/forks/gpgme/-/commit/7d5ce87bbf63a2ecc90e4edf37508d9d12d7a303

Git commit f3ef3da25b738b8e02ca4612af4862375c275361 by Carlos De Maine on 11/05/2023 at 09:27..
not :any
https://invent.kde.org/neon/forks/gpgme/-/commit/f3ef3da25b738b8e02ca4612af4862375c275361

Git commit 902ec1d147fc3a94f04e84a53a0a17be9dfaf212 by Carlos De Maine on 11/05/2023 at 09:56..
add qt6-base-dev to libgpgmepp-dev deps
https://invent.kde.org/neon/forks/gpgme/-/commit/902ec1d147fc3a94f04e84a53a0a17be9dfaf212

Git commit f074374f7ad511d68a720b67f6c0e7c9aecf4c5e by Carlos De Maine on 13/05/2023 at 01:54..
doxygen and graphviz
https://invent.kde.org/neon/forks/gpgme/-/commit/f074374f7ad511d68a720b67f6c0e7c9aecf4c5e

Git commit 37e7c2cfc617e5ecd3763f885ef8f38db0390737 by Carlos De Maine on 14/05/2023 at 11:57..
python3-distutils-extra
https://invent.kde.org/neon/forks/gpgme/-/commit/37e7c2cfc617e5ecd3763f885ef8f38db0390737

Git commit bd83a3cc8d8ef4b0a38d2701446490f77507b990 by Carlos De Maine on 14/05/2023 at 12:31..
add python deps
https://invent.kde.org/neon/forks/gpgme/-/commit/bd83a3cc8d8ef4b0a38d2701446490f77507b990

Git commit ff5b434d8a215247407aaa40ca9d8045e6e555f7 by Carlos De Maine on 14/05/2023 at 12:50..
python3-setuptools-whl
https://invent.kde.org/neon/forks/gpgme/-/commit/ff5b434d8a215247407aaa40ca9d8045e6e555f7

Git commit 2c1bc3546d2f031abdb99dbcfc40700e9187af8f by Carlos De Maine on 14/05/2023 at 12:59..
more python
https://invent.kde.org/neon/forks/gpgme/-/commit/2c1bc3546d2f031abdb99dbcfc40700e9187af8f

Git commit 5b08990753e4aa4f0d31f0a8e04a2e62e3aef0f0 by Carlos De Maine on 14/05/2023 at 13:12..
pybuild
https://invent.kde.org/neon/forks/gpgme/-/commit/5b08990753e4aa4f0d31f0a8e04a2e62e3aef0f0

Git commit 80839cd9c43ff50a66d13379425f00f27e243147 by Carlos De Maine on 14/05/2023 at 13:20..
--buildsystem=distutils
https://invent.kde.org/neon/forks/gpgme/-/commit/80839cd9c43ff50a66d13379425f00f27e243147

Git commit e71386befa956bf2147e1b0803e36846b055ab24 by Carlos De Maine on 14/05/2023 at 13:24..
try again
https://invent.kde.org/neon/forks/gpgme/-/commit/e71386befa956bf2147e1b0803e36846b055ab24

Git commit ade6d512c601f2f00c291b28c2ccc018268bca25 by Carlos De Maine on 14/05/2023 at 13:33..
python3-pep517
https://invent.kde.org/neon/forks/gpgme/-/commit/ade6d512c601f2f00c291b28c2ccc018268bca25

Git commit b96704e00841232e060eb9dd6cc5bddbfef1a2e1 by Carlos De Maine on 14/05/2023 at 14:07..
python3-d2to1
https://invent.kde.org/neon/forks/gpgme/-/commit/b96704e00841232e060eb9dd6cc5bddbfef1a2e1

Git commit 32fc53cccd7f076561713bcf56c5c5dc1783dc3b by Carlos De Maine on 14/05/2023 at 14:10..
patch to drop distutils
https://invent.kde.org/neon/forks/gpgme/-/commit/32fc53cccd7f076561713bcf56c5c5dc1783dc3b

Git commit 019052c9889d4d0ccef59433b0236397cd8ef35b by Carlos De Maine on 14/05/2023 at 14:21..
build-dir
https://invent.kde.org/neon/forks/gpgme/-/commit/019052c9889d4d0ccef59433b0236397cd8ef35b

Git commit 02f9248faf0691590163a1fe31d24fdfb1e2fbb3 by Carlos De Maine on 14/05/2023 at 14:27..
enable qt6
https://invent.kde.org/neon/forks/gpgme/-/commit/02f9248faf0691590163a1fe31d24fdfb1e2fbb3

Git commit b50b0e15a60c2d62e3eeddcf6efbc1871b5f45ea by Carlos De Maine on 14/05/2023 at 14:34..
fix installs
https://invent.kde.org/neon/forks/gpgme/-/commit/b50b0e15a60c2d62e3eeddcf6efbc1871b5f45ea

Git commit 23ab0a5148259d9184b31ed7e9a5ac99e0aa20ae by Carlos De Maine on 14/05/2023 at 14:41..
lintian override
https://invent.kde.org/neon/forks/gpgme/-/commit/23ab0a5148259d9184b31ed7e9a5ac99e0aa20ae

Git commit 14cee206d85a3f83811473bd73ada5219a004e58 by Carlos De Maine on 14/05/2023 at 14:54..
adjust for build-qt6 directory
https://invent.kde.org/neon/forks/gpgme/-/commit/14cee206d85a3f83811473bd73ada5219a004e58

Git commit 7952de584bab8dab8d49203b56a17e1c19f94132 by Carlos De Maine on 16/05/2023 at 01:24..
make it a fancy schwancy double build because qt5 and qt6 can't be built in the same dir
https://invent.kde.org/neon/forks/gpgme/-/commit/7952de584bab8dab8d49203b56a17e1c19f94132

Git commit 5bc5f8f6202e5eb95202eb55ce8674e3901df58f by Carlos De Maine on 16/05/2023 at 01:32..
sepaerate the dh & automake flags
https://invent.kde.org/neon/forks/gpgme/-/commit/5bc5f8f6202e5eb95202eb55ce8674e3901df58f

Git commit d1a5e511fb81f49e4a91402847130557ca09c17e by Carlos De Maine on 16/05/2023 at 01:42..
drop enable-languages flag for qt5 build
https://invent.kde.org/neon/forks/gpgme/-/commit/d1a5e511fb81f49e4a91402847130557ca09c17e

Git commit e8fe84f9e78ed015a053f2287102e8cb97f6273e by Carlos De Maine on 18/05/2023 at 00:42..
split out qt5 & qt6 deps
https://invent.kde.org/neon/forks/gpgme/-/commit/e8fe84f9e78ed015a053f2287102e8cb97f6273e

Git commit 77de0d065c01493edafdc09a30c6273b4bc84aa0 by Carlos De Maine on 18/05/2023 at 01:10..
fix mistakes and lisp-gpg
https://invent.kde.org/neon/forks/gpgme/-/commit/77de0d065c01493edafdc09a30c6273b4bc84aa0

Git commit 144a3af1785918aa97b08881502154d2d77e2f01 by Carlos De Maine on 18/05/2023 at 01:26..
lintian.overrides and fix installs
https://invent.kde.org/neon/forks/gpgme/-/commit/144a3af1785918aa97b08881502154d2d77e2f01

Git commit d3749c26db3aa15096882f66f3edc164b00d5d4f by Carlos De Maine on 19/05/2023 at 03:57..
rename libqgpgme15-dev to libqgpgme-dev
https://invent.kde.org/neon/forks/gpgme/-/commit/d3749c26db3aa15096882f66f3edc164b00d5d4f

Git commit 2a8b8e99649d0907b285dfbd0331f284c3ff27a7 by Carlos De Maine on 22/05/2023 at 02:15..
fix the deps
https://invent.kde.org/neon/forks/gpgme/-/commit/2a8b8e99649d0907b285dfbd0331f284c3ff27a7

Git commit 868478e9c2089d2837f759f2cdf2cefc812e986c by Carlos De Maine on 22/05/2023 at 02:21..
formatting
https://invent.kde.org/neon/forks/gpgme/-/commit/868478e9c2089d2837f759f2cdf2cefc812e986c

Git commit e247b8c23d2e63396f32aab9eb58c2ec93e9d61e by Carlos De Maine on 21/08/2023 at 22:01..
New release
https://invent.kde.org/neon/forks/gpgme/-/commit/e247b8c23d2e63396f32aab9eb58c2ec93e9d61e

Git commit 4219c35812a860415a22e76bcec8bca211e7900f by Scarlett Moore on 13/09/2023 at 13:41..
New release
https://invent.kde.org/neon/forks/gpgme/-/commit/4219c35812a860415a22e76bcec8bca211e7900f

Git commit a3893341aeaa7095f3d81dadf4c25ce3bab829b5 by Carlos De Maine on 20/12/2023 at 03:59..
New release
https://invent.kde.org/neon/forks/gpgme/-/commit/a3893341aeaa7095f3d81dadf4c25ce3bab829b5


More information about the Neon-commits mailing list