|
From: Tom H. <th...@cy...> - 2004-08-26 09:18:04
|
In message <yek...@au...>
Tom Hughes <th...@cy...> wrote:
> In message <254...@we...>
> Jeroen N. Witmond <jn...@xs...> wrote:
>
>> Also, in the case of a SIGSEGV, Valgrind is quite capable to set the
>> user's EIP in fields:
>>
>> - ((ucontext_t*)context)->uc_mcontext.gregs[REG_EIP], where 'void*
>> context' is the third argument to the sa_sigaction in struct sigaction.
>> 'ucontext_t' is declared by '#include <ucontext.h>'. Just now I have
>> verified that this field is also set correctly by Valgrind in the case of
>> a SIGFPE.
>>
>> - ctx.eip, where 'struct sigcontext ctx' is the undocumented second
>> argument to the sa_handler in struct sigaction.
>
> I know all that. Are you saying that valgrind is already doing so? or
> just that it should be doing so?
Sorry. I misread what you wrote. You are saying that valgrind does
fill in the context. In that case filling in si_addr should be easy
to do - please file a bug and I'll sort it out.
Tom
--
Tom Hughes (th...@cy...)
Software Engineer, Cyberscience Corporation
http://www.cyberscience.com/
|