SysMT Logo
Change log for Lemke Foundation Classes ( LFC )
Category Date Version Log
lfcbase 13.02.2014 1.5.9 Version released
lfcbase 12.02.2014 1.5.9 Fixed some compiler warnings for sample code
lfcbase 12.02.2014 1.5.9 Expanded Chain constructor for double values to specify format string
lfcbase 13.10.2013 1.5.8 Version released
lfcbase 13.10.2013 1.5.8 Small bug fix in
lfcbase 02.09.2013 1.5.7 Version released
lfcbase 02.09.2013 1.5.7 Change in Tokenizer class. Quote character argument was removed, since it does not really seems to make sense. It has lead to problems for cego in some cases. All cases can be handled with the escape character
lfcbase 01.09.2013 1.5.7 Fix in NetHandler class. In NetHandler::readMsg, the reallocation of the message buffer was not done correctly in some cases.
lfcbase 24.07.2013 1.5.6 Version released
lfcbase 21.07.2013 1.5.6 Introduced class Directory for all directory operations
lfcbase 01.06.2013 1.5.5 Adaptions for MinGW compilation. Removed copyright header in files with old FSF adress
lfcbase 31.05.2013 1.5.5 Made some adaptions for mingw build process. Did not really get it complete. Windows is an ugly planet...
lfcbase 19.05.2013 1.5.4 Version released
lfcbase 16.05.2013 1.5.3 Due to naming collisions with some linux libraries, a name change was made to lfcbase. Also shared library verion information was added
lfcbase 15.05.2013 1.5.2 Several fixes for the new build process ( e.g. union semun detection )
lfcbase 13.05.2013 1.5.1 Fix for regex usage in Matcher class. New build was confused with dedicated regex implementation ( just needed for WIN32 compiles )
lfcbase 13.05.2013 1.5.0 Version released
lfcbase 13.05.2013 1.5.0 Adaptions made for current autoconf support. The and files have been modified.
lfcbase 13.05.2013 1.5.0 Complete rework of the autoconf configuration files. Just and had to be defined Support for libtool integrationto build executables and libraries
lfcbase 06.02.2013 1.4.1 Version released
lfcbase 06.02.2013 1.4.1 Small adaptions for AVLTrees
lfcbase 04.02.2013 1.4.0 Version released
lfcbase 03.02.2013 1.4.0 Added AVLTree to the foundation classes. Deletion of nodes still not implemented
lfcbase 07.01.2013 1.3.7 removed install file from base directory. The file lead to build problems on FreeBSD
lfcbase 06.01.2013 1.3.6 Version released
lfcbase 06.01.2013 1.3.6 Fixes on CommandExecuter class. Also the constructor was expanded to set up an appropriate execution shell path
lfcbase 18.12.2012 1.3.5 Version released
lfcbase 18.12.2012 1.3.5 Small fix in GetLongOpt::parseOpt If the option value contains = characters, the tokenizer has handeled it wrong. This has been fixed in a way, that all subsequent tokens are concatenated to the value
lfcbase 18.11.2012 1.3.4 Version released
lfcbase 16.11.2012 1.3.4 In the method File::writeByte, the case was untreated that the write system call writes less than the number of bytes given. To handle this siuation, the method was expanded to repeat the write call untill all bytes have been written -------- if ( ( numbyte = ::write(_fd, buf, bufsize)) == -1 ) { Chain msg = Chain("Write system error for ") + _filename + Chain(" : ") + Chain(strerror(errno)); throw Exception(EXLOC, msg); } while ( numbyte < bufsize ) { unsigned long n; if ( ( n = ::write(_fd, (char*)((unsigned long)buf + numbyte), bufsize - numbyte)) == -1 ) { Chain msg = Chain("Write system error for ") + _filename + Chain(" : ") + Chain(strerror(errno)); throw Exception(EXLOC, msg); } numbyte += n; }
lfcbase 21.07.2012 1.3.3 Version released
lfcbase 16.07.2012 1.3.3 Some small adaptions made in Makefile and class Net for smooth MinGW32 compile
lfcbase 13.07.2012 1.3.2 Package released
lfcbase 07.07.2012 1.3.2 Added new constructor for class Tokenizer to tokenize character streams Tokenizer(char* buf, int bufLen, .... )
lfcbase 06.07.2012 1.3.2 Added method NetHandler::concatReset and NetHandler:concatAdd to build network message in a more efficient way
lfcbase 22.06.2012 1.3.1 Added static string buffer to chain class. This avoids dynamic memory allocation for small strings and should result in performance improvement
lfcbase 13.05.2012 1.3.0 Expansion of Tokenizer to support escape characters ( required for cego-2.13 )
lfcbase 30.04.2012 1.2.1 Fix in equal-operator for Tokenizer ( esc was missing )
lfcbase 15.01.2012 1.2.0 Added IP v6 support to the Net class
lfcbase 23.07.2011 1.1.41 Fix in BigInteger class for sub operator
lfcbase 09.07.2011 1.1.39 Corrections on BigInteger and BigDecimal class. The division operation was not implemnted correctly for cases quotient larger than dividend ( e.g. 1.23 / 3456.7 )
lfcbase 20.06.2011 1.1.38 Warning elemination for clang++ compiler Completion in BigInteger for case -x - -x
lfcbase 23.11.2010 1.1.36 Fix in Chain::isNUm method. Empty strings have been validated as numbers. Fix in BigInteger class. The comparison operators < and > did not return correct values for zero value comparisons.
lfcbase 21.11.2010 1.1.35 Small adaptions for clean Linux ( Ubuntu 10.10 ) compile
lfcbase 17.09.2010 1.1.34 Changed library install location to plain lib directory ( instead of lib/lfc )
lfcbase 13.09.2010 1.1.34 Added NetHandler return value in Net::connect ( new connect method with timeout parameter )
lfcbase 05.09.2010 1.1.33 Name change to lfc ( Lemke Foundation Classes ) to avoid naming conflicts
lfcbase 15.08.2010 1.1.32 Expanded File::readLine method to specify max line len Includes fixes for debian Linux Net::connect expansion to support timeout setting
lfcbase 29.06.2010 1.1.32 Added include of unistd.h to CommandExecuter. This was required to avoid compilation problems with Forte C compiler on Solaris/SPARC
lfcbase 25.06.2010 1.1.31 Added AESCrypt encryption class
lfcbase 24.06.2010 1.1.30 Increased SIZEBUFLEN constant value in NetHandler class from 6 to 10 Note: This has impact to the network protocol ( e.g. CegoJDBC driver should be adapted )
lfcbase 17.06.2010 1.1.29 Added method Exception::getBaseMsg
lfcbase 13.06.2010 1.1.37 In ThreadLock hanged strerror error message from errno ( not thread safe ) to the return code of the corresponding thread call. Changed the default value for the init method to doStat = false
lfcbase 12.06.2010 1.1.28 Shared library build patch for FreeBSD
lfcbase 21.02.2010 1.1.27 Added Mac OSX support for NanoTimer and shared libraries
lfcbase 10.07.2009 1.1.26 Added setsockopt call to Net::serve method to avoid error message "Address already in use"
lfcbase 21.06.2009 1.1.24 Shared library support added
lfcbase 14.06.2009 1.1.24 Small fix in GetLongOpt ( _isParsed flag set up in parseOpt method )
lfcbase 11.06.2009 1.1.24 Added File::getShortName method for abbreviated filename retrievel
lfcbase 28.05.2009 1.1.23 Fixe for command exit code in CommandExecuter class
lfcbase 24.05.2009 1.1.22 Added signal.h to SigHandler.h
lfcbase 21.05.2009 1.1.22 Changed in CommandExecuter from execl to execv
lfcbase 12.05.2009 1.1.21 Extended Logger class to update already logged modules ( logModule )
lfcbase 16.04.2009 1.1.20 Introducion of Base64Coder class
lfcbase 13.04.2009 1.1.19 Small extension of Logger class to support no logging Introducion of GetLongOpt class
lfcbase 03.04.2009 1.1.18 Fixed daylight saving setting in Datetime class Fixed DELAYFAC in Threadlock
lfcbase 25.02.2009 1.1.17 Changed struct ExcepStruc to class ExcepStruct for correct instance assignment ( operator = )
lfcbase 25.02.2009 1.1.15 Changed struct ExcepStruc to class ExcepStruct for correct instance assignment ( operator = )
lfcbase 12.02.2009 1.1.14 Changed to dynamic message allocation in NetHandler::readMsg and NetHandler::setMsg
lfcbase 06.12.2008 1.1.13 Added waitMsg method to NetHandler
lfcbase 12.10.2008 1.1.12 Changed CommandExecuter implementation ( and interface ) to support timeout
lfcbase 12.10.2008 1.1.11 Fixes for clean exit in ThreadLock::readLock and ThreadLock::writeLock
lfcbase 12.10.2008 1.1.10 Fixes for MinGW in ThreadLock
lfcbase 03.07.2008 1.1.9 Added method ThreadLock::numLockTry()
lfcbase 29.06.2008 1.1.8 Added method Chain::getHashPos() (
lfcbase 07.06.2008 1.1.7 Bug fix in BigInteger::add method ( occured by adding negative values ) (
lfcbase 19.05.2008 1.1.7 Include windows.h in Chain.h to avoid MinGW compilation errors
lfcbase 02.12.2007 1.1.7 Small correction in Timer class for ostream operator ( was sent to cout >
lfcbase 28.10.2007 1.1.6 Small extension in Chain::asBool for true/false token handling Extension in Tokenizer::nextToken for handling zero length input
lfcbase 20.09.2007 1.1.5 Changed NetHandler::SIZEINFOLEN to 6 to handle larger messages Please note : This is made in correlation to newer versions of Cego JDBC and CegoADM !!!
lfcbase 09.09.2007 1.1.4 Modifications and extensions of the Chain:posStr method for negation and occurence search
lfcbase 26.08.2007 1.1.3 Some small platform adaptions (FreeBSD) in configure script and for NanoTimer
lfcbase 23.08.2007 1.1.2 Introduction of class NanoTimer
lfcbase 13.08.2007 1.1.1 Added base for support of MinGW windows suite ( some features still missing ) For this, just small modifications have take place ( mainly in Thread, ThreadLock, Net and SigHandler ) Renaming of Signal to SigHandler class ( to avoid name conflicts occured with windows )
lfcbase 13.08.2007 1.1.0 Added base for support of MinGW windows suite ( some features still missing ) For this, just small modifications have take place ( mainly in Thread, ThreadLock, Net and SigHandler ) Renaming of Signal to SigHandler class ( to avoid name conflicts occured with windows )
lfcbase 29.07.2007 1.0.18 Added trunc method to File class
lfcbase 14.07.2007 1.0.17 Defintion of REENTRANT in some classes for thread safe valid strerror information Introduced base class Sleeper
lfcbase 14.07.2007 1.0.17 Defintion of REENTRANT in some classes for thread safe valid strerror information Introduced base class Sleeper
lfcbase 03.07.2007 1.0.16 Extended Timer base class for recording time usage summary
lfcbase 26.06.2007 1.0.16 Relocation of CegoNet and CegoNetHandler utility classes to Net and NetHandler base classes
lfcbase 23.06.2007 1.0.15 Added lockDelay parameter to ThreadLock::ThreadLock constructor for appropriate delay configuration This is needed to optimize CPU utilization
lfcbase 10.06.2007 1.0.14 Added Chain::setChar to set character value in string Since the crypt system library routine seems to differ on several unix systems ( at least Mac OS X, Linux , Solaris ), I changed the Crypt class to native crypt algorithm implementation as given from Eric Young ( Thanks Eric ! )
lfcbase 06.06.2007 1.0.14 Fixed Chain::asShort method format string ( %d to %hd)
lfcbase 17.04.2007 1.0.14 Extended posStr method with start position ( class Chain )
lfcbase 16.04.2007 1.0.14 Added posStr method to Chain class
lfcbase 11.04.2007 1.0.13 Public release
lfcbase 11.04.2007 1.0.13 Some adaption to the file
lfcbase 07.04.2007 1.0.13 Introduced CommandExecuter class
lfcbase 03.04.2007 1.0.13 Corrected return value in File::readLine() to the right number of bytes read ( i + 1 ) Added lock timeout information to ThreadLock::writeLock and ThradLock::readLock
lfcbase 24.03.2007 1.0.12 Changed Chain::toUpper and Chain toLower to const methods Added asShort and asChar conversion methods
lfcbase 20.03.2007 1.0.12 Fixed timeout calculation in ThreadLock class. Catched nanosleep exception.
lfcbase 16.03.2007 1.0.11 Public release
lfcbase 11.03.2007 1.0.11 Add Crypt class for key encryption
lfcbase 28.02.2007 1.0.10 Public version released
lfcbase 11.02.2007 1.0.10 Added operator == to ListT
lfcbase 10.02.2007 1.0.9 Public release
lfcbase 09.02.2007 1.0.9 Fixed BigDecimal constructor
lfcbase 08.02.2007 1.0.9 Catched in Chain::truncLeft and Chain::truncRight method zero truncated strings ( Chain("0000").truncLeft("0") )
lfcbase 03.02.2007 1.0.9 Treated empty patterns in Matcher::match method Some bug fixes on new ThreadLock class Added tzset() call to Datetime class for correct timezone setting
lfcbase 29.01.2007 1.0.9 Added class ThreadLock for better thread lock handling inclusing read/write locks and lock timeouts
lfcbase 26.01.2007 1.0.8 Fixed some bugs in Chain::replaceAll Public release
lfcbase 22.01.2007 1.0.8 Added Chain::replaceAll method for faster string replacement Added #define _XOPEN_SOURCE_EXTENDED in fro HP/UX portability
lfcbase 14.01.2007 1.0.7 Added Chain::isDec method Introduced class BigDecimal Public release
lfcbase 10.01.2007 1.0.7 Change in Exception class to provide error information without module location semctl call correction in Semaphore classs
lfcbase 23.12.2006 1.0.5 Some minor enhancements in File class as a merge result of the Tracx base classes
lfcbase 09.12.2006 1.0.4 Compiler cleanup for Forte C++
lfcbase 04.12.2006 1.0.4 Cleanup of sample directory Changed class Exception from ListT to StackT msg handling ( this enables using Exception for ListT::operator []
lfcbase 06.11.2006 1.0.4 Added BigDecimal class
lfcbase 06.11.2006 1.0.3 Added Datetime(int) constructor and asInt() method to class Datetime Added asBool to class Chain
lfcbase 06.11.2006 1.0.2 Changed SetT.First() and SetT.Next() methods to be const
lfcbase 23.10.2006 1.0.1 Introduced Bitmap class. Introduced version string variable vor release control.