aboutsummaryrefslogtreecommitdiffstats
path: root/lang/cpp
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2016-07-13 12:45:02 +0000
committerWerner Koch <[email protected]>2016-07-13 12:45:02 +0000
commitd8d5f5a16712244fe6eff860b6ac5f007b1bf870 (patch)
tree08fa3d61daa6b1b02c566df56c1e2926de5ef674 /lang/cpp
parentcore: Pass the engine's version string to the engine's new function. (diff)
downloadgpgme-d8d5f5a16712244fe6eff860b6ac5f007b1bf870.tar.gz
gpgme-d8d5f5a16712244fe6eff860b6ac5f007b1bf870.zip
core: New GPGME_DATA_ENCODING_MIME.
* src/gpgme.h.in (GPGME_DATA_ENCODING_MIME): New. * src/data.c (gpgme_data_set_encoding): Adjust check. * src/engine-gpg.c (have_gpg_version): New. (gpg_encrypt, gpg_encrypt_sign): Pass flag '--mimemode'. (gpg_sign): Ditto. * lang/cpp/src/data.h (GpgME): Add MimeEncoding. * lang/cpp/src/data.cpp (encoding, setEncoding): Support MimeEncoding. * src/gpgme-tool.c (server_data_encoding): Add flag --mime. -- This feature allows an application to declare that the encrypted or signed data is a valid MIME part. What is missing is a way to return that information to the application after decryption/verification. This can be done by setting the encoding of the output data object; however this requires some internal additions to our processing model. Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to '')
-rw-r--r--lang/cpp/src/data.cpp2
-rw-r--r--lang/cpp/src/data.h3
2 files changed, 4 insertions, 1 deletions
diff --git a/lang/cpp/src/data.cpp b/lang/cpp/src/data.cpp
index af1c479a..64acb47f 100644
--- a/lang/cpp/src/data.cpp
+++ b/lang/cpp/src/data.cpp
@@ -146,6 +146,7 @@ GpgME::Data::Encoding GpgME::Data::encoding() const
case GPGME_DATA_ENCODING_BINARY: return BinaryEncoding;
case GPGME_DATA_ENCODING_BASE64: return Base64Encoding;
case GPGME_DATA_ENCODING_ARMOR: return ArmorEncoding;
+ case GPGME_DATA_ENCODING_MIME: return MimeEncoding;
}
return AutoEncoding;
}
@@ -158,6 +159,7 @@ GpgME::Error GpgME::Data::setEncoding(Encoding enc)
case BinaryEncoding: ge = GPGME_DATA_ENCODING_BINARY; break;
case Base64Encoding: ge = GPGME_DATA_ENCODING_BASE64; break;
case ArmorEncoding: ge = GPGME_DATA_ENCODING_ARMOR; break;
+ case MimeEncoding: ge = GPGME_DATA_ENCODING_MIME; break;
}
return Error(gpgme_data_set_encoding(d->data, ge));
}
diff --git a/lang/cpp/src/data.h b/lang/cpp/src/data.h
index d5e54aaa..b2f2173f 100644
--- a/lang/cpp/src/data.h
+++ b/lang/cpp/src/data.h
@@ -77,7 +77,8 @@ public:
AutoEncoding,
BinaryEncoding,
Base64Encoding,
- ArmorEncoding
+ ArmorEncoding,
+ MimeEncoding
};
Encoding encoding() const;
Error setEncoding(Encoding encoding);