Commit Graph

5483 Commits

Author SHA1 Message Date
Mathias Vorreiter Pedersen
9652679c6f Merge pull request #14568 from alexet/alexet/add-fn-tests
CPP: Add test demonstrating use-after-free false negatives.
2023-10-24 15:38:01 +01:00
Mathias Vorreiter Pedersen
67ed12c916 C++: Correctly model that 'operator->', and 'get'
on smart pointers perform a load.
2023-10-23 20:11:23 +01:00
Mathias Vorreiter Pedersen
b107c4c641 C++: Fix missing result in 'ModelUtil'. The problem was that 'n.asInstruction()' on line 81 wasn't necessarily a 'CallInstruction' (it could be a conversion). 2023-10-23 19:34:25 +01:00
Mathias Vorreiter Pedersen
c0b04eac7c C++: Add failing test. 2023-10-23 19:29:28 +01:00
Alex Eyers-Taylor
26b0363707 CPP: Add test demonstrating use-after-free false negatives. 2023-10-23 17:01:52 +01:00
Mathias Vorreiter Pedersen
6c10ba2fb1 Merge pull request #14495 from github/calumgrant/comp-generated-this
C++: Fix ImplicitThisFieldAccess
2023-10-20 15:25:26 +01:00
Mathias Vorreiter Pedersen
0ab159f803 Merge pull request #14135 from github/sashabu/frontend-update
C++: Update for changes in frontend.
2023-10-19 11:40:24 +01:00
Jeroen Ketema
a972d0943a C++: Accept test changes after changes in IR generation 2023-10-19 10:45:14 +02:00
Jeroen Ketema
2a64552979 C++: Add support for C23/C++23 floating-point types 2023-10-19 10:45:14 +02:00
Jeroen Ketema
7e71d9e619 C++: Update expected test results after outputting less loads from the extractor 2023-10-19 10:45:14 +02:00
Jeroen Ketema
bec3e62771 C++: Update cpp/constant-array-overflow test results after frontend update 2023-10-19 10:45:14 +02:00
Jeroen Ketema
23c6027386 C++: Update expected test changes after frontend update 2023-10-19 10:45:13 +02:00
Jeroen Ketema
8b8a2726d4 C++: Accept semantic range analysis test changes due to extra loads in the IR 2023-10-19 10:45:13 +02:00
Jeroen Ketema
554087161b C++: Accept sign analysis test changes
The IR now contains extra loads that need to be accounted for.
2023-10-19 10:45:13 +02:00
Jeroen Ketema
5036135f01 C++: Fix IR generation for the comma operator 2023-10-19 10:45:13 +02:00
Jeroen Ketema
0fceecee6d C++: Fix extractor options for deprecated_with_msg test
The previous extractor options no longer work, because the default assumed
compiler versions have changed in the frontend.
2023-10-19 10:45:13 +02:00
Jeroen Ketema
e271c7e5e7 C++: Accept IR GVN test changes a CopyValue is now Load due to IR changes 2023-10-19 10:45:13 +02:00
Jeroen Ketema
91a98f3512 C++: Accept new dataflow IR inconsistencies
These are due to additional loads being generated on fields, and should not
cause any problems. Ideally, we should tune the definition of
`TPostFieldUpdateNode` to make these go away.
2023-10-19 10:45:13 +02:00
Jeroen Ketema
231e9ef098 C++: Accept PrintAST value category changes after frontend update 2023-10-19 10:45:13 +02:00
Jeroen Ketema
a6dae91215 C++: Accept IR test changes after value category updates 2023-10-19 10:45:12 +02:00
Calum Grant
6472ed7fe0 C++: Fix GVN for ImplicitThisFieldAccess 2023-10-18 12:40:55 +01:00
Calum Grant
c51efb1477 C++: Tighten up definitions of field accesses 2023-10-18 11:39:09 +01:00
Mathias Vorreiter Pedersen
bbf9bcde2a Merge pull request #14482 from MathiasVP/additional-call-targets-for-cpp
C++: Add an abstract class that can be used to extend `viableCallable`
2023-10-17 14:57:21 +01:00
Mathias Vorreiter Pedersen
9a2c1daebe C++: Add tests for 'AdditionalCallTarget'. 2023-10-17 11:48:44 +01:00
Mathias Vorreiter Pedersen
d8a049f5cc C++: Accept test changes. 2023-10-16 10:51:47 +01:00
Mathias Vorreiter Pedersen
6a7b2e4aa4 C++: Add failing test. 2023-10-16 10:47:45 +01:00
Jeroen Ketema
d56a9f0781 Merge pull request #14424 from jketema/rewrite-cgi-xss
C++: Rewrite `cpp/cgi-xss` to not use default taint tracking
2023-10-13 17:57:04 +02:00
Calum Grant
552221868f C++: Expand ImplicitThisFieldAccess 2023-10-13 12:05:20 +01:00
Alex Eyers-Taylor
3ac3169278 CPP: Add some range analysis cases 2023-10-10 20:01:14 +01:00
Mathias Vorreiter Pedersen
496f190d70 C++: Accept test changes. 2023-10-10 16:45:31 +01:00
Jeroen Ketema
3b777c2764 C++: Rewrite cpp/cgi-xss to not use default taint tracking
Also add a test that demonstrates that we need to look at inidrect expressions
and not direct ones.
2023-10-10 11:56:39 +02:00
Jeroen Ketema
6ff8e06ace Revert "C++: Rewrite cpp/cgi-xss to not use default taint tracking"
This reverts commit b6132d2a0f.
2023-10-09 16:30:21 +02:00
Jeroen Ketema
b6132d2a0f C++: Rewrite cpp/cgi-xss to not use default taint tracking 2023-10-06 16:11:13 +02:00
Mathias Vorreiter Pedersen
eb3f1967a5 Merge pull request #14365 from MathiasVP/disable-flow-through-pointer-arith-for-size
C++: Disable size-flow through pointer arithmetics in `cpp/invalid-pointer-deref`
2023-10-06 10:14:31 +02:00
Mathias Vorreiter Pedersen
e38f65981e C++: Accept test changes. 2023-10-04 20:12:42 +02:00
Henry Mercer
f3847b3f51 Merge branch 'main' into henrymercer/rc-3.11-mergeback 2023-10-03 16:30:23 +01:00
Mathias Vorreiter Pedersen
9a139ea903 C++: Accept test changes. 2023-10-03 15:58:35 +02:00
Alex Eyers-Taylor
2860c0c0d4 CPP: Move test into correct file. 2023-09-27 18:42:26 +01:00
Alex Eyers-Taylor
d0849311a6 CPP: Fix use after free FPs by elimnatiing freeing nodes rather than freeing expressions. 2023-09-20 18:47:57 +01:00
Alex Eyers-Taylor
9de6230bbf CPP: Add use after free false positive example. 2023-09-20 18:34:47 +01:00
Mathias Vorreiter Pedersen
7ef5971337 C++: Use 'size_t' explicitly in test. 2023-09-19 13:58:08 +01:00
Mathias Vorreiter Pedersen
9b35202d21 Merge pull request #14249 from MathiasVP/fix-malloc-decl-in-test
C++: Fix the declaration of `malloc` in test
2023-09-19 13:53:23 +01:00
Mathias Vorreiter Pedersen
fda52a568d C++: Accept test changes. 2023-09-18 17:55:25 +01:00
Mathias Vorreiter Pedersen
8a2d4852c6 C++: Add another testcase. 2023-09-18 16:48:03 +01:00
Mathias Vorreiter Pedersen
bc0b2e5318 C++: Fix the return type and parameter type of 'malloc' in test. 2023-09-18 16:40:46 +01:00
Mathias Vorreiter Pedersen
0e9f5f6b8e C++: Accept test changes. 2023-09-18 11:46:19 +01:00
Mathias Vorreiter Pedersen
53561b7883 C++: Add tests for sized allocation without a need for a synthesized conversion. 2023-09-18 11:45:18 +01:00
Mathias Vorreiter Pedersen
cdf5872eb3 Merge pull request #14217 from alexet/is-trivial-built-in
CPP:Make __is_trivial a builtin operation.
2023-09-15 16:01:25 +01:00
Mathias Vorreiter Pedersen
b0566af938 C++: Accept test changes. 2023-09-14 14:04:12 +01:00
Mathias Vorreiter Pedersen
2a55034e55 C++: Add failing test. 2023-09-14 14:01:48 +01:00