<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/src, branch gsoc/jacob-key-import</title>
<subtitle>GnuPG Made Easy.</subtitle>
<id>http://git.bktus.com/gpgfrontend/gpgme/atom?h=gsoc%2Fjacob-key-import</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/gpgme/atom?h=gsoc%2Fjacob-key-import'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/'/>
<updated>2018-06-08T12:52:41Z</updated>
<entry>
<title>json: Return fingerprint as createkey result</title>
<updated>2018-06-08T12:52:41Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-08T12:52:41Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=54146d90dd5518c24c30e6d2ebeb7f47ed4eb29e'/>
<id>urn:sha1:54146d90dd5518c24c30e6d2ebeb7f47ed4eb29e</id>
<content type='text'>
* src/gpgme-json.c (op_createkey): Return fingerprint of new key.
</content>
</entry>
<entry>
<title>json: Add op_createkey</title>
<updated>2018-06-08T11:55:21Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-08T11:55:21Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=6c74a59e8855d1cac0d8001ad1b7843d2d15be5e'/>
<id>urn:sha1:6c74a59e8855d1cac0d8001ad1b7843d2d15be5e</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>json: Generalize chunking and getmore</title>
<updated>2018-06-08T08:29:59Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-07T15:48:55Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=af8510fb7f4d5c90cc53f10dcc740f377af73d68'/>
<id>urn:sha1:af8510fb7f4d5c90cc53f10dcc740f377af73d68</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>json: Rework verify_result_to_json</title>
<updated>2018-06-07T14:07:59Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-07T14:05:15Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=e48f4a18f807ee42b31968b84f6ae7811d8d8a45'/>
<id>urn:sha1:e48f4a18f807ee42b31968b84f6ae7811d8d8a45</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>json: Add direct way to query a config option</title>
<updated>2018-06-07T09:42:47Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-07T09:42:47Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=906ea48df3e178bea3e2c744ddd834b23fe553fb'/>
<id>urn:sha1:906ea48df3e178bea3e2c744ddd834b23fe553fb</id>
<content type='text'>
* 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
                   }]
   }
}
</content>
</entry>
<entry>
<title>json: Add op_config to query gpgconf</title>
<updated>2018-06-07T09:26:48Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-07T09:23:14Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=7e18c7a07a1e2c58ef4d5ddeed46bcce098bdf6c'/>
<id>urn:sha1:7e18c7a07a1e2c58ef4d5ddeed46bcce098bdf6c</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>core: Return a better error code on certain decryption failures.</title>
<updated>2018-06-06T14:20:27Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-06-06T14:20:27Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=2c4c5692472f5870f907c2c3f01870879cb0c34b'/>
<id>urn:sha1:2c4c5692472f5870f907c2c3f01870879cb0c34b</id>
<content type='text'>
* 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 &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>json: Allow to compile with libgpg-error &lt; 1.28</title>
<updated>2018-06-05T07:40:17Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-06-05T07:40:17Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=998fec8a4fbc46315fe6836980954eed402b38c5'/>
<id>urn:sha1:998fec8a4fbc46315fe6836980954eed402b38c5</id>
<content type='text'>
* 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 &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>core: New context flag "ignore-mdc-error".</title>
<updated>2018-05-31T23:29:34Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-05-31T23:29:20Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=662604c5bcb4e03d3c9ecc670d4f320a2418ebb3'/>
<id>urn:sha1:662604c5bcb4e03d3c9ecc670d4f320a2418ebb3</id>
<content type='text'>
* 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 &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>core: New decryption result flag 'legacy_cipher_nomdc'.</title>
<updated>2018-05-31T23:01:08Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-05-31T23:01:08Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=dd19cabe81b7bf4177ea2ca741f6eb6cd1cab25e'/>
<id>urn:sha1:dd19cabe81b7bf4177ea2ca741f6eb6cd1cab25e</id>
<content type='text'>
* 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 &lt;wk@gnupg.org&gt;
</content>
</entry>
</feed>
