diff options
Diffstat (limited to 'lang/cpp/src/verificationresult.cpp')
| -rw-r--r-- | lang/cpp/src/verificationresult.cpp | 19 | 
1 files changed, 19 insertions, 0 deletions
| diff --git a/lang/cpp/src/verificationresult.cpp b/lang/cpp/src/verificationresult.cpp index b6fde7da..4bd1a7b1 100644 --- a/lang/cpp/src/verificationresult.cpp +++ b/lang/cpp/src/verificationresult.cpp @@ -24,6 +24,7 @@  #include <notation.h>  #include "result_p.h"  #include "util.h" +#include "tofuinfo.h"  #include <gpgme.h> @@ -81,6 +82,11 @@ public:                  }                  nota.back().push_back(n);              } +            // copy tofu info: +            tinfos.push_back(std::vector<TofuInfo>()); +            for (gpgme_tofu_info_t in = is->tofu; in ; in = in->next) { +                tinfos.back().push_back(TofuInfo(in)); +            }          }      }      ~Private() @@ -107,6 +113,7 @@ public:      std::vector<gpgme_signature_t> sigs;      std::vector< std::vector<Nota> > nota; +    std::vector< std::vector<TofuInfo> > tinfos;      std::vector<char *> purls;      std::string file_name;  }; @@ -363,6 +370,15 @@ std::vector<GpgME::Notation> GpgME::Signature::notations() const      return result;  } +std::vector<GpgME::TofuInfo> GpgME::Signature::tofuInfo() const +{ +    if (isNull()) { +        return std::vector<GpgME::TofuInfo>(); +    } + +    return d->tinfos[idx]; +} +  class GpgME::Notation::Private  {  public: @@ -530,6 +546,9 @@ std::ostream &GpgME::operator<<(std::ostream &os, const Signature &sig)          const std::vector<Notation> nota = sig.notations();          std::copy(nota.begin(), nota.end(),                    std::ostream_iterator<Notation>(os, "\n")); +        const std::vector<TofuInfo> tinfos = sig.tofuInfo(); +        std::copy(tinfos.begin(), tinfos.end(), +                  std::ostream_iterator<TofuInfo>(os, "\n"));      }      return os << ')';  } | 
