2007
DOI: 10.1016/j.jss.2006.09.040
|View full text |Cite
|
Sign up to set email alerts
|

A framework for the static verification of api calls

Abstract: A number of tools can statically check program code to identify commonly encountered bug patterns. At the same time, programs are increasingly relying on external APIs for performing the bulk of their work: the bug-prone program logic is being fleshed-out, and many errors involve tricky subroutine calls to the constantly growing set of external libraries. Extending the static analysis tools to cover the available APIs is an approach that replicates scarce human effort across different tools and does not scale.… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
9
0

Year Published

2008
2008
2020
2020

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 13 publications
(9 citation statements)
references
References 47 publications
0
9
0
Order By: Relevance
“…They used a formal language to define properties of the API and employed model checking to check for potential violations. Spinellis and Louridas in [11] proposed a framework for static verification of API calls as a complementary tool to runtime verification. In our previous work [12] an approach was proposed toward automatic generation of the RTM system; this includes modelling and verifying the RTM system independent of its interactions with application and device layers.…”
Section: Discussionmentioning
confidence: 99%
“…They used a formal language to define properties of the API and employed model checking to check for potential violations. Spinellis and Louridas in [11] proposed a framework for static verification of API calls as a complementary tool to runtime verification. In our previous work [12] an approach was proposed toward automatic generation of the RTM system; this includes modelling and verifying the RTM system independent of its interactions with application and device layers.…”
Section: Discussionmentioning
confidence: 99%
“…The analysis does not consider libraries (i.e., part of a program that can be used by other parts in various ways). Spinellis and Louridas [SL07] discuss how adjunct verification code needs to be associated with API's to facilitate analysis. The verification code effectively models the application; but is restricted to each method in the API using pre/post conditions.…”
Section: Related Workmentioning
confidence: 99%
“…Spinellis and Louridas [30] extended FindBugs to better verify API call arguments, and found that FindBugs "contained a number of tests for the replace methods that were incorrect".…”
Section: Other Practical Toolsmentioning
confidence: 99%