Playing around with address sanitizer

Poul-Henning Kamp phk at phk.freebsd.dk
Tue Feb 2 01:40:10 CET 2016


--------
In message <CAEh05VYdXPNr8v3=0uyeMK16u-hMxWGvgvcEh00A1FiURor3BA at mail.gmail.com>
, Dag Haavi Finstad writes:

>Inspired by a talk at FOSDEM this weekend [1], I tried building
>Varnish with -fsanitize=address enabled.

Good idea!

That did find at least one genuine bug.

I've fixed the ESI ticket, that one would have been really hard to
spot any other way, because the calling convention is rather
unorthodox (We don't automatically flush, because we want to
get the T-E: chunked trailer into the flush too, and close doesn't either.)

The memcmp() issues I've fixed with strncmp().

The varnishtest macro code got a miniobj overhaul at the same time.

At this point only c00057 fails here, because AS correctly
spots that raise(SIGSEGV) derefs NULL.

Yell if you find more.




-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.



More information about the varnish-dev mailing list