Mathias Vorreiter Pedersen
acd16afddd
Revert "Merge pull request #13880 from MathiasVP/type-bounds-preparation"
...
This reverts commit 3e9d9e72dc , reversing
changes made to 877ee7047d .
2023-08-09 13:03:06 +01:00
Mathias Vorreiter Pedersen
cb1076c335
Revert "Merge pull request #13783 from MathiasVP/type-bounds-for-new-range-analysis"
...
This reverts commit e9750af89f , reversing
changes made to 37a546253e .
2023-08-09 13:02:54 +01:00
Mathias Vorreiter Pedersen
499b6f35e5
C++: Also key SSA defs and uses by the base address.
2023-08-09 08:44:16 +01:00
Mathias Vorreiter Pedersen
e2feed78a0
C++: Generate SSA variables for all calls instead of just for calls to
...
allocators.
2023-08-09 08:44:10 +01:00
Mathias Vorreiter Pedersen
f4f5d43bcb
C++: indirectReturnOutNodeOperand0 and indirectReturnOutNodeInstruction0
...
were broken and for some reason only handled the case where calls mapped
to raw indirect nodes :wat:. It turns out these predicates weren't
actually needed anyway.
2023-08-08 13:23:10 +01:00
Robert Marsh
eeaa361b12
Merge pull request #13907 from MathiasVP/cleanup-ssa-internals
...
C++: Small cleanup of `SsaInternals`
2023-08-07 13:16:59 -04:00
Mathias Vorreiter Pedersen
60f2e8a676
C++: Fix QLDoc.
2023-08-07 15:55:43 +01:00
Mathias Vorreiter Pedersen
f2f4e1f882
C++: Add more QLDoc.
2023-08-07 15:22:46 +01:00
Mathias Vorreiter Pedersen
e9750af89f
Merge pull request #13783 from MathiasVP/type-bounds-for-new-range-analysis
...
C++: Constant type-bounds in the new range analysis
2023-08-07 15:20:45 +01:00
Mathias Vorreiter Pedersen
291f1a189d
C++: Unify the two branches.
2023-08-07 14:23:35 +01:00
Jeroen Ketema
8b6a7985db
Refactor the traint-tracking library to follow the dataflow library refactoring
2023-08-07 15:23:15 +02:00
Jeroen Ketema
5d2984b7a5
Merge branch 'main' into shared-taint-tracking
2023-08-07 15:22:29 +02:00
Mathias Vorreiter Pedersen
467231e469
Merge pull request #13887 from jketema/float128x
...
C++: Remove support for `_Float128x` which is not actually supported by gcc
2023-08-07 13:42:24 +01:00
Mathias Vorreiter Pedersen
6e6e118d4b
C++: Make the branches more identical.
2023-08-07 13:22:46 +01:00
Tom Hvitved
7ef3adcafd
C++: Adjust to data flow refactor
2023-08-07 11:35:21 +02:00
Mathias Vorreiter Pedersen
33e991b037
C++: Fix QLDoc.
2023-08-06 20:50:19 +01:00
Mathias Vorreiter Pedersen
f0a1742ad6
C++: Fix barriers in 'AllocationToInvalidPointer.qll'.
2023-08-05 21:58:24 +02:00
Mathias Vorreiter Pedersen
7c9d41d3b9
C++: Make 'SizeBarrier' private as promised.
2023-08-05 21:57:57 +02:00
Mathias Vorreiter Pedersen
0f285ccce0
C++: Fix QLDoc.
2023-08-05 21:55:00 +02:00
Mathias Vorreiter Pedersen
c0828a488f
C++: Fix barriers in 'InvalidPointerToDereference.qll'.
2023-08-05 21:55:00 +02:00
Jeroen Ketema
bdd64ce86d
Introduce shared taint tracking library
2023-08-04 22:51:55 +02:00
Mathias Vorreiter Pedersen
abe3a816ce
Merge pull request #13851 from MathiasVP/sink-without-states
...
DataFlow: Support stateless `isSink` in `StateConfigSig`s
2023-08-04 18:01:42 +02:00
Jeroen Ketema
ea9f49efa1
C++: Remove support for _Float128x which is not actually supported by gcc
2023-08-04 17:23:11 +02:00
Mathias Vorreiter Pedersen
9807c0b0a6
C++: Filter type-based reasons out of MCTV queries.
2023-08-04 16:11:35 +02:00
Mathias Vorreiter Pedersen
b14db86ef9
C++: Let 'hasConstantBound' determine a reason.
2023-08-04 16:09:07 +02:00
Mathias Vorreiter Pedersen
050a563580
C++: Infer a constant upper bound whenever we convert to a 'larger' upper bound (and similarly for lower bounds).
2023-08-04 16:03:09 +02:00
Mathias Vorreiter Pedersen
98e670f25c
Update cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisStage.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-08-04 14:34:03 +02:00
Mathias Vorreiter Pedersen
121d754be4
Update cpp/ql/lib/semmle/code/cpp/rangeanalysis/new/internal/semantic/analysis/RangeAnalysisImpl.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-08-04 14:33:58 +02:00
Mathias Vorreiter Pedersen
86dbb507fd
C++: Add more comments to explain the meaning of 'combineWith'.
2023-08-04 11:20:17 +02:00
Mathias Vorreiter Pedersen
75c333273c
C++: Bind 'impl'. Oops.
2023-08-04 10:58:54 +02:00
Mathias Vorreiter Pedersen
d398c8c5a8
C++: Share some code by introducing a parameterized module to construct reasons.
2023-08-04 10:52:18 +02:00
Mathias Vorreiter Pedersen
7270b5079b
C++: Add a type-based 'SemReason'.
2023-08-03 15:26:10 +02:00
Jeroen Ketema
7ff6f09626
C++: Improve the QL doc of isConstant
2023-08-03 12:16:12 +02:00
Mathias Vorreiter Pedersen
3007fdab5e
Sync identical files.
2023-08-02 14:33:33 +02:00
Mathias Vorreiter Pedersen
096eeeb549
C++: Handle 'isSink' without states in the backwards-compatibility code and in taint-tracking
2023-08-02 14:33:04 +02:00
Anders Schack-Mulligen
fcb482b870
C/C++: Adjust to use the qlpack data-flow api.
2023-08-01 14:02:33 +02:00
Mathias Vorreiter Pedersen
ce9a14b692
Revert "Merge pull request #13792 from MathiasVP/swap-argument-order-in-invalid-ptr-deref"
...
This reverts commit 1fa6511482 , reversing
changes made to 4676ca5a4a .
2023-07-29 11:26:41 +02:00
Owen Mansel-Chan
9b2b58a823
Sync files
2023-07-26 21:48:10 +01:00
Jeroen Ketema
409471c3b2
C++: Rename getEnclosingDeclaration to getAnEnclosingDeclaration
2023-07-26 09:44:47 +02:00
Jeroen Ketema
4fcb576099
Merge branch 'main' into print-global
2023-07-25 14:10:33 +02:00
Mathias Vorreiter Pedersen
9f2ee0d7c2
C++: Rename 'delta' to 'deltaDerefSourceAndPai'.
2023-07-25 11:25:24 +02:00
Mathias Vorreiter Pedersen
13989dba91
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-25 11:20:03 +02:00
Mathias Vorreiter Pedersen
099e11fb0c
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-25 11:19:49 +02:00
Mathias Vorreiter Pedersen
997eb1caf2
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-25 11:19:14 +02:00
Mathias Vorreiter Pedersen
2caad67980
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-25 11:18:54 +02:00
Mathias Vorreiter Pedersen
99f6e685c7
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-25 11:18:46 +02:00
Mathias Vorreiter Pedersen
54afed6e1d
C++: Rename 'delta' to 'deltaDerefSourceAndPai'.
2023-07-25 11:04:18 +02:00
Mathias Vorreiter Pedersen
46832d0b17
C++: Rename 'delta1' and 'delta2' in documentation.
2023-07-25 10:50:51 +02:00
Mathias Vorreiter Pedersen
e75f604172
C++: Replace more text with formulas.
2023-07-25 10:48:23 +02:00
Mathias Vorreiter Pedersen
af904f5cfe
Update cpp/ql/lib/semmle/code/cpp/security/InvalidPointerDereference/InvalidPointerToDereference.qll
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2023-07-25 10:33:57 +02:00