Commit Graph

9108 Commits

Author SHA1 Message Date
Mark Shannon
d44ce4f1df Python points-to: Performance improvement. 2019-04-29 17:53:18 +01:00
Mark Shannon
15a7ac3680 Python: update failed inference query to use latest points-to. 2019-04-29 16:59:51 +01:00
Mark Shannon
dfc0a80cc5 Python points-to: Handle old-style classes correctly. 2019-04-29 16:40:46 +01:00
Mark Shannon
3ca4524f7a Python points-to: Improve handling of __call__() a bit. 2019-04-29 15:15:01 +01:00
Mark Shannon
65a30ab392 Adjust a couple of query tests to work with latest points-to. 2019-04-29 14:28:51 +01:00
Mark Shannon
6a5ec51623 Update IsComparisons.qll to account for not tracking attributes in detail. 2019-04-29 12:22:48 +01:00
Mark Shannon
55511430cb Python points-to. Don't let unknown values escape refersTo(). 2019-04-29 12:22:17 +01:00
Mark Shannon
abf0347fce Python points-to: Split strings into bytes and unicode. 2019-04-26 16:21:47 +01:00
Mark Shannon
48c0cbe51a Python: improve handling of __all__ 2019-04-26 16:21:47 +01:00
Mark Shannon
3bb61e7410 Python points-to: Improve handling of subscripts and sequence inequalities. 2019-04-26 16:21:47 +01:00
Mark Shannon
674a3da4b8 Python points-to: Importing from 'unknown' gives 'unknown'. 2019-04-26 16:21:47 +01:00
Mark Shannon
5ad731a2a8 Python points-to. Fix handling of six.add_metaclass. 2019-04-26 16:21:47 +01:00
Mark Shannon
f51a2d9ec4 Python points-to: Fix up test-evaluate for ABCs and tests involving type(). 2019-04-26 16:21:47 +01:00
Mark Shannon
8a2fb54c49 Python points-to. Track bitwise or-ing of small integer flags. 2019-04-26 16:21:47 +01:00
Mark Shannon
96eaf815da Python: Fix up state-tracking library. 2019-04-26 16:21:47 +01:00
Mark Shannon
2ea204f7f9 Python points-to: Fix up failedInference predicate. 2019-04-26 16:21:47 +01:00
Mark Shannon
2aa967ae8e Remove redundant tests. 2019-04-26 16:21:47 +01:00
Mark Shannon
4145b19671 Python points-to: update some test results. 2019-04-26 16:21:47 +01:00
Mark Shannon
ddc4ada130 Python points-to: Handle subclassing of ABCs. 2019-04-26 16:21:47 +01:00
Mark Shannon
2d4f64f2e5 Python legacy objects: fix function/method call. 2019-04-26 16:21:47 +01:00
Mark Shannon
989d587617 Python points-to: Fix support for backwards compatible extensions. 2019-04-26 16:21:46 +01:00
Mark Shannon
dffbf698d2 Python points-to: improve performance. 2019-04-26 16:21:46 +01:00
Mark Shannon
cd34e23c4c Python points-to: Bring attribute points-to to effective parity with old points-to. 2019-04-26 16:21:46 +01:00
Mark Shannon
2e6c3c9ee3 Python points-to: Support classes created dynamically as instances of meta-class. 2019-04-26 16:21:46 +01:00
Mark Shannon
06ab671629 Python points-to. Fix descriptor behviour of Python functions. 2019-04-26 16:21:46 +01:00
Mark Shannon
9d40a6cd8c Python points-to: restore getArgumentForCall() API method. 2019-04-26 16:21:46 +01:00
Mark Shannon
90bbfd3b16 Python: Add library tests for django. 2019-04-26 16:21:46 +01:00
Mark Shannon
46b9ef79b4 Python points-to: Fix up neverReturns() and return value of __import__(). 2019-04-26 16:21:46 +01:00
Mark Shannon
62e05187af Python points-to: Add property objects. 2019-04-26 16:21:46 +01:00
Mark Shannon
ec080419ba Python points-to: Assorted tweaks to get nore tests passing. 2019-04-26 16:21:46 +01:00
Mark Shannon
3b42f3cea3 Python points-to/taint-tracking: Fix up flow into __init__ methods. 2019-04-26 16:21:46 +01:00
Mark Shannon
53f859117e Python points-to: Fix attribute lookup for packages. 2019-04-26 16:21:46 +01:00
Mark Shannon
4a03fd03cd Update test to reflect new true positive. 2019-04-26 16:21:46 +01:00
Mark Shannon
e82b2c422e Python: Update test to use new API. 2019-04-26 16:21:46 +01:00
Mark Shannon
a442695ad0 Python points-to: Improve handling of len(), sequences and comparisons. 2019-04-26 16:21:46 +01:00
Mark Shannon
e21a863db9 Python points-to: Update sanity check. 2019-04-26 16:21:46 +01:00
Mark Shannon
03159bb31c Python points-to: Track 'unknown' value through simple iteration. 2019-04-26 16:21:46 +01:00
Mark Shannon
9af7071131 Python points-to: track return values from builtin methods. 2019-04-26 16:21:46 +01:00
Mark Shannon
b8fb3e3e61 Python points-to: Distinguish between class attribute access and lookup. Fixes handling of classmethods. 2019-04-26 16:21:46 +01:00
Mark Shannon
55eac7d555 Python points-to: Fix up handling of recursive 'from ... import *'. 2019-04-26 16:21:46 +01:00
Mark Shannon
0b2421eb23 Python points-to. Tidy up a bit. 2019-04-26 16:21:46 +01:00
Mark Shannon
5644072a8d Python points-to: make sure builtin tuples are visible. 2019-04-26 16:21:46 +01:00
Mark Shannon
b47c2dd083 Python remove old MRO module and rename MRO2 to MRO. 2019-04-26 16:21:46 +01:00
Mark Shannon
f543adcd38 Python points-to: Fix up matching arguments to parameters. 2019-04-26 16:21:46 +01:00
Mark Shannon
662aedcb13 Python points-to: Fix up module attributes and classmethods. 2019-04-26 16:21:46 +01:00
Mark Shannon
fc2c46fe4a Python: Fix error in update Module to use new points-to API. 2019-04-26 16:21:46 +01:00
Mark Shannon
782311f805 Python: Update taint-tracking to use new points-to API. 2019-04-26 16:21:46 +01:00
Mark Shannon
3c30480845 Python: Extend API a bit. 2019-04-26 16:21:46 +01:00
Mark Shannon
31a95ceeec Python points-to: Use strongly typed version of CfgOrigin. 2019-04-26 16:21:46 +01:00
Mark Shannon
162bf5143b Python points-to: Assorted improvements to performance and better compatibility. 2019-04-26 16:21:46 +01:00