Open Source Software Contributions

I use Open Source Software a lot (almost exclusively). It enables me to do a lot of things that aren't possible without source. Below are some patches that I've written to add functionality to Open Source projects.

SMACQ

I created the System for Modular Analysis and Continuous Queries.

Transocks

I maintain transocks, Transparent proxy to redirect network traffic through a SOCKS proxy. For use with Linux iptables.

Snort

My work on fast string matching is in Snort as of April 2002. Look for it in version 1.9 and later.

Linux Kernel

Dynamic Right-Sizing
2.4.8-drs-patch, (more information)
Automatic tuning of TCP flow control windows to support full bandwidth over high-latency (WAN) links. Improves TCP throughput by orders of magnitude over high delay-bandwidth links. Keeps windows small for low-bandwidth and low-latency connections so they don't consume unnecessary amounts of bandwidth. You'll still want to tune the maximum (but not the default) buffer sizes:
echo 6553500 > /proc/sys/net/core/wmem_max
echo 6553500 > /proc/sys/net/core/rmem_max
echo 4096 16384 6553500 > /proc/sys/net/ipv4/tcp_wmem
echo 8192 87380 6553500 > /proc/sys/net/ipv4/tcp_rmem
echo 6553500 6653500 6753500 > /proc/sys/net/ipv4/tcp_mem

Transparent Promiscous Proxy
2.2-promisc-patch, 2.0-promisc-patch
Enable transparent proxying of connections not being routed through the proxy. Enables a proxy to be placed on a broadcast network without being a bottleneck for all traffic.

NFS root over FDDI
2.0-fddi-nfsroot-patch
I haven't verified 2.2 or newer yet, but 2.0 kernels couldn't do NFS root over FDDI.

Traceroute

Traceroute DF bit bug
traceroute-1.4a5-df.patch
Traceroute 1.4a5 (and presumably earlier) had an endian bug that, on little endian machines, broke the command line option that sets the DF bit.

Traceroute Path MTU Discovery
traceroute-1.4a5-pmtu.patch
Recent versions of traceroute have an option to set the DF bit. Unfortunately, the stock traceroute doesn't report what MTU a gateway reports that it can support. This patch prits out the value of ICMP Must Fragment messages and automatically continues the trace using that size packet. By selecting the options for the DF bit and a large packet size, traceroute will perform Path MTU Discovery.