cpp: Add gpgme_(get)set_ctx_flag
authorAndre Heinecke <aheinecke@intevation.de>
Fri, 1 Jun 2018 09:08:12 +0000 (11:08 +0200)
committerAndre Heinecke <aheinecke@intevation.de>
Fri, 1 Jun 2018 09:10:45 +0000 (11:10 +0200)
* NEWS: Mention API extensions.
* lang/cpp/src/context.cpp, lang/cpp/src/context.h
(Context::setFlag, Context::getFlag): New.

NEWS
lang/cpp/src/context.cpp
lang/cpp/src/context.h

diff --git a/NEWS b/NEWS
index 4eb3dbe..e70b9a9 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -8,9 +8,12 @@ Noteworthy changes in version 1.11.2 (unreleased)
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  gpgme_decrypt_result_t           EXTENDED: New field legacy_cipher_nomdc.
  gpgme_set_ctx_flag               EXTENDED: New flag 'ignore-mdc-error'.
- cpp: DecryptionResult::sessionKey     NEW.
- cpp: DecryptionResult::symkeyAlgo     NEW.
- cpp: Data::rewind                     NEW.
+ cpp: DecryptionResult::sessionKey          NEW.
+ cpp: DecryptionResult::symkeyAlgo          NEW.
+ cpp: DecryptionResult::isLegacyCipherNoMDC New.
+ cpp: Data::rewind                          NEW.
+ cpp: Context::setFlag                      NEW.
+ cpp: Context::getFlag                      NEW.
 
 
 Noteworthy changes in version 1.11.1 (2018-04-20)
index 135e4d5..8fde84a 100644 (file)
@@ -1478,6 +1478,16 @@ Error Context::startCreateSubkey(const Key &k, const char *algo,
                  k.impl(), algo, reserved, expires, flags));
 }
 
+Error Context::setFlag(const char *name, const char *value)
+{
+  return Error(d->lasterr = gpgme_set_ctx_flag(d->ctx, name, value));
+}
+
+const char *Context::getFlag(const char *name) const
+{
+  return gpgme_get_ctx_flag(d->ctx, name);
+}
+
 // Engine Spawn stuff
 Error Context::spawn(const char *file, const char *argv[],
                      Data &input, Data &output, Data &err,
index aff8e49..8cccff5 100644 (file)
@@ -86,6 +86,9 @@ public:
     void setOffline(bool useOfflineMode);
     bool offline() const;
 
+    const char *getFlag(const char *name) const;
+    Error setFlag(const char *name, const char *value);
+
     enum CertificateInclusion {
         DefaultCertificates = -256,
         AllCertificatesExceptRoot = -2,
@@ -453,6 +456,7 @@ public:
     {
         return d;
     }
+
 private:
     // Helper functions that need to be context because they rely
     // on the "Friendlyness" of context to access the gpgme types.