302 Commits (d11444f7d315009f64f9d73e4d872821b410084c)

Author SHA1 Message Date
Dulma Churchill 4769c481ad [linters] Add a linter for checking const pointers to Objective-C classes
7 years ago
Sam Blackshear 983bcbbae7 [traces] add matches function for extra flexibility in expanding traces
7 years ago
Jules Villard 2adf654950 [sql] add proc attributes DB
7 years ago
Sam Blackshear 375b808394 [access tries] max width config
7 years ago
Sam Blackshear 14aef012f6 [quandary] allow specifying globals as sources
7 years ago
Jules Villard b5ff17825f [log] print sensible backtrace and message on `Logging.die`
7 years ago
Jules Villard 1c375a17ac [log] die more appropriately
7 years ago
Sam Blackshear 81fbcf7501 [access trie] make max depth configurable
7 years ago
Sam Blackshear 028a28752b [access trees] function for computing depth
7 years ago
Sam Blackshear 5d578cf196 [quandary] make it possible to report taint errors on footprint sources again
7 years ago
Sam Blackshear fc828640ea [quandary] remove concept of a footprint source
7 years ago
Sam Blackshear 94ceebfef8 [quandary] represent footprint as unified set of access path rather than conjunction of special sources
7 years ago
Sam Blackshear 3e6e76a2b2 [quandary] fix widening bug
7 years ago
Jules Villard 69299ba675 [filtering] improve issue type filtering CLI
7 years ago
Sam Blackshear 1157364a09 [preanalysis] kill copy-propagation code
7 years ago
Sam Blackshear 6d001ee566 [access paths] optional index expression for arrays
7 years ago
Sam Blackshear f83284ad7c [access paths] make raw access paths the default, move abstraction into AccessPath.Abs module
7 years ago
Jeremy Dubreil 7680c83f45 [infer][build] enable the OCaml compiler unused value declaration warning
7 years ago
Jules Villard cfecff03c3 [reportdiff] allow "current" and "previous" to be specified in any order and among other fields in file_renamings.json
7 years ago
Jeremy Dubreil e0ad3a9d75 [infer][differential] remove the option to prevent the conflicts between Eradicate and Biabduction
7 years ago
Sam Blackshear ecf9c1b402 [quandary] expose actuals to Source.get
7 years ago
Mehdi Bouaziz e828b0bf8a [pp] hv box for printing collections
7 years ago
Josh Berdine bab3d81cb0 Convert Reason to OCaml, and auto-format OCaml
7 years ago
Andrzej Kotulski 61aa7aaae5 Move Fieldname module inside Typ
8 years ago
Dulma Churchill 7d680b3b0c [linters] Add an optional doc_url field to linters to specify the url to some documentation online.
8 years ago
Jules Villard b158f5cd30 [reportdiff] add filtered out bugs to preexisting
8 years ago
Martino Luca 20a6131ccf Compute differential of certain files only, if desired
8 years ago
Sam Blackshear 97bf3324c8 [quandary] add indexes to sinks
8 years ago
Jules Villard b50f9f2695 [police] open IStd everywhere
8 years ago
Sam Blackshear aa50d90a7d [quandary] get rid of report_reachable bool in taint specifications
8 years ago
Sam Blackshear 7d828fff93 [quandary] make it possible to specify code that should be modeled even if we have a summary
8 years ago
Sam Blackshear 4ef487928c [quandary] make passthroughs optional
8 years ago
Sam Blackshear 38d3946c71 [quandary] support for basic return value sanitizers
8 years ago
Martino Luca 34a0efd626 Add optional field in serialized output
8 years ago
Sam Blackshear 32ead76a3b [absint] make Set and Map functors take an ordered type
8 years ago
Jules Villard 93ec47a5f4 [IR] add stride to array type
8 years ago
Jules Villard 709376945f [config] migrate help to use man pages
8 years ago
Sam Blackshear 6af6ef35ec [quandary] support sources that taint a pointer arg or arg passed by ref rather than the return value
8 years ago
Sam Blackshear 52ed886886 [quandary] log error to summary instead of pdesc
8 years ago
Jules Villard 29f7967f26 [build] remove unused values
8 years ago
Sam Blackshear 19da59cf19 [hil] functor for easily creating HIL analyses
8 years ago
Sam Blackshear 80030c8de7 [quandary] delegate handling of assignment to HIL
8 years ago
Jeremy Dubreil b3af2ad4b6 [infer][ondemand] The source parameter from the analysis callback was never used
8 years ago
Sam Blackshear d248780645 [quandary] delegate cast handling to HIL
8 years ago
Andrzej Kotulski 029499cd9d [IR] add type qualifiers to Typ.t
8 years ago
Jules Villard f232e3bd8d [build] fatal on warnings 21, 52, 57
8 years ago
Sam Blackshear 92011790c2 [quandary] optimize handling of unknown code by adding notion of 'taintable types'
8 years ago
Dulma Churchill f4bc0db2b4 [clang] Make capture with simple clang command be a method call
8 years ago
Jeremy Dubreil f5adab59ec [infer][checkers] Prevent the race conditions between the summaries passed as parameter to the checkers and the summaries from the specs table
8 years ago
Andrzej Kotulski 71702a13dc [IR] More detailed type for Fieldname.t
8 years ago
Andrzej Kotulski e6ebad394e [IR] Make qualified names type safe
8 years ago
Andrzej Kotulski 7c64d217f2 [IR] Refactor Ident.fieldname _*into Fieldname module
8 years ago
Sam Blackshear c5d7762f60 [access trees] expose join of nodes and fold over nodes
8 years ago
Sam Blackshear 69fe80346c [quandary][perf] Always use the location of the pdesc in footprint sources
8 years ago
Jeremy Dubreil 30ae60461e [infer][backend] Fail when no callback is registered to run the analysis on-demand
8 years ago
Dulma Churchill fca8322c1f [linters] Save the linters definition file in the report.json
8 years ago
Martino Luca 5448a95ce7 [Infer][Localise] Group all issue types in one place, and provide their human-readable representation
8 years ago
Andrzej Kotulski e363958d34 [codemod] Move `Procname` into `Typ.Procname`
8 years ago
Andrzej Kotulski ef79b20e17 [clang] Inline namespaces disappear, simplify infer's code
8 years ago
Martino Luca f8a65e698c Add differential and filtering functionalities to Infer, to compare two analyses
8 years ago
Dulma Churchill 01c1d9f112 [linters] Remove new lines from linters messages
8 years ago
Cristiano Calcagno 9a06a859e2 Deprecate IList part 3.
8 years ago
Cristiano Calcagno b1b5460529 Deprecate further IList functions
8 years ago
Cristiano Calcagno 731dead406 More IList deprecation: fold functions
8 years ago
Jules Villard f1698f3816 [clang] reimplement fuzzy matching of list of qualifiers
8 years ago
Jules Villard 7e1f1f9101 [test] make tests pass in clang-only or java-only mode
8 years ago
Sam Blackshear ae0df5dc57 [access paths] kill type of field access and replace with utility functions for recovering type
8 years ago
Sam Blackshear 919b35f50a [quandary] better taint propagation for Intent's
8 years ago
Cristiano Calcagno 60916922c6 Deprecate more IList functions and use Core List instead
8 years ago
Dulma Churchill 9ac65a7b1d [linters] Take current os version into account in the unavailable api check
8 years ago
Sam Blackshear a4efc7bba7 [cleanup] Simplify PrettyPrintable.Make functors
8 years ago
Sam Blackshear 4627bb6f48 [absint] simplify `AbstractInterpreter.Make` functor by hiding `Scheduler` parameter
8 years ago
Cristiano Calcagno 5c12d98d37 Deprecate IList module in favour of Core List
8 years ago
Sam Blackshear 38a336694a [quandary] improve taint propagation for unknown calls
8 years ago
Kihong Heo cef2f0e055 Inferbo
8 years ago
Cristiano Calcagno b1421bc27f [BetterEngineering] Remove remaining uses of polymorphic equality
8 years ago
Sam Blackshear df5798336b [cleanup] give AccessPath.raw its own module
8 years ago
Sam Blackshear 2f69191c7e [backend] expose underlying Procdesc.Node from ProcCFG nodes
8 years ago
Sam Blackshear 2add2954da [checkers] factor out FormalMap into its own module
8 years ago
Sam Blackshear d86f777132 [quandary] considering methods of subclasses of Activity, SharedPreferences etc. as sources/sinks too
8 years ago
Sam Blackshear 9c48178e4a [quandary] model some formals of Webview methods as tainted
8 years ago
Sam Blackshear 8d0f6e822c [absint] don't require domains to define their initial state
8 years ago
Sam Blackshear 374ee12792 [traces] adding Sink.Make functor for easier sink creation
8 years ago
Sam Blackshear 6bf38931ce [traces] adding Source.Make functor for easier source creation
8 years ago
Sam Blackshear 06e0f6fbc9 [quandary] support tainted formals
8 years ago
Sam Blackshear 2a567d3abe [quandary] summaries are access trees too
8 years ago
Josh Berdine 7834c95bc8 Silence deprecation warnings
8 years ago
Josh Berdine e438314776 Divide Utils into Utils, Pp, and IStd
8 years ago
Josh Berdine de2e6c9d88 Core.Std.Option
8 years ago
Josh Berdine e415b73786 Core.Std.String
8 years ago
Josh Berdine a2930b7007 Core.Std.Int
8 years ago
Josh Berdine 198bc00df7 Remove Utils compare and equal functions
8 years ago
Josh Berdine bbd5ef385d ppx_compare ProcCfg
8 years ago
Josh Berdine 356d081e1f ppx_compare AccessPath
8 years ago
Sam Blackshear ad5ff00dcd [quandary] making it easier to specify behavior for unknown functions
8 years ago
Sam Blackshear 5c2666a07c [quandary] filter the footprint sources in Trace.should_report
8 years ago
Jules Villard 7705ffbc31 [checkers] rename to_callee -> with_callsite
8 years ago
Cristiano Calcagno c5159bae1c [IR] Move Procdesc module to a separate file.
8 years ago
Sam Blackshear fde7a6ecf3 [quandary] support for full interprocedural traces
8 years ago
Cristiano Calcagno e933ee958a [IR] Rearrange the cfg module to make nodes, procd descs, and cfgs independent types.
8 years ago
Josh Berdine 32a60e05f4 Unbreak master
8 years ago
Sam Blackshear 768a60caca [quandary] support for full interprocedural traces
8 years ago
Sam Blackshear 9968245a43 [quandary] move source and sink kinds into their own modules
8 years ago
Sam Blackshear 874e7f000d [quandary] functions that transitively return sources are sources, not passthroughs
8 years ago
Cristiano Calcagno 73c5dfdfa4 [IR] Remove use of Cfg.Node.get_proc_desc
8 years ago
Sam Blackshear d76a7ef43a [quandary] functions that transitively call sinks are sinks, not passthroughs
8 years ago
Andrzej Kotulski 46592ffdd9 [backend] Split construction of builtin pnames and builtin registration
8 years ago
Cristiano Calcagno 3fb8801b6c [IR] Change cfg representation so the node number is per-procedure and not per-cfg
8 years ago
Sam Blackshear 2c0bf042b4 [checkers] extract access paths from non-lhs expressions
8 years ago
Cristiano Calcagno ecda199e9d [IR] Clean up unused parts of Cfg
8 years ago
Sam Blackshear 319463b3bc [quandary] propagating taint from unknown procedures and constructors
8 years ago
Sam Blackshear 355ab92130 [backend] move expression pretty-printing into exp module
8 years ago
Sam Blackshear 6aee686cb2 [quandary] passing actuals to the sink-determining code
8 years ago
Sam Blackshear 727af5d660 [checkers] clean up abstract interpreter
8 years ago
Sam Blackshear 1a958d1d8b [quandary] simplifying Source module interface now that calls have single retval
8 years ago
Sam Blackshear 35bb540bf4 [quandary] adding TaintSpec module for clearer naming
8 years ago
Sam Blackshear 5e2e7b88aa [quandary] allow trace-specific rules for handling unknown code
8 years ago
Josh Berdine c094a38d56 [IR] Simplify to single return id, with type
8 years ago
Sam Blackshear 3051d90307 [quandary] kill unused Source.to_return proc
8 years ago
Sam Blackshear de146f4f2d [quandary] switch to using base -> formal num map in extras
8 years ago
Sam Blackshear 31e6849ec0 [quandary] using summaries part 2: the relational cases
8 years ago
Sam Blackshear 9f1c4e4bca [quandary] adding append operation
8 years ago
Sam Blackshear d6d7293633 [quandary] moving logging of errors into analysis
8 years ago
Sam Blackshear 31435fa936 [quandary] summaries for interprocedural analysis
8 years ago
Sam Blackshear 27cfb141da richer sink specifications
8 years ago
Sam Blackshear 3368548e3e replace stackop instruction with skip instruction
8 years ago
Sam Blackshear 8ab9a6c714 remove some commented logging code
8 years ago
Lázaro Clapp Jiménez Labora f2e958ef3a Add support for multiple stacktraces in '-a crashcontext'
8 years ago
Sam Blackshear a31a735e35 separate pretty-printer for pp_kind
8 years ago
Sam Blackshear 36b0a957bd setup for creating very simple absint checkers
8 years ago
Cristiano Calcagno 91d9cd83b5 Cleanup instruction names: use Load/Store instead of Letderef/Set.
8 years ago
Sam Blackshear 262a121cf6 handle casts
8 years ago
Sam Blackshear 514107ec88 track sinks
8 years ago
Sam Blackshear f0028669ee propagate tainted sources
8 years ago
Sam Blackshear 3b12208e1b intraprocedural taint analysis that records sources
8 years ago
Sam Blackshear 90c8f55c32 adding missing functionality to analyzerTester
8 years ago
Sam Blackshear 462bf68f46 killing is_bottom
8 years ago
Sam Blackshear f99b30c4cd abstracting passthroughs more aggressively
8 years ago
Lázaro Clapp Jiménez Labora 175efddc2b Make stacktrace and stacktree line number an int option.
8 years ago
Lázaro Clapp Jiménez Labora 616e8fddd4 Make stacktrace parsing work when line number info is not available.
8 years ago
Sam Blackshear 034d2e3c81 adding accessTree.fold
8 years ago
Josh Berdine 25a52c7bbc Refactor operations on Exp.t in Sil to Exp
8 years ago
Josh Berdine 701eb20f83 Refactor Sil.exp to Exp.t
8 years ago
Lázaro Clapp Jiménez Labora d23c99a4ea Add blame_range to crashcontext analysis.
8 years ago
Sam Blackshear 33b417c280 generalizing `add_trace` to `add_node`
8 years ago
Sam Blackshear 706acdfd9e generalizing get_trace to get_node
8 years ago
Sam Blackshear e9aecd0afe widen for access trees
8 years ago
Sam Blackshear 6a1a0d68da create access paths from expressions
8 years ago
Sam Blackshear e95ebca786 factoring out some utility methods for testing access-based stuff
8 years ago
Lázaro Clapp Jiménez Labora 9f7cb87bb0 Add stacktrace extras to BoundedCallTree checker.
8 years ago