Things that I've Written:

I used to have a bad habit of losing things that I had written. This page is a bit of a dumping ground - the good with the bad - so that I don't lose them. Some of these projects are up to date and fully developed, others are relatively trivial or reflect a less experienced author. (I think the oldest code here dates back to 1998.) If you're reading this as if it is my portfolio, just squint a bit and skip over those.

Networking/Troubleshooting:

mturoute.exe
This is console application, analogous to 'ping' and 'traceroute', which finds the maximum mtu between you and another host by passing icmp requests with differing payload sizes. Binary is provided for Win32.

The MTU Eyechart
This is a small html file that displays a series of images in various sizes. If you are having an MTU problem with your webserver, the missing pictures will help reveal just what that problem might be.

Python UDP stress tester
An extremely quick-and-dirty utility that tests how much UDP traffic it can shove through a connection.

Library Stuff
Various command line utilities to troubleshoot SIP2 and API. sip2talk.exe, sip2ping.exe

Web Mimic
Web Mimic is a utility that sniffs your HTTP requests and gives you the ability to re-download them independent of the original program.

arpsift.exe
arpsift is an "arp -a" replacement that includes a scrolling log, alerts for flapping ARP entries, timers and OUI lookup.

ips
ips is a console program that functions like grep, but for IP addresses.

killabit.exe
Killabit is a quick and dirty network sniffer that displays where your bandwidth is going by source->destination address pairs. Works at layer 2, 3 or 4.

macdb
macdb is a command line tool that lets you pipe in lists of MAC addresses for quick oui.txt and known-mac-address annotation.

xips
xips is a command line tool for expanding and summarizing lists of IP addresses.

LineDelayPaste
LineDelayPaste is a gui program that will paste one line at a time at a user defined rate. It is intended for use with terminal (serial) connections that cannot handle input at too fast a rate. Specifically: pasting large configuration files into a PuTTY serial connection.

Hardscan
Hardscan is a command-line tool that detects open ports on the local machine. It is intended for uses where "netstat" and its ilk are untrustworthy. It should run on any system that supports python 2.3 or better. (Note: that 'or better' has aged particularly terribly. Let it be known that I need to update this tool for Python3)

Cisco Specific:

no - a unix utility to toggle leading 'no ' on and off on stdin, specifically for bulk editting Cisco access lists.

offline-console
offline-console is a Cisco configuration file viewer that mimics being logged into the device in question. It implements things like 'show run' and autocomplete so that you can find the bit of config you are looking for with the same muscle memory that you would be using if logged into the real device. Warning: I implemented | (pipe) by shelling out to the actual system, so you can use real tools instead of simulating Cisco's crappy grep. You might not expect this behavior.

orphan-object-groups - a script for finding/removing object-groups in Cisco ASA configuration files that do not have any references.

Stanza - a grep replacement that includes the surrounding stanza when it finds a match

Experimental:

deadbit.exe
deadbit is an (experimental) attempt at writing an ICMP based memory tester for network equipment. It tries all possible payload bytes and does various tricks to try every bit in every position in the payload as well as the ICMP sequence number, the ICMP checksum and the addends/carry values internal to each router when the checksum is calculated.

Other:

A telnet-serial bridge scriptThis makes your serial port available to any telnet client. Especially useful for e.g. PuTTY which is my favorite terminal client, but doesn't have any serial support. didn't have any serial support at the time.

d5000_serial - Python module to interface with a d5000 series thermocouple

PHP Boolean Query Generator
This is a php snippet for converting boolean search queries (for instance "elephants AND giraffes" that people are used to typing into search blanks into SQL query syntax. ASP version now available as well.

HTTP -> HTTPS Redirector
This is a small python script that can be run in the background to redirect http queries to another URL. In particular, it is set up to redirect insecure HTTP connections to an HTTP/SSL port.

Generate Google Sitemap script
A python script that autogenerates a Google Sitemap XML file from the contents of your webserver. I use it to generate this sitemap: sitemap.xml. The script itself should generally be applicable to other sites with a few minor changes.

The MSSQL Trouble ButtonAn ASP page to grab the current state of a MSSQL backed application when an end-user is experiencing a problem.