Various techniques will be shown for wrapping another program's system calls. All techniques employ user-space only technology. This will range from the trivial (LD_PRELOAD) to the sophisticated (PTRACE+trampoline code). We will also discuss the various advantages and disadvantages of each technique.