aboutsummaryrefslogtreecommitdiffstats
path: root/lang/cpp/src/importresult.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lang/cpp/src/importresult.cpp')
-rw-r--r--lang/cpp/src/importresult.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/lang/cpp/src/importresult.cpp b/lang/cpp/src/importresult.cpp
index 05943ca0..20a3174b 100644
--- a/lang/cpp/src/importresult.cpp
+++ b/lang/cpp/src/importresult.cpp
@@ -35,6 +35,9 @@
#include <cstring>
#include <string.h>
+#include <strings.h>
+#include <istream>
+#include <iterator>
class GpgME::ImportResult::Private
{
@@ -224,3 +227,42 @@ GpgME::Import::Status GpgME::Import::status() const
}
return static_cast<Status>(result);
}
+
+std::ostream &GpgME::operator<<(std::ostream &os,
+ const GpgME::ImportResult &result)
+{
+ os << "GpgME::ImportResult(";
+ if (!result.isNull()) {
+ os << "\n considered: " << result.numConsidered()
+ << "\n without UID: " << result.numKeysWithoutUserID()
+ << "\n imported: " << result.numImported()
+ << "\n RSA Imported: " << result.numRSAImported()
+ << "\n unchanged: " << result.numUnchanged()
+ << "\n newUserIDs: " << result.newUserIDs()
+ << "\n newSubkeys: " << result.newSubkeys()
+ << "\n newSignatures: " << result.newSignatures()
+ << "\n newRevocations: " << result.newRevocations()
+ << "\n numSecretKeysConsidered: " << result.numSecretKeysConsidered()
+ << "\n numSecretKeysImported: " << result.numSecretKeysImported()
+ << "\n numSecretKeysUnchanged: " << result.numSecretKeysUnchanged()
+ << "\n"
+ << "\n notImported: " << result.notImported()
+ << "\n numV3KeysSkipped: " << result.numV3KeysSkipped()
+ << "\n imports:\n";
+ const std::vector<Import> imp = result.imports();
+ std::copy(imp.begin(), imp.end(),
+ std::ostream_iterator<Import>(os, "\n"));
+ }
+ return os << ')';
+}
+
+std::ostream &GpgME::operator<<(std::ostream &os, const GpgME::Import &imp)
+{
+ os << "GpgME::Import(";
+ if (!imp.isNull()) {
+ os << "\n fpr: " << (imp.fingerprint() ? imp.fingerprint() : "null")
+ << "\n status: " << imp.status()
+ << "\n err: " << imp.error();
+ }
+ return os << ')';
+}