From Lundman Wiki
Revision as of 16:23, 23 January 2007 by Lundman
LION [Lundman's Input Output Network library]
* Nonblocking Networking. * Nonblocking File I/O. * Nonblocking pipe/system and fork commands for spawning helper programs.  * Event driven, event passback for all situations. * SSL incorporated, with auto-detection. * Portable (Already confirmed NetBSD, Solaris, Linux, OsX and Win32) * Single process / thread library.  * Numerous Sample programs included. * Support both in-library sleep/CPU-release, or in Application. * Full buffering control, and flow control. * CPS (KB/s) rate limits on _any_ I/O type. (Socket, File & Pipe) * Adoptable foreign file-descriptors API.  * Clean API with documentation, although man-page comming. * Direct, or event driven, failure modes supported. * Exclusive File I/O locking optional, across all platforms. * Internal compression optional. * Very simple to use for line-by-line protocols, or binary chunk data transfers. * Full UDP support  * Encrypted File IO support (blowfish, dependent on SSL) * contrib/ sources include Directory listings library for all platforms. * Python support! Using SWIG  there now is an easy way to do async SSL in Python * Timers! Callback timers in relative or absolute time. One-shot or repeat.
-  Win32 naturally does not have true fork() but this is simulated for you by LiON.
-  Win32 version require a thread per file to support all version of Windows.
-  You can adopt in a file-descriptor opened elsewhere, like that of stdin or stdout.
-  Includes optional advanced mode where you can request a new handle per remote IP:port pair. Useful for Games and applications creating an object per unique UDP connection.
-  There is no reason why the other languages supported by SWIG wouldn't also work.