[DynInst_API:] [dyninst/dyninst] 4c9a4c: We only used SIGTRAP as the signal for tramopline.


Date: Mon, 01 Feb 2021 15:48:32 -0800
From: noreply@xxxxxxxxxx
Subject: [DynInst_API:] [dyninst/dyninst] 4c9a4c: We only used SIGTRAP as the signal for tramopline.
  Branch: refs/heads/sigtrampoline
  Home:   https://github.com/dyninst/dyninst
  Commit: 4c9a4cb04417ce89f23ab4098a59b812833cf299
      https://github.com/dyninst/dyninst/commit/4c9a4cb04417ce89f23ab4098a59b812833cf299
  Author: Xiaozhu Meng <mxz297@xxxxxxxxx>
  Date:   2021-02-01 (Mon, 01 Feb 2021)

  Changed paths:
    M dyninstAPI/src/addressSpace.C
    M dyninstAPI/src/addressSpace.h
    M dyninstAPI/src/binaryEdit.C
    M dyninstAPI/src/dynProcess.C
    M dyninstAPI_RT/src/RTposix.c

  Log Message:
  -----------
  We only used SIGTRAP as the signal for tramopline.
However, SIGTRAP is always intercepted by GDB, causing it is
almost impossible to debug through signal trampolines.

In this commit, we add a new environment variable DYNINST_SIGNAL_TRAMPOLINE_SIGILL
to control whether we use SIGILL as the signal for trampolines.

If DYNINST_SIGNAL_TRAMPOLINE_SIGILL is set, we use SIGILL as signal trampolines
and the mutator will generate illegal instructions in the mutatee.

In the case of binary rewriting, DYNINST_SIGNAL_TRAMPOLINE_SIGILL should be
consistently set or unset when rewriting the binary and running the rewritten binaries.


[← Prev in Thread] Current Thread [Next in Thread→]
  • [DynInst_API:] [dyninst/dyninst] 4c9a4c: We only used SIGTRAP as the signal for tramopline., noreply <=