<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/src, branch ben/howto-update-03</title>
<subtitle>GnuPG Made Easy.</subtitle>
<id>http://git.bktus.com/gpgfrontend/gpgme/atom?h=ben%2Fhowto-update-03</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/gpgme/atom?h=ben%2Fhowto-update-03'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/'/>
<updated>2018-03-29T13:06:54Z</updated>
<entry>
<title>json: Build only a dummy if libgpg-error is &lt; 1.28</title>
<updated>2018-03-29T13:06:54Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-29T13:06:47Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=60d7a1e8f625ea0db455bff989534dd52f0650c7'/>
<id>urn:sha1:60d7a1e8f625ea0db455bff989534dd52f0650c7</id>
<content type='text'>
Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>json: Remove the "message" object thingy again.</title>
<updated>2018-03-28T19:21:18Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-28T19:21:10Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=3345a17dda2222e3c1592235e8a1cd9493192777'/>
<id>urn:sha1:3345a17dda2222e3c1592235e8a1cd9493192777</id>
<content type='text'>
* 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 &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>json: Make native messaging work.</title>
<updated>2018-03-28T18:53:21Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-28T18:50:54Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=4b2fa657d195382d14ac99be40b66327e0fc855c'/>
<id>urn:sha1:4b2fa657d195382d14ac99be40b66327e0fc855c</id>
<content type='text'>
* 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 &amp;

to run firefox.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>core: Initialize key return value in gpgme_get_key</title>
<updated>2018-03-27T09:24:55Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-03-27T09:24:55Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=7c220e387d511b0cf66f99370759c36b729cc444'/>
<id>urn:sha1:7c220e387d511b0cf66f99370759c36b729cc444</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>core: Need to increase an array in the gpg engine.</title>
<updated>2018-03-23T14:46:18Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-23T14:46:18Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=4763974ef6932c503e35c3d14fe47a66a5323f48'/>
<id>urn:sha1:4763974ef6932c503e35c3d14fe47a66a5323f48</id>
<content type='text'>
* src/engine-gpg.c (build_argv): Allcate one slot more for ARGV.
--

Fixes-commit: b9000bc293164ff62efa7e91e5cf6d5fc19d482f
</content>
</entry>
<entry>
<title>json: Use a request origin of "browser".</title>
<updated>2018-03-23T14:32:06Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-23T14:32:06Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=e5abf4827aead50437bbdff8cfdd5e9fdc6ed72d'/>
<id>urn:sha1:e5abf4827aead50437bbdff8cfdd5e9fdc6ed72d</id>
<content type='text'>
* src/gpgme-json.c (_create_new_context): Set flag.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>core: New gpgme_set_ctx_flag "request-origin".</title>
<updated>2018-03-23T14:27:32Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-23T14:27:32Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=b9000bc293164ff62efa7e91e5cf6d5fc19d482f'/>
<id>urn:sha1:b9000bc293164ff62efa7e91e5cf6d5fc19d482f</id>
<content type='text'>
* 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 &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>build: Allow building with released libgpg-error.</title>
<updated>2018-03-23T11:36:19Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-23T11:36:19Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=eee68c1b13fbe21c123f469712817e0c81f16383'/>
<id>urn:sha1:eee68c1b13fbe21c123f469712817e0c81f16383</id>
<content type='text'>
* src/gpgme-json.c (add_base64_to_object): Return an error if building
with an older libgpg-error.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'json-tool'</title>
<updated>2018-03-23T10:31:20Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-23T10:31:20Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=c7bb12da5297a7e188766d9759f700dd771faff8'/>
<id>urn:sha1:c7bb12da5297a7e188766d9759f700dd771faff8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>json: Finish op:encrypt.</title>
<updated>2018-03-23T10:27:59Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-03-23T10:27:59Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=d83482a1d768fc5afd3aa4836f2fefe5c549d02e'/>
<id>urn:sha1:d83482a1d768fc5afd3aa4836f2fefe5c549d02e</id>
<content type='text'>
* 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 &lt;wk@gnupg.org&gt;
</content>
</entry>
</feed>
