Projekt

Allgemein

Profil

Herunterladen (84,6 KB) Statistiken
| Zweig: | Markierung: | Revision:

2004/12/04: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- implemented FSLock at least for POSIX the way "man 2 open" suggests.
This should now also work on NFS shares.


2004/12/03: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added simple file/folder locking mechanism
- started working on filters for GWEN_BUFFEREDIO. I used these kind of filters
in AqBackup, but they weren't as sophisticated as the current ones are ;-)
Fortunately I can now use the GWEN_RINGBUFFER functions...
------------------------------------------------------------------------
! remember to do SO_CURRENT++ and SO_AGE++ before next release !
------------------------------------------------------------------------


2004/11/26: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added DBIO plugin for old OpenHBCI1-style config files


2004/11/25: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- csv plugin:
- implemented checkFile function
- fixed a bug (now importing AqMoney2 CSV files works ;-)


2004/11/21: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- typemaker:
- added property "volatile": if set then the element is not written to or
read from a db
- fixed some bugs: DOMAIN name was not prepended to function definitions
in header files
- now _LIST2_dup() functions are created if LIST2 is enabled
- now adds apidocs for automatically generated functions
- list(2): First() and Last() use const arguments now


===========================================================================
MARK: released gwenhywfar-1.3 (2004/11/19)
===========================================================================


2004/11/19: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added functions:
- GWEN_Time_toString
- GWEN_Time_toUtcString
------------------------------------------------------------------------
! remember to do SO_CURRENT++ and SO_AGE++ before next release !
------------------------------------------------------------------------
- armed CSV plugins import function
- fixed a bug in CSV-importer: now title lines are skipped if "title=0" in
parameters
- added defines for printf-templates for GWEN_TYPEs
- fixed some 64bit-warnings
- current version also compiles (with few warnings) on
- alpha (Debian) [few warnings]
- amd64 (suse) [few warnings]
- SunOS (5.9, SUNW,Ultra-60) [without warning]
- Mac OSX (Darwin 6.8, PowerPC)
- FreeBSD 4.10 (i386)
- NetBSD 1.6.1 (i386)
- added support for NetBSD to automake script os.m4
- fixed some bugs in Makefiles:
- when ncurses is not available (was assuming if
ncurses is not there it must be Windoze. Well, that's not the case ;-)
- there must be no blank between "-D" and the macro to define via
"-DSOMETHING", otherwise some MacOSX bails out...


2004/11/11: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- fixed a build-problem (tools did not link against all needed libraries)


2004/11/02: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- src/os/directory_all.c: Improved path handling for WIN32


===========================================================================
MARK: released gwenhywfar-1.2.1 (2004/10/02)
===========================================================================


2004/09/30: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- db: GWEN_GetIntValue: When converting a char value to int we now use
"%i" instead of "%d". This will allow the code to read hex values as well


===========================================================================
MARK: released gwenhywfar-1.2 (2004/09/26)
===========================================================================


2004-09-25 Christian Stimming <stimming@tuhh.de>

* src/parser/text.c, src/os/posix/libloader.c: When changing the
locale, immediately copy the previous locale to a new
buffer. Otherwise often enough the returned string which was
static storage was no longer valid.


2004/09/25: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- db: ReadFromStream now uses a GWEN_BUFFER instead of a fixed char buffer.
This removes unnecessary limits (and allows libchipcard to work)


2004-09-24 Christian Stimming <stimming@tuhh.de>

* gwenpp/Makefile.am, tools/*/Makefile.am: Fix LIBADD flags so
that all libraries and tools are forced to link against the
currently compiled libgwen instead of the potentially installed
one. Necessary for e.g. building new rpms.


2004/09/24: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- xml: added flag GWEN_XML_FLAGS_IGNORE_DESCR. This flag makes the XML code
ignore <DESCR> tags when reading a file.
- args: fixed a silly bug (flags are binary, and flag help falsely contained
two other flags). Normally this change would mean to break conmpatibility.
However, since I'm the only one currently using GWEN_ARGS I will still
increment SO_AGE for the next release.


2004/09/23: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- GWEN_KeySpec_Dump now prints the status as well
- fixed a bug introduced yesterday
- msgengine: Now values can be given directly within an ELEM tag
(like in <ELEM name="xyz" type="bytes">DirectValue</ELEM>).
Before this change this only worked with unnamed elements.
- added status field to cryptkey


2004-09-22 Christian Stimming <stimming@tuhh.de>

* src/os/posix/libloader.c: Fix problem with evaluation of
dlerror() return value when translations are turned
on. Effectively, the error evaluation during loading of libraries
was totally broken since 2004-08-20, but is now fixed again.


2004/09/22: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- waitcallback.c: now reuses templates which are currently entered if
they match the requested one
- msgengine.c:
- now looks for groups not only at the XML root but at every
XML node along the current path
- now looks for groups under their "id" and (if not found) "name"
- crypt, keyspec: added inherit- and list2 macros to both objects
- added status field to keyspec
------------------------------------------------------------------------
! remember to do SO_CURRENT++ and SO_AGE++ before next release !
------------------------------------------------------------------------


===========================================================================
MARK: released gwenhywfar-1.1 (2004/09/15)
===========================================================================


2004/09/15: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- fixed a bug in XML code


2004/09/14: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added a function to GWEN_DBIO which allows to check whether a given file
is supported by a given plugin
- plugin descriptions now have a field for the filename
- added flags for XML file reading


===========================================================================
MARK: released gwenhywfar-1.0.1 (2004/09/10)
===========================================================================


2004-09-09 Christian Stimming <stimming@tuhh.de>

* src/base/logger.h: Enclose __attribute__deprecated into ifdefs
to hide it for non-gcc compilers.


2004/09/08: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- fixed a bug in typemaker
- fixed a bug in nettransportssl.c


2004-09-03 Christian Stimming <stimming@tuhh.de>

* tools/typemaker/code_c.c: Add include config.h in the
output. Make the auto-generation warning in the output more clear.


===========================================================================
MARK: released gwenhywfar-1.0.0 (2004/09/02)
===========================================================================


2004/09/01: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added a tool which allows me to create simple data containers more easily


2004-09-01 Christian Stimming <stimming@tuhh.de>

* src/gwenhywfar.c: Replace fprintf with DBG_DEBUG.


2004/08/31: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- waitcallback: added nesting level information


2004/08/30: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- valgrind session:
- the system is now asked for the home dir only the first
time a program issues such a request. It is then copied to an internal
buffer.
- fixed some other memory leaks
- replaced fprintf with DBG_INFO in posix/libloader.c


2004/08/29: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- adapted mklistdoc to new macro names
- Valgrind-Session:
- added GWEN_WaitCallback_free() to public headers


2004/08/27: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- BufferedIO: Added function GWEN_BufferedIO_WriteRawForced


2004-08-24 Christian Stimming <stimming@tuhh.de>

* gwenhywfar.iss.in: Add spec file for the Inno Setup Compiler
which will create a Windows Setup.exe program for the whole
package, see http://www.jrsoftware.org/isdl.php. Added "make
setup" for this target.


2004-08-23 Christian Stimming <stimming@tuhh.de>

* src/os/gwentime.h: Include time.h.
* src/base/debug.h: Adapted the non-variadic-macro function
declarations to the change from GWEN_LOGGER to const char*
logdomain.
* src/base/stringlist.h: Add GWEN_StringList_ForEach function.


2004/08/23: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added statistical functions to GWEN_BufferedIo
- changed GWEN_Time_To_time_t -> GWEN_Time_toTime_t
and GWEN_Time_To_tm -> GWEN_Time_toTm to adhere (that's how the other
converter functions are called throughout the library)


2004-08-21 Christian Stimming <stimming@tuhh.de>

* src/os/gwentime.h: Add conversion functions GWEN_Time_To_tm and
GWEN_Time_To_time_t.


2004/08/20: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- introduced logdomains: Now every library can have its own log domain,
making it much easier to debug a single library out of multiple libs
NOTE: This is an incompatible API change, therefore SO_VERSION++.
The first argument of all GWEN_Logger functions has been changed.
However, in most cases a NULL was given, so you should simply need to
recompile your sources with no (or at most few) changes.
- prepared gwen for gettext
- added simplified error codes to GWEN_Error, will get away from that
complicated GWEN_ERRORCODE stuff, since that isn't needed anyway.
- added GWEN_Logger_IsOpen()


2004-08-18 Christian Stimming <stimming@tuhh.de>

* src/base/misc.h, list2.h, inherit.h: Add extra macro for an
empty string because in the definition of GWEN_LIST_FUNCTION_DEFS,
the MSVC compiler does not accept an empty macro argument.


2004/08/17: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- very much simplified GWEN_TIME: It now mostly uses <time.h> functions
and a local version of mktime (to make the time from UTC time instead
of local time). This leaves only one function which the OS layer has to
provide.
- decreased debugging level in GWEN_DB_ReadFromStream


2004/08/16: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added GWEN_Time_fromUtcString()


2004-08-16 Christian Stimming <stimming@tuhh.de>

* src/os/windows/gwentime.c (GWEN_Time_new): Remove errornous
extra variable declaration.


2004/08/14: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added functions to get the time/date as UTC time
- added functions to set/get a GWEN_TIME from/to a GWEN_DB
- moved common code from various os-dependant gwentime.c files to
gwentime_all.c.


===========================================================================
MARK: released gwenhywfar-0.9.14 (2004/08/11)
===========================================================================


2004/08/10: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- removed "-lpanel -lncurses" from all_libraries
- fixed network code (netconnection, nettransportssl etc)
- base/plugindescr: added function
GWEN_PluginDescription_GetLongDescrByFormat() to retrieve HTML and other
formats of descriptions.


2004/08/09: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- did the same with the list templates...


2004-08-09 Christian Stimming <stimming@tuhh.de>

* src/base/list2.h, list.h: Modify the ForEach function
declaration so that is takes an additional void* argument that can
be used to pass data into the callback.

* src/base/misc.h, list2.h: Introduce GWEN_LIST_FUNCTION_LIB_DEFS
macros that accept a third argument to specify the
__declspec(dllimport) function declarations where necessary. These
are necessary for all libraries that use these macros in their
public headers.


2004/08/06: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- base/inherit: added a macro which allows unlinking a type from a base type


2004-08-06 Christian Stimming <stimming@tuhh.de>

* configure.ac: Fix header links for gwenui directory.

* src/crypt/ossl/cryptssl.c (GWEN_CryptKey_FromPasswordSSL): Fix
wrong buffer size variable.


2004/08/06: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- base/plugindescription: added functions to retrieve the XML node of
the plugin. This may contain more usefull information for the caller.
- separated the ncurses based UI stuff from the rest: There is now
libgwenui.so which contains the UI functionality. Therefore gwen itself
no longer needs to be linked against ncurses. This also makes gwen lean
again ;-)
-> SO_VERSION incremented, SO_AGE=0 (makes it effectively .so.16)
- install an XML file for the CSV plugin
- added TVL handling code to parser module
- crypt: added a function which allows creating key data from a password using
the SSL method. However, this is only to be used for old, existing code and
data. New code is required to use the other function
(GWEN_CryptKey_FromPassword()). This allows removing OpenSSL dependencies
from other projects (like AqHBCI's OpenHBCI medium plugin)
- base/inherit: added a macro which allows unlinking a type from a base type


2004/08/05: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- base/waitcallback: fixed a severe bug
- os/gwentime: changed some arguments to const
- base/idlist: fixed a severe bug
- io/bufferedio: fixed a bug (was never closing streams)


2004/08/02: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- added a tool which can automatically create header files appropriate for
doxygen (this is because normally a list defined by GWEN_LIST_FUNCTION_DEFS
is not documented): mklistdoc.
Gwen now uses this tool to include API doc for all list functions defined
this way.


2004-08-02 Christian Stimming <stimming@tuhh.de>

* src/base/list2.h: Remove GWENHYWFAR_API from function
definitions in the macro because the implementations will not be
imported from the DLL but instead be generated locally through the
other macro.

* src/base/Makefile.am: Remove -I$(top_srcdir)/src/os because its
process.h conflicts with <process.h> on gcc3.2 and mingw32.
* src/base/waitcallback.c: Fix potential problem with
uninitialized pointer.

* configure.ac: Fix error in symlinking headers -- xml.h was
missed.


2004/08/02: Martin Preuss<martin@libchipcard.de>
-------------------------------------------------
- very much improved generation of API doc. In combination with the
changes in my other projects the new target "install-srcdoc" now
creates combined API docs (e.g. API doc for AqBanking now links to
that of Gwenhywfar etc)


2004/08/01: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- base/waitcallback:
- fixed a bug (was unable to find callbacks by id).
- API change !!
Now all callbacks are kept in a flat list. You also now need to unregister
callbacks you once registered !
- GWEN_WaitCallback_Enter() is now a macro. This allows me track down the
origin of a Callback (i.e. from where is has been entered).
-> SO_VERSION incremented, SO_AGE=0 (makes it effectively .so.15)


2004/07/31: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- gwenhywfar.m4: fixed a buf (was always using libgwen_pp instead of
libgwenhywfar)
- base/stringlist: Added GWEN_StringList_SetSenseCase() which allows
changing the behaviour regarding cases. The default behaviour has now
changed to ignore cases.
- base/plugindescr: Added field "isActive", this can be set by applications


2004-07-30 Christian Stimming <stimming@tuhh.de>

* all header files: Removed GWENHYWFAR_API from all typedefs since
this will break compilation of Win32 applications as soon as those
use any gwen typedef as function return type.


2004/07/30: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- base: added module PluginDescription. This module loads all XML files
from a directory and tries to extract plugin informations from them.
In future all my plugins will be shipped with such an XML file to allow
scanning for available plugins without the need to actually load the
plugins (with all the rat's tail that implies).
- fixed a bug in POSIX libloader


2004/07/29: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/text: added GWEN_Text_CheckSimilarity() which checks how equal
two strings are (untested)


2004/07/28: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- base/misc.h: fixed a bug (concerning C++)
- base: added misc2.h
This file now contains wrappers around a GWEN_LIST which allow typesafe
use of a GWEN_LIST.
- base/misc2.h: added *List2_ForEach functions
- base/misc2.h: is now only a logical link to list2.h


2004/07/27: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/base64: fixed a bug in GWEN_Base64_Decode
- crypt/ossl/nettransportssl.c: fixed some bugs, added verbosity while
testing AqHBCI's PIN/TAN support which extensively uses it


2004/07/22: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ipc/netconnectionhttp: added defaultUrl. This is used when no URL is given
in a request. This very much simplifies using this class.


2004-07-20 Christian Stimming <stimming@tuhh.de>

* Makefile.am: Fix win32-cs target with wrong .lib filename.


2004/07/20: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- reverted latest changes to toplevel Makefile.am (contained ugly CR
characters. To Christian: Could you please reintroduce your changes ?
Sorry for being rude but I needed Gwen to work and since I did not find a
ChangeLog entry I was unable to figure out the difference at a first
glance...).
- started working on a C++ binding. This will only include function groups
which are a bit complicated to use from C++ (like GWEN_WaitCallback).


===========================================================================
MARK: released gwenhywfar-0.9.13 (2004/07/05)
===========================================================================


2004/07/04: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- base/args: GWEN_Args_Check is now able to return a new code which flags
that the user wanted help. This circumstance is detected by a new flag
(GWEN_ARGS_FLAGS_HELP).
- crypt/padd: removed usage of a deprecated function (so that the annoying
warning in OpenHBCI2/AqHBCI vanishes)
- os/gwentime:
- added a function that allows to generically parse date and time from a
string (guided by a template string)
- added GWEN_Time_dup()
- added GWEN_Time_fromSeconds()
- parser/text:
- added function GWEN_Text_DoubleToBuffer()
- GWEN_Text_StringToDouble()
- event_l.h was missing, but someone seems to have added in meanwhile.


===========================================================================
MARK: released gwenhywfar-0.9.12 (2004/07/03)
===========================================================================


2004/07/03: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- some more fixes, prepared release


2004/07/02: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- tools: added "dlgtest", a tool which allows testing a dialog.
- ui: fixed a bug in MessageBox


2004/07/01: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- added a new widget type: "HLine". This widget simply draws a horizontal
line or serves as a placeholder (to be used with the DialogLoader).
- finished GWEN_UILoader. It is now able to automatically arrange widgets,
to populate created widgets with user data and to retrieve the data
modified by the user. It is now usable with Libchipcard2 ;-)
See doc/testdialog.xml for an example. You can try this with the
following gwentest-command (from within the "test" folder):
"#> gwentest u20 ../doc/testdialog.xml"

2004/06/30: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- widget loader can now setup a complete dialog (including HTML help
texts etc).
- started working on a function whcih populates the dialog widgets with
values. The next step will be to retrieve and validate data entered by
the user.


2004/06/29: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- finished widget-loader, I will now have to think of a way to
automatically run a dialog and fill in form dar from a DB and to
store the user input into it. This will very much simplify creating
of dialogs.


2004/06/29: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- started working on a widget-loader (loads and creates widgets from an
XML file)
- parser:
- xml: introduced a file-load flag which allows selecting whether some
unclosed HTML tags are accepted (like <br>) or not.
The default still is not to.
- db: introduced new value type PTR (allows portable storage of
void* pointers)


2004/06/28: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- configure.ac: fixed a bug (the headers from src/parser where not
symlinked)
- parser/xml:
- CONSTified some parameters of some functions
- added functions which simplify access to tags as variables


2004/06/27: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- started working on FileDialog
- more work/fixes in TableWidget and TextWidget
- even more work/fixes
- fixed more bugs in EditBox, more work on FileDialog (can now at least
be used to select a file. Otherwise not very usefull for now)
- TableWidget now sends an event when activating a table field
- gwenhywfar.m4: fixed a bug
- parser/xml.c: fixed a newly introduced bug


2004/06/26: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- introduced MODAL flag for widgets (focus will never go beyond a MODAL
widget)
- completed MessageBox, which is now able to calculate the necessary width
and height by itself
- added EditBox
- added CheckBox
- fixed some bugs
- added a help string which can be assigned to a widget. Whenever F1 is
pressed the current widget will popup a message box and show that help
text in it. If the widget which currently possesses the focus does not
have a help string the parents will be consulted.
- added a subscription model: Widgets can now subscribe to any event
received by any other widget. This is similiar to the signal/slot
mechanism used in *graphical* user interfaces
- added DropDownBox (basically an edit widget with a list of choices to
drop down)
- TextWidget: Now sends a "Chosen" event when ENTER is pressed in line mode.
This is interpreted e.g. by the DropDownBox.
- UI headers are now expected in "${prefix}/include/gwenhywfar/ui"
- focus can now be changed to the nex *AND* to the previously active
widget ;-)
- parser/xml: now accepts simple tags (like "<br>" or "<hr>") without
ending tags (e.g. there is no more need for "<br/>").
This allows to use simple HTML for texts in TextWidget and derived classes.
- configure.ac, gwenhywfar-config.in.in:
- added checks and switches to determine whether UI or crypto support is
compiled into Gwenhywfar
- UI headers are installed to ${prefix}/include/gwenhywfar/ui
- base/misc.h:
- added functions which allow traversing a list backwards.
However, these functions aren't very fast since the lists are only
simple-linked. But using these new functions allows to silently use
optimized versions later


2004/06/25: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- nearly completed MessageBox
- reworked XML->text parsing of TextWidget
- close events do now work
- provide more control over event handling for applications


2004-06-24 Christian Stimming <stimming@tuhh.de>

* configure.ac, src/Makefile.am: Make the compilation of the UI
module conditional on whether ncurses is available. If it is not
there, then the whole GWEN_UI module will neither be compiled nor
installed.


2004/06/24: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui:
- added Close-events
- added ScrollWidget (which basically is a widget with optional vertical
and horizontal scroll bars)
- started working on GWEN_MessageBox


2004/06/23: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui: added Button and a command event emitted by buttons (or menus later)
This will allow me to create a Message class and a TextBrowser module
tomorrow (hopefully).


2004/06/22: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ui: added VSlider, fixed many bugs in UI code etc. It is still slow
but now it works ;-) I will have to optimize later...


2004/06/20: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- started working on a ncurses GUI which will be used by Libchipcard's setup
tools and maybe by AqMoney2...


2004/06/17: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- crypt/nettransportssl, net/netransportsock: be more verbous about the reason
why a connection could not be established
- crypt/nettransportssl: added function GWEN_NetTransportSSL_GenerateDhFile
So now there finally is no need to access OpenSSL from outside Gwen just
to make parts of Gwen (namely the SSL stuff) work.


2004/06/16: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/db: added function GWEN_DB_InsertGroup
- m4/os.m4: Define OS_POSIX if running on a POSIX system
- os/posix/libloader:
improved library loading. Now the following order is used when loading
a library:
1) the name given
2) the name given plus ".so"
3) the name given with prefix "lib"
4) the name given with prefix "lib" and ".so"
This now allows for files without ".so" to be loaded.

2004/06/11: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ipc/ipc.c: added GWEN_IPCManager_Attach() and usage counter


2004/06/08: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/db: increased size of the word buffer used (I'm still looking
for a better solution. Maybe I will write a DBIO which reads/writes DB as
XML files...)


2004-06-07 Christian Stimming <stimming@tuhh.de>

* src/crypt/none/cryptnone.c: Fix function prototype SSL_new.


2004/06/06: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ipc/ipc: fixed a bug (did not take node id into account when assigning a
response to a request)


===========================================================================
MARK: released gwenhywfar-0.9.11 (2004/06/06)
===========================================================================


2004/06/04: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- base/idlist.c: fixed another stupid bug


2004/06/03: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- os/gwentime: added function to retrieve the time in milliseconds
- base/idlist: fixed two severe bugs
- crypt/ossl/nettransportssl: added functions to retrieve the peer certificate
- parser/text: improved BCD reading


2004/06/02: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/msgengine: added getter/setter for delimiters
- crypt/ossl/cryptssl_rsa: fixed a severe bug which caused signing to fail


2004/05/30: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/text: GWEN_Text_FromHexBuffer now ignores blanks
- parser/msgengine: added property "storedAs" which indicates the storage
type when reading bin-values from within the data of a tag


2004/05/29: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- net/*: major speedup of IPC routines ;-)


2004/05/28: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/msgengine.c:
- added ELEM property "size" which indicates that an element should have a
fixed size (as needed for Libchipcard)
- added ELEM property "filler" which is used to fill an fixed-size element
with a given byte
- parser/text:
- added functions for BCD reading and writing
- added function GWEN_Text_CondenseBuffer which removes unnecessary blanks


===========================================================================
MARK: released gwenhywfar-0.9.10 (2004/05/27)
===========================================================================


2004/05/26: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- fixed a bug in MsgEngine (strchr doens't like if the character
searched for is \0, which is a valid character when reading binary
data such as bytes, words, dwords etc which are used by
Libchipcard2)
- fixed a bug in NetTransportSSL
- Gwen now compiles on Solaris (tested with SunOS 5.9)
- fixed some M4 macros (e.g. "find" on Solaris is not as powerfull as it is
on Linux)


2004/05/25: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/msgengine.c: fixed a bug which occurred if "maxnum" was
zero in XML files


2004/05/24: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/text: added function GWEN_Text_FromHexBuffer


2004/05/21: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- base/logger.c: fixed a severe bug (trapped into endless loop when
log level was "debug")


2004/05/20: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/xml: added a usage counter and some functions around it to be
used by an application (not used internally, but they allow marking
and detection of unused nodes)


2004/05/18: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/msgengine: switched inherit code to new gwenhywfar/inherit
type
- parser/text: added function GWEN_Text_ToHexBuffer


2004/05/17: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ipc/ipc: more fixes
- removed some debug messages


2004/05/16: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- base/logger.c: fixed a buffer overflow bug
- ipc/ipc.c: more fixes and minor modifications
- parser/text: added functions to log a string
- base/logger: improved logging, fixed some bugs


2004/05/14: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ipc/ipc.{c,h}: fixed some bugs


2004/05/13: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ipc/ipc.{c,h}:
- added functions GWEN_IPCManager_SetUpFn and
GWEN_IPCManager_SetDownFn to allow keeping track of connection states
- added function GWEN_IPCManager_Disconnect to actively disconnect a given
client/server


2004/05/10: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- ipc/*.h: prepared for use by C++ code
- ipc/ipc: minor additions


2004/05/09: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- completed IPC stuff (still untested), added documentation to ipc/ipc.h


2004/05/08: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added module ipc/ipc. This is a very simple IPC model based on
GWEN_DBs send over HTTP (which in turn may be sent over any supported
transport layer, such as TCP/UDP sockets and SSL).
This allows for maximum flexibility while maintaining a very simple API.
Even with this simple API you can implement any security depth you like:
- unencrypted using HTTP over UDP sockets
- unencrypted using HTTP via TCP sockets
- encrypted using HTTP via SSL
- encrypted using HTTP via SSL while checking certificates
- SSL server code works !!! ;-)


2004/05/07: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- parser/db: added function GWEN_DB_VariableName (I couldn't believe that
this function did not exist ;-)
- started working on IPC stuff again, this time based on HTTPS, therefore
added ipc/netconnectionhttp (implements the HTTP protocol, together with
the transport layer NetTransportSSL we have HTTPS ;-)
- io/bio_buffer: added constructor which does NOT take over ownership


2004-05-07 Christian Stimming <stimming@tuhh.de>

* src/Makefile.am: For windows DLLs, create the def and lib files
with the filename including the SO_EFFECTIVE number as well,
because otherwise linking against it doesn't work.


2004/05/06: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- more strict usage of *_p.h files. These files should nly be included by
their matching code file (and by no other file).
Therefore: created some *_l.h files for prototypes of functions private
to the library.
- crypt/ossl/nettransportssl.{c,h}: improved this module a lot. It can now at
least be used for client connections.
- ssl module is now able to save certificates if demanded by the user
- added parser/base64. This is not an elegant implementation but it
works ;-) (Currently I don't have the time for a more elaborated version)
- tried some Darwin fixes (still minimun success, that system is quite
different in some aspects. However, the configure script runs).


2004-05-05 Christian Stimming <stimming@tuhh.de>

* src/*: Remove trailing semicolons from macro calls where
"-pedantic" complains about them.
* src/base/misc.h: Remove trailing semicolons from the function
definitions in the GWEN_LIST_FUNCTIONS macro since ISO C89 does
not allow these (-pedantic i.e. --enable-warnings=all will give
warnings about that). Admittantly all modern compilers have no
problems with them and ISO C99 allows these, but we never know
whether our source code might get compiled with something
different. In other words, since it doesn't hurt us to comply with
the older standard, we try to do it here.

* src/types.h.in: Add __extension__ specifier to "long long"
definition in order to avoid warnings when compiling with
gcc and "-pedantic".


2004/05/05: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- fixed some bugs in args.c
- modified the prototype of GWEN_WaitCallback_Log
- fixed GWEN_TYPE_UINT64 for MSVC
- removed some trailing semicolons from macros in inherit.h and misc.h
- renamed DLL to gwenhywfar32_EFFECTIVE_SO_VERSION to imitate the very
useful SO features of the GNU linker on windows
- started working on a NetTransport module for SSL connections
- removed sslconnection, it is now replaced by nettransportssl.
This now fits into the network framework. As soon as this is better
tested I will be able to release Gwenhywfar 1.0.


2004/05/04: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added type GWEN_TYPE_UINT64
- rewrote GWEN_WAITCALLBACK stuff (will have to modify some dependant
projects in order to use this new infrastructure)


2004/05/02: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added new functions to GWEN_Time:
- GWEN_Time_GetBrokenDownTime
- GWEN_Time_GetBrokenDownDate
- fixed a bug in base/buffer (did not abort when mode
GWEN_BUFFER_MODE_ABORT_ON_MEMFULL was given)
- fixed another bug in base/buffer (could not set a position outside
buffer boundaries even if in USE_BIO mode)
- fixed yet another bug in base/buffer (did not crop if pos was 0)


2004/05/01: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- io/bufferedio:
- added function GWEN_BufferedIO_ReadRawForced
- base/buffer:
- added GWEN_Buffer_SetSourceBIO and a mechanism, which reads missing
data from a GWEN_BUFFEREDIO (if the buffer is in mode
GWEN_BUFFER_MODE_ABORT_USE_BIO).


2004-04-28 Christian Stimming <stimming@tuhh.de>

* gwenhywfar.m4: For automake-1.8, add extra quotation in the
macro name.


2004-04-26 Christian Stimming <stimming@tuhh.de>

* m4/acx_compile_warn.m4: For gcc3.4, add the new warning switch
-Wdeclaration-after-statement in order to preserve source code
compatibility with gcc2.95 and other compilers.


2004/04/25: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- renamed acx_windoze_paths.m4 to windoze.m4 thus overwriting the latter
file, since it basically contains the stuff which is in windoze.m4 plus
some minor additions.
This should take care of some autotool complaints...


2004/04/24: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added base module "args" which transforms command line arguments to
a GWEN_DB. It performs some checks on the arguments given and makes it
easier to create help screens.
- debugged module "args" (it now works as intended)
- GWEN_Args_Usage() is now able to produce an ASCII help screen using
GWEN_ARGS
- changed GWEN_ARGS so that it can now be used as const. All functions
now accept "const GWEN_ARGS*" pointers.


2004-04-16 Christian Stimming <stimming@tuhh.de>

* src/base/debug.c: Fix DBG_* functions that are the replacements
for their variadic-macros counterpart. Unfortunately this error
caused every gwen version built with --disable-variadic-macros to
crash -- sorry. But it is fixed now.


2004-04-08 Christian Stimming <stimming@tuhh.de>

* m4/ssl.m4: For openssl on windows, check more than one directory
for the location of the DLLs.


===========================================================================
MARK: released gwenhywfar-0.9.9 (2004/04/08)
===========================================================================


2004/04/08: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- io/bufferedio:
- added flag functions to set/get flags which control the behaviour of a
BufferedIO
- split into multiple object files for the different supported BufferedIOs
- now the GWEN_BUFFEREDIO type is opaque, its strcuture is no longer
exported to the supported BufferedIOs
- now uses the inherit module
The changes above now allow for new BufferedIOs to be created outside Gwen.


2004/04/06: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- os/process:
- added functions to set/retrieve flags to modify the behaviour of the
GWEN_PROCESS code.
The most important (and for now the only) flags are:
- GWEN_PROCESS_FLAGS_REDIR_STDIN
- GWEN_PROCESS_FLAGS_REDIR_STDOUT
- GWEN_PROCESS_FLAGS_REDIR_STDERR
These flags make Gwen redirect the corresponding std stream so that the
calling process may intercept the input/output of the started process.
- added functions which return a GWEN_BUFFEREDIO which can be used to
read/write from/to redirected child streams.


2004/04/05: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added base/idlist: This is basically a list for GWEN_TYPE_UINT32 objects,
but since it uses tables instead of those list objects normally used
throughout Gwen it is less memory consuming. I used it in the current
development version of Libchipcard and found it usefull in another project
so I decided to move it to Gwen.
- parser/db:
- added functions GWEN_DB_FindFirstGroup and GWEN_DB_FindFirstGroup which
simplify searching for groups by name.
- base/idlist:
- added function GWEN_IdList_Clean() to clean a list
- added function GWEN_IdList_Sort() to sort an id list in ascending order
- base/inherit.h:
- added macro GWEN_INHERIT_ISOFTYPE which checks whether a given pointer
refers to an object of a given type


2004/04/04: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- bufferedio: GWEN_BufferedIO_File__Close() no longer closes one of the
console files (like stdin, stdout, stderr).
- base/buffer:
- when creating a new buffer with a NULL pointer the first character of the
allocated memory is preset with a 0
- parser/text:
- added new functions GWEN_Text_EscapeToBufferTolerant and
GWEN_Text_UnescapeToBufferTolerant which are more tolerant when escaping/
unescaping strings
- parser/db:
- added parenthesis around composed flag definitions
- added flags GWEN_DB_FLAGS_ESCAPE_CHARVALUES and
GWEN_DB_FLAGS_UNESCAPE_CHARVALUES. These are now used to escape/unescape
char values when reading/writing a DB. These flags are now on by default,
so newly compiled programs will automatically use these flags while
not recompiled programs still use the old default flags. This allows
easy migration from the old behaviour to the new one.
This should now allow AqMoney to handled any institute message received
from a bank (whatever control character they might include).
- parser/xml:
- added functions for writing an XML tree to a bufferedio
- added new "tools" folder which contains as the first tool "xmlmerge".
This tool allows merging multiple XML files into one. This will be used
by my new project AqHBCI to create job definitions in single files per
supported job. All job-XML files are then merged into one working file
before installation.


2004/04/03: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- moved plugins to toplevel (grr, didn't think about the fact that the
plugins need libgwenhywfar which hasn't been compiled when compiling
the plugins...)
Please remember to CVS update using
"cvs up -d"


2004/04/02: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- plugin/dbio/csv: fixed factory function
- base/buffer: changed hardlimit from 64kb to 2mb
- base/waitcallback:
- callback function is now able to monitor the progress
of an action (typedef has changed !)
- added GWEN_WaitCallbackProgress() which should be called instead of
GWEN_WaitCallback() (the latter function internally now calls
GWEN_WaitCallbackProgress() anyway).
- base/buffer: increased hard limit even more (now 8 mb to be safe)


2004-04-01 Christian Stimming <stimming@tuhh.de>

* src/parser/db.c: Fix errornous function argument to
GWEN_DBIO_GetPlugin.


2004/04/01: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added plugin loading functions to GWEN_DBIO
- added functions GWEN_DB_WriteFileAs and GWEN_DB_ReadFileAs which allow
using GWEN_DBIO plugins fro importing/exporting any format of files
supported by plugins.
- added plugin "csv" which replaces the now deprecated CSV parser module
- changed install location of plugins from "share" to "lib"


2004/03/31: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added import/export framework for GWEN_DBs. This makes parser plugins
based on GWEN_DBs much easier.


2004/03/25: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- reintroduced my old win32 target, since the one of Christian doesn't work
the way I need it: It needs to build all objects/libraries again, and that
simply takes too much time. Another problem is that my configure options
are not used when creating the windows binaries (i.e. that makes using the
same target in the project simthetic useless for my local system).
So I now use my old approach which is simple, ugly but it works ;-)
Christian may still use his target (which is now called "win32-cs") ;-)
- updated README.W32 to reflect the changes below


2004/03/25: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- changed the way a DLL is created:
Now the libXXX.a library is taken (which - thanks to libtool - already
contains all object files needed for building the DLL) and all the
object files in the ".libs" folder of the toplevel library (because
for any strange reasons they are not included with the toplevel library).
This removes the need of enlisting all object files in the toplevel
library Makefile.am (and because compiling under Windoze takes a veeery
veeeery long time this is quite a helper ;-)
Oh, just a quick note: At least my version of automake is quite buggy when
it comes to "DIST_SUBDIRS" variables inside a toplevel source folder.
I tried to put the test folder into such a variable but then "make dist"
only includes about the half of the project into the resulting tarball :-/
Hmm, quite strange... in lower leveled folders (like src/os) this works...

So for now the test program is even compiled under Windoze (sorry Christian,
but I have to make some tests right now with Windoze).
It can of course be disabled again prior to the next release.

- added some search paths for GWEN and SSL (just for my own conveniance)
- fixed a WIN32 related problem: The reason why sometimes linking did not work
(e.g. if specifying "-L/c/windows/system" like someone did in OpenSSL.m4 ;-)
was, that in that case the windows dlls (like KERNEL32.DLL etc) are used
when linking. However, we need to use the mingw-wrapper version instead,
and so we have to prepend their path. After that you may specify whatever
other paths you like, but now we can be sure that the system libraries are
searched for in the mingw folder first.
- fixed a bug in gwentest.c
- GWEN-DLL is now again installed to the windows folder instead of the
windows system folder. I think it is more appropriate that way, since the
windows system folder is very special, wheras the normal windows folder can
be used by any user to store libraries etc.

NOTE: When linking programs using MinGW please make sure to always insert
"-L/mingw/lib" before all other "-L" specifications !
Otherwise linking is quite a horror, even for quite experienced users.


2004-03-24 Christian Stimming <stimming@tuhh.de>

* test/gwentest.c: Finalize test code for Microsoft Visual Studio
C compiler. Necessary steps are described in README.MSVC (really
not difficult).

2004/03/24: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added new module GWEN_TIME (does not contain much for now, but I need a
higher granularity then time() offers)

VERSIONINFO: For next release: SO_VERSION++, SO_AGE++


2004-03-24 Christian Stimming <stimming@tuhh.de>

* configure.ac, src/base/debug.h, src/base/debug.c: Variadic
macros are not supported by Microsoft Visual Studio
compiler. Therefore the macro NO_VARIADIC_MACROS disables them,
and also the configure switch --enable-variadic-macros=no (default
is yes) lets gwen be compiled with replacement functions instead
of these macros. In other words the source code should still work
totally unchanged.

2004-03-22 Christian Stimming <stimming@tuhh.de>

* src/gwenhywfarapi.h: Add macro declarations that are unavailable
on mingw systems.

* src/os/windows/inetsocket.c: Add missing function argument.

* src/net/netmsg.c: Add include config.h.


===========================================================================
MARK: released gwenhywfar-0.9.8 (2004/03/22)
===========================================================================


2004/03/19: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- waitcallback:
- added function GWEN_WaitCallback_LastEntered which returns the
time the callback context was last entered. This can be used by the
callback function to decide whether a window is to be opened (for
short operations it might be smoother to wait for one or two seconds
before opening a window. This way a window would only be opened if
the operation takes longer)
- msgengine:
- is now ignoring <DESCR> tags when encoding/decoding a message. This
allows for descriptions inside the segment/group/job definitions
- db:
- only insert a newline after writing groups if there is another node
following on the same level or if the last node before a group was
a variable. This improves readability.
- cryptkey:
- removed an "assert": If the key could not be created simply return
"0" (that function did exactly that a few lines later ;-)
- inherit:
- fixed a bug in MakeId code (result wasn't too unique)
- text:
- added functions GWEN_Text_EscapeToBuffer and GWEN_Text_UnescapeToBuffer
which use GWEN_BUFFERs to store the result instead of char arrays (like
the equivalent non-buffer-functions GWEN_Text_Escape and
GWEN_Text_Unescape do)
- path:
- added flag "GWEN_PATH_FLAGS_CHECKROOT" which allows special treatment
of root entries. For now this only affects the function
GWEN_Directory_GetPath. This allows especially for this function to
work with absolute paths.


2004/03/18: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- xml:
- documented some still undocumented functions
- netconnection:
- fixed some minor bugs


2004/03/17: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- netconnection, nettransport:
- introduced idle time counter
- introduced backlog (see "man 2 listen")
- ipc:
- removed this module since it is replaced by the net module
- Make system:
- fixed the warning about LDD_LDFLAGS not being used
- changed SO version and library version


2004/03/12: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- xml:
- moved usage of static buffers to GWEN_BUFFERs. This removes any limit
on the size of an XML data element since a GWEN_BUFFER allocates the
memory space needed dynamically (unless told otherwise).
This should improve the probability of correctly reading a valid XML
document. Even the size of a comment is now unlimited.
Well, not exactly unlimited, the hard limit of a GWEN_BUFFER is per
default about 64 KB.
Even with the knowledge that Bill Gates once crashed with the
statement "640 kb oughta be enough" I boldly guess this will suffice ;-)
However, if it doesn't we can simply adjust the hard limit of the
GWEN_BUFFERs used inside the XML code (those limits are not static, they
are assigned on a per object basis).
About the 640 KB note: That was the base of the 640 KB barrier the older
ones amongst us had to deal with some years ago ;-)
Who wouldn't remember the times when we had to sqeeze out every single
byte below 640 KB by loading drivers into higher memory space (himem) ;-)
just to play Doom with proper graphics and sound ;-)
Hmm, on the other hand I also worked well with 64 KB CP/M computers back
in the 90ies ;-)
Ok, enough history for today ;-)
- removed dead code
- buffer:
- added mode flag ABORT_ON_MEMFULL
This takes into account the fact that most AppendByte/AppendString etc
functions of the GWEN_Buffer module are called without checking for the
result.
Well, that's ok, because normally a GWEN_BUFFER is in dynamic mode (as
described above), and in that mode such a call SHOULD never fail.
However, if it does anyway there might be an error later in the program's
run which would not necessarily point to the real cause: The full buffer.
An error due to a full buffer clearly is a design/development problem
which is now handled as such: abort() is called which leaves the user
with a core dump for detailed debugging.
This flag is turned on by default, but if you want the old behaviour you
can still turn if off on a per object basis.
- inherit:
- added this module which facilitates inheritance (as known in C++).
The implementation of inheritance models isn't as elegant as it is in
C++ but it is type safe and it works just fine.
One base class can be inherited by one or more other "classes".
Each inheriting class has it's own data associated with the base object.
You only need to use some macros in the inherited class and only two
macros in inheriting classes for a complete implementation of inheritance.

As I stated before (and I'm quite sure Christian will assist with this
statement): Macros are very, very bad. Seriously.
But they are the only alternative as long as templates are not implemented
in C. And BTW: If the macros are properly designed and well tested they
cause more problems to their developers since developing a macro is very,
very difficulty.
However, once they work they are quite usefull.

Please refer to the modules net/netconnection and net/nettransport
for an example of LIST and INHERIT macro usage.
- net/*
- added multiple files which implement a networking framework which can be
used with different network protocols and transport layer types.
This will replace the old IPC stuff which wasn't too well designed ;-)
The new modules have prooven to be very usefull while developing a
C implementation of the HBCI protocol (and HTTP for that matter).
These implementations will soon be released as a new GWEN module (like
the old GWEN-IPC module which is now discontinued).


2004/03/11: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- db:
- added function GWEN_DB_ValueExists which checks for the existence of a
value of a variable by index
- added function GWEN_DB_GetValueTypeByPath which does the same as
GWEN_DB_GetValueType does but this function takes the value's index
number into account
- msgengine:
- now uses the functions mentioned above. Now if multiple elements are
allowed the names of the elements are not transformed anymore.
Example: Before this change when using multiple elements you had to give
the names as (e.g. for the supported HBCI versions)
version=201
version1=210
version2=220
etc. Now you simply give them as
version=201, 210, 220


2004/03/09: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- msgengine:
- added attach-mechanism (this module now uses a usage counter which is
honoured upon GWEN_MsgEngine_free().


2004/03/08: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- misc: added macros to typesafely work with lists (since there is no
"list<xyz>" template stuff in C I decided to create these macros).
This makes it much easier to work with lists in C...
I know, macros are very bad, but the code in GWEN_List is not typesafe,
and that could lead to problems which are difficult to detect.


2004/03/07: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- msgengine: added function "freeData", now inheriting a message engine
works as inheriting other "classes" does


2004-03-06 Christian Stimming <stimming@tuhh.de>

* src/os/posix/process.c: Try to fix SIGCHLD problem some
more. Still doesn't work with gnucash, though.


2004-03-05 Christian Stimming <stimming@tuhh.de>

* src/os/posix/process.c: Remember old SIGCHLD handler and call it
if there was one. This is vital for gnucash, where guile installs
its own SIGCHLD handler.


2004/03/05: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- configure.ac/gwenhywfar.m4:
- added "gwenhywfar_plugins"
- added "gwenhywfar_headers"
- path:
- added flag GWEN_PATH_FLAGS_ESCAPE
- added flag GWEN_PATH_FLAGS_UNESCAPE
- added function GWEN_Path_Convert


2004/03/03: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- keyspec: added functions to read/write a keyspec from/to a DB


2004-02-28 Ronny Buchmann <ronny-vlug@vlugnet.org>

* src/parser/db.c: don't stop reading values on space

* src/parser/msgengine.c: fix offset for anonymizing unknown segments

2004-02-24 Christian Stimming <stimming@tuhh.de>

* src/os/windows/libloader.c: Improve error message output.

* src/os/windows/libloader.c: Append paths by backslash -- this is
windows.


2004/02/20: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- Logger:
- added log level "verbous"
- added functions for conversion from some enum types to ASCII and back


2004/02/15: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- InetAddress: added a dup function
- InetSocket: added function GWEN_SocketSet_GetSocketCount and a counter
for the number of sockets in a socket set
- RingBuffer: added functions for direct buffer manipulation in order to
avoid unnecessary copying
- BufferedIO: fixed a bug


===========================================================================
MARK: released gwenhywfar-0.9.7 (2004/02/18)
===========================================================================

2004-02-17 Christian Stimming <stimming@tuhh.de>

* src/parser/xml_p.h (GWEN_XML_MAX_VARNAMELEN): Increased static
buffer sizes a *lot* since they already exceeded for perfectly
valid XML documents.

===========================================================================
MARK: released gwenhywfar-0.9.6 (2004/02/15)
===========================================================================

2004-02-13 Christian Stimming <stimming@tuhh.de>

* src/parser/xml.h: Improved documentation: Clarified the
comparison to XML notation/naming scheme, which is different from
Gwen's notation.

2004-02-04 Christian Stimming <stimming@tuhh.de>

* src/os/windows/libloader.c, src/os/posix/libloader.c: Fix
errornous query for .so/.dll suffix.


2004/02/02: Ronny Buchmann <ronny-hbci@vlugnet.org>
---------------------------------------------------
- Makefile.cvs: make /usr/local in local: a variable

2004-01-28 Christian Stimming <stimming@tuhh.de>

* test/gwentest.c, configure.ac: Add define to remove dependency
on openssl in test program (for --disable-ssl).
* Makefile.am: Add target "make quick" that generates the
auto-generated headers first. This saves duplicated compilation.

* m4/acx_windows_paths.m4: Renamed windoze.m4 to this file. Added
caching of the directory values because this saves a lot of time.
* README.W32: Add explanation of helpful configure options.

* src/Makefile.am: Add LDFLAGS to DLLFLAGS since this is needed on
some windows configurations.

2004-01-27 Christian Stimming <stimming@tuhh.de>

* m4/ssl.m4: Use WIN_PATH_SYSTEM_MINGW for windows.
* configure.ac: Also allow version autoconf-2.56. If this breaks
anything, then of course the change should be reverted.
Also use WIN_PATH_SYSTEM_MINGW for gwenhyfar_libraries.
2004/01/26: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added a note about CVS usability to STYLE file


2004/01/25: Ronny Buchmann <ronny-hbci@vlugnet.org>
---------------------------------------------------
- remove autogenerated files


2004/01/25: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- added new base module: GWEN_RingBuffer; this module introduces a
circular read/write buffer.
- started cleaning up function names
- added statistical functions to GWEN_RingBuffer


2004/01/22: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- msgengine: added properties "readbin" and "writebin" to <ELEM> tags.
If "type" is "bin" then these properties are checked (defaults to "1").
If "0" then the binary data will not be parsed (this is needed to fix a
problem in OpenHBCI with banks, which send partial SWIFT MT942 which
have to be combined AFTER receiving all parts. So this parsing clearly can
not be done from within the message engine)


===========================================================================
MARK: released gwenhywfar-0.9.5 (2004/01/21)
===========================================================================


2004/01/21: Martin Preuss<martin@libchipcard.de>
------------------------------------------------
- applied a build patch submitted by Ronny Buchmann
- fixed a severe bug in signature code
- changed version string determination:
if TAG is "cvs" then the full version string (including major, minor,
patchlevel, build and tag) are used.
Otherwise all traling "0" in a version number are removed.


2004/01/18 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed windoze macros
- worked on SSL code
- MsgEngine:
- added a getCharValue callback to retrieve <VALUE>s with leading '?'
- added checkType callback which lets inheritors return the base type
instead of assuming "char".


2004/01/17 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added GWEN_WaitCallback:
This allows for nesting callback contexts. This is now a generic way
to inform the application about long term actions.
- started working on SSL connections (needed for OpenHBCI in PIN/TAN mode)
Note: An abstraction is not that badly needed, but it would help when
porting to a platform which does not use OpenSSL for this purpose.
Well, my thoughts about porting Gwen to PalmOS (which has its own
SSL functions) is not completely dead as you can see ;-)
Anyway, the functions here will make it easier at least for me to
use SSL without the need of digging into the OpenSSL docs everytime,
so here it comes...
- added conveniance functions for socket operations (needed for SSL functions)


2004/01/15 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- DB:
- added "nodeflags" (intended to be used for flagging "dirty" nodes etc)
- every modification of a node (except modifying nodeflags) will mark that
node and all its parents as dirty.


2004-01-14 Christian Stimming <stimming@tuhh.de>

* configure.ac: Fix typo -- $() is a variable in a Makefile, but
in configure it's a subshell.


2004/01/14 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added windoze.m4 to get some windows paths
- fixed types.m4 (was not removing conf.uint32 when finished)
- msgengine: GetHighestTrustLevel now also takes the parents of the given
node into account (instead of only the parent of the refererring node)
- os/inetaddr: added GWEN_InetAddr_GetCapabilities to check whether a given
Address Family (or feature) exists)


2004/01/12 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- posix/process.c: increased needed log level for error messages


2004/01/11 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in gwenhywfar.m4
- applied a patch submitted by Ronny Buchmann which turns the specfile into a
multi-distribution spec file.
- applied another patch submitted by Ronny Buchmann which allows for building
distribution-specific RPMs (in conjunction with the patch above)


2004/01/10 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- logger: added function GWEN_Logger_AddLogger. This functions allows to
log to multiple loggers in parallel. This is interesting for debugging
purposes when you still want to log to syslog (or whatever service you
like) but want to additionally log to a log file or stderr.
- Makefile.cvs: added my own target, since somebody always comments out my
"./configure" ;-) And I really think I know who does ;-)
- posix/init.c: removed debugging output upon startup/shutdown of Gwen. I am
convinced now that __attribute__((constructor)) really works


===========================================================================
MARK: released gwenhywfar-0.9.4rc3 (2004/01/07)
===========================================================================


2004/01/07 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- cleanup of Makefiles
- prepared next release


2004/01/05 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added "system.h", which defines some system dependant macros on some
platforms
- process.c: less verbous signal handler
- aborted PalmOS port
- reverted debug.h macros to use snprintf again, since all architectures
except PalmOS have it, and PalmOS is no longer supported
- added padding submodule to crypt module. This includes some commonly used
padding algorithms (like ISO 9796 and ANSIX9_23). Those are taken from the
GWEN_IPC package (and they originated from Fabian Kaiser's C++-code for
OpenHBCI in rsakey.cpp, with modifications and translation to C).


2004/01/04 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added GWEN_TYPE_UINT32 (this is needed for crossplatform compilation,
e.g. for PalmOS in short-mode)
- file "types.h" now gets installed
- macros in "debug.h" now use the builtin function GWEN_Debug_Snprintf.
This is a limited function imitating "snprintf" with a very very limited
set of conversions (for now only "s", "c", "d" and "c" are supported.
But this already is enough for debugging purposes). This is needed on
PalmOS since there is no snprintf.


===========================================================================
MARK: released gwenhywfar-0.9.4rc2 (2004/01/03)
===========================================================================


2004/01/03 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- prepared next release


2003/12/29 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- started working on PalmOS port (just a small start, there still is very
much to do... well, actually more than I anticipated. However, it still
seems possible ;-)


2003/12/28 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- renamed Christian's new "GWEN_DB_isSomething" functions to
"GWEN_DB_IsSomething" (it is handled this way in GWEN_Error_IsOk, so we
have to keep it uniform)
- added "process" to OS module. This allows for portably starting programs
(as needed by the upcoming version of Libchipcard)
- added a graph to the documentation of the DB module to demonstrate the
internal structure
- module XML: Added new flag which allows to ignore an <include> tag
- added doc/STYLE
- changed some function definition to comply to the STYLE odcument
- changed name of function GWEN_Md_Hash and GWEN_Md_UnregisterAllProviders
to GWEN_MD_Hash and GWEN_MD_UnregisterAllProviders, according to
my own style guid :-}

2003-12-28 Christian Stimming <stimming@tuhh.de>

* src/parser/db.h: Add foreach function for Groups, Variables, and
Values. Added a lot of explaining comments.

* src/parser/db.h: Add predicates for testing the type of a node.


2003/12/20 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- module XML: Added new flag which allows to always include files to the
toplevel.


===========================================================================
MARK: released gwenhywfar-0.9.4rc1 (2003/12/20)
===========================================================================


2003/12/20 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- module XML: Added function that takes a search path (for <include> tags).
- module XML: Added new flag which allows to share toplevel tags across
multiple files
- prepared release of 0.9.5rc1 (Release Candidate)


2003-12-20 Christian Stimming <stimming@tuhh.de>

* gwenhywfar.m4: Make version error message more verbose.


2003/12/20 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in XML code


2003/12/18 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added MD algorithm: MD5
- GWEN_CryptKey_{G,S}etKeyData: These are now only defined if the macro
"GWEN_EXTEND_CRYPTKEY" is defined. This prevents an application from
carelessly using these functions.
- added a conveniance function for hashing
- added a function that creates keydata from a password by hashing it
- improved XML parser: It can now read the XML files of Simthetic
- improved XML parser: Added some functions for tree navigation and for
locating tags inside the XML tree (GWEN_XMLNode_FindFirstTag() etc)


===========================================================================
MARK: released gwenhywfar-0.9beta9 (2003/12/15)
===========================================================================


2003/12/13 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added string functions to base/buffer module
- improved library loader
- added code for DLL init
- Gwen now initializes itself upon loading
- added README.W32 for people who want to compile Gwenhywfar on Windoze


===========================================================================
MARK: released gwenhywfar-0.9beta8 (2003/12/10)
===========================================================================


2003/12/10 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- started porting Gwen to Windoze


===========================================================================
MARK: released gwenhywfar-0.9beta7 (2003/12/06)
===========================================================================


2003/12/06 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- prepared next release


2003/12/04 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- removed IPC stuff from Gwenhywfar. You can find the IPC stuff in
the same CVS repository as Gwenhywfar. The module name is "gwenipc".
- finally fixed last typos regarding Gwen's name ;-)
Now I addresses GWENHYFWAR (written in all-capitals).


2003/12/02 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- removed usage of libefence from test program


2003/12/01 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed some serious bugs in list code (this class seemed to be so simple,
but it is in fact quite complicated ;-)
- nearly completed IPC code:
- added session management
- keys are no longer stored inside context files
- added AnonymousOpen function


2003/11/30 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in list
- IPC is now ready for deeper testing
- added some new test files


2003/11/29 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- XML module: added special handling for tags named "include": If such
a tag is encountered it will be replaced by the content of the file
pointed to by the tag's data


===========================================================================
MARK: released gwenhywfar-0.9beta6 (2003/11/29)
===========================================================================


2003/11/29 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in msgengine.c: Did not correctly iterate through multiple
groups when writing a group multiple times to a message (like in group
"result" in HBCI segment "SegResult": The group "result" may appear up
to 99 times, and for each appearance msgengine should use the next group,
but it always took the first one).
- IPCXMLCmd: added "OpenSession" command


2003/11/28 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- more work on IPC stuff


2003-11-26 Christian Stimming <stimming@tuhh.de>

* src/crypt/ossl/cryptssl_des.c: Fix compatibility code to
openssl-0.9.6i which had a different declaration of the type
des_key_schedule. The respective change is mentioned in OpenSSL's
CHANGES file under the heading Changes between 0.9.6h and 0.9.7
[31 Dec 2002].


2003/11/26 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- more work on IPC:
- added some basic IPC requests/responses (such as segment results)
- added a test which sends a getkey request and shows the reply
- fixed some bugs


2003/11/25 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in DB: Could not write longer binary values because of
the size of static buffers. I will have to think about storing binary
data anyway, because a 1024 bytes big binary is not easy to store within
a single line ;-)
- added a module with handlers for some often needed IPC requests


2003/11/24 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added some testdata to continuously check IPC stuff ("test/testdata")
- IPC: added some callbacks for applications to keep track of
connections
- replaced COPYING file with one that includes the LGPL instead of the GPL
- added license exception to satisfy Debian needs (the old OpenSSL problem)
- removed unnecessary files, improved APIDOC


2003/11/23 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- more work on IPC. I think I now have found the best method ;-)
- IPC: added check for the correct key version when decrypting or verifying
a signature
- removed some of Christian's FIXMEs in README, since he got it all
perfectly right ;-)
- added Doxyfile.in, started working on API documentation
- added "src/os/directory_all.c" which contains some usefull functions (well,
ONE at this moment)
- improved APIDOC of some "classes"


2003/11/22 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in DB concerning loading of binary data
- added a warning to DB when an unknown type specifier is found (which
defaults to "char")
- fixed a bug in RSA code concerning loading of keys from a DB
- first successful test of client/server IPC ;-)
Now it basically works. I also fixed many bugs in the code which is not
used by programs, since it is under heavy development.
- reading keys from a file and writing then to a file now works
- fixed a severe bug in "list"
- finally corrected spelling of Gwenhywfar ;-)
Thanks to Thomas Viehmann for providing a nice conversion script ;-)


2003-11-21 Christian Stimming <stimming@tuhh.de>

* README: Add some explanation of this package. Martin's
proofreading still needed.

* configure.ac: Add variables for rpm version. Changed name in
AC_INIT_AUTOMAKE to conform to the package name and have the right
spelling gwenhyWFar.

* Makefile.am: Add targets for rpm packages.

* gwenhywfar.spec.in: Add rpm spec file.


===========================================================================
MARK: released gwenhywfar-0.9beta5 (2003/11/21)
===========================================================================


2003/11/21 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed some compiler warnings
- more work on IPC


2003-11-19 Christian Stimming <stimming@tuhh.de>

* configure.ac: Add compilation debug argument macro.


2003/11/18 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- should now work with OpenSSL 0.9.6 as well...
- again more work on IPC
- fixed some bugs


2003/11/17 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- module "db" can now read/write binary values from/to streams
- added KeyManager
- added IPCXMLKeyManager, adapted IPCXMLDialog to use it
- fixed a bug in LIST code


2003/11/16 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed several bugs
- continued work on IPC
- module "crypt": added DES


2003/11/15 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- further work on IPC part
- added module "list" (base)


2003/11/13 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a severe bug in GWEN_Buffer (error in dynamic mode)
- added rmd160 to crypt module
- added padding with ISO 9796-1 (taken from OpenHBCI, the functions introduced
have originally been written by Fabian Kaiser and adapted for Gwen by me)
- worked on Christian's FIXMEs


2003-11-12 Christian Stimming <stimming@tuhh.de>

* configure.ac: Fix -L argument in gwenhywfar_libs; it was missing
the /lib suffix.

2003/11/12 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- CVS version now compiles again ;-}


2003/11/11 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- started working on IPC stuff


2003/11/07 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- started working on crypto stuff


2003/11/05 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in MsgEngine (ReadMessage was not taking segment version into
account)
- fixed a bug in CSV code (was taking "quote" for "title")


===========================================================================
MARK: released gwenhywfar-0.9beta4 (2003/11/05)
===========================================================================


2003/11/03 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a bug in MsgEngine (did not add a trailing 0 to values read)
- MsgEngine is now able to share definitons with other MsgEngines


===========================================================================
MARK: released gwenhywfar-0.9beta3 (2003/11/02)
===========================================================================


2003/11/01 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- changed behaviour of GWEN_GetHomeDirectory: It now uses the effective
user id instead of the real user id.


===========================================================================
MARK: released gwenhywfar-0.9beta2 (2003/11/01)
===========================================================================


2003/10/31 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added function GWEN_Version
- added parser module CSV


2003/10/30 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed memory leaks


===========================================================================
MARK: released gwenhywfar-0.9beta1 (2003/10/27)
===========================================================================


2003/10/27 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- improved API documentation


2003/10/25 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added call to binTypeWrite function in MessageEngine code
- improved trustlevel handling in msgengine


2003/10/24 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added dynamic mode to GWEN_BUFFER (in this mode more memeory is allocated
as needed when writing to it)
- added new BufferedIO type which uses a GWEN_BUFFER for reading/writing


2003-10-20 Christian Stimming <stimming@tuhh.de>

* src/parser/msgengine.c: Improve some signed/unsigned compiler
warnings.


2003/10/20 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a problem in MessageEngine: It now uses the correct path when
looking up a predefined value (it finally works even with the special
HBCI jobs containing <MESSAGE> tags)
- XML: Added type "GWEN_XMLNODE_PATH". This type stores a XML node path. It
is used now by MessageEngine for <VALUE> lookups when creating a message
- MessageEngine: fixed a bug in value lookup code
- minor fixes


2003/10/19 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- minor fixes
- added function to XML module which allows copying properties from one
node to another one
- this new function is now used by GWEN_MsgEngine__ListGroup when adding
a node to the list of used nodes


2003-10-18 Christian Stimming <stimming@tuhh.de>

* Makefile.cvs: Add calling libtoolize.


2003/10/18 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- MsgEngine:
- fixed a bug concerning escaping
- MsgEngine now searches for the highest trustLevel


2003/10/12 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- fixed a whole bunch of bugs
- MessageEngine is now able to list all GROUPS and ELEMents which belong to
a given message. This allows for tools that show the variables needed/set
by different messages (as needed by OpenHBCI).


2003/10/07 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- db module is now able to write a configuration (except binary data)
- fixed some bugs


2003/09/24 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- many, many fixes, improved DB module etc
- added gwenhywfar-config and gwenhywfar.m4


2003/09/23 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- completed simple IPC protocol. Now a client can connect to a server
using a simple greeting exchange. Later the exchange of public and
session keys will be implemented as well.
For now I will not use encryption, this will be implemented as soon as
the rest works.
- added a test routine to gwentest which allows connecting to another
gwentest which works as a server.
- added a version header file


2003/09/22 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- more work on IPC: Receiving messages and parsing them using msgEngine
works ;-) I will have to concentrate on creating a test function for
opening a connection to test writing of messages.


2003/09/21 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- worked on MsgEngine, IPC-CmdLayer
- will start to combine both of them tomorrow


2003/09/20 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- started debugging several modules (mostly IPC and msgEngine)


2003/09/19 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added cmdlayer to impl/ipc


2003/09/18 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added servicelayer to ipc
- added impl folder for implementations (starting with IPC)


2003/09/17 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- worked on IPC stuff (still untested)
- added serviceLayer


2003/09/14 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added transport layers (socket: TCP and Unix) to IPC module
- started using Sourceforge's cvs_acl script
- started using Sourceforge's syncmail script


2003/09/13 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added "test" folder, started debugging
- fixed some bugs in MsgEngine, Buffer
- added some functions to Db


2003/09/12 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added module "buffer" to base
- added some methods to db module
- MsgEngine now uses the new "buffer" module


2003/09/11 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- created libgwenhywfar
- added test tool
- fixed db module


2003/09/10 Martin Preuss <martin@libchipcard.de>
------------------------------------------------
- added module db, worked on xml and msgengine modules, fixed some bugs
in os code
(4-4/21)