On Wed, Oct 24, 2012 at 05:16:26PM +0200, Dodji Seketeli wrote: > Jakub Jelinek <ja...@redhat.com> writes: > > >> For 'strlen', can the memory check be done at the end of the string > >> using the returned length? > > > > Guess strlen is commonly expanded inline, so it would be worthwhile to check > > the shadow memory after the call (well, we could check the first byte > > before the call and the last one after the call). > > How do I get the result of the (strlen) call in gimple?
That is gimple_call_lhs (call_stmt). So for insturmenting strlen, you want to ammend: tmp = strlen (ptr); as asan_addr_check (ptr); tmp = strlen (ptr); asan_addr_check (ptr + tmp); Jakub