What's new in C++ Sockets 2.3.9.9
Feb 11, 2014
- A bug that prevented HttpGetSocket from exiting normally if a zero byte resource was fetched was fixed.
- Some missing includes were included for newer compilers.
New in C++ Sockets 2.3.9.7 (Aug 17, 2011)
- Detach threads that never stopped has been fixed.
- Detaching from OnAccept method now works.
- Time to launch a detached thread has been reduced.
New in C++ Sockets 2.3.9.6 (Jul 26, 2011)
- A timing problem has been solved in detached sockets.
- More configure options have been added.
- Lost state flags are now retrieved in sockethandler.
- The AJP client socket has been updated.
- The JSON parser has been updated.
New in C++ Sockets 2.3.9.3 (Jul 15, 2010)
- Multithread support was added in sockethandler.
- Build problems in mingw/cygwin were fixed.
New in C++ Sockets 2.3.9.2 (Mar 18, 2010)
- More internal restructuring of SocketHandler.
- The Get() method has been removed. Set() has been split into three:
- ISocketHandler_Add(), ISocketHandler_Mod(), and ISocketHandler_Del().
- New methods defined in ISocketHandler interface to support different
- models of socket io: ISocketHandler_Select(), MaxCount().
- Removed Set() method from Socket class.
- Implemented SocketHandlerEp using epoll for linux only.
- reinterpret_cast added in ListenSocket for ipv6 address struct.
- HttpPostSocket member variable holding http headers (m_fields) is now
- protected (changed from private).
- Repaired Reconnect function in sockethandler.
New in C++ Sockets 2.3.9.1 (Feb 10, 2010)
- Major restructure of sockethandler internal code. Using thread- and memorysafe clib/c runtime functions.
New in C++ Sockets 2.3.7 (Oct 12, 2009)
- A hanging write call when using SSL was fixed.
- A crash when trying to increase an STL iterator beyond its limits was fixed.
- Compilation problems caused by missing #include statements or #include statements inside the library namespace were fixed.
New in C++ Sockets 2.3.6 (Aug 31, 2009)
- The openssl flags were modified to make things flow smoother.
- The license was modified to allow openssl.
- A unique socket identifier and a new valid check were added.
- Filesystem path abstraction methods were added.
- A Changelog file was added to the distribution.
- The INSTALL was renamed to README.
- The pkgconfig directory and *.pc definition file were added.
New in C++ Sockets 2.3.5 (May 21, 2009)
- Added method(s) in UdpSocket to set default interface to be used for multicast.
- Added flag for position independent code for linux-x86-32 architecture (see
- Makefile.Defines.linux-x86-32).
- Added missing includes (on some distributions/gcc versions).
- SetUri in HttpRequest no longer URLDecodes the entire url.
- Fix for static variables in SSLInitializer.
- Fix for new version of openssl (const SSLxx_method()).
- Fix for getnameinfo.
- Modified Utility::Uri parser class so it also splits the url in path /
- querystring parts.
New in C++ Sockets 2.3.4 (May 13, 2009)
- Fixed namespace and include problems.
- Changed to IMutex in one place.
- Added IFileUpload interface to HttpdForm but not using it yet.
New in C++ Sockets 2.3.3 (Dec 23, 2008)
- A deadlock in SSLInitializer that was introduced in 2.3.2 was fixed.
- A check was added for when select() returns -1, indicating that one of the file descriptors has gone bad.
- The check rebuilds the fd_set used by select().
- A bug was fixed in HttpGetSocket: one of the constructors had no support in HttpClientSocket.
- Bad #include directives in Utility were corrected.
New in C++ Sockets 2.3.2 (Nov 7, 2008)
- A thread-safe list of the SSL initializer, SSL contexts, and OpenSSL error text retrieval.
- An interface for the Mutex class adds the ability for others to implement the mutex functionality using other approaches.
- The FromUtf8 method has been moved from XmlNode to Utility.
New in C++ Sockets 2.3.1 (Oct 20, 2008)
- The Remove() method in SocketHandler was changed from private to protected. Utility::Stack was added, which returns a stack walk (currently in Linux only).
- The $(DESTDIR) variable was added in the Makefile for more flexible installation.
- The timeout value is now reset before OnTimeout() is called, making it possible to set a new timeout value in the OnTimeout() method.