Mathias Vorreiter Pedersen
0f6c56ad74
C++: Use names that better match the AST dataflow library.
2021-03-10 11:44:19 +01:00
Mathias Vorreiter Pedersen
d14b993aba
C++: Replace 'Argument -1 indirection' with 'This indirection'.
2021-03-09 10:22:21 +01:00
Mathias Vorreiter Pedersen
e2c0bf3cc0
C++: Show arguments in path explanations and accept test changes.
2021-03-08 12:44:05 +01:00
Mathias Vorreiter Pedersen
6c14288fa7
C++: Use new predicate and accept test changes.
2021-03-04 16:05:38 +01:00
Mathias Vorreiter Pedersen
908f24d23f
C++: Fix missing AST flow.
2021-02-17 14:33:58 +01:00
Jonas Jensen
064568c36d
Revert "Merge pull request #4784 from MathiasVP/mathiasvp/reverse-read-take-3"
...
This reverts commit 1b3d69d617 , reversing
changes made to 527c41520e .
2021-02-03 08:49:37 +01:00
Mathias Vorreiter Pedersen
b4f9b1590d
C++: Restore lost result on git/git. We lost the result in a00bd7ae02 because the added check for type T to type T* conversion didn't handle const qualifiers.
2021-01-22 14:20:18 +01:00
Mathias Vorreiter Pedersen
a00bd7ae02
C++: Respond to review comments.
2021-01-08 19:47:02 +01:00
Mathias Vorreiter Pedersen
7b003678a9
Merge branch 'main' into mathiasvp/reverse-read-take-3
2021-01-07 11:56:18 +01:00
Mathias Vorreiter Pedersen
bb158f1857
C++: Add dataflow testcases that need flow through conflated memory.
2021-01-04 11:43:23 +01:00
Mathias Vorreiter Pedersen
258d04178f
C++: Replace SkippableInstruction with local flow steps.
2020-12-30 13:39:24 +01:00
Mathias Vorreiter Pedersen
72a80e3722
C++: Accept test changes.
2020-12-22 09:14:54 +01:00
Mathias Vorreiter Pedersen
ba4da72b9e
C++: Add examples that require longer access paths
2020-12-22 09:14:53 +01:00
Cornelius Riemenschneider
feb05542d2
C++: Refactor common implementation of data/taint flow tests.
2020-12-02 15:42:52 +01:00
Mathias Vorreiter Pedersen
3c2fb5a93f
Merge branch 'main' into interleave-op-instr-field-flow
2020-11-09 09:58:19 +01:00
Mathias Vorreiter Pedersen
177f94368e
C++: Respond to review comments and accept test changes.
2020-10-30 15:59:39 +01:00
Mathias Vorreiter Pedersen
835d3fc2b7
C++: Accept tests
2020-10-29 09:27:03 +01:00
Mathias Vorreiter Pedersen
4be02a9463
C++: Use new syntax in field-flow tests
2020-10-29 08:48:37 +01:00
Ian Lynagh
987c16ed53
Merge remote-tracking branch 'upstream/main' into igfoo/unnamed
2020-10-19 19:09:41 +01:00
Mathias Vorreiter Pedersen
ca534ccb03
C++: Update inline expectation comments
2020-10-16 09:05:01 +02:00
Tom Hvitved
570b624eb7
C++: Update expected test output
2020-10-16 09:05:01 +02:00
Ian Lynagh
9e518d2555
C++: Accept test change for p#n -> (unnamed parameter n)
2020-10-14 12:59:47 +01:00
Anders Schack-Mulligen
091e3a2931
Dataflow: Adjust test output.
2020-10-09 16:25:14 +02:00
Mathias Vorreiter Pedersen
6c87b08c69
C++: Respond to review comments:
...
- ArgumentNode is now abstract
- PrimaryArgumentNode is now an OperandNode.
- ArgumentIndirectionNode is now merged into SideEffectArgumentNode.
2020-10-05 12:54:11 +02:00
Mathias Vorreiter Pedersen
48902c07a4
C++: Accept test changes
2020-10-02 14:10:58 +02:00
Mathias Vorreiter Pedersen
873e871620
C++: Handle more cases in arrayReadStep.
2020-09-21 14:35:37 +02:00
Mathias Vorreiter Pedersen
49dd576352
C++: Add more tests
2020-09-21 10:59:16 +02:00
Mathias Vorreiter Pedersen
53da751b15
C++: Accept tests
2020-09-18 17:12:27 +02:00
Mathias Vorreiter Pedersen
b40941b89c
C++: Add test demonstrating field conflation after merging #4230
2020-09-18 13:23:23 +02:00
Jonas Jensen
c67605f15c
Merge pull request #4230 from MathiasVP/mathiasvp/array-field-flow
...
C++: Replace `field -> object` taint rule with `ArrayContent` dataflow
2020-09-18 10:56:51 +02:00
Geoffrey White
86404af501
Merge pull request #4270 from MathiasVP/mathiasvp/single-field-flow-fix-cwe190test
...
C++: Use underlying type when checking whether a type is a single-field struct.
2020-09-16 17:21:07 +01:00
Mathias Vorreiter Pedersen
7b456d6162
Merge branch 'main' into mathiasvp/array-field-flow
2020-09-16 10:45:31 +02:00
Jonas Jensen
78560833a1
C++: Add a test distilled from real code
...
Author: @rvermeulen.
The consistency warnings go away because `sink` is defined with a body
in this file.
2020-09-15 16:24:37 +02:00
Jonas Jensen
bdce24735c
C++: Add flow through arrays
...
This works by adding data-flow edges to skip over array expressions when
reading from arrays. On the post-update side, there was already code to
skip over array expressions when storing to arrays. That happens in
`valueToUpdate` in `AddressFlow.qll`, which needed just a small tweak to
support assignments with non-field expressions at the top-level LHS,
like `*a = ...` or `a[0] = ...`.
The new code in `AddressFlow.qll` is copy-pasted from `EscapesTree.qll`,
and there is already a note in these files saying that they share a lot
of code and must be maintained in sync.
2020-09-15 14:46:11 +02:00
Jonas Jensen
27b8dc2b13
C++: Add tests for flow through arrays
2020-09-15 14:19:34 +02:00
Mathias Vorreiter Pedersen
0ba72c6685
C++: Accept changes.
2020-09-15 12:49:22 +02:00
Mathias Vorreiter Pedersen
d18dd5ab09
C++: Add testcase demonstrating the underlying problem in 6ca9c449af.
2020-09-15 12:32:15 +02:00
Mathias Vorreiter Pedersen
7cd6137b34
Merge branch 'main' into mathiasvp/array-field-flow
2020-09-14 20:45:06 +02:00
Mathias Vorreiter Pedersen
41147d245d
C++: Accept test changes
2020-09-08 14:35:22 +02:00
Mathias Vorreiter Pedersen
c67951682a
C++: Fix two bad join orders in readStep and storeStep. And use a min aggregate to guarentee that a FieldContent's toString has at most one result.
2020-09-04 17:12:30 +02:00
Mathias Vorreiter Pedersen
472363b86e
Merge branch 'main' into mathiasvp/read-step-without-memory-operands
2020-09-01 11:08:52 +02:00
Mathias Vorreiter Pedersen
3cca74e654
C++: Accept test changes
2020-09-01 10:54:46 +02:00
Rasmus Lerchedahl Petersen
750735c70c
Dataflow: Update test expectations
2020-08-28 15:00:01 +02:00
Mathias Vorreiter Pedersen
e4807c0181
C++: Accept test changes
2020-08-26 15:51:09 +02:00
Mathias Vorreiter Pedersen
2a8ee90828
C++: Demonstrate lack of flow when taking the address of a field and loading it afterwards
2020-08-26 15:50:57 +02:00
Tom Hvitved
de3dc734ff
C++: Follow-up changes
2020-06-30 17:44:16 +02:00
Nick Rolfe
133838dbf3
C++: update tests to expect type of this
2020-06-26 14:20:45 +01:00
Jonas Jensen
5a5df4de26
Revert "Merge pull request #3419 from MathiasVP/flat-structs"
...
There was unfortunately a semantic merge conflict between #3419 and
#3587 that caused a performance regression on (at least) OpenJDK.
This reverts commit 982fb38807 , reversing
changes made to b841cacb83 .
2020-06-22 14:09:06 +02:00
Robert Marsh
1c9b6f0a48
Merge branch 'master' into ir-this-parameter-2
...
Accept test changes - dataflow changes are all positive
2020-06-16 11:28:49 -07:00
Mathias Vorreiter Pedersen
c30d1a618e
C++: Add charpred to partial definition node classes in qltest
2020-06-16 09:55:37 +02:00