Mathias Vorreiter Pedersen
a6e619ce5b
C++: Add field flow through single-field structs and accept tests
2020-04-20 08:52:46 +02:00
Mathias Vorreiter Pedersen
6fca23bc8b
C++: Demonstrate lack of flow through single-field structs
2020-04-20 08:50:31 +02:00
Mathias Vorreiter Pedersen
8c03423f3e
C++: Accept test output
2020-04-17 12:03:16 +02:00
Mathias Vorreiter Pedersen
62e2ffe623
C++: Make PartialDefinitionNode private and add/update comments based on review comments
2020-04-16 17:19:12 +02:00
Mathias Vorreiter Pedersen
f02feac33a
C++: Add flow from #3220
2020-04-15 11:34:19 +02:00
Mathias Vorreiter Pedersen
209e084820
Merge branch 'master' into ir-flow-fields
2020-04-15 10:51:45 +02:00
Mathias Vorreiter Pedersen
cde34c9b1b
C++: Accept test output which I previously forgot to accept
2020-04-13 16:19:21 +02:00
Robert Marsh
c38ccaaab6
Merge branch 'master' into rdmarsh/cpp/ir-flow-through-outparams
2020-04-08 12:32:35 -07:00
Mathias Vorreiter Pedersen
52b179aee5
Merge branch 'master' into ir-flow-fields
2020-04-07 21:27:17 +02:00
Mathias Vorreiter Pedersen
d56284fe8f
C++: Move added flow from simpleLocalFlowStep to simpleInstructionLocalFlowStep and remove flow that could cause field conflation
2020-04-07 16:00:40 +02:00
Mathias Vorreiter Pedersen
5719967a8e
C++: Remove single-field case from PostUpdateNode and accept tests
2020-04-07 12:03:28 +02:00
Jonas Jensen
0743c42807
Merge remote-tracking branch 'upstream/master' into dataflow-indirect-args
...
Accepted test results that were in semantic merge conflict between
these branches. The changed results are due to a bug that that's part of
https://github.com/github/codeql-c-analysis-team/issues/35 .
2020-04-06 19:26:08 +02:00
Geoffrey White
d5accc70e1
C++: Add a test similar to issues/44.
2020-04-06 16:47:24 +01:00
Jonas Jensen
e37aab5002
C++: Suppress FieldAddressInstruction taint
...
See code comment. This fixes false positives on openjdk/jdk.
2020-04-06 16:14:26 +02:00
Jonas Jensen
3b76509159
C++: Test DefaultTaintTracking field conflation
2020-04-06 16:13:41 +02:00
Mathias Vorreiter Pedersen
c577541850
C++: Fix reverse read dataflow consistency failure and accept tests
2020-04-06 15:50:08 +02:00
Mathias Vorreiter Pedersen
317734f41e
C++: Attach PostUpdateNodes to Chi nodes following aschackmull's suggestion
2020-04-05 22:35:26 +02:00
Jonas Jensen
16c7a35b1c
Merge pull request #3195 from geoffw0/taintstring
...
C++: Model taint flow through std::string constructor and c_str()
2020-04-03 12:05:07 +02:00
Robert Marsh
a8e191248e
Merge branch 'master' into rdmarsh/cpp/ir-flow-through-outparams
...
Merge IR SSA test additions
2020-04-02 15:30:20 -07:00
Geoffrey White
73171682b7
C++: Switch to taint flow as suggested in the old PR.
2020-04-02 19:49:41 +01:00
Geoffrey White
b14b52d0ac
C++: Add models for std::string (as in old PR).
2020-04-02 19:49:41 +01:00
Geoffrey White
69f6790c83
C++: Add a test of taint through std::strings, based on the one in the old PR.
2020-04-02 19:49:31 +01:00
Mathias Vorreiter Pedersen
a273917e51
Merge branch 'master' into init-dynamic-alloc-newexpr
2020-04-02 14:11:03 +02:00
Mathias Vorreiter Pedersen
af9e05b9cd
C++: Accept test
2020-04-02 10:57:11 +02:00
Mathias Vorreiter Pedersen
020c273dc9
Merge branch 'master' into ir-flow-fields
2020-04-02 10:45:58 +02:00
Robert Marsh
a061811939
Merge branch 'master' into rdmarsh/cpp/ir-flow-through-outparams
...
Pick up new test for user-defined swap functions
2020-04-01 17:32:55 -07:00
Geoffrey White
7a98919879
C++: Add a non-standard swap to taint tests.
2020-04-01 17:14:38 +01:00
Robert Marsh
25f3f67c4a
Merge branch 'master' into rdmarsh/cpp/ir-flow-through-outparams
...
Fixes test conflicts and reveals a bug in parameter handling
2020-03-31 12:54:00 -07:00
Mathias Vorreiter Pedersen
f06ae6e9de
C++: Accept more test output
2020-03-31 19:49:04 +02:00
Mathias Vorreiter Pedersen
688464a00f
C++: Add testcases with new and accept output
2020-03-31 12:22:07 +02:00
Jonas Jensen
531ef64c5d
C++: Fix other copies of the argHasPostUpdate test
2020-03-30 17:45:53 +02:00
Jonas Jensen
dd322be238
C++: Remove noise from argHasPostUpdate check
...
This consistency check seems to have value for AST data flow, but I've
disabled it on the IR for now.
This commit also includes two unrelated changes that seem to fix a
semantic merge conflict.
2020-03-30 15:51:11 +02:00
Tom Hvitved
9fa9c10361
Merge pull request #2921 from aschackmull/dataflow/consistency-checks
...
Java: Add data-flow consistency checks.
2020-03-30 12:47:41 +02:00
Mathias Vorreiter Pedersen
5ba5791ec6
C++: Only allow flow through non-conflated chi instructions
2020-03-27 13:37:17 +01:00
Mathias Vorreiter Pedersen
c6c613840a
C++: Removed toString from PostUpdateNodes. They were more confusing than helpful
2020-03-26 11:43:40 +01:00
Mathias Vorreiter Pedersen
fbef146a49
C++: Remove PositionalArgumentWithoutWriteSideEffectNode (since not all arguments need a PostUpdateNode). Also generalized the added flow rule in simpleLocalFlowStep since there isn't always a ChiInstruction - for instance of it's a write to a struct that only has a single field.
2020-03-26 11:39:20 +01:00
Jonas Jensen
b622d62d3c
C++: Wire up param/arg indirections in data flow
2020-03-25 15:23:43 +01:00
Mathias Vorreiter Pedersen
077c282cd3
C++: Add field flow and accept tests
2020-03-24 22:28:54 +01:00
Mathias Vorreiter Pedersen
22381f3ee6
C++: Demonstrate amount of field flow already present
2020-03-24 22:28:54 +01:00
Robert Marsh
59a81d8445
C++: merge from master and accept test changes
2020-03-18 13:47:01 -07:00
Geoffrey White
44c66a3b09
C++: Fixup test .expected files after merge.
2020-03-16 15:45:29 +00:00
Geoffrey White
034f7cc948
Merge branch 'master' into model-gets
2020-03-16 15:12:36 +00:00
Anders Schack-Mulligen
85d6b7c2ed
C++: Add tests.
2020-03-11 10:49:21 +01:00
Robert Marsh
bba6b23019
Merge branch 'master' into rdmarsh/cpp/ir-flow-through-outparams
2020-03-10 11:12:19 -07:00
Robert Marsh
4333fe7905
Merge branch 'master' into rdmarsh/cpp/ir-flow-through-outparams
2020-02-26 13:15:27 -08:00
Geoffrey White
a0e839d3f1
C++: Block duplicate taint results from 'gets' and other functions.
2020-02-24 11:53:22 +00:00
Geoffrey White
e683f6113d
C++: Model 'gets'.
2020-02-24 11:27:35 +00:00
Geoffrey White
8dcd46f9e7
C++: Add a taint test for gets.
2020-02-24 11:25:28 +00:00
Robert Marsh
bed6d2b225
Merge branch 'master' into rdmarsh/cpp/malloc-alias-locations
2020-02-19 16:44:13 -08:00
Geoffrey White
df29143b7e
C++: Fix a test that should be working on the AST dataflow.
2020-02-19 13:02:24 +00:00