diff options
| author | Andre Heinecke <[email protected]> | 2016-09-16 14:54:07 +0000 | 
|---|---|---|
| committer | Andre Heinecke <[email protected]> | 2016-09-16 14:58:39 +0000 | 
| commit | 4d384d7bfef044094695271576ca233625bb520a (patch) | |
| tree | 8958953d169ca91452e32df9b295821a1c8aff50 /lang/cpp/src/context.cpp | |
| parent | cpp: Declare sizes of tofu-info enums (diff) | |
| download | gpgme-4d384d7bfef044094695271576ca233625bb520a.tar.gz gpgme-4d384d7bfef044094695271576ca233625bb520a.zip | |
cpp: Add support for gpgme_op_tofu_policy
* src/context.cpp, src/context.h (setTofuPolicy, setTofuPolicyStart):
New.
Diffstat (limited to '')
| -rw-r--r-- | lang/cpp/src/context.cpp | 31 | 
1 files changed, 31 insertions, 0 deletions
| diff --git a/lang/cpp/src/context.cpp b/lang/cpp/src/context.cpp index 1e134a02..00f397b4 100644 --- a/lang/cpp/src/context.cpp +++ b/lang/cpp/src/context.cpp @@ -41,6 +41,7 @@  #include "data_p.h"  #include "context_p.h"  #include "util.h" +#include "tofuinfo.h"  #include <gpgme.h> @@ -1329,6 +1330,36 @@ Error Context::setPinentryMode(PinentryMode which)      return Error(d->lasterr = gpgme_set_pinentry_mode(d->ctx, mode));  } +static gpgme_tofu_policy_t to_tofu_policy_t(unsigned int policy) +{ +    switch (policy) { +        case TofuInfo::PolicyNone: +            return GPGME_TOFU_POLICY_NONE; +        case TofuInfo::PolicyAuto: +            return GPGME_TOFU_POLICY_AUTO; +        case TofuInfo::PolicyGood: +            return GPGME_TOFU_POLICY_GOOD; +        case TofuInfo::PolicyBad: +            return GPGME_TOFU_POLICY_BAD; +        case TofuInfo::PolicyAsk: +            return GPGME_TOFU_POLICY_ASK; +        case TofuInfo::PolicyUnknown: +            return GPGME_TOFU_POLICY_UNKNOWN; +    } +} + +Error Context::setTofuPolicy(const Key &k, unsigned int policy) +{ +    return Error(d->lasterr = gpgme_op_tofu_policy(d->ctx, +                 k.impl(), to_tofu_policy_t(policy))); +} + +Error Context::setTofuPolicyStart(const Key &k, unsigned int policy) +{ +    return Error(d->lasterr = gpgme_op_tofu_policy_start(d->ctx, +                 k.impl(), to_tofu_policy_t(policy))); +} +  // Engine Spawn stuff  Error Context::spawn(const char *file, const char *argv[],                       Data &input, Data &output, Data &err, | 
