Sasha's Linux Applications and Utilities
This page contains a collection of Linux applications and utilities I have written. I wrote them to solve a particular problem, and then decided to share. They will compile with gcc 2.95, and will need some fix up to compile with newer compilers. Unfortunately, I have not had the time to fix them up.
libtcp++ is a C++ class library to facilitate the creation of TCP/IP clients and servers. It has three classes, TcpClient, TcpServer and TcpIpRuleSet. TcpServer has build it logging capability peer detection method, and IP-based access control in addition to regular server functionality. TcpClient supports a user specified timeout on connect(), nice for port/host scanning, and other situations when you may be connecting to a dead host or a firewalled port. Download it from here Despite the lack of doucumentation, the sources contain examples that should help you figure it out.
Simple non-caching HTTP proxy. Great for situations when the official route between two hosts is down/slow/firewalled , the routers cannot be reconfigured, and you need to look at a page on the one host from the other. In addition, it now supports user-agent spoofing (there are a few sites that play a smart alec and will not show you pages unless they like your User-agent), and filtering the content with a custom filter application. Click here to download. Make sure you get libtcp++-0.1.2 first
I wrote this to be able to access a news server that would not allow me to connect from my machine, but would from another that I had access to. It a daemon that listens on a port for connections, and when the connection is made, proxies/bounces it to the host/port pair specified in the config file unmodified. Very simple, but very useful when you need to get around a bad route/firewall. Latest version has IP-based access control option. here to download. Make sure you get libtcp++-0.1.2 first