interceptor: make the execve execution explicit

Track transformations through analyzers (currently only through
make_relative()) and based on that, fall back to the original execve
with either the transformed command or just with the original data
passed in. This avoids unnecessary execute_execve calls if the command
is unmodified and prepares for later support of additional intercepted
libc calls for subprocess execution, such as posix_spawn().

Bug: 209401200
Signed-off-by: Matthias Maennich <maennich@google.com>
Change-Id: I5c8ce3d5df55fc365b12e5406ac575145d6c035d
1 file changed