| Impressum

The Ionflux Tools Class Library (iftools)



Thank you for your interest in the Ionflux Tools Class Library project!

The Ionflux Tools Class Library is a lightweight multi-platform C++ framework designed for rapid development of applications in a client/server architecture. It features a set of useful classes and tools, such as a powerful template engine and a universal hierarchical type. The Ionflux Tools Class Library is released under the GNU General Public License, meaning it is free software! (See LICENSE in the distribution for more information.)


Features of the Ionflux Tools Class Library include:

Furthermore, the following tools are provided with the distribution:


See the page of the project for releases available for download:

You can always get the latest version of the Ionflux Tools Class Library from the Subversion repository at:

To get the Ionflux Tools Class Library from Subversion, you need to have Subversion installed ( Then change to a directory of your choice (for example iftools) and type:

svn co

This, however, is a development version, and might possibly be unstable. You should not use this unless you want to help with debugging and testing new features.


Documentation is available from the official Ionflux Tools Class Library Homepage:

If you have already downloaded and unpacked the Ionflux Tools Class Library, or have obtained the distribution from Subversion, you can generate the documentation from source using Doxygen ( Just type


in the root directory of the distribution.

Dependencies and contributed code

Ionflux Tools uses the following libraries:

Ionflux Tools also uses the following external code:

Please refer to the extern directory of the distribution for detailed information and license.

Please see README in the distribution for more information and INSTALL for installation instructions.

If you find any bugs or want to send a feature request or comments and suggestions, please feel free to send a mail to


This is an overview of the applications included with the distribution.


ifdate is a world clock and datetime utility. It displays the current time or various timestamp variants in a specified time zone and output format.

ifdate supports all the time zones of the world, but does not know about all the cities and DST rules of the world (yet). To obtain a list of recognized time zone alias names (which you may use with the -l option of ifdate), run ifdate with the -a or --aliases option.

More time zone aliases (city names) and DST rules will be added in the future. (If you really miss a certain alias name or DST rule, or if you detect a wrong time, please let me know and I will try to fix the problem as soon as possible.)

(See also The ifdate tool)


iftpl is a template processor that uses the Ionflux Tools template engine (Ionflux::Tools::Template). See test/template/test.tpl and test/conf/template.conf for an example of how to write templates and configuration files. iftpl has been used to generate some of the classes of Ionflux Tools. You can also take a look at the templates in the template directory of the distribution.

For more information, see the Template Engine documentation.


ifpasswd is a tool to generate password files for the simple authentication implemented in Ionflux::Tools::AuthFile. Actually, a line generated by ifpasswd consists of an username, a separator (':') and the SHA-1 hash of the password, encoded as a hexadecimal string. You can use ifpasswd to generate authentication files for Ionflux::Tools::TCPAuthServer.


ifls is a directory listing utility (similar to ls). The output can be customized using templates.

You can also check the test directory for more tools, such as a generic TCP client and server and an echo server.

Have fun!

Copyright © 2003-2006 Joern P. Meier ( Logo

Generated on Tue Mar 14 20:58:29 2006 for Ionflux Tools Class Library (iftools) by  doxygen 1.4.6