Download Tools for static code analysis: A survey
Transcript
28 3.5.2 Survey Splint User manuals The Splint manual can be viewed either as a html page or as a pdf document. The manual is very large and thorough, consisting of 14 chapters and 5 appendices in a total of 121 pages. The first chapter brings up how to operate Splint, by explaining the basic commands, warnings produced by Splint, various flags that can be used, what annotations are and how they might be used. The remaining chapters deal with the various problems (bugs) Splint can detect. Each problem is given an individual chapter in which all of its sub problems are very well explained (in many cases with good examples). Furthermore which annotations that can be used for a specific problem, in order to make the scan even more accurate, are described. The user manual does not contain any tutorial on how to use Splint but on Splint’s web page (found at http://www.splint.org/ ) there exists a very good tutorial that covers many aspects on how to use LCLint (the predecessor of Splint). Since Splint is LCLint with some added functionality it serves as a very good foundation when beginning to learn how to use Splint. As a whole the manual is very clear, explains all of the functionality very well and explains all of the problems searched for in an educational manner. Internet forums There is no Internet forum dedicated to Splint that the author of this thesis has found. However, there are two mailing lists that one can join: Splint Announce, which is used to announce new version of Splint, and Splint Discuss which is dedicated to informal discussions about Splint usage and development. The contents of the latter one can also be found at the Splint Discuss Archives 5 and it has some posts every month with response times at often just a few days. Books No books were found about Splint but it is referenced to in quite a lot of books concerning software security. 3.5.3 Fortify SCA User manuals Since only a demo version of Fortify SCA 4.0 could be obtained and since no actual documentation could be found on the website (http://www.fortify.com), the documentation that came with the demo version is what is being evaluated in this thesis. Fortify SCA comes with two different user manuals. The first one is about the SCA and describes what it is, what different methods are being used when doing a scan, why they are made and finally how to use it. There are chapters explaining 5 http://www.cs.virginia.edu/pipermail/splint-discuss/