Files
poco/modules/Poco/Crypto.cppm
Miko 041e7feeb7 Add support for modules (#4999)
* Add support for modules

* Use "" for inclusion

* Fix missing includes on Poco.Data module

* Add PDF and SevenZip modules, and match modules to build macros

* Add CI test

* Add missing link libraries in CMake

* Add remaining libraries DNSSD, CppParser and CppUnit. Changed some static declarations to inline to export

* We also need to forward the ENABLE_NETSSL_* macros

* Update CMakeLists files

* Add samples as requested, with DateTime and URI test for example

* Fix POCO_MODULES_INSTALL macro

* chore(CMake): Combine install macro for libraries and C++ modules into one macro.

* Apply testsuite changes and address include directories concerns

* Restore accidentally deleted build files

* Mistakenly added a file generated by CMake, removed.

---------

Co-authored-by: Matej Kenda <matejken@gmail.com>
2025-09-19 19:46:36 +02:00

85 lines
2.5 KiB
C++

//
// Crypto.cppm
//
// C++ module file
//
// Copyright (c) 2025, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier: BSL-1.0
//
module;
#ifdef ENABLE_CRYPTO
#include "Poco/Crypto/CipherFactory.h"
#include "Poco/Crypto/Cipher.h"
#include "Poco/Crypto/CipherImpl.h"
#include "Poco/Crypto/CipherKey.h"
#include "Poco/Crypto/CipherKeyImpl.h"
#include "Poco/Crypto/CryptoException.h"
#include "Poco/Crypto/Crypto.h"
#include "Poco/Crypto/CryptoStream.h"
#include "Poco/Crypto/CryptoTransform.h"
#include "Poco/Crypto/DigestEngine.h"
#include "Poco/Crypto/ECDSADigestEngine.h"
#include "Poco/Crypto/ECKey.h"
#include "Poco/Crypto/ECKeyImpl.h"
#include "Poco/Crypto/Envelope.h"
#include "Poco/Crypto/EVPCipherImpl.h"
#include "Poco/Crypto/EVPPKey.h"
#include "Poco/Crypto/KeyPair.h"
#include "Poco/Crypto/KeyPairImpl.h"
#include "Poco/Crypto/OpenSSLInitializer.h"
#include "Poco/Crypto/PKCS12Container.h"
#include "Poco/Crypto/RSACipherImpl.h"
#include "Poco/Crypto/RSADigestEngine.h"
#include "Poco/Crypto/RSAKey.h"
#include "Poco/Crypto/RSAKeyImpl.h"
#include "Poco/Crypto/X509Certificate.h"
#endif
export module Poco.Crypto;
export namespace Poco::Crypto {
#ifdef ENABLE_CRYPTO
using Poco::Crypto::Cipher;
using Poco::Crypto::CipherFactory;
using Poco::Crypto::CipherKey;
using Poco::Crypto::CipherKeyImpl;
using Poco::Crypto::CryptoException;
using Poco::Crypto::CryptoIOS;
using Poco::Crypto::CipherImpl;
using Poco::Crypto::CryptoInputStream;
using Poco::Crypto::CryptoOutputStream;
using Poco::Crypto::CryptoStreamBuf;
using Poco::Crypto::CryptoTransform;
using Poco::Crypto::DecryptingInputStream;
using Poco::Crypto::DecryptingOutputStream;
using Poco::Crypto::DigestEngine;
using Poco::Crypto::ECDSADigestEngine;
using Poco::Crypto::ECDSASignature;
using Poco::Crypto::ECKey;
using Poco::Crypto::ECKeyImpl;
using Poco::Crypto::EVPCipherImpl;
using Poco::Crypto::EVPPKey;
using Poco::Crypto::EncryptingInputStream;
using Poco::Crypto::EncryptingOutputStream;
using Poco::Crypto::Envelope;
using Poco::Crypto::KeyPair;
using Poco::Crypto::KeyPairImpl;
using Poco::Crypto::OpenSSLException;
using Poco::Crypto::OpenSSLInitializer;
using Poco::Crypto::PKCS12Container;
using Poco::Crypto::RSACipherImpl;
using Poco::Crypto::RSADigestEngine;
using Poco::Crypto::RSAKey;
using Poco::Crypto::RSAKeyImpl;
using Poco::Crypto::X509Certificate;
using Poco::Crypto::getError;
using Poco::Crypto::initializeCrypto;
using Poco::Crypto::uninitializeCrypto;
#endif
}