Commit Graph

10705 Commits

Author SHA1 Message Date
Benjamin Rodes
d4bc2ceb37 Minor efficiency improvements and comments. 2024-02-08 10:11:50 -05:00
Benjamin Rodes
915aa94b13 Merge branch '51-2cppnon-constant-format-alter-not-const-source' of https://github.com/microsoft/codeql into 51-2cppnon-constant-format-alter-not-const-source 2024-02-07 14:15:40 -05:00
Benjamin Rodes
f12a1ecdf2 Simplifying the query. 2024-02-07 14:15:16 -05:00
Ben Rodes
2c962d51a9 Merge branch 'main' into 51-2cppnon-constant-format-alter-not-const-source 2024-02-07 10:57:31 -08:00
Benjamin Rodes
50134e644f Merge branch '50-model-gettext-family-of-string-operations' into 51-2cppnon-constant-format-alter-not-const-source
# Conflicts:
#	cpp/ql/src/Likely Bugs/Format/NonConstantFormat.ql
2024-02-07 13:56:39 -05:00
Benjamin Rodes
9fc2405681 Updating non-const source logic and associated tests and expected files. 2024-02-07 13:54:56 -05:00
Mathias Vorreiter Pedersen
ebefcb8d35 Merge pull request #15513 from microsoft/50-model-gettext-family-of-string-operations
Added model for gettext variants.
2024-02-07 15:48:16 +00:00
Mathias Vorreiter Pedersen
0ee3c9987f Merge pull request #15539 from MathiasVP/fix-ir-gen-for-conditional-decl-expr-without-var-access
C++: Fix IR generation when `ConditionDeclExpr` does not have an immediate `VariableAccess`
2024-02-07 15:19:16 +00:00
Benjamin Rodes
5866fc1fd0 Updating expected file. 2024-02-07 10:12:25 -05:00
Mathias Vorreiter Pedersen
df181f2dc4 C++: Accept more test changes. 2024-02-07 14:50:18 +00:00
Mathias Vorreiter Pedersen
950b5f2235 C++: Block flow out of 'gettext' in 'cpp/non-constant-format'. (#52) 2024-02-07 09:10:12 -05:00
Mathias Vorreiter Pedersen
fe5eca4134 C++: Accept test changes. 2024-02-07 11:45:40 +00:00
Mathias Vorreiter Pedersen
edc7903c69 C++: Add a predicate for getting the 0'th child of a 'ConditionDeclExpr' without casting it to a 'VariableAccess' and use it in IR generation. 2024-02-07 11:45:13 +00:00
Mathias Vorreiter Pedersen
d0b0440427 C++: Add a testcase with failing IR generation. 2024-02-07 11:38:02 +00:00
Mathias Vorreiter Pedersen
4b046ad670 C++: Also clear the 0'th argument of 'swap'. 2024-02-07 10:31:18 +00:00
Mathias Vorreiter Pedersen
c5dc88345d Merge pull request #15528 from MathiasVP/flow-barrier-interface
C++: Add an interface for models to block flow
2024-02-07 09:58:08 +00:00
Benjamin Rodes
80bf38d8cc Initial working draft of non-const source refactor. 2024-02-06 14:20:01 -05:00
Benjamin Rodes
5e5fea8ef3 Merge branch '50-model-gettext-family-of-string-operations' into 51-2cppnon-constant-format-alter-not-const-source 2024-02-06 12:47:08 -05:00
Mathias Vorreiter Pedersen
7948911415 C++: Delete dead code. 2024-02-06 17:38:22 +00:00
Mathias Vorreiter Pedersen
f7fe84adb4 C++: Add change note. 2024-02-06 16:23:59 +00:00
Mathias Vorreiter Pedersen
21b9b3b87f C++: Accept test changes. 2024-02-06 16:15:22 +00:00
Mathias Vorreiter Pedersen
359b6e14c6 C++: Block flow out of 'swap'. 2024-02-06 16:15:21 +00:00
Mathias Vorreiter Pedersen
e539aca337 C++: Add an interface for blocking flow out of functions that reach a certain argument. 2024-02-06 16:15:21 +00:00
Benjamin Rodes
fc509c2cbe Added additional gettext variant test. 2024-02-06 09:17:10 -05:00
Ben Rodes
0023291903 Update cpp/ql/src/change-notes/2024-02-05-gettext-dataflows.md
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com>
2024-02-06 09:12:25 -05:00
Benjamin Rodes
256554df06 Added change log 2024-02-05 13:04:16 -05:00
Benjamin Rodes
5b2d15265f gettext variant dataflow tests 2024-02-05 13:01:51 -05:00
Ben Rodes
e47df5c7bc Update NonConstantFormat.ql
Removed dead comment
2024-02-05 09:39:05 -05:00
Ben Rodes
88a06ffc66 Update GetText.qll
Fixing issue based on review.
2024-02-05 09:18:30 -05:00
Benjamin Rodes
e8587d060d Removing comments and formatting. 2024-02-02 16:23:14 -05:00
Benjamin Rodes
9577c35d85 Incremental update to NonConstantFormat.ql 2024-02-02 16:06:59 -05:00
Benjamin Rodes
022276badc Added model for gettext variants. 2024-02-02 12:05:52 -05:00
Mathias Vorreiter Pedersen
8d53bce842 Merge pull request #15476 from geoffw0/preprocblock
C++: Add PreprocBlock.qll library
2024-02-02 15:06:17 +00:00
Jeroen Ketema
6b13a8c568 Merge pull request #15504 from MathiasVP/block-summary-flow-out-of-strdup-and-friends
C++: Block summary flow through `strdup` and friends
2024-02-02 14:47:05 +01:00
Geoffrey White
72948cbc46 C++: Remove all cached tags. 2024-02-02 12:23:06 +00:00
Mathias Vorreiter Pedersen
439d3d2438 C++: Add tests with higher level of indirection. 2024-02-02 12:09:46 +00:00
Mathias Vorreiter Pedersen
0729c602c5 Update cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowPrivate.qll
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
2024-02-02 10:39:40 +00:00
Geoffrey White
56538472cf C++: Update the change note. 2024-02-02 09:55:44 +00:00
Geoffrey White
7c37be2e88 C++: Address implicit this. 2024-02-02 09:49:13 +00:00
Mathias Vorreiter Pedersen
6f5ed9ad3b C++: Accept test changes. 2024-02-01 20:15:15 +00:00
Mathias Vorreiter Pedersen
5ad3e97798 C++: Fix TODO by blocking summary flow through functions that don't preserve identity. 2024-02-01 20:15:15 +00:00
Jeroen Ketema
6db68c067f C++: Update stats file 2024-02-01 16:12:53 +01:00
Jeroen Ketema
05e78f14a4 C++: Add upgrade and downgrade scripts 2024-02-01 16:12:53 +01:00
Jeroen Ketema
a79754b696 C++: Resolve functions using complete mangled names 2024-02-01 16:12:53 +01:00
Jeroen Ketema
972d86c0a0 C++: Add column to mangled_name table with completeness information 2024-02-01 16:12:53 +01:00
Mathias Vorreiter Pedersen
1ac75def2b C++: Add another testcase with spurious summary flow. 2024-02-01 15:11:52 +00:00
Mathias Vorreiter Pedersen
4b5a203b46 Merge pull request #15463 from microsoft/42-false-positive-cpp-uninitializedlocal
False positive fix for cpp/uninitialized-local
2024-01-31 09:31:31 +00:00
Mathias Vorreiter Pedersen
f3eac550c3 Merge pull request #15461 from MathiasVP/propagate-edge-kinds
C++: Support function calls throwing exceptions in the IR
2024-01-31 09:25:46 +00:00
Geoffrey White
1b433c7af3 C++: Add QLDoc comments. 2024-01-30 17:54:28 +00:00
Geoffrey White
c29d0b78ce C++: Add top of file doc comment. 2024-01-30 17:29:18 +00:00