Pavel Avgustinov
3182274ce8
Merge pull request #87 from lukecartey/csharp/ccyclomatic-kind
...
C#: Fix @kind property of CCyclomaticComplexity
2018-08-23 03:50:36 -07:00
semmle-qlci
3b09ab97bf
Merge pull request #92 from jbj/XMLFile-is-File
...
Approved by ian-semmle
2018-08-23 11:15:12 +01:00
Jonas Jensen
fc0330beb6
C++: Make XMLFile extend File again
...
Commit a1e44041e made `XMLFile` no longer extend `File`. I'm guessing
this was necessary in the branch where `File` was an IPA-typed `Element`
and `XMLFile` was not, but it broke compilation of some of our internal
queries.
2018-08-23 10:09:42 +02:00
Max Schaefer
2187b0c245
Merge pull request #89 from esben-semmle/js/sharpen-type-confusion
...
JS: remove emptiness checks from the type confusion `x.length` sinks
2018-08-23 08:04:09 +01:00
Dave Bartolomeo
bba7f16790
C++: Simplify TranslatedExpr hierarchy a bit
...
I introduced some unnecessary base classes in the `TranslatedExpr` hierarchy with a previous commit. This commit refactors the hierarchy a bit to align with the following high-level description:
`TranslatedExpr` represents a translated piece of an `Expr`. Each `Expr` has exactly one `TranslatedCoreExpr`, which produces the result of that `Expr` ignoring any lvalue-to-rvalue conversion on its result. If an lvalue-to-rvalue converison is present, there is an additional `TranslatedLoad` for that `Expr` to do the conversion. For higher-level `Expr`s like `NewExpr`, there can also be additional `TranslatedExpr`s to represent the sub-operations within the overall `Expr`, such as the allocator call.
2018-08-22 17:13:03 -07:00
Max Schaefer
1aa7a2cfc2
Merge pull request #80 from asger-semmle/ts-typescript3.0
...
TypeScript: support TypeScript 3.0 features
2018-08-22 20:19:18 +01:00
calumgrant
7c521708ac
Merge pull request #76 from hvitved/csharp/cfg/generic-splitting
...
C#: Generic control flow graph splitting
2018-08-22 18:18:33 +01:00
Esben Sparre Andreasen
20b48a2d24
JS: support relational indexof comparison sanitizers
2018-08-22 15:58:47 +02:00
Esben Sparre Andreasen
b4c77b8344
JS: s/can not/cannot/
2018-08-22 14:08:14 +02:00
Esben Sparre Andreasen
218c0cb51a
JS: address review comments
2018-08-22 13:54:07 +02:00
Esben Sparre Andreasen
fef257b1ec
JS: remove emptiness checks from the type confusion x.length sinks
2018-08-22 13:25:22 +02:00
Nick Rolfe
61bd003cf9
Merge pull request #86 from ian-semmle/typo
...
C++: Fix a copy/paste error in a comment
2018-08-22 10:18:38 +01:00
Asger F
35aa2e6fbb
TypeScript: update test output
2018-08-22 10:18:38 +01:00
Asger F
1569f73ed8
TypeScript: update stats
2018-08-22 10:18:38 +01:00
Asger F
4eeaf63a3a
TypeScript: update related test output
2018-08-22 10:18:38 +01:00
Asger F
d26aa04642
TypeScript: support optional and rest elements in static tuple type
2018-08-22 10:18:38 +01:00
Asger F
96005d2147
TypeScript: support unknown static type
2018-08-22 10:18:38 +01:00
Asger F
9a9bbac99e
TypeScript: support syntax for unknown types
2018-08-22 10:18:38 +01:00
Asger F
4a9eb0fd3f
TypeScript: Add tests for OptionalTypeExpr and RestTypeExpr
2018-08-22 10:18:38 +01:00
Asger F
241ce10da4
TypeScript: support syntax for rest elements in tuple types
2018-08-22 10:18:38 +01:00
Asger F
204b2a3002
TypeScript: support syntax for optional tuple type elements
2018-08-22 10:18:38 +01:00
semmle-qlci
7e7e30c01c
Merge pull request #73 from esben-semmle/js/cleartext-logging-query
...
Approved by xiemaisi
2018-08-22 08:04:36 +01:00
semmle-qlci
7661a98909
Merge pull request #68 from esben-semmle/determinate-1-cfa-type-inference
...
Approved by xiemaisi
2018-08-22 08:02:27 +01:00
semmle-qlci
bcfd02f62d
Merge pull request #85 from esben-semmle/js/format-string-taint-step
...
Approved by xiemaisi
2018-08-21 21:47:53 +01:00
Esben Sparre Andreasen
2b9f5c3fa2
JS: remove check for test-environment in js/clear-text-logging
2018-08-21 22:32:52 +02:00
Esben Sparre Andreasen
3636708d30
JS: extract and expose StringConcatenationTaintStep in TaintTracking
2018-08-21 22:32:52 +02:00
Esben Sparre Andreasen
7607b6beff
JS: use DataFlow::SourceNode in two additional locations
2018-08-21 22:32:52 +02:00
Esben Sparre Andreasen
6950bfe915
JS: review fixups in documentation and comments
2018-08-21 22:32:52 +02:00
Esben Sparre Andreasen
605695e117
JS: review fixups in documentation
2018-08-21 22:08:10 +02:00
Esben Sparre Andreasen
19e5db75a3
JS: make AnalyzedFunction public and move getAReturnValue there
2018-08-21 22:08:10 +02:00
Esben Sparre Andreasen
ac947f10e7
JS: address some review comments
2018-08-21 22:08:08 +02:00
Esben Sparre Andreasen
21c895368d
JS: change notes for improved inter-procedural type inference
2018-08-21 22:07:40 +02:00
Esben Sparre Andreasen
6f5fb2a9fe
JS: update queries and tests for improved type inference
2018-08-21 22:07:38 +02:00
Esben Sparre Andreasen
3692667af2
JS: improve inter-procedural type inference for "local functions"
2018-08-21 22:07:11 +02:00
Esben Sparre Andreasen
4e45ad2d5a
JS: generalize inter procedural IIFE type inference
2018-08-21 21:59:30 +02:00
Dave Bartolomeo
b9a8293610
C++: IR translation for NewExpr and NewArrayExpr
...
These expressions are a little trickier than most because they include an implicit call to an allocator function. The database tells us which function to call, but we have to synthesize the allocation size and alignment arguments ourselves. The alignment argument, if it exists, is always a constant, but the size argument requires multiplication by the element count for most `NewArrayExpr`s. I introduced the new `TranslatedAllocationSize` class to handle this.
2018-08-21 11:10:29 -07:00
Dave Bartolomeo
07c08f83a6
Create common base class for NewExpr and NewArrayExpr
2018-08-21 11:10:28 -07:00
Nick Rolfe
44ae7b68f0
Merge pull request #63 from ian-semmle/unused_db_types
...
C++: Remove some unused DB types
2018-08-21 18:27:35 +01:00
Jonas Jensen
3bc9323844
Merge pull request #84 from rdmarsh2/rdmarsh/cpp/macro-get-expr-conversions
...
C++: exclude conversion in MacroInvocation.getExpr
2018-08-21 19:15:42 +02:00
Jonas Jensen
2481bc7ba2
Merge pull request #72 from dave-bartolomeo/dave/InitMemory
...
C++: Make `InitializeParameter` and `Uninitialized` return memory results
2018-08-21 19:04:20 +02:00
Esben Sparre Andreasen
eb356d8d0b
Merge branch 'master' into js/format-string-taint-step
2018-08-21 15:47:31 +02:00
Luke Cartey
70abf2d58f
C#: CCyclomaticComplexity - Fix @kind property.
...
CCyclomaticComplexity is a metric query, so needs a @kind treemap
instead of @kind table.
2018-08-21 14:42:05 +01:00
Luke Cartey
014c4e8579
C#: Update qlpath to fix metric queries.
...
The Metrics folder has a queries.xml file which is required when
building a full distribution, as the Metrics folder gets copied into
odasa-csharp-metrics directory. However, in QL for Eclipse this doesn't
compile because it prevents import lookup at the top level. Modifying
the qlpath file to include the top-level directory on the library path
fixes the problem.
2018-08-21 14:36:33 +01:00
semmle-qlci
6969466202
Merge pull request #83 from esben-semmle/js/bitwise-indexof-sanitizer
...
Approved by xiemaisi
2018-08-21 14:17:20 +01:00
Luke Cartey
4f57456df1
C#: ZipSlip - Add spaces into bad example.
2018-08-21 13:06:29 +01:00
Luke Cartey
6453153393
C#: ZipSlip - Address review comments in module.
2018-08-21 12:18:27 +01:00
Luke Cartey
6959d80a28
C#: ZipSlip - Update help, compile and test samples.
2018-08-21 12:17:48 +01:00
Ian Lynagh
8a4040e4e0
C++: Update stats
2018-08-21 11:22:19 +01:00
Ian Lynagh
176b7cb8bc
C++: Remove some unused DB types
2018-08-21 11:22:19 +01:00
Ian Lynagh
68959cae3a
C++: Fix a copy/paste error in a comment
2018-08-21 11:20:06 +01:00