<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/lang, 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-17T04:35:20Z</updated>
<entry>
<title>python bindings: core - key import</title>
<updated>2018-06-17T04:35:20Z</updated>
<author>
<name>Ben McGinnes</name>
<email>ben@adversary.org</email>
</author>
<published>2018-06-17T04:35:20Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=5a80e755008bbb3f4c7f91ffccd38f26cd8b3960'/>
<id>urn:sha1:5a80e755008bbb3f4c7f91ffccd38f26cd8b3960</id>
<content type='text'>
* 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 &lt;ben@adversary.org&gt;
</content>
</entry>
<entry>
<title>python bindings: core key import</title>
<updated>2018-06-16T23:28:30Z</updated>
<author>
<name>Ben McGinnes</name>
<email>ben@adversary.org</email>
</author>
<published>2018-06-16T23:28:30Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=0e762608ef5a598030b8d0e56261a830e1b7b724'/>
<id>urn:sha1:0e762608ef5a598030b8d0e56261a830e1b7b724</id>
<content type='text'>
* 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 &lt;ben@adversary.org&gt;
</content>
</entry>
<entry>
<title>script: groups.py</title>
<updated>2018-06-10T15:03:58Z</updated>
<author>
<name>Ben McGinnes</name>
<email>ben@adversary.org</email>
</author>
<published>2018-06-10T15:03:58Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=92cd060f5e2f4fdbfbe4812ebe8ef57e82e1609f'/>
<id>urn:sha1:92cd060f5e2f4fdbfbe4812ebe8ef57e82e1609f</id>
<content type='text'>
* Added check for if it is run on a Windows system so that the correct
  binary filename is invoked.
</content>
</entry>
<entry>
<title>cpp: Add proper gpgme_op_createkey</title>
<updated>2018-06-08T14:19:47Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-08T14:19:47Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=8dff414e170e4df8ea661028c4ac1588311ca26e'/>
<id>urn:sha1:8dff414e170e4df8ea661028c4ac1588311ca26e</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>examples: python howto</title>
<updated>2018-06-07T05:06:20Z</updated>
<author>
<name>Ben McGinnes</name>
<email>ben@adversary.org</email>
</author>
<published>2018-06-07T05:06:20Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=a3a08584d6e57c4b2a40d74dc52a7d8c5c11b501'/>
<id>urn:sha1:a3a08584d6e57c4b2a40d74dc52a7d8c5c11b501</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>docs: python bindings howto</title>
<updated>2018-06-02T14:46:46Z</updated>
<author>
<name>Ben McGinnes</name>
<email>ben@adversary.org</email>
</author>
<published>2018-06-02T14:46:46Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=897423422b9d3b856bfb72fbe1995b91d153a54e'/>
<id>urn:sha1:897423422b9d3b856bfb72fbe1995b91d153a54e</id>
<content type='text'>
* 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.
</content>
</entry>
<entry>
<title>cpp: Add gpgme_(get)set_ctx_flag</title>
<updated>2018-06-01T09:10:45Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-01T09:08:12Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=00b027af86f33782933c6200fe1ffe40e85f4346'/>
<id>urn:sha1:00b027af86f33782933c6200fe1ffe40e85f4346</id>
<content type='text'>
* NEWS: Mention API extensions.
* lang/cpp/src/context.cpp, lang/cpp/src/context.h
(Context::setFlag, Context::getFlag): New.
</content>
</entry>
<entry>
<title>cpp: Add legacy_cipher_nomdc</title>
<updated>2018-06-01T08:58:24Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-06-01T08:58:24Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=d46768c96082b4fd076506d7d3f0c03e61c59d51'/>
<id>urn:sha1:d46768c96082b4fd076506d7d3f0c03e61c59d51</id>
<content type='text'>
* lang/cpp/src/decryptionresult.cpp, lang/cpp/src/decryptionresult.h
(DecryptionResult::isLegacyCipherNoMDC): New.

--
</content>
</entry>
<entry>
<title>cpp: Add gpgme_data_rewind to cpp API</title>
<updated>2018-05-29T07:19:50Z</updated>
<author>
<name>Andre Heinecke</name>
<email>aheinecke@intevation.de</email>
</author>
<published>2018-05-29T07:16:22Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=618aa7f08db41911f25632d9fba23bca80908ebe'/>
<id>urn:sha1:618aa7f08db41911f25632d9fba23bca80908ebe</id>
<content type='text'>
* 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
</content>
</entry>
<entry>
<title>examples: mutt crypt-hooks generator</title>
<updated>2018-05-24T21:12:52Z</updated>
<author>
<name>Ben McGinnes</name>
<email>ben@adversary.org</email>
</author>
<published>2018-05-24T21:12:52Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=321005c12f716814d86e139eb265437bda01380f'/>
<id>urn:sha1:321005c12f716814d86e139eb265437bda01380f</id>
<content type='text'>
* 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).
</content>
</entry>
</feed>
