/* $Id$ */ #define TRAMPOLINE_SIZE 5 #include "hook-arch-asm.h" sigaction_trampoline: /* +0: */ push %ebp /* +1: */ mov %esp,%ebp /* +3: */ push %edi /* +4: */ push %esi /* +5: */ .ifne . - sigaction_trampoline - TRAMPOLINE_SIZE .err .endif call pic_base pic_base: pop %eax jmp *(sigaction_orig_libc_cont-pic_base)(%eax) sigaction_trampoline_jmpdir: /* long absolute direct jump */ /* +0: */ .byte 0xe9 .long 0x0 .set sigaction_trampoline_jmpdir_vec, . - 4 .set sigaction_trampoline_jmpdir_base, . /* +5: */ .ifne . - sigaction_trampoline_jmpdir - TRAMPOLINE_SIZE .err .endif