Mathias Vorreiter Pedersen
83aef6fc16
C++: Write formulas instead of 'non-strictly upper bounded by'.
2023-07-21 14:56:40 +01:00
Mathias Vorreiter Pedersen
108cd7f078
C++: Use more descriptive names for identifiers in 'cpp/invalid-pointer-deref'.
2023-07-21 14:55:45 +01:00
Mathias Vorreiter Pedersen
5270cf6c41
C++: Update documentation based on PR feedback.
2023-07-21 11:09:01 +01:00
Mathias Vorreiter Pedersen
a7ee27ec22
C++: Fix 'begin'/'base' confusion.
2023-07-21 10:20:24 +01:00
Mathias Vorreiter Pedersen
6c3c4c302e
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2023-07-21 10:19:04 +01:00
Mathias Vorreiter Pedersen
4075dacd52
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/AllocationToInvalidPointer.qll
2023-07-21 09:55:23 +01:00
Mathias Vorreiter Pedersen
369cee9ed9
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2023-07-21 09:32:14 +01:00
Jeroen Ketema
4c9c5d8f0c
C++: Add IR SSA test case for the ternary operator
2023-07-21 10:22:34 +02:00
github-actions[bot]
c936a920b0
Release preparation for version 2.14.1
2023-07-20 16:32:27 +00:00
Jeroen Ketema
7c429fb924
C++: Remove redundant case from shouldPrintDeclaration
...
A configuration should always exist, because it does not have a charpred
that could prevent this.
2023-07-20 16:11:17 +02:00
Jeroen Ketema
e76dc4a1f9
C++: Support printing of global and namespace variables in PrintAST
2023-07-20 11:43:55 +02:00
Jeroen Ketema
2a63116fc2
C++: Rename shouldPrintFunction to shouldPrintDeclaration
2023-07-19 16:55:43 +02:00
Mathias Vorreiter Pedersen
922f4d5496
C++: Add more documentation to the 'cpp/invalid-pointer-deref' query.
2023-07-19 14:42:20 +01:00
Anders Schack-Mulligen
a9c76d4175
Merge pull request #13717 from aschackmull/dataflow/neverskipadditionalsteps
...
Dataflow: Add support for not skipping configuration-specific nodes in big-step
2023-07-19 14:06:54 +02:00
Mathias Vorreiter Pedersen
475a892216
Merge pull request #13760 from MathiasVP/split-invalid-ptr-deref-into-more-files
...
C++: Split `cpp/invalid-pointer-deref` into more files
2023-07-19 11:36:35 +01:00
Anders Schack-Mulligen
8d365b04c1
C/C++: Adjust expected output.
2023-07-19 11:41:54 +02:00
Anders Schack-Mulligen
e72a0b2f8c
Dataflow: Add change notes.
2023-07-19 11:41:15 +02:00
Anders Schack-Mulligen
c01a494ea5
C/C++: Don't force-include XxeFlowStateTransformer steps in XXE.ql.
2023-07-19 11:41:15 +02:00
Anders Schack-Mulligen
ae24d68b5d
C/C++/C#/Java/Python/Ruby/Swift: Adjust expected output.
2023-07-19 11:41:15 +02:00
Anders Schack-Mulligen
941aa7ae28
C/C++: Don't force-include default steps in DefaultTaintTrackingImpl.
2023-07-19 11:41:15 +02:00
Anders Schack-Mulligen
95d17045c9
Dataflow: Sync.
2023-07-19 11:41:15 +02:00
Mathias Vorreiter Pedersen
2f48cde2e5
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/AllocationToInvalidPointer.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-19 10:28:05 +01:00
Mathias Vorreiter Pedersen
9a8fb0b93a
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/AllocationToInvalidPointer.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-19 10:27:55 +01:00
Mathias Vorreiter Pedersen
3e1b4d97fe
C++: Add QLDoc.
2023-07-18 18:15:25 +01:00
Mathias Vorreiter Pedersen
576f021c25
C++: Fix Code Scanning errors.
2023-07-18 18:15:25 +01:00
Mathias Vorreiter Pedersen
4762e883fc
C++: Add inline expectations tests for the invalid-pointer-to-dereference stage of the query.
2023-07-18 18:15:24 +01:00
Mathias Vorreiter Pedersen
a735d18a1b
C++: Add inline expectations tests for the allocation-to-invalid-pointer stage of the query.
2023-07-18 18:15:24 +01:00
Mathias Vorreiter Pedersen
5099de5b3d
C++: Split the query into 4 files.
2023-07-18 18:15:18 +01:00
Jeroen Ketema
aad094bdd0
C++: Handle FunctionAccesses with qualifiers
...
Also fix the IR generation for these and add more IR tests involving value
categories.
2023-07-18 16:35:39 +02:00
Mathias Vorreiter Pedersen
a038b389c3
C++: More cleanup.
2023-07-18 14:03:04 +01:00
Mathias Vorreiter Pedersen
d41d2bc29e
Merge pull request #13699 from MathiasVP/final-config-to-invalid-pointer-deref
...
C++: Handle call-contexts mismatches in `cpp/invalid-pointer-deref`
2023-07-18 13:08:21 +01:00
Jeroen Ketema
5d8b203112
Merge pull request #13758 from jketema/val-cat-tests
...
C++: Add more IR tests
2023-07-18 11:02:27 +02:00
Jeroen Ketema
e2de94b233
C++: Add more IR tests
...
These show the value categories for more static member calls, and show that
a load occurs when a `volatile` variable is being used in an empty context.
2023-07-18 08:40:54 +02:00
Jeroen Ketema
a426010b06
Merge pull request #13621 from MathiasVP/deprecate-ast-dataflow
...
C++: Deprecate AST dataflow
2023-07-18 08:13:47 +02:00
Mathias Vorreiter Pedersen
d63ead55dc
C++: Remove barrier that's no longer needed.
2023-07-17 15:59:35 +01:00
Mathias Vorreiter Pedersen
11f2681904
Merge pull request #13740 from MathiasVP/unique-entry-point
...
C++: Exclude invalid functions from new range analysis
2023-07-17 13:32:50 +01:00
Mathias Vorreiter Pedersen
8c21699040
C++: Accept test changes.
2023-07-17 10:51:42 +01:00
Mathias Vorreiter Pedersen
f9db6a9868
C++: Don't do range analysis on malformed IR.
2023-07-17 10:15:01 +01:00
Mathias Vorreiter Pedersen
c13f015b95
C++: No need to select the 'instruction' as the sink when the dataflow node has a better 'toString'.
2023-07-13 14:17:43 +01:00
Mathias Vorreiter Pedersen
5e06043120
C++: Completely get rid of merged path nodes.
2023-07-13 14:15:14 +01:00
Anders Schack-Mulligen
837df2ad37
Dataflow: Sync.
2023-07-13 10:55:39 +02:00
Jeroen Ketema
52ab215560
C++/Swift: Remove none() dataflow configuration predicates
...
These now have default implementations that are also `none()`
2023-07-12 23:49:29 +02:00
Ed Minnix
63299688d5
Add change notes for default implementations of isBarrier and isAdditionalFlowStep
2023-07-12 15:21:16 -04:00
Ed Minnix
2c0a456855
C++: Add default implementation of StateConfigSig::isAdditionalFlowStep/4
2023-07-12 15:06:24 -04:00
Ed Minnix
c73cd73001
C++: Add default implementation of StateConfigSig::isBarrier/2
2023-07-12 15:06:24 -04:00
Mathias Vorreiter Pedersen
2c2f9b9e17
C++: Fix comment.
2023-07-12 11:59:29 +01:00
Mathias Vorreiter Pedersen
19872d5adf
Update cpp/ql/src/experimental/Security/CWE/CWE-193/InvalidPointerDeref.ql
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-12 11:58:07 +01:00
Mathias Vorreiter Pedersen
3d5414b84c
Update cpp/ql/src/experimental/Security/CWE/CWE-193/InvalidPointerDeref.ql
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-12 11:57:51 +01:00
Mathias Vorreiter Pedersen
63c5684fbb
C++: Join with 'invalidPointerToDerefSource' in 'hasFlowPath' to prevent conflation of paths.
2023-07-11 10:24:01 +01:00
Mathias Vorreiter Pedersen
a4c0063ab1
Merge pull request #13679 from MathiasVP/speedup-big-step
...
DataFlow: Speed up the big step relation
2023-07-11 09:44:17 +01:00