Is there an equivalent of what the
-U option of the
truss Solaris utility does on Linux.
Those are to specify a system call (
-T) or library function (
-U) which when called by the traced application would cause it to stop.
Or, said otherwise, I'd want any process started by a traced application to be stopped (as if killed by SIGSTOP) as soon as it makes a given system call or a given shared library function call.
ltrace on Linux provide with much of the featureset of Solaris
truss, but they don't seem to be doing that.
truss -f -T open cmd
Would be like
strace -f cmd except that if the process executing
cmd or any of its descendants does any
open system call, it would be stopped immediately (and I can resume it later on at my convenience)
In some cases, I could use
catch syscall, but I was looking for a solution that can conveniently follow forks and continue doing it for all the forked processes and keep on doing it even after
I seem to recall some utility giving the same functionality, even one (or options to that same utility) to single-step applications between some occurrences of some syscall remotely like that, but my memory is failing me, I can't even be sure that was on Linux.