RE: sydbox and ia64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>These functions more or less work fine, the two functions i need help
>with are:
>trace_set_string: Set a string argument of the system call.
>  This function is used to change some path arguments to /dev/null so
>  that the application running under sydbox thinks everything is fine
>  but in reality it writes to /dev/null, not the actual file. We call
>  this write predicted paths.
>trace_fake_stat: Fake stat buffer of stat() call.
>  This function is used to implement the so-called magic commands.
>  When run under sydbox the stat()'ing the path /dev/sydbox returns the 
>  faked stat buffer, not the actual one (which is failure because it
>  doesn't exist.)
>
>Both of these functions use ptrace(PTRACE_POKEDATA, ...) to poke data to
>child's memory area and both of these functions don't work as expected.
>I suspect additional hackery is involved to make them work. I'd
>appreciate if anyone with knowledge about ptrace() and itanium
>processors be kind enough to look at this file and tell me what's wrong
>:-].
>Thanks in advance.
>
>
>¹: These functions reside in trace.c which you can see here:
>   http://github.com/alip/sydbox/blob/ia64/src/trace.c
>   For those who want to clone the repository, the git url is:
>   git://github.com/alip/sydbox.git
>
What is the error of using ptrace(PTRACE_POKEDDATA, ...)? Does it return -1 and errno? Or peeked data is not correct?

Thanks.

-Fenghua
--
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Sparc Linux]     [DCCP]     [Linux ARM]     [Yosemite News]     [Linux SCSI]     [Linux x86_64]     [Linux for Ham Radio]

  Powered by Linux