[analyzer] Add VforkChecker to find unsafe code in vforked process.
This checker looks for unsafe constructs in vforked process: function calls (excluding whitelist), memory write and returns. This was originally motivated by a vfork-related bug in xtables package. Patch by Yury Gribov. Differential revision: http://reviews.llvm.org/D14014 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@252285 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h 7 additions, 0 deletions.../clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
- lib/StaticAnalyzer/Checkers/CMakeLists.txt 1 addition, 0 deletionslib/StaticAnalyzer/Checkers/CMakeLists.txt
- lib/StaticAnalyzer/Checkers/Checkers.td 4 additions, 0 deletionslib/StaticAnalyzer/Checkers/Checkers.td
- lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp 6 additions, 9 deletionslib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
- lib/StaticAnalyzer/Checkers/VforkChecker.cpp 218 additions, 0 deletionslib/StaticAnalyzer/Checkers/VforkChecker.cpp
- lib/StaticAnalyzer/Core/CheckerHelpers.cpp 24 additions, 0 deletionslib/StaticAnalyzer/Core/CheckerHelpers.cpp
- test/Analysis/Inputs/system-header-simulator.h 10 additions, 0 deletionstest/Analysis/Inputs/system-header-simulator.h
- test/Analysis/vfork.c 114 additions, 0 deletionstest/Analysis/vfork.c
lib/StaticAnalyzer/Checkers/VforkChecker.cpp
0 → 100644
test/Analysis/vfork.c
0 → 100644
Please register or sign in to comment