Skip to content
This repository was archived by the owner on Mar 30, 2021. It is now read-only.

Memcached XTU Analysis

Endre Fülöp edited this page Jan 25, 2017 · 8 revisions

Baseline:

Memcached without xtu - clang 4.0 http://cc.elte.hu:8080/#run=3

Memcached XTU with XTU - clang 4.0

http://cc.elte.hu:8080/#run=4

###Summary

|Analyzed project| New findings | Disappeared findings | Successfully analyzed | Failed to analyze | Analysis Time (NonXTU)|Analysis Time XTU|Average bug path length in baseline|Average bug path length XTU| |---|---|---|---|---|---|---|---|---|---| |Memcached| 3 (core.*(1), unix.malloc(1)| 15| 35 files | 0 files |26.91s|42.82s|7|20.13

Resolved false positives:

Remaining false positives:

Lost true positives:

in the last but one version there were lost true positives, but this version performed much better in this respect

Remaining true positives:

###New true positives

  • MOST IMPORTANT XTU-SPECIFIC finding: memcached.c core.DivideZero http://cc.elte.hu:8080/#run=62&report=6833 safe_strtol sets the output c-string to null, and if a range overflow error happens (or str == endptr, see line 126 in util.c), it remains null.
  • items.c core.uninitialized.Assign if allocation fails, there is a branch, where a -= operator is called with unitialized value on the left side
Clone this wiki locally