Is there a particular way to end a process gracefully from within a dynamorio client? I.e., if a client has decided that an application must be terminated, is it acceptable to just call std exit from within the client, or will that cause important DR shutdown hooks to be bypassed?
--
You received this message because you are subscribed to the Google Groups "DynamoRIO Users" group.
To post to this group, send email to dynamorio-users@googlegroups.com.
To unsubscribe from this group, send email to dynamorio-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/dynamorio-users?hl=en.
--
You received this message because you are subscribed to the Google Groups "DynamoRIO Users" group.
To post to this group, send email to dynamor...@googlegroups.com.
To unsubscribe from this group, send email to dynamorio-use...@googlegroups.com.
Yes, like I said, dr_abort gives no control over the exit code.
> I have switched to calling the kernel32
> functions ExitProcess or TerminateProcess
If you mean your client directly (natively) invokes those then you're going
to leave behind .1config* files when using drrun (as mentioned, dr_abort
cleans that up). Better to arrange for the app to invoke an exit routine.
Alternatively, propose a new DR API feature.
> however the exit status
> is not what I expect it to be. I am guessing that this is because
> my external script is checking the exit status of the drrun command
> rather than the child process which actually the thing my client is
> terminating.
drrun's exit status is explicitly set to be the same as the child
process (unless there's an error injecting).
- Derek