diff options
author | Yifan Lu | 2016-11-23 17:24:50 -0600 |
---|---|---|
committer | Yifan Lu | 2016-11-23 17:24:50 -0600 |
commit | f1df6fbca8975ceb0eebd51519eb5f753ff75fa4 (patch) | |
tree | cc82fdacbe5c5a5dbceaf5107a5b961dffd6b188 /lib/substitute.h | |
parent | Merge branch 'master' of https://github.com/comex/substitute (diff) | |
download | substitute-f1df6fbca8975ceb0eebd51519eb5f753ff75fa4.tar.gz |
Fixed defination of CC_CBXZ collides with other bits
Fixed incorrect pc value in tdctx_to_actx
Fixed ARM32 handling of CC_CBXZ (uses incorrect field in ctx->base)
Fixed ARM32 transform_dis_branch incorrectly trashing LR for non-call based jumps
Fixed ARM32 make_jump_patch not updated to use new assemble_ctx
Added new option SUBSTITUTE_RELAXED to relax the disassembly engine
Currently SUBSTITUTE_RELAXED only disables TRANSFORM_DIS_REL_JUMPS so jumps at the beginning of functions are allowed
Diffstat (limited to '')
-rw-r--r-- | lib/substitute.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/substitute.h b/lib/substitute.h index 8cc2a4d..023a728 100644 --- a/lib/substitute.h +++ b/lib/substitute.h @@ -119,6 +119,7 @@ struct substitute_function_hook_record { #ifndef NO_PTHREADS enum { SUBSTITUTE_NO_THREAD_SAFETY = 1, + SUBSTITUTE_RELAXED = 2, }; #endif @@ -141,6 +142,9 @@ enum { * * You can disable the main thread check and all synchronization by passing * SUBSTITUTE_NO_THREAD_SAFETY. + * + * You can relax the disassembly engine (at the risk of possible incorrect + * results) to be compatible with more functions by passing SUBSTITUTE_RELAXED. * * Why not just use a mutex to prevent deadlock? That would work between * multiple calls into libsubstitute, but there may be other libraries that |