diff options
author | Ingo Klöcker <[email protected]> | 2025-02-03 09:49:25 +0000 |
---|---|---|
committer | Ingo Klöcker <[email protected]> | 2025-02-03 09:55:40 +0000 |
commit | 763d5f5d6a88ec938b8678ab597e1404af724553 (patch) | |
tree | 7f3791e3560bd3a51470494bf965b9f9a40a87bd /lang/cpp/src/util.h | |
parent | build: Fix generation of ChangeLog on secondary working trees (diff) | |
download | gpgme-763d5f5d6a88ec938b8678ab597e1404af724553.tar.gz gpgme-763d5f5d6a88ec938b8678ab597e1404af724553.zip |
cpp,qt: Remove C++ and Qt bindings
* README: Update.
* configure.ac: Remove checks, variables and file generations related to
the C++/Qt bindings. Remove cpp and qt* from available_languages and
default_languages.
* lang/Makefile.am (DIST_SUBDIRS): Remove cpp and qt.
* lang/cpp, lang/qt: Remove.
* m4/ax_check_compile_flag.m4, m4/ax_cxx_compile_stdcxx.m4,
m4/ax_gcc_func_attribute.m4, m4/pkg.m4, m4/qt5.m4, m4/qt6.m4: Remove.
--
The C++ and Qt bindings have been moved to separate Git repositories:
gpgmepp and gpgmeqt.
GnuPG-bug-id: 7262
Diffstat (limited to 'lang/cpp/src/util.h')
-rw-r--r-- | lang/cpp/src/util.h | 214 |
1 files changed, 0 insertions, 214 deletions
diff --git a/lang/cpp/src/util.h b/lang/cpp/src/util.h deleted file mode 100644 index cb6df0d0..00000000 --- a/lang/cpp/src/util.h +++ /dev/null @@ -1,214 +0,0 @@ -/* - util.h - some internal helpers - Copyright (C) 2004 Klarälvdalens Datakonsult AB - 2016 Bundesamt für Sicherheit in der Informationstechnik - Software engineering by Intevation GmbH - Copyright (c) 2022 g10 Code GmbH - Software engineering by Ingo Klöcker <[email protected]> - - This file is part of GPGME++. - - GPGME++ is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - GPGME++ is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with GPGME++; see the file COPYING.LIB. If not, write to the - Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -// -*- c++ -*- -#ifndef __GPGMEPP_UTIL_H__ -#define __GPGMEPP_UTIL_H__ - -#include "global.h" -#include "notation.h" - -#include <gpgme.h> - -#ifndef NDEBUG -#include <iostream> -#endif -#include <sstream> -#include <string> - -static inline const char *protect(const char *s) -{ - return s ? s : "<null>" ; -} - -static inline gpgme_error_t make_error(gpgme_err_code_t code) -{ - return gpgme_err_make((gpgme_err_source_t)22, code); -} - -static inline unsigned long to_pid(const std::string &s) -{ - std::stringstream ss(s); - unsigned int result; - if (ss >> result) { - return result; - } else { - return 0U; - } -} - -static inline gpgme_keylist_mode_t add_to_gpgme_keylist_mode_t(unsigned int oldmode, unsigned int newmodes) -{ - if (newmodes & GpgME::Local) { - oldmode |= GPGME_KEYLIST_MODE_LOCAL; - } - if (newmodes & GpgME::Extern) { - oldmode |= GPGME_KEYLIST_MODE_EXTERN; - } - if (newmodes & GpgME::Signatures) { - oldmode |= GPGME_KEYLIST_MODE_SIGS; - } - if (newmodes & GpgME::SignatureNotations) { - oldmode |= GPGME_KEYLIST_MODE_SIG_NOTATIONS; - } - if (newmodes & GpgME::Validate) { - oldmode |= GPGME_KEYLIST_MODE_VALIDATE; - } - if (newmodes & GpgME::Ephemeral) { - oldmode |= GPGME_KEYLIST_MODE_EPHEMERAL; - } - if (newmodes & GpgME::WithTofu) { - oldmode |= GPGME_KEYLIST_MODE_WITH_TOFU; - } - if (newmodes & GpgME::WithKeygrip) { - oldmode |= GPGME_KEYLIST_MODE_WITH_KEYGRIP; - } - if (newmodes & GpgME::WithSecret) { - oldmode |= GPGME_KEYLIST_MODE_WITH_SECRET; - } - if (newmodes & GpgME::ForceExtern) { - oldmode |= GPGME_KEYLIST_MODE_FORCE_EXTERN; - } -#ifndef NDEBUG - if (newmodes & ~(GpgME::KeyListModeMask)) { - //std::cerr << "GpgME::Context: keylist mode must be one of Local, " - //"Extern, Signatures, SignatureNotations, Validate, Ephemeral, WithTofu, " - //"WithKeygrip, WithSecret, ForceExtern, or a combination thereof!" - //<< std::endl; - } -#endif - return static_cast<gpgme_keylist_mode_t>(oldmode); -} - -static inline unsigned int convert_from_gpgme_keylist_mode_t(unsigned int mode) -{ - unsigned int result = 0; - if (mode & GPGME_KEYLIST_MODE_LOCAL) { - result |= GpgME::Local; - } - if (mode & GPGME_KEYLIST_MODE_EXTERN) { - result |= GpgME::Extern; - } - if (mode & GPGME_KEYLIST_MODE_SIGS) { - result |= GpgME::Signatures; - } - if (mode & GPGME_KEYLIST_MODE_SIG_NOTATIONS) { - result |= GpgME::SignatureNotations; - } - if (mode & GPGME_KEYLIST_MODE_WITH_SECRET) { - result |= GpgME::WithSecret; - } - if (mode & GPGME_KEYLIST_MODE_WITH_TOFU) { - result |= GpgME::WithTofu; - } - if (mode & GPGME_KEYLIST_MODE_WITH_KEYGRIP) { - result |= GpgME::WithKeygrip; - } - if (mode & GPGME_KEYLIST_MODE_EPHEMERAL) { - result |= GpgME::Ephemeral; - } - if (mode & GPGME_KEYLIST_MODE_VALIDATE) { - result |= GpgME::Validate; - } - if (mode & GPGME_KEYLIST_MODE_FORCE_EXTERN) { - result |= GpgME::ForceExtern; - } -#ifndef NDEBUG - if (mode & ~(GPGME_KEYLIST_MODE_LOCAL | - GPGME_KEYLIST_MODE_EXTERN | - GPGME_KEYLIST_MODE_SIGS | - GPGME_KEYLIST_MODE_SIG_NOTATIONS | - GPGME_KEYLIST_MODE_WITH_SECRET | - GPGME_KEYLIST_MODE_WITH_TOFU | - GPGME_KEYLIST_MODE_WITH_KEYGRIP | - GPGME_KEYLIST_MODE_EPHEMERAL | - GPGME_KEYLIST_MODE_VALIDATE | - GPGME_KEYLIST_MODE_FORCE_EXTERN)) { - //std::cerr << "GpgME: WARNING: gpgme_get_keylist_mode() returned an unknown flag!" << std::endl; - } -#endif // NDEBUG - return result; -} - -static inline GpgME::Notation::Flags convert_from_gpgme_sig_notation_flags_t(unsigned int flags) -{ - unsigned int result = 0; - if (flags & GPGME_SIG_NOTATION_HUMAN_READABLE) { - result |= GpgME::Notation::HumanReadable ; - } - if (flags & GPGME_SIG_NOTATION_CRITICAL) { - result |= GpgME::Notation::Critical ; - } - return static_cast<GpgME::Notation::Flags>(result); -} - -static inline gpgme_sig_notation_flags_t add_to_gpgme_sig_notation_flags_t(unsigned int oldflags, unsigned int newflags) -{ - unsigned int result = oldflags; - if (newflags & GpgME::Notation::HumanReadable) { - result |= GPGME_SIG_NOTATION_HUMAN_READABLE; - } - if (newflags & GpgME::Notation::Critical) { - result |= GPGME_SIG_NOTATION_CRITICAL; - } - return static_cast<gpgme_sig_notation_flags_t>(result); -} - -static inline std::vector<std::string> split(const std::string &text, char delimiter) -{ - std::vector<std::string> result; - if (!text.empty()) { - std::istringstream stream{text}; - std::string line; - while (std::getline(stream, line, delimiter)) { - result.push_back(line); - } - } - return result; -} - -/** - * Adapter for passing a vector of strings as NULL-terminated array of - * const char* to the C-interface of gpgme. - */ -class StringsToCStrings -{ -public: - explicit StringsToCStrings(const std::vector<std::string> &v); - ~StringsToCStrings() = default; - - StringsToCStrings(const StringsToCStrings &) = delete; - StringsToCStrings &operator=(const StringsToCStrings &) = delete; - StringsToCStrings(StringsToCStrings &&) = delete; - StringsToCStrings &operator=(StringsToCStrings &&) = delete; - - const char **c_strs() const; -private: - const std::vector<std::string> m_strings; - mutable std::vector<const char *> m_cstrings; -}; - -#endif // __GPGMEPP_UTIL_H__ |