Merge branch 'poco-1.11.3'

This commit is contained in:
Günter Obiltschnig 2022-06-12 08:03:45 +02:00
commit 191cbdc97e
15 changed files with 83 additions and 14 deletions

View File

@ -78,7 +78,7 @@ protected:
helpFormatter.setHeader(
"\n"
"The POCO C++ Libraries ActiveRecord ORM Compiler.\n"
"Copyright (c) 2020-2021 by Applied Informatics Software Engineering GmbH.\n"
"Copyright (c) 2020-2022 by Applied Informatics Software Engineering GmbH.\n"
"All rights reserved.\n\n"
"This program generates C++ source code from an ActiveRecord "
"XML definition. "

View File

@ -1,5 +1,14 @@
This is the changelog file for the POCO C++ Libraries.
Release 1.11.3 (2022-06-12)
===========================
- GH #3567: fix(openssl-initializer): check legacy provider existence for legacy exception
- GH #3587: MySQL UUID binding temporary string
- GH #3632: Redis - add TLS support
- updated a few copyright dates
Release 1.11.2 (2022-04-16)
===========================

View File

@ -63,10 +63,10 @@ public:
/// Shuts down the OpenSSL machinery.
static bool isFIPSEnabled();
// Returns true if FIPS mode is enabled, false otherwise.
/// Returns true if FIPS mode is enabled, false otherwise.
static void enableFIPSMode(bool enabled);
// Enable or disable FIPS mode. If FIPS is not available, this method doesn't do anything.
/// Enable or disable FIPS mode. If FIPS is not available, this method doesn't do anything.
protected:
enum

View File

@ -136,8 +136,8 @@ void OpenSSLInitializer::initialize()
}
if (!_legacyProvider)
{
_legacyProvider = OSSL_PROVIDER_load(NULL, "legacy");
if (!_defaultProvider) throw CryptoException("Failed to load OpenSSL legacy provider");
_legacyProvider = OSSL_PROVIDER_load(NULL, "legacy");
if (!_legacyProvider) throw CryptoException("Failed to load OpenSSL legacy provider");
}
#endif
}
@ -157,7 +157,6 @@ void OpenSSLInitializer::uninitialize()
#endif
delete [] _mutexes;
#endif
}
}

View File

@ -4,8 +4,8 @@
#include "winres.h"
#define POCO_VERSION 1,11,2,0
#define POCO_VERSION_STR "1.11.2"
#define POCO_VERSION 1,11,3,0
#define POCO_VERSION_STR "1.11.3"
VS_VERSION_INFO VERSIONINFO
FILEVERSION POCO_VERSION

View File

@ -213,8 +213,7 @@ void Binder::bind(std::size_t pos, const Time& val, Direction dir)
void Binder::bind(std::size_t pos, const UUID& val, Direction dir)
{
std::string str = val.toString();
bind(pos, str, dir);
bind(pos, toString(val), dir);
}

View File

@ -356,6 +356,13 @@ public:
static bool isInBound(Direction dir);
/// Returns true if direction is in bound;
protected:
const std::string& toString(const UUID& uuid);
private:
using StringList = std::vector<std::string*>;
std::unique_ptr<StringList> _pStrings;
};

View File

@ -33,6 +33,19 @@ AbstractBinder::AbstractBinder()
AbstractBinder::~AbstractBinder()
{
if (_pStrings)
{
for (auto& s : *_pStrings)
delete s;
}
}
const std::string& AbstractBinder::toString(const UUID& uuid)
{
if (!_pStrings) _pStrings.reset(new StringList);
_pStrings->push_back(new std::string(uuid.toString()));
return *_pStrings->back();
}

View File

@ -117,7 +117,7 @@ protected:
helpFormatter.setHeader(
"\n"
"The POCO C++ Text Encodings Compiler.\n"
"Copyright (c) 2018-2021 by Applied Informatics Software Engineering GmbH.\n"
"Copyright (c) 2018-2022 by Applied Informatics Software Engineering GmbH.\n"
"All rights reserved.\n\n"
"This program compiles Unicode character encoding tables "
"from http://www.unicode.org/Public/MAPPINGS/ to TextEncoding "

View File

@ -35,7 +35,7 @@
// Ax: alpha releases
// Bx: beta releases
//
#define POCO_VERSION 0x010B0200
#define POCO_VERSION 0x010B0300
#endif // Foundation_Version_INCLUDED

View File

@ -87,6 +87,11 @@ public:
Client(const Net::SocketAddress& addrs);
/// Constructor which connects to the given Redis host/port.
Client(const Net::StreamSocket& socket);
/// Constructor which connects using an existing TCP
/// connection. This can be used to connect via TLS, if the
/// given socket is a Poco::Net::SecureStreamSocket.
virtual ~Client();
/// Destroys the Client.
@ -113,6 +118,11 @@ public:
void connect(const Net::SocketAddress& addrs, const Timespan& timeout);
/// Connects to the given Redis server.
void connect(const Net::StreamSocket& socket);
/// Connects to the given Redis server using an existing TCP
/// connection. This can be used to connect via TLS, if the
/// given socket is a Poco::Net::SecureStreamSocket.
void disconnect();
/// Disconnects from the Redis server.

View File

@ -61,6 +61,16 @@ Client::Client(const Net::SocketAddress& addrs):
}
Client::Client(const Net::StreamSocket& socket):
_address(),
_socket(),
_input(0),
_output(0)
{
connect(socket);
}
Client::~Client()
{
delete _input;
@ -133,6 +143,18 @@ void Client::connect(const Net::SocketAddress& addrs, const Timespan& timeout)
}
void Client::connect(const Poco::Net::StreamSocket& socket)
{
poco_assert(! _input);
poco_assert(! _output);
_address = socket.peerAddress();
_socket = socket;
_input = new RedisInputStream(_socket);
_output = new RedisOutputStream(_socket);
}
void Client::disconnect()
{
delete _input;

View File

@ -1 +1 @@
1.11.2
1.11.3

View File

@ -1,6 +1,16 @@
POCO C++ Libraries Release Notes
AAAIntroduction
!!!Release 1.11.3
!!Summary of Changes
- GH #3567: fix(openssl-initializer): check legacy provider existence for legacy exception
- GH #3587: MySQL UUID binding temporary string
- GH #3632: Redis - add TLS support
- updated a few copyright dates
!!!Release 1.11.2
!!Summary of Changes

View File

@ -1 +1 @@
82
83