e-POSIX, the complete Eiffel to POSIX binding

Eiffel POSIX binding

e-POSIX gives Eiffel programmers access to the familiar Unix API. Either as raw calls, but also in the form of classes with full Design By Contract support. e-POSIX file and socket classes can be used as a plugin where Gobo's KI_INPUT_STREAM and KI_OUTPUT_STREAM are expected. So you can now directly parse input coming from a TCP socket.

The goal of e-POSIX is to provide a 100% complete Eiffel binding to Standard C, POSIX and the Single Unix Specification.

e-POSIX can also be used on Windows systems through its portability layer. This allows you to create native Windows programs that use file descriptors, sockets, pipes and can read and write the input and output of child programs. The Cygwin UNIX emulator is also supported, but not needed. When using Cygwin, e-POSIX just thinks that it is running on Unix.

e-POSIX got a 2nd place at the Eiffel struggle 2000!

Released on 2010 January 13 is version 3.2.0, the current official release. It is targeted at ISE 6.4 (and 6.5), the Gobo Eiffel compiler, and SmartEiffel 1.2r7. The most important user visible list of changes between 3.0 and 3.2 is:

  • Licence changes to MIT.
  • Support for the Gobo Eiffel compiler.
  • MD5, SHA1 and HMAC calculation.
  • EPX_FILE_SYSTEM: newly created directories are now also accessible by everyone unless modified by umask.
  • ABSTRACT_INTERNET_SOCKET/ABSTRACT_TCP_SOCKET: features set_no_delay and set_throughput to optimise specific TCP transmission patterns.
  • STDC_BUFFER: 64 bit integer read/write routines.
  • Logging framework switched to NET_LOGGER.
  • Signal and exit handling rewritten, no longer uses cecil.
  • VisualEiffel support dropped.

Download

You can download the tar.gz release or zip release.

Features

e-POSIX features include:

  • Standard C file streams.
  • POSIX File descriptors.
  • Support for TCP/IP version 4 and version 6.
  • Single Unix Specification sockets.
  • All streams, descripts and sockets plug straight into classes that expect a Gobo KI_CHARACTER_INPUT_STREAM or KI_CHARACTER_OUTPUT_STREAM.
  • POSIX File locking.
  • Forking.
  • Daemons.
  • Signal handling including POSIX signal sets.
  • POSIX Shared memory.
  • Memory maps.
  • Asynchronous I/O.
  • Write CGI programs with ease using XHTML generator class. Supports form building and file uploading.
  • Clients for popular Unix protocols as FTP, HTTP, SMTP and IRC.
  • ULM based logging for Unix and Windows.
  • MIME message creation.
  • MIME message parsing.
  • Embedded HTTP server.
  • MD5, SHA1 and HMAC calculation.

You can browse or read the manual online.

Support

To subscribe to the e-POSIX mailing list, fill-in your email address and click the button below.

Subscribe to e-POSIX
Powered by groups.yahoo.com

Interim releases

There are currently no interim releases.

Older releases

In case newer versions don't work for you, try the following versions:

NOTE: This HTML page requires a browser that supports XHMTL and Cascading Style Sheets 2.

Valid XHTML 1.0!

Validate!