Strace fault injection

Like every summer since 2012 my lab @lse_epita is doing conferences on subjects related to system & security. This was a good occasion for me to present what I did during my GSoC with strace. If you’re interested in the other talks from my lab this year you can find them here (videos + slides).

Why strace?

I knew about GSoC because one of the Strace’s mentor is also a referent in the LSE. So I asked about what subject Strace had this year and the syscall fault injection got my attention. After a quick talk with Gabriel (you know, the guy from Strace) I understood the possible usages people could make and started to write my proposal.

I feel like writing down the talk here would be a waste of time so here is the slides to go along with the talk.

Feel about GSoC?

Because people kind of fight to get the organization and the project they want I think, overall, projects get done to the best effort. It was a good exercise for me to exchange with the community and get very relevant comments about my code and discuss design choice and limitations. Another part of GSoC that I particularly appreciated is the time management during the whole period. Since each student has different constraints it’s easier to find time slots to work for the organization as long as goals are achieved.

References

  • Discussions regarding the design of the feature can be found on the Strace’s mailing list.
  • The official upstream version of the code be found on the Strace’s github mirror. However, it’s not yet upstream, I’ll edit this article when it will be. For now you can have a look at the current state of the work on the next point.
  • My « work in progress » branch can be found in my strace fork.