Howdy,
I am trying to instrument a statically linked binary and no matter
what I have tried the mutator code can't seem to find the functions in
my static instrumentation library. It returns with a cascade of the
following:
--SERIOUS-- #100: Image: Unable to find function: inst_func
I have a dynamic version of the instrumentation library for operating
on dynamically linked libraries and it works as expected.
I am only interested in statically modifying the binary (edit on
disk). I searched through the documentation but can't seem to find
much for working with statically linked binaries, but it appears to be
possible. The situation is described below:
mutator_program
dynamic_inst_library.so
static_inst_library.a
dynamic_mutatee
static_mutatee
In the mutator program there is a check to see if it is a static or
dynamic binary, via isStaticExecutable, and it chooses which
instrumentation library to use. It then loads up the correct library
with a libraryLoad call and tries to find a function that is specified
by the user of the mutator program. However, in the case of the static
version it can't find the instrumentation functions.
Can anyone provide any insight on this? Or point me to the appropriate
documentation for working with static binaries I may have missed?
Regards,
-karl
|