From Lundman Wiki
Revision as of 09:21, 11 June 2008 by Lundman (talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

LION [Lundman's Input Output Network library]


   * Nonblocking Networking.
   * Nonblocking File I/O.
   * Nonblocking pipe/system and fork commands for spawning helper programs. [1]
   * 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. [2]
   * 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. [3]
   * Clean API with documentation.
   * 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 [4]
   * Encrypted File IO support (blowfish, dependent on SSL)
   * contrib/ sources include Directory listings library for all platforms.
   * Python support! Using SWIG [5] there now is an easy way to do async SSL in Python
   * Timers! Callback timers in relative or absolute time. One-shot or repeat.
  • [1] Win32 naturally does not have true fork() but this is simulated for you by LiON.
  • [2] Win32 version require a thread per file to support all version of Windows.
  • [3] You can adopt in a file-descriptor opened elsewhere, like that of stdin or stdout.
  • [4] 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.
  • [5] There is no reason why the other languages supported by SWIG wouldn't also work.





LiON Documentation

SSL-Connect example