398 Commits (5b495c6a386186f4da202cfa9d8f38c63e63e14b)

Author SHA1 Message Date
Sam Blackshear 779ec1f0ad [thread-safety] give full traces for read/write races
8 years ago
Sam Blackshear 9066e5bd08 [thread-safety] account for ownership via reflective allocation
8 years ago
Peter O'Hearn e023dddba2 [threadsafety] Races and non-races involving assertMainThread().
8 years ago
Sam Blackshear 9e293eaa64 [thread-safety] add choice variables to support partial path-sensitivity
8 years ago
Jeremy Dubreil 047bb6796a [infer][threadsafety] Run ThreadSafety as part of the checkers
8 years ago
Jeremy Dubreil e23b04180e [infer][ondemand] run all the registered checkers in sequence
8 years ago
Sam Blackshear 60dac45461 [quandary] don't call read_summary on the current procedure while creating a trace
8 years ago
Cristiano Calcagno 5c9b61877a [Eradicate] Code cleanup and add test cases
8 years ago
Peter O'Hearn 5062ac3173 [thread-safety] Model assertManThread and assertHoldsLock
8 years ago
Jules Villard dac8906d86 [make] make sure makefile uses config-time values
8 years ago
Martino Luca 5448a95ce7 [Infer][Localise] Group all issue types in one place, and provide their human-readable representation
8 years ago
Sam Blackshear 56b057acb8 [thread-safety] assume formals of DI constructors are owned
8 years ago
Peter O'Hearn 11937cb076 [infer][threadsafety] model tryLock() for java.util.concurrent.locks.Lock
8 years ago
Peter O'Hearn 2cf3bfeea1 [infer][threadsafety] Stop Unprotected Write and Read/Write races from being reported on the same line
8 years ago
Sam Blackshear bd5eb3c5cf [quandary] don't allow projection of non-footprint idents
8 years ago
Sam Blackshear 0f74016ef5 [thread-safety] add callee write as protected-if if it's conditionally owned in caller
8 years ago
Cristiano Calcagno 5aa714b237 [Eradicate] Improve detection of circularities in field initialization
8 years ago
Sam Blackshear 5134ea36ed [thread-safety] enable defining aliases of @ThreadSafe in .inferconfig
8 years ago
Sam Blackshear 1ef7c253b2 [thread-safety] report on protected write/unprotected read races
8 years ago
Sam Blackshear ea8826599f [thread-safety] track protected writes
8 years ago
Jeremy Dubreil 08980b57e5 [infer][ondemand] make the Procname API more robust by using Typename.t for the class name part of a method name
8 years ago
Peter O'Hearn f7f30045cb [infer][threadsafety] Dedup, chapter 2.
8 years ago
Martino Luca 3eecb243e6 Customize tests output via InferPrint's command-line
8 years ago
Jeremy Dubreil b63a656dc4 [infer][tests] cleanup of the Cursor NPE test file
8 years ago
Sam Blackshear 69df171632 [thread-safety] unify @AssumeThreadSafe and @ThreadSafeMethod into @ThreadSafe(enableChecks = ...)
8 years ago
Peter O'Hearn 1580e5b3bb [infer][thread-safety] Better error message for container writes
8 years ago
Peter O'Hearn c080cbb60f [threadsafety] De-duplicate the reports
8 years ago
Sam Blackshear 040140ba52 [thread-safety] model SynchronizedPool.acquire as acquiring ownership
8 years ago
Peter O'Hearn df154b4135 [threadsafety] read/write races
8 years ago
Sam Blackshear 5c2ee8d85f [thread-safety] model ThreadLocal.get() as acquiring ownership
8 years ago
Sam Blackshear b229b39a1b [thread-safety] Add @ReturnsOwnership annotation for methods and handle it in the thread-safety analysis
8 years ago
Sam Blackshear 919b35f50a [quandary] better taint propagation for Intent's
8 years ago
Sam Blackshear e15121c928 [thread-safety] model DI via Provider.get as acquiring ownership
8 years ago
Sam Blackshear 5cdee51ed5 [checkers] allow custom sources and sinks in annotation reachability
8 years ago
Sam Blackshear 61e4e6e1ed [thread-safety] propagate attributes across binary/unary expressions
8 years ago
Jules Villard 105b8f83d3 [tests] disregard traces in Java harness test
8 years ago
Sam Blackshear f085023aff [thread-safety] model certain methods of Resources as @Functional
8 years ago
Sam Blackshear b8f9c774f3 [thread-safety] support conditional writes to containers
8 years ago
Jeremy Dubreil 61b49553b5 [infer][java] Add @SuppressLint as part of the Infer annotations
8 years ago
Jeremy Dubreil 2ded1d7a0c [infer][java] Simplify some of the models of Java resources [3/n]
8 years ago
Jeremy Dubreil 266686457a [infer][java] Simplify some of the models of Java resources [2/n]
8 years ago
Jeremy Dubreil 574d640af0 [infer][java] Simplify some of the models of Java resources [1/n]
8 years ago
Sam Blackshear c67de3e827 [thread-safety] add string parameter to @ThreadConfined
8 years ago
Sam Blackshear a3e3fdb781 [quandary] fix bug in summary application
8 years ago
Jeremy Dubreil 0139ca211b [infer][java] Add an example of dynamic dispatch handling on fields
8 years ago
Sam Blackshear c4fbf4e3fb [thread-safety] propagate attributes across casts
8 years ago
Sam Blackshear 42188eb105 [thread-safety] add understanding of conditional ownership
8 years ago
Jeremy Dubreil 13cdff1532 [infer][java] Dynamic dispatch: fix wrong level of indirection on pointers when specialzing methods
8 years ago
Cristiano Calcagno 319e3ed271 [Eradicate] Change Eradicate's join to forget values not present on both paths
8 years ago
Sam Blackshear 9ed282b28b [thread-safety] handle constructors by understanding that a constructor owns `this`
8 years ago
Jeremy Dubreil a416b7c90d [infer][java] Add a model for Process.destroyForcibly()
8 years ago
Sam Blackshear 0e77e36235 [thread-safety] propagate @Functional attribute across boxing of primitive types
8 years ago
Sam Blackshear 6338997cf5 [quandary] don't clobber existing taint on receiver when propagating taint from unknown call
8 years ago
Sam Blackshear d41b500659 [thread-safety] treat constants as owned
8 years ago
Jeremy Dubreil c2b967d27b [infer] Dynamic dispatch: use the OCaml type system to implement the invariant that the method specialization should only happen on object types
8 years ago
Sam Blackshear 6c0c3b44b4 [annotations] make override_exists recursive
8 years ago
Sam Blackshear f6e8bf0f3f [thread-safety] don't warn on external accesses to fields of ThreadConfined classes
8 years ago
Jeremy Dubreil c5e962e231 [infer][test] The buck integration BUCK file for the integration test was refering to a file built by make
8 years ago
Jeremy Dubreil 4e02b3c525 [infer][tests] rescue ghost file for Cursor NPE test
8 years ago
Jeremy Dubreil b6fae5cd46 [infer][eradicate] Consider junit.framework.TestCase.setUp as an initializer
8 years ago
Jeremy Dubreil 90f4c83ef2 [infer][java] Add some more test cases for dynamic dispatch
8 years ago
Sam Blackshear f9280b682f [thread-safety] don't warn on accesses to fields assigned to @Functional calls
8 years ago
Sam Blackshear 70df06a596 [thread-safety] don't consider VisibleForTesting methods as public
8 years ago
Sam Blackshear cc8ffd9d1e [quandary] allow regexes in defining quandary sources/sinks in inferconfig
8 years ago
Sam Blackshear 3ee349ee23 [thread-safety] warn on unsafe accesses to lists
8 years ago
Jeremy Dubreil 5322c71063 [infer][backend] find a better trade-off for the value of the SymOps timeout
8 years ago
Sam Blackshear b227ee58a6 [thread-safety] handle some annotations as aliases of ThreadConfined
8 years ago
Sam Blackshear 369feb4149 [thread-safety] allow ownership to be transferred via return
8 years ago
Sam Blackshear f372b6cb2f [quandary] allow sinks to be specified in inferconfig
8 years ago
Sam Blackshear 5bddb1e548 [quandary] allow sources to be specified in inferconfig
8 years ago
Sam Blackshear e132188361 [thread-safety] warn on unsafe accesses in overrides of methods annotated with @ThreadSafeMethod
8 years ago
Cristiano Calcagno 3f8ee7df49 [Eradicate] Fix issue in Eradicate's check for field initialization
8 years ago
Sam Blackshear f79a53e1c8 [thread-safety] add string param to AssumeThreadSafe
8 years ago
Sam Blackshear c19bee7772 [quandary] for instance methods with no return value, propagate the taint to the receiver
8 years ago
Sam Blackshear b9694ef086 [thread-safety] warn on unsafe writes in constructors
8 years ago
Sam Blackshear c4c495fbe5 [thread-safety] propagate conditional writes to callers
8 years ago
Sam Blackshear 4373945e74 [thread-safety] don't warn on writes rooted in a parameter owned by the callee
8 years ago
Sam Blackshear e565010cf3 [thread-safety] don't warn on writes to volatile fields
8 years ago
Jules Villard ca784cdb41 [cli] warn about deprecated options, clean up infer repo
8 years ago
Sam Blackshear 618e9c9338 [thread-safety] add @AssumeThreadSafe annotation to assume thread-safety of a method without checking it
8 years ago
Sam Blackshear f4b1af6f91 [thread-safety] allow @ThreadConfined annotation on methods
8 years ago
Sam Blackshear d39d4cfa20 [thread-safety] use jsr-305 versions of ThreadSafe/NotThreadSafe rather than defining custom annotations
8 years ago
Sam Blackshear 72e17403fa [thread-safety] add and support @ThreadSafeMethod annotation
8 years ago
Sam Blackshear 1891a16f8f [thread-safety] suppress warnings on methods annotated with @OnEvent
8 years ago
Sam Blackshear 8b57278c70 [thread-safety] support fields annotated with @ThreadConfined
8 years ago
Sam Blackshear e5ef592f11 [quandary] add a few missing Intent sinks
8 years ago
Sam Blackshear ee2d0c9226 [quandary] add Intent's passed to onActivityResult/onNewIntent as sources
8 years ago
Sam Blackshear 4cb03f4670 [checkers] add ui-thread/non-ui thread reasoning to annotation reachability checker
8 years ago
Sam Blackshear 73f219560d [thread-safety] warn on unsafe accesses to maps
8 years ago
Sam Blackshear 2a4b29fedb [quandary] Warn on reusing result returned from getIntent
8 years ago
Sam Blackshear d86f777132 [quandary] considering methods of subclasses of Activity, SharedPreferences etc. as sources/sinks too
8 years ago
Sam Blackshear 504735e548 [java] update android.jar version to 23
8 years ago
Sam Blackshear 9c48178e4a [quandary] model some formals of Webview methods as tainted
8 years ago
Peter O'Hearn 7bcc7e421d [threadsafety] don't warn on methods from classes annotated ThreadConfined
8 years ago
Sam Blackshear 68c0705f26 [thread-safety] don't warn on methods annotated with UiThread
8 years ago
Sam Blackshear 1403e9c898 [quandary][java] Intent.parseIntent/Intent.parseUri should propagate taint, not create it
8 years ago
Josh Berdine 142494e7ae Add missing dir to java test clean
8 years ago
Jeremy Dubreil 4a3573b60e [infer][java] Use lazy dynamic dispatch by default
8 years ago
Jules Villard 72d065017b [tests] run "diff" from infer/tests
8 years ago
Sam Blackshear 06e0f6fbc9 [quandary] support tainted formals
8 years ago