Tom Hvitved
ab7a094439
C#: Include CFG splits in Ssa::Definition::toString()
...
Just like syntax elements can be split in the control flow graph, so can SSA
definitions. To make this clear, and to make debugging easier, this commit
adds the splits as a prefix in the textual representation of SSA definitions.
2018-11-29 10:00:08 +01:00
Tom Hvitved
3eb163f656
C#: Account for split SSA definitions in guards library
...
On 03e69e9945 , I updated the guards library to account
for control flow graph splitting. However, the logic that relates SSA qualifiers for
the guard and the guarded expression was not updated accordingly.
2018-11-28 20:00:13 +01:00
Tom Hvitved
1a25f0a068
C#: Add test for guard inside a split CFG block
2018-11-28 19:59:05 +01:00
calum
6c6d7e4fff
C#: Fix false-positives in cs/index-out-of-bounds.
2018-11-28 17:42:08 +00:00
Tom Hvitved
41edd61e2e
Merge pull request #545 from calumgrant/cs/typemention-constraints
...
C#: Fix for type mentions of type parameter constraints
2018-11-27 14:25:48 +01:00
calumgrant
d1f7eef7eb
Merge pull request #537 from hvitved/csharp/guards-splitting
...
C#: Make guards library work with CFG splitting
2018-11-26 18:19:37 +00:00
calum
de36151c4a
C#: Add regression test and fix for type mentions of type parameter constraints.
2018-11-26 13:51:02 +00:00
Tom Hvitved
03e69e9945
C#: Make guards library work with CFG splitting
2018-11-23 15:20:33 +01:00
Tom Hvitved
228189db5a
C#: Add tests for guards inside split CFG blocks
2018-11-23 15:20:27 +01:00
calum
b67bc7b612
C#: Fix id generation of constructed methods, by avoid id clashes by ensuring that method type parameters are qualified where necessary. Add a qltest.
2018-11-23 12:11:10 +00:00
calum
6b2e339ec5
C#: Address QL review comments.
2018-11-22 11:45:41 +00:00
calum
1bfa4d59e7
C#: Documentation for cs/uncontrolled-format-string
2018-11-22 11:21:35 +00:00
calum
fb09360ad6
C#: New query for cs/uncontrolled-string-format
2018-11-22 11:21:35 +00:00
Tom Hvitved
201f64ef8e
Merge pull request #367 from calumgrant/cs/path-problems
...
C#: Update all security queries to path-problems
2018-11-22 12:02:11 +01:00
calum
3eae1cd500
C#: Update test outputs.
2018-11-21 17:28:48 +00:00
calum
69ab1ed5bd
C#: Add nodes predicate to all path queries.
2018-11-21 12:35:05 +00:00
Tom Hvitved
8233e34ba2
C#: Fix Boolean splitting for variables defined in a loop
2018-11-20 21:22:00 +01:00
Tom Hvitved
89d5daa137
C#: Fix Boolean splitting negation bug
2018-11-20 21:22:00 +01:00
Tom Hvitved
841218540e
C#: Add CFG test
...
This test exhibits two issues with Boolean CFG splitting: incorrect handling of
negated variables and incorrect splitting for variables defined inside a loop.
2018-11-20 21:22:00 +01:00
Tom Hvitved
3e78c2671f
C#: Generalize pre-SSA library to include local-scope-like fields/properties
2018-11-20 15:07:44 +01:00
Tom Hvitved
25150265dc
C#: Compute phi inputs in pre-SSA library
...
Logic is copied directly from the ordinary SSA library.
2018-11-20 15:07:43 +01:00
calum
1aa5e24108
C#: Remove duplicate results from cs/use-of-vulnerable-package
2018-11-16 16:50:35 +00:00
calum
cf4b04a3ee
C#: Address review comments - adding .getNode() where appropriate.
2018-11-16 11:52:20 +00:00
calum
e908b090fd
C#: Always use PathNode in a path-problem query.
2018-11-16 10:32:24 +00:00
calum
eddc52852d
C#: Convert security queries to path-problem and update qltest expected output.
2018-11-16 10:31:20 +00:00
Tom Hvitved
57bbe0291b
Merge pull request #393 from calumgrant/cs/extractor/dynamic-type-name
...
C#: Minor extractor fixes
2018-11-16 09:09:46 +01:00
calum
090e896ff5
C#: Change Property TagStackBehaviour to push a tag, to give the expression body a tag stack.
2018-11-15 18:28:17 +00:00
calum
bb49fe170b
C# extractor: Handle the type name of dynamic.
2018-11-15 18:27:53 +00:00
semmle-qlci
536f3f36b8
Merge pull request #428 from hvitved/csharp/more-guards
...
Approved by calumgrant
2018-11-15 15:07:56 +00:00
calum
a5d50fc1db
C#: Handle in arguments, and add AssignableAccess::isInArgument() predicate.
2018-11-13 10:58:43 +00:00
Tom Hvitved
dd6fd400aa
Merge pull request #335 from calumgrant/cs/cwe-937
...
C#: New query VulnerablePackage
2018-11-12 10:34:53 +01:00
Tom Hvitved
29f163fd4e
C#: Fix guards implications logic
2018-11-08 20:21:34 +01:00
Tom Hvitved
e4aa196c37
C#: Teach guards library about custom null guards
2018-11-08 20:21:34 +01:00
Tom Hvitved
a5dfc10197
C#: Add tests for custom null guards
2018-11-08 20:21:34 +01:00
Tom Hvitved
5921a9ea51
C#: Teach guards library about assertions
2018-11-08 20:21:34 +01:00
Tom Hvitved
0fb7ddc956
C#: Add assertion guard tests
2018-11-08 20:21:34 +01:00
Dave Bartolomeo
a141f4c81a
Allow mixed whitespace in C#, C++, and Java test sources
2018-11-08 11:06:42 -08:00
calumgrant
6fdb0aab41
Merge pull request #426 from hvitved/csharp/accessor-argument
...
C#: Improve `AccessorCall::getArgument()`
2018-11-08 16:03:48 +00:00
Tom Hvitved
5d8162cc8b
C#: Improve AccessorCall::getArgument()
...
- Handle tuple assignments.
- Handle compound `+=` assignments.
2018-11-07 11:30:04 +01:00
Tom Hvitved
7423916214
C#: Add tests for calls to accessors with arguments
2018-11-07 10:38:36 +01:00
Tom Hvitved
67e64f21d8
C#: Fix whitespaces
2018-11-07 08:52:38 +01:00
semmle-qlci
33c02fe928
Merge pull request #355 from hvitved/csharp/guards-logic
...
Approved by calumgrant
2018-11-06 19:06:30 +00:00
Tom Hvitved
2d25a04a2e
C#: Add test for guard implications logic
2018-11-05 16:47:10 +01:00
Tom Hvitved
f5e6b79add
C#: Address review comments
2018-11-05 16:14:15 +01:00
calum
c003150ed8
C#: Add missing file.
2018-11-02 16:46:49 +00:00
calum
29df7f5e96
C#: Mark false-negatives.
2018-11-02 16:46:49 +00:00
calum
7fa442d127
C#: Merge tests.
2018-11-02 16:46:49 +00:00
calum
ae96b347e2
C#: Address review comments.
2018-11-02 16:46:49 +00:00
calum
62fb693924
C#: Tidy up code and fix performance of remote flow sources.
2018-11-02 16:45:48 +00:00
calum
2090d69c3f
C#: Tidy up tests.
2018-11-02 16:45:48 +00:00