Latest Version: 0.2.1 ("phantom")
SUBTERFUGUE is a framework for observing and playing with the reality of software; it's a foundation for building tools to do tracing, sandboxing, and many other things. You could think of it as "strace meets expect."
- simple interface for writing tools
- can follow, rewrite, and annul system calls
- can follow, rewrite, and annul signals (with limits)
- follows whole process (and thread) trees
- can follow across fork, vfork, and clone
- has a fairly good wait4 emulation
- can follow job control (with limits)
- a description with more detail on SUBTERFUGUE's many features and limitations
- the motivation behind SUBTERFUGUE
- some screenshots, giving concrete examples of what you can do with SUBTERFUGUE
- a tutorial, which walks through the steps of using and writing new tricks for SUBTERFUGUE
- a FAQ list
Trying it out
SUBTERFUGUE runs under Linux 2.4. It's implemented in Python, including a few Python extension modules written in C. Python 1.5.2 or later is required.
You can download the latest version of SUBTERFUGUE from the SUBTERFUGUE project page at SourceForge. A debian package is now available, too.
- subterfugue-announce - new release and other important announcements
- subterfugue-dev - developer traffic
- subterfugue-cvs-commits - voluminous cvs commit logs
Please send bug reports, comments and patches to subterfugue-dev.
SUBTERFUGUE is free software, and may be redistributed and used under the terms of the GNU Public License.
Thanks to SourceForge for providing their über-cool hosting environment.