Mathias Vorreiter Pedersen
2ceb4cffbc
Merge pull request #14736 from MathiasVP/fix-global-indirect-flow
...
C++: Fix indirect global-variable flow
2023-11-10 14:25:23 +00:00
Jeroen Ketema
c71bdce2d0
Merge pull request #14744 from jketema/fgets
...
C++: Fix `hasRemoteFlowSource` for `fgets`
2023-11-10 14:03:40 +01:00
Jeroen Ketema
ba51b65d84
C++: Fix hasRemoteFlowSource for fgets
...
Also add the test that exposed this. Note that the test would only have started
failing after `cpp/uncontrolled-process-operation` with the rewrite of the
query away from default taint tracking, which has not happened yet.
2023-11-10 11:56:23 +01:00
Mathias Vorreiter Pedersen
b858a284c9
Merge pull request #14726 from microsoft/28-strsafe-library-updates2
2023-11-09 21:39:10 +00:00
Mathias Vorreiter Pedersen
eb1024c79b
C++: Improve (and simplify) 'toString's.
2023-11-09 20:27:23 +00:00
Mathias Vorreiter Pedersen
86e791980c
C++: Simplify 'isGlobalUse' and 'isGlobalDefImpl'.
2023-11-09 20:27:23 +00:00
Mathias Vorreiter Pedersen
9762313500
C++: Implement jumpStep using the indirection instead of index.
2023-11-09 20:27:23 +00:00
Mathias Vorreiter Pedersen
95bb70f577
C++: Also add a 'getIndirection' on 'GlobalDef' as well. This will be useful in the next commit.
2023-11-09 20:25:29 +00:00
Benjamin Rodes
5e140021fb
Removed non-ascii characters.
2023-11-09 15:24:58 -05:00
Mathias Vorreiter Pedersen
fd26ae18bf
C++: Obtain the SSA variable of a 'GlobalUse' using the indirection instead of the index (like we do for non-global uses as well).
2023-11-09 20:20:27 +00:00
Mathias Vorreiter Pedersen
bb5a78d3f1
C++: Factor the IPA body of 'TGlobalUse' and 'TGlobalDef' out into predicates.
2023-11-09 20:17:47 +00:00
Benjamin Rodes
8674139de6
Change log file name change
2023-11-09 13:24:14 -05:00
Anders Schack-Mulligen
abe0bb70ac
C++: Fix operand ssa variables for range analysis.
2023-11-09 12:26:53 +01:00
Ben Rodes
79dcb4b48c
Update cpp/ql/lib/change-notes/2023-11-8-strsafe-models.md
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2023-11-08 12:37:55 -05:00
Benjamin Rodes
bdae2af0e2
Adding missing strsafe sprintf variants.
2023-11-08 12:20:53 -05:00
Benjamin Rodes
c3ff181198
Adding change log
2023-11-08 12:20:04 -05:00
Anders Schack-Mulligen
1f4cd74a1c
Java/C++: Move SsaReadPosition to shared qlpack.
2023-11-08 12:11:17 +01:00
Mathias Vorreiter Pedersen
ab64d9a9d6
Merge pull request #14713 from MathiasVP/no-gvn-as-ssa-in-range-analysis
...
C++: Don't use GVN as SSAVariable in new range analysis
2023-11-08 09:28:15 +00:00
Anders Schack-Mulligen
45ae4ed362
Merge pull request #14711 from aschackmull/shared/rangeutil-share2
...
Java/C++/RangeAnalysis: Move a couple of utility predicates to shared qlpack
2023-11-08 08:33:12 +01:00
Mathias Vorreiter Pedersen
a8eed6bd7e
Merge pull request #14704 from MathiasVP/fix-uninitialized-local
...
C++: IR'ify `cpp/uninitialized-local` and fix FPs
2023-11-07 22:45:34 +00:00
Mathias Vorreiter Pedersen
91b29eee53
C++: Don't use GVN as an SSAVariable in range analysis.
2023-11-07 14:52:50 +00:00
Mathias Vorreiter Pedersen
a04830b8b2
Merge pull request #14697 from MathiasVP/range-analysis-simplify-conversions
...
C++: Simplify the definition of `SemExpr` for range analysis
2023-11-07 14:52:09 +00:00
Anders Schack-Mulligen
12cba7909b
Java/C++: Move range util guard-controls predicates to shared pack.
2023-11-07 15:14:34 +01:00
Anders Schack-Mulligen
f2ca52d951
Java/C++: Move range util backEdge predicate to shared pack.
2023-11-07 15:14:34 +01:00
Mathias Vorreiter Pedersen
0fd4d4a114
C++: Add QLDoc.
2023-11-07 09:29:34 +00:00
Mathias Vorreiter Pedersen
022c9eb3cd
C++: Add a barrier feature to 'MustFlow'.
2023-11-07 09:23:42 +00:00
Mathias Vorreiter Pedersen
6bf2d47321
C++: Allow source = sink in 'MustFlow'.
2023-11-07 09:23:42 +00:00
Mathias Vorreiter Pedersen
a17cd9bc1c
Merge pull request #14667 from MathiasVP/more-function-input-and-output-ipa-numbers
...
C++: Allocate more `FunctionInput` and `FunctionOutput`s
2023-11-07 08:57:31 +00:00
Mathias Vorreiter Pedersen
d38fa13299
C++: Remove more uses of 'getConverted' and 'getUnconverted'.
2023-11-06 16:11:55 +00:00
Mathias Vorreiter Pedersen
d544f47746
C++: Simplify the definition of 'SemExpr' by instead making non-overflowing conversions copy value expressions.
2023-11-06 16:01:59 +00:00
Mathias Vorreiter Pedersen
31c2a3be98
C++: Don't redefine the meaning of the single-parameter 'isParameterDeref' and accept test changes.
2023-11-06 15:52:58 +00:00
Mathias Vorreiter Pedersen
ff30308a2b
C++: Only the first indirection of the argument should be the remote flow sink.
2023-11-06 13:57:14 +00:00
Mathias Vorreiter Pedersen
cd2eec0aa0
C++: Also override the single-parameter 'isParameterDeref' in 'InParameterDeref'.
2023-11-06 13:23:31 +00:00
Mathias Vorreiter Pedersen
679d64f0e8
Merge pull request #14647 from microsoft/24-odbc-model-instantiation-upstream2
...
C++: Adding a model implementation for ODBC.
2023-11-02 19:42:27 +00:00
Benjamin Rodes
30a512c96b
Formatting
2023-11-02 15:01:15 -04:00
Benjamin Rodes
f404d7a5f8
Changes to address pr comments.
2023-11-02 13:11:23 -04:00
Mathias Vorreiter Pedersen
392b2af923
C++: Only the second indirection of the argument should be the remote flow source.
2023-11-02 16:51:24 +00:00
Mathias Vorreiter Pedersen
b82dfa9a21
C++: Fix failing test by allocating 'TFunctionInput's and 'TFunctionOutput's for more indirections. Note that we now mark two output nodes coming out of 'getaddrinfo' as a remote flow source (the first indirection and the second indirection). We'll fix that in the next commit.
2023-11-02 16:45:50 +00:00
Anders Schack-Mulligen
8e9aa5b560
C++: Switch to shared modulus analysis.
2023-11-01 15:59:24 +01:00
Anders Schack-Mulligen
a7f3ef1a6c
Rangeanalysis: Parameterise shared modulus analysis.
2023-11-01 15:59:24 +01:00
Anders Schack-Mulligen
8e2b17cd86
Rangeanalysis: Copy C++ ModulusAnalysis file verbatim.
2023-11-01 15:59:24 +01:00
Anders Schack-Mulligen
6d859daf3d
Merge pull request #14656 from aschackmull/shared/range-utils
...
Rangeanalysis: Share ssaRead predicate
2023-11-01 15:57:52 +01:00
Mathias Vorreiter Pedersen
b54b5ae0a9
Merge pull request #14648 from MathiasVP/simplify-invalid-ptr-deref
...
C++: Remove one use of range analysis in `cpp/invalid-pointer-deref`
2023-11-01 14:42:20 +00:00
Anders Schack-Mulligen
048a7c4e42
Rangeanalysis: Rename SsaBound.getAVariable to getVariable.
2023-11-01 11:58:06 +01:00
Anders Schack-Mulligen
48291dd32d
Rangeanalysis: Remove superfluous ignoreZeroLowerBound.
2023-11-01 11:51:46 +01:00
Mathias Vorreiter Pedersen
9736936e54
Merge pull request #14635 from MathiasVP/assign-pointer-add-and-sub-is-not-bitwise
2023-11-01 00:40:39 +01:00
Mathias Vorreiter Pedersen
6e385cabd8
C++: Add change note.
2023-10-31 19:16:36 +00:00
Mathias Vorreiter Pedersen
b79a5fee14
Merge pull request #14637 from MathiasVP/dataflow-for-realloc
...
C++: Add a taint model for `realloc`
2023-10-31 18:24:04 +01:00
Benjamin Rodes
18c8d90a1a
Adding a model implementation for ODBC.
...
(cherry picked from commit 04147f8d91cdf018ec03cbfdb953253e23687944)
2023-10-31 08:52:05 -07:00
Anders Schack-Mulligen
34b9791e46
Rangeanalysis: Remove superfluous ignoreSsaReadCopy.
2023-10-31 15:32:25 +01:00