530 Commits (d5848d8c944f0c08abc760b8cb7aa42ee224131a)

Author SHA1 Message Date
Jeremy Dubreil 91c25fe636 revert the use of the jar cache
9 years ago
Daiva Naudziuniene 10f1036937 Normalizing source path.
9 years ago
Sam Blackshear 04f88d60ea kill dead code created by D3288789
9 years ago
Sam Blackshear f45a7ec1eb using taint kind in taint sink specifications
9 years ago
Dulma Churchill de615594df Skip whitelisted functions form trace
9 years ago
Sam Blackshear 25578de26d redesigning abstract interpreter to allow easy composition of analyses
9 years ago
Andrzej Kotulski 99a58e691d Report empty vector access in tabulation.ml
9 years ago
Sam Blackshear e3e80dd2f0 don't report on private unguarded accesses
9 years ago
Sam Blackshear 36ee3730aa reporting error on unprotected access to field annotated with @GuardedBy
9 years ago
Andrzej Kotulski 8ccdff649f Report empty vector access instead of null dereference
9 years ago
Josh Berdine 1177f21aa4 Optimize deserialization retrying
9 years ago
Josh Berdine 3fe1cbb6ec Fix bug in sym_eval
9 years ago
Josh Berdine 66faedbf15 Optimize attribute loading
9 years ago
Jules Villard dbb6d08254 cleanup inferconfig stuff now that everything has been ported to the CLI
9 years ago
Jules Villard 21367b0e98 add matchers from inferconfig to the CLI
9 years ago
Jules Villard 9748a8f1a3 add {enable,disable}_checks from inferconfig to the CLI
9 years ago
Jules Villard 8f154144c0 add skip_clang_analysis_in_path from inferconfig to the CLI
9 years ago
Jules Villard aec3d0ccdf add skip_translation_headers from inferconfig to the CLI
9 years ago
Josh Berdine d8f50c748b Revise the units of measure for perf stats
9 years ago
Jules Villard e695e14ee1 add various filter options from inferconfig to the CLI
9 years ago
Jules Villard 3fe032ccf0 accept any option through .inferconfig
9 years ago
Sam Blackshear 9fdd094a89 refactoring annotation reachability checker to allow custom src/sink annotations
9 years ago
Peter O'Hearn 6f951e70d3 Non-resource model for locks
9 years ago
Sam Blackshear 3cea4279b6 adding locked proof obligation when lock is not held
9 years ago
Dulma Churchill 83e6ab1a20 Blacklist translation of files in inferconfig
9 years ago
Dulma Churchill 93fcf7be9f Skip cpp models from traces
9 years ago
Sam Blackshear a45844f409 identify reads of fields protected by @GuardedBy
9 years ago
Sam Blackshear 8cff90ed21 adding find_map_opt utility function
9 years ago
Sam Blackshear cfa7739963 hiding implementation of var
9 years ago
Dino Distefano f37ed66888 Added new taint source/sink for iOS
9 years ago
Josh Berdine acb227ec30 Pre-parse inferconfig_home and project_root
9 years ago
Josh Berdine 88a2da91fc Add `make -C infer/src test_build` to `make test`
9 years ago
Sam Blackshear 83f511107b stop reporting handler leaks
9 years ago
Jules Villard 944176bf67 load json config files lazily and at most once
9 years ago
Sam Blackshear 6e75c1e33f delete old preanalysis code
9 years ago
Sam Blackshear 3b6fa0939b adding taint kind to taint source specifications
9 years ago
Sam Blackshear 258e765d4e adding integrity source/sink annotations
9 years ago
Josh Berdine f1dabb747c Ease down InferPrint debug printing
9 years ago
Jules Villard 9de3f9792c print legend for the output
9 years ago
Josh Berdine 3e2fa59262 Reimplement command line options
9 years ago
Dulma Churchill d73d4ea177 Getting a more precise type when creating ObjC objects
9 years ago
Sam Blackshear c92bbf362b removing need to pass around lists of temporary id's in the frontend
9 years ago
Sam Blackshear 3f49f3a1d4 using liveness to add removetemps instructions
9 years ago
Sam Blackshear 0becc32a88 factoring Node module out of CFG
9 years ago
Sam Blackshear 20925df57c removing unused deallocate param in nullify instr
9 years ago
Sam Blackshear 4fd2f52fe8 new analysis for adding nullify's
9 years ago
Jeremy Dubreil a352c0ffa8 Lazily load summaries from zip files
9 years ago
Jeremy Dubreil 6dfd1a317e Some cleanup and renaming
9 years ago
Josh Berdine 12e42fefd9 Fix perf stats filename for relative path clusters
9 years ago
Sam Blackshear 6f6da12b2c don't nullify params/locals at beginning of procedure
9 years ago
Dulma Churchill f88e5be395 Move the npes regarding smart pointers from B5 to B1.
9 years ago
Sam Blackshear 442cf66fdc don't fail when nullifying a var not in the prop
9 years ago
Sam Blackshear 90a5a5912f allowing extra data to be packaged along with procCfg
9 years ago
Jeremy Dubreil 71b6581823 No longer save the list of SKIP_FUNCTION warnings in the report
9 years ago
Dulma Churchill 54a3bdd455 Load the attribute file to get the getter/setter info from the procdesc
9 years ago
Jeremy Dubreil 8072d2c1e5 report errors when all the postconditions are error states
9 years ago
Jeremy Dubreil 0737b9231d make Tabulation.prop_get_exn_name return an option type
9 years ago
Andrzej Kotulski 2989105318 Decrease number of allocations in Prop.typ_normalize
9 years ago
Sam Blackshear 77791b7e8e warn on deref of nullable skip function
9 years ago
Sam Blackshear 843bcc1576 support tainting of annotated fields
9 years ago
Dino Distefano 83c1bbc832 Implementing a checker to warn initialization of global variables with mehod calls.
9 years ago
Peter O'Hearn 50081c7ccb alloc/dealloc model for locks
9 years ago
Dino Distefano a15095c854 Introducing a mechanism of white/black listing of checks/error reporting based on .inferconfig
9 years ago
Dulma Rodriguez 7671fe755f Skip translation and checks from headers in specified folders
9 years ago
Sam Blackshear a10d7099c7 warning on deref of nullable retvals
9 years ago
Sam Blackshear 3e8b681135 big refactoring to improve API for subtyping related operations
9 years ago
Josh Berdine 5710a3e887 Do not special case default InferPrint results_dir
9 years ago
Dulma Rodriguez 8a1288860b Make alloc save a given procanem in the path
9 years ago
Cristiano Calcagno 45621ab171 Fix two issues in the prover.
9 years ago
Sam Blackshear e1e62be243 supporting new @PrivacySource/PrivacySink annotations
9 years ago
Jules Villard 70c8494625 opacify the type of node ids
9 years ago
Jules Villard ac6ef1d9f6 kill Sil.Goto
9 years ago
Josh Berdine a5e1a6c77e Report time and memory stats
9 years ago
Josh Berdine b881887bf2 Refactor Utils.SymOp into separate module
9 years ago
Josh Berdine e1020c8ebe Remove -open(Utils) compile flag hack
9 years ago
Sam Blackshear 378ab69558 consistent API and usage for extracting Java types from strings
9 years ago
Josh Berdine 213fe46c89 Move ml_loc and operations to Logging
9 years ago
Sam Blackshear e54db73bab pass tenv to the transfer functions
9 years ago
Cristiano Calcagno dbbf3b8758 Fix issue in merge of captured buck targets where .start file was overwritten.
9 years ago
Sam Blackshear b5b4d436ba ContentResolver methods that open files are sinks
9 years ago
Dino Distefano 1b21869108 Disabling the NSNotification center error from the backend
9 years ago
Sam Blackshear 7166a4856c nullifying vars captured in blocks
9 years ago
Jules Villard 660250dcf7 move Dom.JoinState to its own file
9 years ago
Cristiano Calcagno 8759017f7c Store proc attributes inside bucket directories.
9 years ago
Sam Blackshear aa1588372e using address-taken checker in liveness analysis
9 years ago
Cristiano Calcagno d2ff52e17c Fix some issues with merging the capture from several buck targets.
9 years ago
Josh Berdine 9539b430f7 Create symlinks in near future when merging
9 years ago
Jules Villard f813b801ee change external buckversion
9 years ago
Josh Berdine b4bc7904f5 Move SymExec.lookup_java_typ_from_string to Tenv
9 years ago
Josh Berdine 61d2a50809 Simplify interface of SymExec
9 years ago
Josh Berdine fd062cf736 Refactor SymExec.ModelBuiltins into toplevel module
9 years ago
Cristiano Calcagno 509a666ee0 Refactor Sil.pvar into a separate module.
9 years ago
Cristiano Calcagno 53702e43e8 Created IR folder for the intermediate representaion files.
9 years ago
Sam Blackshear c03f39f20c Fixing some issues with Obj-C blocks
9 years ago
Josh Berdine 2dcd93204c Refactor SymExec.Builtin into toplevel module
9 years ago
Josh Berdine 6ae225dd62 Merge captured targets after parsing args
9 years ago
Cristiano Calcagno d41d452b67 Make eradicate work in the absence of procdescs for callees.
9 years ago
Josh Berdine 97bc95e8c9 Allow relative or absolute names in ondemand_file
9 years ago
Dulma Rodriguez 0c5bca7a4b Translate arrays created with new
9 years ago
Jules Villard d95ed8e9a7 write filenames as ascii only
9 years ago
Josh Berdine 63b1df9966 Print usage message when cl arg parsing fails
9 years ago
Cristiano Calcagno e34e369835 Complete command-line support for reactive mode with buck on iOS.
9 years ago
Dino Distefano fc5d4897a5 Registered Observer check done by front-end
9 years ago
Cristiano Calcagno b7bc95e1f9 Add option -merge_captured to merge the result of capture for different targets.
9 years ago
jrm af80cdc168 Enable the printing of OCaml exceptions stack traces
9 years ago
Cristiano Calcagno c198d76631 Clean up the Procname module, and remove remaining assert false
9 years ago
Sam Blackshear 91ae1baebc massive refactoring of harness generation
9 years ago
Sam Blackshear f9bffe1e87 move remove_tmps and add_abstraction steps into the pre-analysis
9 years ago
Sam Blackshear dec843f5f5 copy-propagation analysis + tests
9 years ago
Sam Blackshear 2991bd3fc3 using address-taken analysis for nullify placement rather than alias analysis
9 years ago
Sam Blackshear ab1ac822f6 Replacing Ctuple with Cclosure
9 years ago
Josh Berdine 66d865ff6a Accept command line options via environment vars
9 years ago
Cristiano Calcagno 86304b3d9c Prevent assert false from occurring on Java functions in Procname.
9 years ago
Jules Villard 4384870b44 move utils.Escape to its own file
9 years ago
Sam Blackshear 7d10105060 moving tracecalls around so tests will pass on open-source build
9 years ago
Dulma Rodriguez 10a14a7324 Translate CXXTypeidExpr
9 years ago
Sam Blackshear 63f8a3e709 refactoring facebook-specific and open-source taint lists to fix open-source tests
9 years ago
Cristiano Calcagno 010b57e7cc Add --continue option for reactive analysis to continue the capture.
9 years ago
Cristiano Calcagno 3c4013d363 In debug mode, write html files for headers too.]
9 years ago
jrm cc4fcd6837 Add support for modeling @Expensive methods using .inferconfig
9 years ago
Cristiano Calcagno 909473f3da Clean up code to produce html pages of analysis results in debug mode.
9 years ago
Cristiano Calcagno e71ae11cae Activate timeout logging in the progress bar when developer mode is on.
9 years ago
Cristiano Calcagno b2969820a4 Avoid loading the cfg explicitly to find a proc desc.
9 years ago
jrm 81a59515e4 Simplify the code to collect the list of @SuppressWarnings annotations
9 years ago
Sam Blackshear 8d62fd12ca pretty-printable versions of common data structures
9 years ago
Cristiano Calcagno a06d854364 Make the API of Exe_env return options instead of throwing exceptions.
9 years ago
jrm 793911c847 Add the possibility to analyze procedure descriptions on-demand without serialization
9 years ago
Sam Blackshear 7fb8f8b651 adding type-specific taint error messages
9 years ago
Sam Blackshear 15f0c7e384 adding "kind" for taint attribute
9 years ago
Cristiano Calcagno 7c464c5bac Cleanup toplevel InferAnalyze and include procedures in the progress bar.
9 years ago
Cristiano Calcagno 71f81f102c Restore printing of html for procedures
9 years ago
Cristiano Calcagno 494dabf638 Simplify code in SymExec: cleanup and look up cfg.
9 years ago
jrm e123635122 Add support for @SuppressWarnings for Gradle and Ant projects.
9 years ago
Dulma Rodriguez ef3e516f6f Translate ImplicitValueInitExpr
9 years ago
Sam Blackshear 2d89426170 fixing tenv_lookup
9 years ago
Sam Blackshear 337d2cc537 fixing tenv_add to add only struct_typ's
9 years ago
jrm 082ca6a90a Initial support for lazy dynamic dispatch
9 years ago
Sam Blackshear 82f2b7b6de make tenv a typename -> struct_typ map
9 years ago
Sam Blackshear 878bf938eb kill Tenum
9 years ago
Dino Distefano b7d6f2a3bd Fixed problem with null pointer dereference in c library models.
9 years ago
Cristiano Calcagno 89a2f2a7b4 Keep only on-demand infrastructure and delete the rest or the infrastructure.
9 years ago
Cristiano Calcagno e0d5847eb8 Deprecate incremental
9 years ago
Dino Distefano c868f51b2d Introducing checker for observer of notification centers
9 years ago
Cristiano Calcagno 021cf213a6 Bypass the interprocedural algorithm in Fork with ondemand, and replace it with a simple iteration.
9 years ago
jrm 8ce56968d6 no longer report NULL_TEST_AFTER_DEREFERENCE in tracing mode
9 years ago
Cristiano Calcagno f3ba6c3906 Revamped Timeout module to save and restore seconds and symops.
9 years ago
Josh Berdine 2c489371dd Revert "[ondemand][backend] Turn on on-demand infrastructure by default"
9 years ago
Peter O'Hearn bec08365de Part 1 of double unlock, locks as resources
9 years ago
Cristiano Calcagno 16402cddc0 Save global state for abstraction for on-demand.
9 years ago
Cristiano Calcagno 90489d7f54 Always analyze procedures when analyze_models is set.
9 years ago