From 60c0fd7c955d6b8c1d0d7be3d3c65257c6418a26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ingo=20Kl=C3=B6cker?= Date: Tue, 19 Dec 2023 14:01:18 +0100 Subject: cpp: Support new flags for direct signing/encryption of files * lang/cpp/src/context.h (enum EncryptionFlags): Add constant EncryptFile. * lang/cpp/src/global.h (enum SignatureMode): Add constant SignFile. * lang/cpp/src/context.cpp (sigflags2sigflags): Handle new flag SignFile. (encryptflags2encryptflags): Handle new flag EncryptFile. (operator<<): Add new flags to the corresponding debug streams. * lang/cpp/src/signingresult.cpp (CreatedSignature::mode): Handle new flag SignFile (even if it cannot occur). -- GnuPG-bug-id: 6550 --- lang/cpp/src/context.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'lang/cpp/src/context.cpp') diff --git a/lang/cpp/src/context.cpp b/lang/cpp/src/context.cpp index bdcfabed..7d04e9cc 100644 --- a/lang/cpp/src/context.cpp +++ b/lang/cpp/src/context.cpp @@ -1301,6 +1301,9 @@ static gpgme_sig_mode_t sigflags2sigflags(SignatureMode flags) if (flags & SignatureMode::SignArchive) { result |= GPGME_SIG_MODE_ARCHIVE; } + if (flags & SignatureMode::SignFile) { + result |= GPGME_SIG_MODE_FILE; + } return static_cast(result); } @@ -1363,6 +1366,9 @@ static gpgme_encrypt_flags_t encryptflags2encryptflags(Context::EncryptionFlags if (flags & Context::EncryptArchive) { result |= GPGME_ENCRYPT_ARCHIVE; } + if (flags & Context::EncryptFile) { + result |= GPGME_ENCRYPT_FILE; + } return static_cast(result); } @@ -1927,6 +1933,7 @@ std::ostream &operator<<(std::ostream &os, SignatureMode mode) } #define CHECK( x ) if ( !(mode & (x)) ) {} else do { os << #x " "; } while (0) CHECK(SignArchive); + CHECK(SignFile); #undef CHECK return os << ')'; } @@ -1945,6 +1952,7 @@ std::ostream &operator<<(std::ostream &os, Context::EncryptionFlags flags) CHECK(EncryptWrap); CHECK(WantAddress); CHECK(EncryptArchive); + CHECK(EncryptFile); #undef CHECK return os << ')'; } -- cgit v1.2.3