X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fbinfmt_elf.c;h=86a271554614537481f706012deb3ac08d576553;hb=567f20a20be06ad546b5962340c4be268462055b;hp=8a5231a4c243038f4631167421b3ab5c89f5eb4f;hpb=653a9213ae6f303790975dd836d95778aab070de;p=linux-2.6.git diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c index 8a5231a4c..86a271554 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c @@ -1094,6 +1094,12 @@ static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs) #endif start_thread(regs, elf_entry, bprm->p); + if (unlikely(current->ptrace & PT_PTRACED)) { + if (current->ptrace & PT_TRACE_EXEC) + ptrace_notify ((PTRACE_EVENT_EXEC << 8) | SIGTRAP); + else + send_sig(SIGTRAP, current, 0); + } retval = 0; out: kfree(loc);