This code was written by Shevek . Win32 support was contributed by Michael R. Brumm.