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."
Update: I have moved on to other
interests and SUBTERFUGUE
has been dormant since 2001. Fortunately, excellent projects
like AppArmor have provided other mechanisms to accomplish many
the goals of this project. This site remains in the hope that
it may be a useful source of history and ideas.
- 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
- 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.
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.
Copyright 2000, 2001 Mike Coleman.
This page has been visited 60,000+ times.
So, so you think you can tell, heaven from hell,
blue skies from pain.
Can you tell a green field from a cold steel rail?
A smile from a veil,
Do you think you can tell?
--Pink Floyd, "Wish you were here"