few more fixes; now really close to 1.4 release

This commit is contained in:
Guenter Obiltschnig
2010-12-13 22:11:54 +00:00
parent 29f72df574
commit 301940d425
11 changed files with 70 additions and 89 deletions

View File

@@ -215,7 +215,17 @@ Release 1.4.0 (2010-12-14)
named PocoDataMySQL, PocoDataODBC and PocoDataSQLite. named PocoDataMySQL, PocoDataODBC and PocoDataSQLite.
- fixed SF# 3125498: Linux NetworkInterface::list() doesn't return IPv6 IPs - fixed SF# 3125498: Linux NetworkInterface::list() doesn't return IPv6 IPs
- fixed SF# 3125457: IPv6 IPAddress tests are wrong - fixed SF# 3125457: IPv6 IPAddress tests are wrong
- Added initialization functions for the NetSSL_OpenSSL and Crypto libraries.
These should be called instead of relying on automatic initialization,
implemented with static initializer objects, as this won't work with
statically linked executables (where the linker won't include the
static initializer object).
The functions are Poco::Crypto::initializeCrypto(), Poco::Crypto::uninitializeCrypto(),
Poco::Net::initializeSSL() and Poco::Net::uninitializeSSL().
Applications using Crypto and/or NetSSL should call these methods appropriately at
program startup and shutdown.
Note: In release 1.3.6, similar functions have been added to the Net library.
Release 1.3.6p2 (2010-01-15) Release 1.3.6p2 (2010-01-15)
============================ ============================
@@ -1396,4 +1406,4 @@ building the libraries.
-- --
$Id: //poco/1.3/dist/CHANGELOG#137 $ $Id: //poco/1.3/dist/CHANGELOG#138 $

View File

@@ -1,7 +1,7 @@
// //
// Crypto.h // Crypto.h
// //
// $Id: //poco/1.3/Crypto/include/Poco/Crypto/Crypto.h#4 $ // $Id: //poco/1.3/Crypto/include/Poco/Crypto/Crypto.h#5 $
// //
// Library: Crypto // Library: Crypto
// Package: CryptoCore // Package: CryptoCore
@@ -102,7 +102,7 @@ namespace Poco {
namespace Crypto { namespace Crypto {
void initializeCrypto(); void Crypto_API initializeCrypto();
/// Initialize the Crypto library, as well as the underlying OpenSSL /// Initialize the Crypto library, as well as the underlying OpenSSL
/// libraries, by calling OpenSSLInitializer::initialize(). /// libraries, by calling OpenSSLInitializer::initialize().
/// ///
@@ -119,7 +119,7 @@ void initializeCrypto();
/// must be performed. /// must be performed.
void uninitializeCrypto(); void Crypto_API uninitializeCrypto();
/// Uninitializes the Crypto library by calling /// Uninitializes the Crypto library by calling
/// OpenSSLInitializer::uninitialize(). /// OpenSSLInitializer::uninitialize().

56
NEWS
View File

@@ -1,55 +1,5 @@
Release 1.3 (2007-05-07) As of release 1.4 this file is no longer maintained.
======================== Please see the CHANGELOG for what's new in each release.
This release contains major improvements and new features.
Summary of Changes:
- HashMap and HashSet classes (Foundation)
- Tuple class template (Foundation)
- SharedMemory class (Foundation)
- FileStream, FileInputStream, FileOutputStream classes that
support Unicode (UTF-8) filenames on Windows (Foundation)
- improvements and bugfixes in the Net library, mostly HTTP
- DynamicAny class (Foundation)
- improvements to NetworkInterface class (Net)
- Condition class, implementing POSIX condition variable-style
thread synchronization (Foundation)
- upgraded to PCRE 7.1 (Foundation)
- improved Unicode/UTF-8 support
- NodeAppender class for faster DOM tree creation (XML)
- Checksum class (Foundation)
- lots of bugfixes and other improvements - please see the
CHANGELOG for details
Incompatible Changes and Transition Issues:
The HashFunction class template has been changed in an incompatible
way. The member function formerly named hash() is now the function
call operator. If you have defined your own HashFunction classes,
you have to update your code. Sorry for the inconvenience.
On Windows, POCO now builds with Unicode/UTF-8 support
(POCO_WIN32_UTF8) enabled by default. If you need the previous
behavior, remove the corresponding #define from Poco/Config.h
Release 1.2 (2006-08-29)
========================
This release contains major improvements and new features.
Summary of changes (please see CHANGELOG for details):
- namespaces and header locations have changed
- improvements to command line options handling
- improvements to HTTP server and client classes
- support for raw sockets and ICMP
- improvements to DateTime, bugfixes in Timezone
- improvements to Logging (including a new LogStream class)
- HashTable classes in Foundation
- ThreadPool now supports thread priorities
- ActiveMethod now supports start policies; improved exception support
- typesafe sprintf-like formatting
- Process::launch() now supports I/O redirection to pipes
- improvements to the build system (configure; make; make install is now supported)
- various other bugfixes and enchancements
-- --
$Id: //poco/1.3/dist/NEWS#5 $ $Id: //poco/1.3/dist/NEWS#6 $

View File

@@ -1,7 +1,7 @@
// //
// Net.h // Net.h
// //
// $Id: //poco/1.3/Net/include/Poco/Net/Net.h#6 $ // $Id: //poco/1.3/Net/include/Poco/Net/Net.h#7 $
// //
// Library: Net // Library: Net
// Package: NetCore // Package: NetCore
@@ -81,13 +81,13 @@ namespace Poco {
namespace Net { namespace Net {
void initializeNetwork(); void Net_API initializeNetwork();
/// Initialize the network subsystem. /// Initialize the network subsystem.
/// Calls WSAStartup() on Windows, does nothing /// Calls WSAStartup() on Windows, does nothing
/// on other platforms. /// on other platforms.
void uninitializeNetwork(); void Net_API uninitializeNetwork();
/// Uninitialize the network subsystem. /// Uninitialize the network subsystem.
/// Calls WSACleanup() on Windows, does nothing /// Calls WSACleanup() on Windows, does nothing
/// on other platforms. /// on other platforms.

View File

@@ -1,7 +1,7 @@
// //
// NetSSL.h // NetSSL.h
// //
// $Id: //poco/1.3/NetSSL_OpenSSL/include/Poco/Net/NetSSL.h#5 $ // $Id: //poco/1.3/NetSSL_OpenSSL/include/Poco/Net/NetSSL.h#6 $
// //
// Library: NetSSL_OpenSSL // Library: NetSSL_OpenSSL
// Package: SSLCore // Package: SSLCore
@@ -81,7 +81,7 @@ namespace Poco {
namespace Net { namespace Net {
void initializeSSL(); void NetSSL_API initializeSSL();
/// Initialize the NetSSL library, as well as the underlying OpenSSL /// Initialize the NetSSL library, as well as the underlying OpenSSL
/// libraries, by calling Poco::Crypto::OpenSSLInitializer::initialize(). /// libraries, by calling Poco::Crypto::OpenSSLInitializer::initialize().
/// ///
@@ -98,7 +98,7 @@ void initializeSSL();
/// must be performed. /// must be performed.
void uninitializeSSL(); void NetSSL_API uninitializeSSL();
/// Uninitializes the NetSSL library by calling /// Uninitializes the NetSSL library by calling
/// Poco::Crypto::OpenSSLInitializer::uninitialize() and /// Poco::Crypto::OpenSSLInitializer::uninitialize() and
/// shutting down the SSLManager. /// shutting down the SSLManager.

View File

@@ -1,7 +1,7 @@
// //
// SSLManager.cpp // SSLManager.cpp
// //
// $Id: //poco/1.3/NetSSL_OpenSSL/src/SSLManager.cpp#18 $ // $Id: //poco/1.3/NetSSL_OpenSSL/src/SSLManager.cpp#19 $
// //
// Library: NetSSL_OpenSSL // Library: NetSSL_OpenSSL
// Package: SSLCore // Package: SSLCore
@@ -81,14 +81,12 @@ const bool SSLManager::VAL_FIPS_MODE(false);
SSLManager::SSLManager() SSLManager::SSLManager()
{ {
Poco::Crypto::OpenSSLInitializer::initialize();
} }
SSLManager::~SSLManager() SSLManager::~SSLManager()
{ {
shutdown(); shutdown();
Poco::Crypto::OpenSSLInitializer::uninitialize();
} }

View File

@@ -1 +1 @@
1.3.7d1 1.4.0b5

View File

@@ -1,16 +1,14 @@
# #
# $Id: //poco/1.3/build/config/Darwin#9 $ # $Id: //poco/1.3/build/config/Darwin#11 $
# #
# Darwin # Darwin
# #
# Build settings for Mac OS X 10.5/10.6 (GCC 4.0.1) # Build settings for Mac OS X 10.6 (GCC 4.2)
# The build settings defined in this file are compatible # The build settings defined in this file are compatible
# with XCode 3.1 C++ projects. # with XCode 3.2.5 C++ projects.
# #
# NOTE: This build configuration will build 64-bit targets # NOTE: This build configuration will build 64-bit binaries.
# on Mac OS X 10.6, but place them into the Darwin/i386 # Use the Darwin32 build configuration to build 32-bit binaries.
# directories. Use the Darwin32 and Darwin64 build configurations
# for correct build locations.
# #
# #
@@ -18,16 +16,21 @@
# #
LINKMODE = SHARED LINKMODE = SHARED
ARCHFLAGS ?= -arch x86_64
POCO_TARGET_OSARCH ?= x86_64
POCO_HOST_OSARCH := $(POCO_TARGET_OSARCH)
# #
# Tools # Tools
# #
CC = gcc-4.0 CC = gcc-4.2
CXX = g++-4.0 CXX = g++-4.2
LINK = $(CXX) -bind_at_load LINK = $(CXX) -bind_at_load
LIB = libtool -static -o LIB = libtool -static -o
RANLIB = ranlib RANLIB = ranlib
SHLIB = $(CXX) -dynamiclib -o $@ SHLIB = $(CXX) -dynamiclib -o $@
DYLIB = $(CXX) -dynamic -bundle -read_only_relocs suppress -Wl,-bind_at_load -o $@ DYLIB = $(CXX) -dynamic -bundle -Wl,-bind_at_load -o $@
SHLIBLN = $(POCO_BASE)/build/script/shlibln SHLIBLN = $(POCO_BASE)/build/script/shlibln
STRIP = STRIP =
DEP = $(POCO_BASE)/build/script/makedepend.gcc DEP = $(POCO_BASE)/build/script/makedepend.gcc
@@ -57,10 +60,10 @@ SHAREDOPT_CC = -fPIC
SHAREDOPT_CXX = -fPIC SHAREDOPT_CXX = -fPIC
SHAREDOPT_LINK = SHAREDOPT_LINK =
DEBUGOPT_CC = -O0 -g -gdwarf-2 -D_DEBUG=$(DEBUGLEVEL) DEBUGOPT_CC = -O0 -g -gdwarf-2 -D_DEBUG=$(DEBUGLEVEL)
DEBUGOPT_CXX = -O0 -g -gdwarf-2 -D_DEBUG=$(DEBUGLEVEL) -D_GLIBCXX_DEBUG=1 -D_GLIBCXX_DEBUG_PEDANTIC=1 -mfix-and-continue -fvisibility-inlines-hidden DEBUGOPT_CXX = -O0 -g -gdwarf-2 -D_DEBUG=$(DEBUGLEVEL) -mfix-and-continue -fvisibility-inlines-hidden -fasm-blocks
DEBUGOPT_LINK = DEBUGOPT_LINK =
RELEASEOPT_CC = -DNDEBUG -Os RELEASEOPT_CC = -DNDEBUG -Os
RELEASEOPT_CXX = -DNDEBUG -O2 -fvisibility-inlines-hidden RELEASEOPT_CXX = -DNDEBUG -Os -fvisibility-inlines-hidden -fasm-blocks
RELEASEOPT_LINK = RELEASEOPT_LINK =
# #

View File

@@ -1,5 +1,5 @@
# #
# $Id: //poco/1.3/build/config/iPhone#3 $ # $Id: //poco/1.3/build/config/iPhone#4 $
# #
# iPhone # iPhone
# #
@@ -89,7 +89,7 @@ RELEASEOPT_LINK =
# #
# System Specific Flags # System Specific Flags
# #
SYSFLAGS = -DPOCO_HAVE_IPv6 -DPOCO_NO_FPENVIRONMENT -DPOCO_NO_STAT64 SYSFLAGS = -DPOCO_HAVE_IPv6 -DPOCO_NO_FPENVIRONMENT -DPOCO_NO_STAT64 -DPOCO_NO_SHAREDLIBS
# #
# System Specific Libraries # System Specific Libraries

View File

@@ -1,5 +1,5 @@
# #
# $Id: //poco/1.3/build/rules/global#13 $ # $Id: //poco/1.3/build/rules/global#15 $
# #
# global # global
# #
@@ -74,7 +74,7 @@ endif
ifeq ($(findstring MINGW,$(POCO_HOST_OSNAME)),MINGW) ifeq ($(findstring MINGW,$(POCO_HOST_OSNAME)),MINGW)
POCO_HOST_OSNAME = MinGW POCO_HOST_OSNAME = MinGW
endif endif
POCO_HOST_OSARCH = $(subst /,-,$(shell uname -m | tr ' ' _)) POCO_HOST_OSARCH ?= $(subst /,-,$(shell uname -m | tr ' ' _))
# #
# Begin Sun platforms # Begin Sun platforms
@@ -111,6 +111,11 @@ ifndef POCO_CONFIG
POCO_CONFIG = $(POCO_HOST_OSNAME) POCO_CONFIG = $(POCO_HOST_OSNAME)
endif endif
#
# Include System Specific Settings
#
include $(POCO_BASE)/build/config/$(POCO_CONFIG)
# #
# Check if a 64bit build is requested # Check if a 64bit build is requested
# #
@@ -124,11 +129,6 @@ else
OSARCH_POSTFIX = OSARCH_POSTFIX =
endif endif
#
# Include System Specific Settings
#
include $(POCO_BASE)/build/config/$(POCO_CONFIG)
# #
# Determine operating system # Determine operating system
# #

View File

@@ -218,6 +218,16 @@ AAAIntroduction
named PocoDataMySQL, PocoDataODBC and PocoDataSQLite. named PocoDataMySQL, PocoDataODBC and PocoDataSQLite.
- fixed SF# 3125498: Linux NetworkInterface::list() doesn't return IPv6 IPs - fixed SF# 3125498: Linux NetworkInterface::list() doesn't return IPv6 IPs
- fixed SF# 3125457: IPv6 IPAddress tests are wrong - fixed SF# 3125457: IPv6 IPAddress tests are wrong
- Added initialization functions for the NetSSL_OpenSSL and Crypto libraries.
These should be called instead of relying on automatic initialization,
implemented with static initializer objects, as this won't work with
statically linked executables (where the linker won't include the
static initializer object).
The functions are Poco::Crypto::initializeCrypto(), Poco::Crypto::uninitializeCrypto(),
Poco::Net::initializeSSL() and Poco::Net::uninitializeSSL().
Applications using Crypto and/or NetSSL should call these methods appropriately at
program startup and shutdown.
Note: In release 1.3.6, similar functions have been added to the Net library.
!!Incompatible Changes and Possible Transition Issues !!Incompatible Changes and Possible Transition Issues
@@ -239,6 +249,16 @@ AAAIntroduction
and release_static have been renamed to debug_static_md and and release_static have been renamed to debug_static_md and
release_static_md, respectively. Also, the suffixes of the static release_static_md, respectively. Also, the suffixes of the static
library names have changed to match usual conventions. library names have changed to match usual conventions.
- New static initialization functions for the Crypto and NetSSL_OpenSSL libraries
have been added. These should be called instead of relying on automatic initialization,
implemented with static initializer objects, as this won't work with
statically linked executables (where the linker won't include the
static initializer object).
The functions are Poco::Crypto::initializeCrypto(), Poco::Crypto::uninitializeCrypto(),
Poco::Net::initializeSSL() and Poco::Net::uninitializeSSL().
Applications using Crypto and/or NetSSL should call these methods appropriately at
program startup and shutdown.
Note: In release 1.3.6, similar functions have been added to the Net library.
!!!Release 1.3.6p2 !!!Release 1.3.6p2