Commit Graph

3818 Commits (82d033c9703159dbbe6c0e816169c2a1f0bfb2ef)

Author SHA1 Message Date
Peter O'Hearn 700adc2d44 [racerd] deep ownership 7 years ago
Sam Blackshear 735b0b2ef7 [quandary] include source/sink caller in error message 7 years ago
Jeremy Dubreil 75de2006dd [infer] make sure adding or removing parameters does not affect the bug hash on Objective C methods 7 years ago
Sam Blackshear 6799e7a7fb [dead stores] whitelist more RAII guard types 7 years ago
Daiva Naudziuniene f0f1e97ae2 [LockConsistency] Do not report lock consistency violation if an access path starts with a logical variable or a temporary variable. 7 years ago
Mehdi Bouaziz 78120bc9e2 Fix tests 7 years ago
Mehdi Bouaziz 1a117d7e09 Fix unique_ptr model 7 years ago
Sam Blackshear 3c28e0308a [quandary] clean up source type in report 7 years ago
Sam Blackshear 0ebdd369b0 [liveness] don't warn on dead stores of type CKComponentScope 7 years ago
Dulma Churchill ed740600de [cleanup] Remove hidden field and related code that is not used anymore. 7 years ago
Jeremy Dubreil 4aaa39fdd1 [infer][nullable checker] propagate object nullablilty when calling an Objective C instance method on a nullable receiver 7 years ago
Jeremy Dubreil d4c81a7798 [infer][nullable checker] model NSDictionary initialization as crashing on nil keys or nil values 7 years ago
Jeremy Dubreil e622e7b431 [infer][ondemand] cache the results of the on-demand analysis 7 years ago
Dulma Churchill 1d0b6050a6 [retain cycle] Move the code about retain cycle detection to a dedicated module 7 years ago
Dulma Churchill d25754597d [memory leaks] Adding model for CVPixelBufferRelease 7 years ago
Mehdi Bouaziz 0ed1a51944 [inferbo] Prepare for type models 7 years ago
Jeremy Dubreil 3e94c868f4 [infer] use the classname without the package name to compute the bug hash 7 years ago
Jeremy Dubreil 297195bb3c [infer] move the AccessPath module under the IR subdirectory 7 years ago
Sam Blackshear 8ef346acbe [logging] less logging from interproc module 7 years ago
Jeremy Dubreil ea29749671 [infer] simpler bug hash 7 years ago
Jeremy Dubreil 7dd78f4135 [infer][eradicate] example where the non-nullability is not correctly propagated 7 years ago
Jeremy Dubreil 10eef3bb1f [infer][java] add model for ImmutableList$Builder.add which crashes when given a null value 7 years ago
Jeremy Dubreil bff96f1d75 [infer] remove the use of the deprecated --stats option 7 years ago
Sam Blackshear 51cce869b3 [logging] no longer log a summary when we add it to the specs table 7 years ago
Sam Blackshear adde940be4 [cleanup] kill stats_mode option 7 years ago
Dulma Churchill 306a0a9182 [liveness] Do not report on variables with block attribute 7 years ago
Dulma Churchill 71fde88950 [IR] Adding support for variable attributes, adding __block for ObjC variables 7 years ago
Daiva Naudziuniene 9e2ecac204 [LockConsistency] Add ownership to container accesses for cpp 7 years ago
Sam Blackshear 74670cb0ba [dead stores] don't warn on dead stores of ScopeGuard's 7 years ago
Martino Luca 6b363ef063 [SQLite] Set the synchronous flag to OFF 7 years ago
Jeremy Dubreil 7b8a5a1a2b [infer] always run all the pre-analysis passes independently form the checkers that are being run 7 years ago
Sam Blackshear ca3f71a8b3 [experimental] report call chains reachable from onCreateLayout 7 years ago
Josh Berdine 63183f94f1 [racerd] Delay issue deduplication to differential reporting 7 years ago
Sam Blackshear 8d0f141974 [dead stores] identify dead stores involving struct values 7 years ago
Sam Blackshear 427dad5aa6 [racerd] keep adding accesses after prefix of a path is owned 7 years ago
Mehdi Bouaziz cd35b2f0a3 [inferbo] Moving Inferbo utils functions 7 years ago
Mehdi Bouaziz 73906d537d [dispatcher] Typename dispatcher 7 years ago
Mehdi Bouaziz 43758e9fd7 SourceFile: random stuff 7 years ago
Peter Goldsborough 5a06a187f2 Added is_outside_codebase check for FIELD_SHOULD_BE_NULLABLE 7 years ago
Sam Blackshear 087ff08b82 [quandary] eliminate spammy soft error for bad return summary 7 years ago
Jeremy Dubreil f08a9a3a71 [infer] fix the printing of analysis summaries to standard output 7 years ago
Dino Distefano dfb8b421ac Extending uninit to struct 7 years ago
Dulma Churchill 68beca1523 [objc] Refactor modeling of CoreFoundation and CoreGraphics libraries 7 years ago
Martino Luca 5588f5e1ea Invoke getconf correctly to extract the right number of cores 7 years ago
Martino Luca 09a807fe0a Add `late_epilogue` callback that gets invoked at the end of infer's lifecycle 7 years ago
Jeremy Dubreil 8ce15caffb [infer][java] model org.assertj.core.util.Preconditions 7 years ago
Sam Blackshear 164fa457e9 [quandary] treat any non-primitive endpoint formal as a source 7 years ago
Mehdi Bouaziz 168ce5a6bb [inferbo] Add alloc size safety condition 7 years ago
Mehdi Bouaziz d12371c6c3 [inferbo] Prepare for several kinds of safety conditions 7 years ago
Mehdi Bouaziz cb363d8dcb [inferbo] Modeled functions may also generate proof obligations 7 years ago
Jeremy Dubreil 1a4316065a [infer] no longer create the CSV report 7 years ago
Dulma Churchill c0f250c45e [liveness] Change the model of assert functions to include the handle failure function to avoid dead store fps 7 years ago
Josh Berdine a7c657da56 [lock-consistency] Only suppress truncated traces in Java 7 years ago
Jeremy Dubreil c195e67dfe [infer] remove the utility functions to export debug information in LaTeX 7 years ago
Jeremy Dubreil 85ab063983 [infer] remove the field `nodes` in the summary definition 7 years ago
Jeremy Dubreil 97927f6f46 [infer][checkers] remove the `-a biabduction` option and the related code 7 years ago
Jeremy Dubreil 716ff9b3d5 [infer] make `-a infer` an alias for `-a checkers` 7 years ago
Jeremy Dubreil a991b98d02 [infer][nullable checker] also report a null dereference error when adding nil key or value to NSDictionary 7 years ago
Sam Blackshear ceb0062cdd [cleanup] kill constant propagation pass in bi-abduction 7 years ago
Dulma Churchill 16689e6f22 [linters] Disable DISCOURAGED_WEAK_PROPERTY_CUSTOM_SETTER because of low fixrate 7 years ago
Dulma Churchill c90bcf1320 [objc] Model dispatch functions 7 years ago
Dino Distefano ba422a8ad8 Remove FPs for struct in ObjC 7 years ago
Dulma Churchill 45df254a99 [infer][PR] [C/C++] Encode filename into the Procname of global initializers 7 years ago
Sungkeun Cho 9deec6ffde [inferbo] Fix evaluation of Lindex 7 years ago
Jules Villard 82c9201bfc [reactive] keep specs around in reactive mode 7 years ago
Mehdi Bouaziz a73162d8e4 [dispatcher] + Capture function argument 7 years ago
Mehdi Bouaziz 7f3467b01d [dispatcher] Exact number of args 7 years ago
Jules Villard e993a4867d [debug] kill `Interproc.print_stats` 7 years ago
Jules Villard 6a8d71ad81 [style] s/_foo/foo_/ when `foo_` is not unused 7 years ago
Jeremy Dubreil 354b46f8ca [infer][nullable checker] no report for objects created by URLWithString: 7 years ago
Jeremy Dubreil a4428a4cae [infer][nullable checker] report an error when a nullable value is stored into an NSArray without being checked for null 7 years ago
Sam Blackshear 33450ab58b [cleanup] remove language from ProcAttributes 7 years ago
Sam Blackshear dbfbf9cf01 [racerd] make nontrivial domain types private 7 years ago
Sam Blackshear 181959216b [cleanup] remove harness-related code 7 years ago
Mehdi Bouaziz d26e227267 [c++] Procname dispatcher 7 years ago
Mehdi Bouaziz 55ff444a74 [inferbo] Sem.eval do not need a location 7 years ago
Jeremy Dubreil 956d6d0a1d [infer][nullable checker] better error messages for nullable violations involving Clang materialized variables 7 years ago
Sam Blackshear 8665386b8a [quandary] report USER_CONTROLLED_SQL_RISK on flows from endpoint -> SQL 7 years ago
Sam Blackshear eb0a457b02 [clang] translate TypeAliasDecl 7 years ago
Peter O'Hearn e7d9223597 [racerd] specialized error message for races involving litho components 7 years ago
Sam Blackshear d90bc24657 [clang] translate UsingDecl 7 years ago
Jules Villard 2ff05385dc [driver] do not run the analysis in Buck flavors sub-processes 7 years ago
Mehdi Bouaziz cdd3208cd6 [buck] Automatically filter target kinds on target patterns and aliases 7 years ago
Mehdi Bouaziz 262bb4171d [buck] Non compilation-database do not support _test targets 7 years ago
vsilyaev@broadcom.com f63f48a52e [infer][PR] Use SQLite in a way that is compatible with current state of WSL 7 years ago
Dulma Churchill 3382b1b88a [iOS] Make xcpretty integration not default anymore, given that it has problems 7 years ago
Sam Blackshear 97f3af15f3 [quandary] support multiple sanitizer kinds in C++ 7 years ago
Jeremy Dubreil 1709db4089 [infer] always store the procedure description in the summary 7 years ago
Jeremy Dubreil 52dca67de9 [infer][eradicate] no longer modify the attributes in the summary 7 years ago
Sam Blackshear 2b0335f32b [quandary] track sanitizers applied in trace domain 7 years ago
Sam Blackshear faef207d62 [quandary] propagate taint across unary/binary operators 7 years ago
Sam Blackshear e2f38423e5 [cleanup] delete repeated calls checker 7 years ago
Dulma Churchill a1010fb9fc [linters] Ading predicate is_in_objc_class_named and make a verbose rule more targeted 7 years ago
Vivek Dhiman d8be5e0874 Added 'is_method_called_by_superclass'. A new predicate that checks if the caller name is super class in a 'method call'. 7 years ago
Sam Blackshear 7428f36fbd [quandary] turn off dynamic dispatch handling in Java 7 years ago
Sam Blackshear 758048078b [quandary] move sanitizer specifications from TaintSpec -> Trace 7 years ago
Sam Blackshear d392ed12a8 [quandary] remove detection of likely resource id's as sources 7 years ago
Jules Villard 5867c598f4 [cfg] unbox the type 7 years ago
Jules Villard 45d5d878cf [cfg] minor renamings 7 years ago
Daiva Naudziuniene e07a20ea6d [reporting] Report access path from the initial sink rather than the final sink. 7 years ago
Dulma Churchill b9a56a6c52 [clang] Specialize also c functions with blocks as parameters 7 years ago
Jeremy Dubreil 23101f4e57 [infer][eradicate] Use the summary of callee returned by the on-demand analysis call instead of the one in the specs cache 7 years ago
Dino Distefano aa54b1b035 Extending uninit analysis to struct 7 years ago
Philip Cohn-Cort 54eb75cb63 [infer][PR] Fix typo in RacerD.ml 7 years ago
Angel (scout387) 15f664eab3 [infer][PR] Fix Spelling Error 7 years ago
Sam Blackshear 890afe3094 [HIL] make it easier to customize-specialized abstract interpreter 7 years ago
Jeremy Dubreil adf5bb4a41 [infer][clang] the option `--cxx` no longer forces the option `--cxx-infer-headers` 7 years ago
Daiva Naudziuniene 6e31e691c0 [HIL] Do not drop right-hand HIL expression in the translation for SIL. 7 years ago
Josh Berdine f62ab09e61 [ocamlformat] Upgrade ocamlformat to v0.2 from opam 7 years ago
Dulma Churchill 794c8677fd [clang] Executing methods with blocks as parameters by instantiating the parameters with current blocks 7 years ago
Jeremy Dubreil 4a1eae048a [infer][clang] fix unitialized value false positive for values not initialized in the throw branch 7 years ago
Dulma Churchill 18782be7c9 [linters] Adding a new predicate for in an ObjC class that is subclass of some class 7 years ago
Martino Luca a57a6078bc Never close db connection 7 years ago
Stephan Walters b07269ab71 [infer][PR] Fixed type 7 years ago
anuolu 2ba4d7b0f1 [infer][PR] fixed spelling 7 years ago
Josh Berdine 2defebe9e7 [lock-consistency] Skip prefixes of blacklist entries 7 years ago
Dino Distefano 979c476fa3 Do not report when defining an array 7 years ago
Dulma Churchill acd68a00d1 [IR] Refactor away a function for converting cfg nodes given a function for converting instructions 7 years ago
Dulma Churchill 718747e39c [clang] Add new procname type for specializing methods with block parameters 7 years ago
Dulma Churchill 5902f6363b [objc] Add a new call flag for calls with objc blocks as parameters 7 years ago
Dominic Cooney c542b65a42 Add a lint rule warning about ObjC custom setters for weak properties 7 years ago
Daiva Naudziuniene ff475e43e4 [LockConsistency] Do not merge read/write with container read/write 7 years ago
Jeremy Dubreil b2a3f3b8e4 [infer] better error messages for the nullable checker 7 years ago
Jeremy Dubreil ebea2a6ba1 [infer][clang] the nullable checker should not warn on pointer re-assignment 7 years ago
Sam Blackshear 29fe7d1689 [quandary] thrift services as sources + remote code execution risk issue type 7 years ago
Jules Villard ed55fc63f2 [clang] use a more efficient `var_decl_info` 7 years ago
Jules Villard 525a94e470 [siof] do not generate dummy derefs in initializer code 7 years ago
Jules Villard 0f1bdf664d [clang] static data members are external globals unless defined in the file 7 years ago
Jeremy Dubreil 4283bf2602 [infer][java] re-use the Eradicate models for Preconditions.checkNotNull and the like 7 years ago
Jeremy Dubreil b3f75da37e [infer][nullable checker] only report once when the return of a nullable method is derferenced several times 7 years ago
Daiva Naudziuniene bb90c94939 [LockConsistency] Checking for both type ObjC_Cpp and C to include c-style functions. 7 years ago
Dulma Churchill f739d73ed5 [utils] Move function for appending lists without duplicates to the IList method 7 years ago
Sam Blackshear d221a0ae42 [racerd] don't report INTERFACE_NOT_THREAD_SAFE on thread-confined interfaces 7 years ago
Josh Berdine 150bcff04b [config] Add separate option for limit on number of filtered issues 7 years ago
Josh Berdine ec281799d5 [lock-consistency] Skip more, and in should_analyze_proc instead of get_summary 7 years ago
Dino Distefano ce711d7e8a [uninit] Reporting parameters calls which are not passed by reference 7 years ago
Daiva Naudziuniene 2e89bfb4f4 [LockConsistency] Do not analyze/report on destructors 7 years ago
Mehdi Bouaziz 15ffac4e02 [inferbo] Move models to their own module 7 years ago
Mehdi Bouaziz eb33fb7a97 [inferbo] Use a dispatcher for models 7 years ago
Jeremy Dubreil 8274453277 [infer][clang] the nullable checker should not warn on Objective C method call when the receiver is nullable 7 years ago
Jeremy Dubreil d85d185402 [infer][java] Enable the @Nullable checker on Java 7 years ago
Jeremy Dubreil 5e1b7faf97 [infer][clang] the nullable checker should not report on methods that have already been checked for null 7 years ago
Jeremy Dubreil 2ea11de8b6 [infer][clang] consider the symetrical case for the null check 7 years ago
Sam Blackshear ad522a8b19 [dead stores] don't warn on likely-harmless dead stores to default values 7 years ago
Jeremy Dubreil 0a1971a08d [infer][biabduction] keep the files in the trace even when the exact location of the method is not known 7 years ago
Jeremy Dubreil b594cbdc5a [infer][nullable] no longer fail hard when the nullable suggestion checker cannot compute the post of a procedure 7 years ago
Sam Blackshear e2a75f2b46 [hil] always run liveness analysis before HIL lowering 7 years ago
Jeremy Dubreil 183cefdad4 [infer][java] merge identical bugs in the Buck integration for Java 7 years ago
Jules Villard 37847cc10a [clang] add infer C++ #include models when siof is enabled 7 years ago
Sam Blackshear 4ee4ebb42a [hil] don't move any accesses across lock acquisition/release 7 years ago
Josh Berdine 15d09ccac8 [config] Add first step of generalized filtering system 7 years ago
Daiva Naudziuniene ccd2c76344 [LockConsistency] Adding ownership of locals for c-style functions 7 years ago
Martino Luca 259beab26a [Infer] Refactor sqlite-related code into its own module 7 years ago
Dino Distefano c98570f899 do not report on captured vars in objc blocks 7 years ago
Mehdi Bouaziz 6047264e4a [bug hash] Attempt for a better hash 7 years ago
Sungkeun Cho 042dd7d9cb [inferbo] revise semantics of vector::data 7 years ago
Sam Blackshear 5e910929be [quandary] handle taint propagation in copying of structs/via derefs of pointers to structs 7 years ago
Jules Villard 185e7f7131 [java] support Java9 7 years ago
Daiva Naudziuniene 535ba01a25 [LockConsistency] Model std::unique_lock::try_lock 7 years ago
Josh Berdine bb0a42d25d [thread-safety][c++] Skip destructors 7 years ago
Josh Berdine c2a67bb300 [thread-safety][c++] Do not record accesses to static locals 7 years ago
Josh Berdine 149deb97ed [thread-safety][c++] Model std::unique_lock::owns_lock 7 years ago
Josh Berdine 3bab37b261 [thread-safety][c++] Change to LOCK_CONSISTENCY_VIOLATION issue type 7 years ago
Sam Blackshear 67c45bed78 [quandary] fix invariant 1: "sink(s) with only non-footprint source" violations 7 years ago
Dulma Churchill 3a3e1893d6 [objc] Fix bad footprint caused by incorrect translation of blocks as arguments 7 years ago
Jules Villard 38804101d9 [buck] newer Buck passes tests in STRICT_MODE 7 years ago
Dino Distefano a75073907c Fix uninit for temp variables 7 years ago
Sam Blackshear 47ab1a2e67 [thread-safety] skip reporting on truncated traces 7 years ago
Sam Blackshear 386a6d718d [labs] update the lab text to reflect new CLI 7 years ago
Sam Blackshear 5f6d3a0d7f [quandary] new issue type for untrusted variable length array creation 7 years ago
Sam Blackshear 6ea6c74a5c [quandary] add new issue types for sql injection and shell injection 7 years ago
Jules Villard fc20d8a6cb [dev] fix merlin 7 years ago
Dulma Churchill 3799dfa4bb [dead store objc] Do not report dead store in a captured variable of an objc block 7 years ago
Dulma Churchill b95c4e34d6 [dead store objc] Whitelisting macro variables in dead stored checker for Objective-C 7 years ago
Mehdi Bouaziz a2f69050ac [buck] Unify buck command line arguments recognition, buck query invocation, and support target patterns and aliases 7 years ago
Jules Villard 6c9cee700b [clang] do not use C++ header models unless biabduction or inferbo is active 7 years ago
Jules Villard 61b2c9105b [cli] crash if capture happens with conflicting C++ header models 7 years ago
Sam Blackshear 0a5c10c8ef [hil] don't let clients pass `debug:true` 7 years ago
Sam Blackshear fe89c5688c [build] add missing `Typ.void_star` type 7 years ago
Dino Distefano 0117539dd9 Fix debug flag in uninit 7 years ago
Sam Blackshear 9bafbe0e1e [hil] don't move reads/writes outside of a critical section 7 years ago
Sam Blackshear 5e9e96a342 [hil] don't crash on deref of magic address 7 years ago
Jules Villard 71ed554c57 [cli] introduce `--linters` and `--capture` 7 years ago
Dulma Churchill e7907032bf [clang] Remove allocating blocks 7 years ago
Sam Blackshear b67a82636c [cleanup] delete unused lock builtins 7 years ago
Sam Blackshear 2d29b47855 [traces] allow reported traces to return an issue type 7 years ago
Jeremy Dubreil c4949f372e [infer][clang] the nullability checker was not reporting when dereferencing a field of a nullable object 7 years ago
Jeremy Dubreil 55c585e1e0 [infer][biabduction] remove the bi-abduction based check for uninitialized values 7 years ago
Jeremy Dubreil a671307363 [infer][clang] fix test failures caused by unused code compiler warnings 7 years ago
Anders Papitto a92ba5a2a9 Eradicate: model get and remove as nullable for stdlib Map variants 7 years ago
Sam Blackshear d2433476a5 [quandary] fix heuristic for recognizing buffer access 7 years ago
Sam Blackshear 3d6168cd0d [hil] add HIL wrapper for abstract interpreter 7 years ago
Josh Berdine 6f8f7140bb [frontend][tests] Record test form ptr_mem.cpp 7 years ago
Dulma Churchill 08c4c33e7d [clang] Remove the translation of enumerateWithBlocks that causes FPs dead store. 7 years ago
Josh Berdine c1e742536d [frontend][c++] Translate pointer-to-member expressions 7 years ago
Jules Villard df0491272c [compilation db] add support for commands with `"arguments" and no `"command"` field 7 years ago
Dulma Churchill 2f8b749045 [objc] Better names for the block translation and using temp variables 7 years ago
Jeremy Dubreil ef556e048e [infer][java] for the Buck integration, simply concatenate the lists of bugs found on every target 7 years ago
Jeremy Dubreil 8b7208df62 [infer][eradicate] fix the position of the comments in the list of models 7 years ago
Sam Blackshear c65569a868 [quandary] sanity checks for preventing oversized summaries 7 years ago