The BPatch interface is not, but the PatchAPI interface is:
http://blog.freearrow.com/software/craft
This distinction is by design: PatchAPI will support an arbitrary code generation engine, whereas BPatch is designed to work with platform-independent snippets.
--bw
________________________________________
From: Dyninst-api <dyninst-api-bounces@xxxxxxxxxxx> on behalf of Buddhika Chamith Kahawitage Don <budkahaw@xxxxxxxxxxxx>
Sent: Wednesday, March 14, 2018 11:02 PM
To: dyninst-api
Subject: [DynInst_API:] Including arbitrary x86 instructions at snippets
Hi All,
I am considering use Dyninst binary rewriting mode to implement a Control Flow Integrity prototype (as mostly described at [1]). For that I need to add validation checks around indirect control flow. I wanted to check if BPatch API is expressive enough to create snippets with arbitrary x86 instructions (for example at the validation check I may need to include a prefetchnta instruction).
Regards
Buddhika
[1] https://www.microsoft.com/en-us/research/wp-content/uploads/2005/11/ccs05.pdf
|