Harm acts as a four-way socket redirector that allows you to effectively make a TCP connection from the Internet to a host behind a Linux masquerade-style firewall. The server (behind the firewall) makes connections to the client (on the Internet). After a successful connection, it will bounce packets from a telnet client (Windows and Linux) to the Harm client, to the Harm server (Linux only), or to the telnet daemon behind the firewall.
The Extended Universal Resource Locator library provides a complete virtualization of file-like objects. How data is stored is completely transparent to the client, since the library is meant to replace java.io.File. It provides implementations for handling local files, Jar/Zip archives, and XML documents. (Implementations for CVS and FTP are available seperately.) Other storage providers can be written and plugged in. It also provides a merged filesystem implementation that allows multiple hierarchies to appear as one and to override each other in a controlled way. Other features include notification of changes to files, and support for attaching (dynamically updatable) actions to file objects.