Ian Lynagh
79dbd1a160
C++: Update stats
2025-11-24 18:15:11 +00:00
Geoffrey White
daead038ab
Merge pull request #20829 from geoffw0/cert-checks
...
Rust: New Query rust/disabled-certificate-check
2025-11-24 15:21:58 +00:00
Ian Lynagh
555301cec7
Merge pull request #20874 from igfoo/igfoo/overlay
...
C++: Add the beginnings of overlay support
2025-11-24 14:11:09 +00:00
Tom Hvitved
43111b8eaa
Merge pull request #20716 from hvitved/rust/path-resolution-variable-impl
...
Rust: Path resolution before variable resolution
2025-11-24 13:08:53 +01:00
Tom Hvitved
ac644b257a
Merge pull request #20848 from hvitved/rust/ranked-forex-rename
...
Rust: Use `ToIndex` instead of `FromIndex` in ranked `forex` predicates
2025-11-24 13:05:58 +01:00
Tom Hvitved
c7a0411c55
Merge pull request #20892 from hvitved/rust/builtin-mut-placeholders
...
Rust: Add placeholder declarations for `&mut` and `*mut`
2025-11-24 13:05:15 +01:00
Tom Hvitved
17e1e1713e
Rust: Add placeholder declarations for &mut and *mut
2025-11-23 20:56:07 +01:00
Tom Hvitved
b16f8c20a9
Update rust/ql/lib/codeql/rust/internal/PathResolution.qll
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-11-23 19:05:24 +01:00
Geoffrey White
b62968fa0f
Rust: Spelling.
2025-11-22 09:22:33 +00:00
Geoffrey White
993154ed57
Rust: Avoid duplicating sinks.
2025-11-21 19:34:16 +00:00
Geoffrey White
0ea28b4026
Rust: Test .expected changes.
2025-11-21 18:57:06 +00:00
Geoffrey White
ff8032a4ec
Rust: Fix after merge.
2025-11-21 18:53:57 +00:00
Geoffrey White
eb674d08d6
Rust: Reinstate the original function names model but call it a heuristic now.
2025-11-21 18:46:12 +00:00
Geoffrey White
2ce4c47646
Rust: More sinks from the MRVA-1000.
2025-11-21 18:43:35 +00:00
Geoffrey White
80615056c0
Merge remote-tracking branch 'upstream/main' into cert-checks
2025-11-21 18:40:40 +00:00
Geoffrey White
e01c871b70
Rust: Accept changes to the dataflow/sources/file test.
2025-11-21 17:12:23 +00:00
Geoffrey White
3ad014b2f9
Rust: Additional sinks found in MRVA-1000.
2025-11-21 16:33:59 +00:00
Geoffrey White
ace7a77fd6
Rust: Switch to MaD models.
2025-11-21 16:27:52 +00:00
Geoffrey White
785754ec65
Rust: Switch the query to taint flow, since some taint summaries are relevant now.
2025-11-21 15:02:29 +00:00
Geoffrey White
89a9c46547
Rust: Second change note.
2025-11-21 15:02:27 +00:00
Geoffrey White
aca7877be2
Rust: Add some missing path / file metadata models.
2025-11-21 15:02:25 +00:00
Geoffrey White
8145264b77
Rust: Add threat model sources as additional sources for the query.
2025-11-21 14:40:11 +00:00
Geoffrey White
2da0814f65
Rust: Add test case involving taint.
2025-11-21 14:39:15 +00:00
Anders Schack-Mulligen
b1ed72d760
Merge pull request #20886 from aschackmull/java/rangeanalysis-longliterals
...
Java: Recognize int-sized long literals.
2025-11-21 13:35:14 +01:00
Anders Schack-Mulligen
298e4cfcc5
Java: Recognize int-sized long literals.
2025-11-21 12:53:39 +01:00
Michael Nebel
60826bd18a
Merge pull request #20837 from michaelnebel/csharp/dotnet10
...
C#: Improve the logic for downloading .NET and setting environment variables.
2025-11-21 12:41:08 +01:00
Michael Nebel
638c98bba3
Merge pull request #20832 from michaelnebel/csharp/dependencycaching
...
C#: Add extractor option for the dependency directory in BMN.
2025-11-21 12:38:28 +01:00
Ian Lynagh
6c7370ea95
C++: Add up/downgrade scripts
2025-11-21 11:30:58 +00:00
Ian Lynagh
c2f96b94e3
C++: Update stats
2025-11-21 11:30:40 +00:00
Ian Lynagh
d5399300e9
C++: Add databaseMetadata and overlayChangedFiles tables to dbscheme
2025-11-21 11:30:40 +00:00
Anders Schack-Mulligen
8d72040e8f
Merge pull request #20772 from aschackmull/java/ssa-deprecate
...
Java: Add deprecation annotations in SSA
2025-11-21 12:30:31 +01:00
Michael Nebel
5c454d23e8
C#: Fix typo.
2025-11-21 10:39:59 +01:00
Michael Nebel
138441b662
C#: Address review comments.
2025-11-21 10:39:57 +01:00
Michael Nebel
90dbb7a8eb
C#: Add change note.
2025-11-21 10:39:56 +01:00
Michael Nebel
2700843a9c
C#: Add an integration test for setting the dependency directory in BMN.
2025-11-21 10:39:54 +01:00
Michael Nebel
1256ccf2eb
C#: Add extractor option for buildless dependency directory.
2025-11-21 10:39:52 +01:00
Michael Nebel
e76e7ab26a
C#: Read from dependency directory from extractor option.
2025-11-21 10:39:51 +01:00
Anders Schack-Mulligen
30d68d8906
Java: Add missing deprecated annotations.
2025-11-21 10:14:13 +01:00
Tom Hvitved
132f02c51b
Update rust/ql/lib/codeql/rust/internal/PathResolution.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-20 14:34:02 +01:00
Mathias Vorreiter Pedersen
14f9997eb3
Merge pull request #20862 from MathiasVP/union-content-field-content-common-base-class
...
C++: Create a common base class for 'FieldContent' and 'UnionContent'
2025-11-20 13:14:29 +00:00
Paolo Tranquilli
240c637e7a
Merge pull request #20868 from github/redsun82/java-doc
...
Java: add missing QLDoc
2025-11-20 12:08:16 +01:00
Owen Mansel-Chan
05085a8e82
Merge pull request #20666 from owen-mc/go/promote-weak-crypto-algorithm
...
Go: promote `go/weak-crypto-algorithm`
2025-11-20 11:03:05 +00:00
Tom Hvitved
0f40b3ccb8
Merge pull request #20842 from hvitved/rust/path-resolution-extern-crate-visibility
...
Rust: Handle `pub extern crate` in path resolution
2025-11-20 11:59:05 +01:00
Tom Hvitved
4d4a677da0
Merge pull request #20869 from hvitved/rust/dataflow-ast
...
Rust: Base `DataFlow::Node` on AST instead of CFG
2025-11-20 11:34:40 +01:00
Asger F
613895e0c0
Merge pull request #20424 from asgerf/js/overlay-manual-v4
...
JS: Add overlay annotations
2025-11-20 11:10:46 +01:00
Tom Hvitved
d4fdf956a0
Address review comments
2025-11-20 11:03:53 +01:00
Tom Hvitved
e4853ab060
Add change note
2025-11-19 19:37:41 +01:00
Tom Hvitved
d2bb53a81e
Rust: Run codegen
2025-11-19 19:37:40 +01:00
Tom Hvitved
489fff9572
Rust: Base DataFlow::Node on AST instead of CFG
2025-11-19 19:37:39 +01:00
Ian Lynagh
42f0ce74ca
C++: Enable overlay compilation
2025-11-19 17:34:06 +00:00
Mathias Vorreiter Pedersen
6c4def13b4
C++: Add change note.
2025-11-19 17:24:30 +00:00
Mathias Vorreiter Pedersen
4c09e554fc
Merge branch 'main' into union-content-field-content-common-base-class
2025-11-19 17:17:45 +00:00
Jeroen Ketema
0c43f2c4f0
Merge pull request #20870 from jketema/exp-arg-fix
...
C++: `getExpandedArgument` fixes
2025-11-19 17:10:56 +01:00
Owen Mansel-Chan
a70d74220f
Add test for good password hashing
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
f562b3d26e
Make line differences in test comments relative
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
349e8ca589
Remove unnecessary import
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
adbc1efe59
Fix diff-informed predicates
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
7d7af193dc
Fix small mistake in Ruby query help
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
8d7b2757bf
Add query help examples
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
69ecdcb4cd
Fix capitalization of class names
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
970b5d7496
Fix query suite integration tests
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
2cfafe53ca
Fix failing ruby crypto test that lists all algorithms
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
d2033ca1d5
Add change note
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
52d7e2dd18
Add query for hashing sensitive data with weak hashing algorithm
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
713e19f6f1
Make non-path query for encryption only
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
f34a625ac2
Model cryptographic operations
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
fac5296efc
Avoid duplicate results using in-barriers
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
34b2e3e2bf
Copy the structure of the Javascript query
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
5c403d374e
Move crypto qll files from query pack to library pack
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
92a3bccfd6
Align metadata with related queries
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
188b25f11f
Remove experimental tag from query metadata
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
a71bb4ba9a
Convert test to inline expectations
2025-11-19 14:36:26 +00:00
Owen Mansel-Chan
2c20d3ffeb
Move weak crypto algorithm query out of experimental
2025-11-19 14:36:26 +00:00
Simon Friis Vindum
4d9ab7b573
Merge pull request #20871 from paldepind/rust/string-literal
...
Rust: Handle string literals with line breaks
2025-11-19 14:05:43 +01:00
Asger F
efa438a352
JS: Move identityFunctionStep back into CachedSteps module
2025-11-19 13:47:30 +01:00
Asger F
8fef60464e
JS: Remove out-commented code
2025-11-19 13:46:10 +01:00
Simon Friis Vindum
0e539dbca5
Rust: Handle string literals with line breaks
2025-11-19 13:39:48 +01:00
Simon Friis Vindum
481f627ae0
Rust: Add string literal test
2025-11-19 13:37:23 +01:00
Michael Nebel
5cdfb3c0a9
C#: Address review comments.
2025-11-19 12:58:59 +01:00
Jeroen Ketema
fe3f90e041
C++: Make getExpandedArgument more robust
...
This make the predicate give back sensible results on (upgraded) databases
where we do not have expanded arguments, and avoid having to write case
distinctions in places where we would want to use `getExpandedArgument`.
2025-11-19 12:49:54 +01:00
Jeroen Ketema
e235e0473a
C++: Fix getAnExpandedArgument
...
The fix was accidentially lost when rebasing the branch that introduced this
predicate.
2025-11-19 12:49:02 +01:00
Paolo Tranquilli
b3c09389c8
Java: add missing QLDoc
...
The check for QLDoc comments was unfortunately broken for some time, so
we missed this.
2025-11-19 11:59:25 +01:00
Michael Nebel
edabbfc12f
C#: Add change note.
2025-11-19 11:29:25 +01:00
Michael Nebel
34de2f5318
C#: Update linux integration tests (as we have added CLI preferred language as english).
2025-11-19 11:17:56 +01:00
Michael Nebel
fba496f911
C#: Add proper .NET environment for dotnet info and list-sdks and streamline the minimal dotnet environment.
2025-11-19 11:17:54 +01:00
Michael Nebel
0daee6fbf2
C#: Specifically download .NET for Arm architecture.
2025-11-19 11:17:52 +01:00
Michael Nebel
8df57d81a0
C#: Add basic buildless test for .NET 10.
2025-11-19 11:17:51 +01:00
Michael Nebel
ed92352faf
C#: Remove the linux specific .NET 10 RC 2 test.
2025-11-19 11:17:49 +01:00
Michael Nebel
d7545f21cb
C#: Enable tests for all platforms and use .NET 10 instead of .NET 10 RC 2.
2025-11-19 11:17:48 +01:00
Michael Nebel
7d746d4e3f
C#: Move .NET 10 RC2 basic integration test all platforms folder.
2025-11-19 11:17:46 +01:00
Mathias Vorreiter Pedersen
9bfe847fda
C++: Fix awful joins on bochs:
...
```
Evaluated relational algebra for predicate DataFlowPrivate::storeStepImpl/4#b2c79f9a@13be12rc with tuple counts:
9 ~0% {3} r1 = JOIN `FlowSummaryImpl::Private::Steps::summaryStoreStep/3#5c2d4899` WITH DataFlowUtil::TFlowSummaryNode#40da8361 ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
9 ~0% {4} | JOIN WITH DataFlowUtil::TFlowSummaryNode#40da8361 ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1, _
9 ~12% {4} | REWRITE WITH Out.3 := true
1853420 ~0% {3} r2 = SCAN `DataFlowPrivate::nodeHasInstruction/3#f469bb06` OUTPUT In.1, In.0, In.2
100282 ~0% {3} | JOIN WITH `Instruction::StoreInstruction.getDestinationAddressOperand/0#dispred#596a4aba` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
127910 ~0% {6} | JOIN WITH `DataFlowPrivate::numberOfLoadsFromOperand/4#7e555666_1023#join_rhs` ON FIRST 1 OUTPUT _, Lhs.1, Rhs.1, Rhs.3, Lhs.2, Rhs.2
127910 ~0% {4} | REWRITE WITH Tmp.0 := 1, Out.0 := (Tmp.0 + In.4 + In.5) KEEPING 4
4178182721 ~1% {4} | JOIN WITH `DataFlowUtil::FieldContent.getIndirectionIndex/0#dispred#cc69866f_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3
4290552803 ~0% {5} | JOIN WITH `DataFlowUtil::FieldContent.getAField/0#dispred#ba1c91e5` ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.3, Lhs.0, Rhs.1
3033745816 ~5% {7} | JOIN WITH DataFlowUtil::PostFieldUpdateNode#b86f3a84_1023#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Rhs.2, Rhs.3
3033745816 ~3% {9} | JOIN WITH DataFlowUtil::TPostUpdateNodeImpl#f5e76b7a_21#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.0, Lhs.5, Lhs.6, Rhs.1, _
{8} | REWRITE WITH Tmp.8 := 1, TEST InOut.7 = Tmp.8 KEEPING 8
1516872908 ~0% {7} | SCAN OUTPUT In.4, In.5, In.6, In.0, In.1, In.2, In.3
2409090286 ~1% {6} | JOIN WITH DataFlowUtil::PostFieldUpdateNode#b86f3a84_0231#join_rhs ON FIRST 3 OUTPUT Rhs.3, Lhs.6, Lhs.3, Lhs.4, Lhs.5, Lhs.0
66016 ~45% {4} | JOIN WITH `DataFlowUtil::FieldAddress.getField/0#dispred#bdd01c1a` ON FIRST 2 OUTPUT Lhs.2, Lhs.4, Lhs.5, Lhs.3
66025 ~45% {4} r3 = r1 UNION r2
return r3
```
2025-11-19 10:08:09 +00:00
Paolo Tranquilli
e850a8a46c
Merge pull request #20861 from github/redsun82/ripunzip
...
Ripunzip: use releases from github
2025-11-19 11:03:35 +01:00
Paolo Tranquilli
87b9afce97
Merge branch 'main' into redsun82/ripunzip
2025-11-19 10:33:39 +01:00
Tom Hvitved
3d49eff4a5
Rust: Add integration test for pub extern crate resolution
2025-11-19 09:38:49 +01:00
Tom Hvitved
8acfc7f752
Rust: Handle pub extern crate in path resolution
2025-11-19 09:38:48 +01:00
Tom Hvitved
ec3b2c6a8d
Rust: Path resolution before variable resolution
2025-11-19 09:06:41 +01:00
Paolo Tranquilli
3be8591370
Ripunzip: fix windows os check, add comments
2025-11-19 08:56:06 +01:00
Tom Hvitved
880f7b0f18
Rust: More path resolution and variable tests
2025-11-19 08:55:43 +01:00
Paolo Tranquilli
69ee9cdb9f
Ripunzip: fix mac os and windows URLs
2025-11-19 08:12:07 +01:00
Paolo Tranquilli
f1afe5cd9d
Bazel: format
2025-11-19 08:06:28 +01:00
Paolo Tranquilli
702d1bbbea
Ripunzip: fix mac os string
2025-11-19 08:05:17 +01:00
Mathias Vorreiter Pedersen
73e72f5273
Merge pull request #20864 from MathiasVP/better-sizeof-api
...
C++: Lift `getTypeOperand` to a superclass
2025-11-18 23:53:26 +00:00
Mathias Vorreiter Pedersen
4279a970fa
C++: Remove unnecessary cast.
2025-11-18 20:03:24 +00:00
Mathias Vorreiter Pedersen
a27ac9d59d
C++: Updated expected after Copilot change.
2025-11-18 20:03:10 +00:00
Mathias Vorreiter Pedersen
6b136e3a53
Update cpp/ql/test/library-tests/types/sizeof/sizeof.ql
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-18 20:00:32 +00:00
Tom Hvitved
68552f9725
Merge pull request #20845 from hvitved/rust/cache-infer-certain-type
...
Rust: Cache `inferCertainType`
2025-11-18 20:59:38 +01:00
Mathias Vorreiter Pedersen
d4a8dbb5f3
C++: Slightly modify a test so that we can see the effect of this change.
2025-11-18 19:52:30 +00:00
Mathias Vorreiter Pedersen
a5601ce734
C++: Lift 'getTypeOperand' to the superclass.
2025-11-18 19:52:05 +00:00
Mathias Vorreiter Pedersen
7f0fcb0c46
C++: Create a common base class for 'NonUnionContent' and 'UnionContent' called 'FieldContent'.
2025-11-18 18:53:37 +00:00
Mathias Vorreiter Pedersen
7527d88762
C++: Get rid of abstract'ness from these public predicates. We are not supposed to have abstract public stuff. Oops ...
2025-11-18 18:52:20 +00:00
Mathias Vorreiter Pedersen
2af6db6320
C++: Rename 'FieldContent' to 'NonUnionContent'.
2025-11-18 18:51:33 +00:00
Paolo Tranquilli
ddee385f37
Ripunzip: use releases from github
...
This uses the ripunzip releases from github instead of building them
ourselves.
2025-11-18 17:23:59 +01:00
Paolo Tranquilli
f4a6ba9e50
Merge pull request #20857 from github/post-release-prep/codeql-cli-2.23.6
...
Post-release preparation for codeql-cli-2.23.6
2025-11-18 15:14:39 +01:00
Tom Hvitved
71e84439d7
Merge pull request #20830 from hvitved/rust/path-resolution-slice-array-builtin
...
Rust: Model builtin types in path resolution
2025-11-18 14:42:59 +01:00
Tom Hvitved
ec15085c34
Address review comments
2025-11-18 13:44:25 +01:00
Paolo Tranquilli
773b6c04a1
Merge branch 'main' into post-release-prep/codeql-cli-2.23.6
2025-11-18 13:44:21 +01:00
Paolo Tranquilli
ebf04d308d
Merge pull request #20859 from github/redsun82/ripunzip
...
Ripunzip: build on older ubuntu
2025-11-18 13:43:43 +01:00
Paolo Tranquilli
aaccca3e4e
Merge pull request #20860 from github/update-ripunzip
...
Update ripunzip binaries
2025-11-18 13:37:30 +01:00
github-actions[bot]
f3742008de
Update ripunzip binaries to version v2.0.3
2025-11-18 12:35:31 +00:00
Anders Schack-Mulligen
fe7be22478
Merge pull request #20761 from aschackmull/java/ssa-shared
...
Java: Replace SSA wrapper classes with shared implementation.
2025-11-18 13:31:50 +01:00
Asger F
a0965f33e3
JS: Also discard JSON, YAML, and XML
2025-11-18 13:29:00 +01:00
Paolo Tranquilli
cc9828c23e
Ripunzip: build on older ubuntu
2025-11-18 13:20:07 +01:00
Paolo Tranquilli
48ee9dd149
Merge branch 'main' into post-release-prep/codeql-cli-2.23.6
2025-11-18 12:18:09 +01:00
Paolo Tranquilli
76dc4c4023
Merge branch 'codeql-cli-2.23.6' into post-release-prep/codeql-cli-2.23.6
2025-11-18 12:07:33 +01:00
Paolo Tranquilli
b31d649647
Merge pull request #20858 from github/redsun82/2.23.6
...
Changedocs 2.23.5
2025-11-18 12:00:16 +01:00
Jon Janego
1ebc16e2d3
Merge pull request #20855 from github/changedocs-2.23.5
...
Changedocs 2.23.5
(cherry picked from commit f27271d216 )
2025-11-18 11:53:11 +01:00
Michael Nebel
958d209a81
Merge pull request #20849 from michaelnebel/csharp/addcompilationerrorstodebuglogbmn
...
C#: Add compilation errors to the debug log in BMN.
2025-11-18 11:20:27 +01:00
github-actions[bot]
5ee45af3aa
Post-release preparation for codeql-cli-2.23.6
2025-11-18 09:53:12 +00:00
Geoffrey White
9ab7f87603
Merge pull request #20776 from geoffw0/rustexamples
...
Rust: Add example queries
2025-11-18 09:34:48 +00:00
Paolo Tranquilli
117168d25b
Merge pull request #20852 from github/release-prep/2.23.6
...
Release preparation for version 2.23.6
2025-11-18 10:08:53 +01:00
Paolo Tranquilli
4c1f2b840e
C#: change capitalization
2025-11-18 10:06:19 +01:00
Paolo Tranquilli
1c81c4d4c9
C#: make some tweaks to change logs
2025-11-18 10:01:36 +01:00
Mathias Vorreiter Pedersen
b90d0fd44c
Merge pull request #20854 from MathiasVP/no-magic-get-param
...
C++: Add `nomagic` to `Function::getParameter`
2025-11-18 00:13:05 +00:00
Jon Janego
f27271d216
Merge pull request #20855 from github/changedocs-2.23.5
...
Changedocs 2.23.5
2025-11-17 14:39:35 -06:00
Jon Janego
d685e666b4
missing space
2025-11-17 14:32:04 -06:00
Jon Janego
3431c121d7
adding in 2.23.1 changes so they stay the same
2025-11-17 14:30:45 -06:00
Jon Janego
63390be185
Changedocs for 2.23.5
2025-11-17 14:24:35 -06:00
Mathias Vorreiter Pedersen
47ac4dd1dc
C++: Add 'nomagic' to 'getParameter'.
2025-11-17 19:21:37 +00:00
github-actions[bot]
18fa6799ce
Release preparation for version 2.23.6
2025-11-17 16:38:07 +00:00
Paolo Tranquilli
07c80b4685
Merge pull request #20850 from github/redsun82/fix-change-notes
...
C#: add missing `*` to change note
2025-11-17 15:06:42 +01:00
Paolo Tranquilli
12f1bd8ffd
C#: add missing * to change note
2025-11-17 15:00:30 +01:00
Michael Nebel
9f69ff22d3
C#: Add change-note.
2025-11-17 14:57:16 +01:00
Michael Nebel
f1b12203f6
C#: Add compilation errors to the debug log in BMN.
2025-11-17 14:57:14 +01:00
Jeroen Ketema
1671805598
Merge pull request #20831 from jketema/expanded
...
C++: Extract the expanded compiler arguments
2025-11-17 13:58:24 +01:00
Tom Hvitved
bf0dc3c4d1
Rust: Use useUniversalConditions() { none() }
2025-11-17 13:57:00 +01:00
Tom Hvitved
46f5d89674
Rust: Handle builtin types in path resolution
2025-11-17 13:56:56 +01:00
Tom Hvitved
39720a17ef
Rust: More type inference tests
2025-11-17 13:54:39 +01:00
Tom Hvitved
b0dc48e393
Merge pull request #20723 from paldepind/rust/ti-inheritance
...
Rust: Make impl blocks only give rise to direct trait implementation
2025-11-17 13:36:05 +01:00
Simon Friis Vindum
4eb22a7e55
Rust: Fix grammar
2025-11-17 12:39:38 +01:00
Simon Friis Vindum
9971936036
Rust: Improvements to docs from review comments
2025-11-17 12:39:37 +01:00
Simon Friis Vindum
a07f015d01
Rust: Accept changes to expected files
2025-11-17 12:39:36 +01:00
Tom Hvitved
3419c00bc0
Rust: Use ToIndex instead of FromIndex in ranked forex predicates
...
`ToIndex` makes more sense, since we start the recursion from `0`.
2025-11-17 12:28:35 +01:00
Jeroen Ketema
1df47cc747
C++: Fix QL-for-QL warning
2025-11-17 11:17:57 +01:00
Jeroen Ketema
15393ae621
C++: Add change note
2025-11-17 11:17:56 +01:00
Jeroen Ketema
61b7eb3d5c
C++: Update dbscheme stats file
2025-11-17 11:17:55 +01:00
Jeroen Ketema
a8d488fa29
C++: Add upgrade and downgrade scripts
2025-11-17 11:17:54 +01:00
Jeroen Ketema
ee97d6f461
C++: Expose the expanded compilation arguments
2025-11-17 11:17:53 +01:00
Jeroen Ketema
861c236dae
C++: Add table for expanded compilation arguments
2025-11-17 11:17:51 +01:00
Asger F
4b57b4418f
JS: Factor out some code
2025-11-17 10:48:15 +01:00
Asger F
a405b7b3e0
JS: Add discard predicates for locations
2025-11-17 10:47:37 +01:00
Simon Friis Vindum
089bffff94
Rust: Make impl blocks only give rise to direct trait implementation
2025-11-17 10:22:18 +01:00
Michael Nebel
c0ebc17bdc
Merge pull request #20768 from michaelnebel/csharp/extractionlogging
...
C#: Report more timing metrics to the console logger.
2025-11-17 10:06:05 +01:00
Tom Hvitved
19ff5c09d2
Rust: Cache inferCertainType
...
Ideally, this shouldn't be needed, as we already cache `inferType`. However, since we
have consistency checks that directly call `inferCertainType`, we need to cache it
as well to avoid recomputation.
2025-11-17 09:30:20 +01:00
Tom Hvitved
e986cca5c1
Merge pull request #20843 from hvitved/rust/access-after-lifetime-speedup
...
Rust: Speedup `AccessAfterLifetime.ql`
2025-11-17 08:40:27 +01:00
Tom Hvitved
8455663255
Rust: Speedup AccessAfterLifetime.ql
2025-11-15 15:21:03 +01:00
Owen Mansel-Chan
fabcd044d6
Merge pull request #20838 from owen-mc/go/fix/dataset-check-errors-sourcefile
...
Go: fix dataset check errors
2025-11-14 21:04:24 +00:00
Paolo Tranquilli
68a03585da
Merge pull request #20811 from github/redsun82/update-rules_java
...
Javascript: fix errors from upcoming `rules_java` update
2025-11-14 16:44:47 +01:00
Jeroen Ketema
0f2e29c90e
Merge pull request #20816 from paldepind/cpp/range-analysis-perf-fix
...
C++: Range analysis performance fix
2025-11-14 16:15:04 +01:00
Anders Schack-Mulligen
1c93710ed3
Merge pull request #20826 from aschackmull/guards/disjunctive-implication
...
Guards: Support disjunctive implications.
2025-11-14 15:44:45 +01:00
Simon Friis Vindum
792ac7a772
C++: Fix typo
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-14 12:59:41 +01:00
Paolo Tranquilli
da12d73f25
Merge branch 'main' into redsun82/update-rules_java
2025-11-14 12:35:09 +01:00
Simon Friis Vindum
1dd78e2f4b
C++: Add change note
2025-11-14 12:26:24 +01:00
Simon Friis Vindum
5da73f3232
C++: Make sure that nrOfBoundsNEPhi is functional
2025-11-14 12:26:23 +01:00
Simon Friis Vindum
74b433ef59
C++: Add range analysis tests
2025-11-14 12:26:22 +01:00
Simon Friis Vindum
69e70d7cbc
Reapply "Merge pull request #20645 from paldepind/cpp/range-analysis-measure"
...
This reverts commit e7c029ae7d .
2025-11-14 12:26:21 +01:00
Idriss Riouak
96f57b207d
Merge pull request #20615 from github/idrissrio/java-jdk
...
Java: Add test for multi-module projects with different Java versions
2025-11-14 12:18:19 +01:00
Anders Schack-Mulligen
4867306b5e
C#: Add change note.
2025-11-14 11:44:27 +01:00
Anders Schack-Mulligen
dc029e8da9
C#: Accept qltest weirdness.
2025-11-14 11:38:13 +01:00
Owen Mansel-Chan
59ac2d3d3e
Move TransformPath into FileLabelFor
...
This way we don't have to remember to transform it at all call sites.
2025-11-14 10:25:40 +00:00
Tom Hvitved
8668473916
Merge pull request #20683 from hvitved/rust/type-inference-arg-target-typed
...
Rust: Restrict type propagation into arguments
2025-11-14 10:46:04 +01:00
Tom Hvitved
4c7f9c0144
Rust: Rename ContextType -> UnknownType
2025-11-14 10:16:21 +01:00
Owen Mansel-Chan
4005a6e2de
Merge pull request #20835 from github/dependabot/go_modules/go/extractor/extractor-dependencies-d13c81f2db
...
Bump golang.org/x/tools from 0.38.0 to 0.39.0 in /go/extractor in the extractor-dependencies group
2025-11-14 09:09:18 +00:00
Tom Hvitved
337e161aa3
Merge pull request #20834 from hvitved/rust/fix-bad-join
...
Rust: Fix bad join
2025-11-14 09:57:56 +01:00
Idriss Riouak
d916ebdc24
Java: Address review comments. Improve Change note
...
Co-authored-by: Chris Smowton <smowton@github.com >
2025-11-14 09:53:09 +01:00
Tom Hvitved
79bdf897d7
Rust: Context typing for constructors
2025-11-14 09:45:03 +01:00
Tom Hvitved
c16b42119d
Rust: More type inference tests
2025-11-14 09:45:02 +01:00
Tom Hvitved
e69ff0d5e8
Rust: Restrict type propagation into arguments
2025-11-14 09:44:58 +01:00
Tom Hvitved
72b7dd8955
Rust: Add more type inference tests
2025-11-14 09:41:30 +01:00
dependabot[bot]
acfca601bc
Bump golang.org/x/tools
...
Bumps the extractor-dependencies group in /go/extractor with 1 update: [golang.org/x/tools](https://github.com/golang/tools ).
Updates `golang.org/x/tools` from 0.38.0 to 0.39.0
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.38.0...v0.39.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/tools
dependency-version: 0.39.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-14 03:08:48 +00:00
Tom Hvitved
f926a076b8
Rust: Fix bad join
...
Before
```
Evaluated relational algebra for predicate TypeMention::NonAliasPathTypeMention.getTypeMentionForTypeParameter/1#f0c507c8@d7d71dnu with tuple counts:
12496 ~2% {3} r1 = SCAN `TypeMention::NonAliasPathTypeMention.getAnAssocTypeArgument/1#c61d1deb` OUTPUT In.2, In.0, In.1
12421 ~0% {3} | JOIN WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.0
12421 ~0% {3} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2
12421 ~0% {3} | JOIN WITH cached_Type::TAssociatedTypeTypeParameter#14a276f6 ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
12421 ~0% {3} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2
1 ~0% {2} r2 = SCAN `Stdlib::FnOnceTrait.getTypeParam/0#dispred#93f20bbc` OUTPUT In.1, In.0
1 ~0% {2} | JOIN WITH cached_Type::TTypeParamTypeParameter#868c69a5 ON FIRST 1 OUTPUT Rhs.1, Lhs.1
1 ~0% {2} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.1, Lhs.0
3216 ~0% {2} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
3216 ~0% {3} | JOIN WITH `Path::Generated::Path.getSegment/0#dispred#1c7ef50f` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
3201 ~0% {3} | JOIN WITH `PathSegment::Generated::PathSegment.getParenthesizedArgList/0#dispred#cd573956` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
3201 ~0% {3} | JOIN WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0
1 ~0% {2} r3 = SCAN `Stdlib::FnOnceTrait.getOutputType/0#0d2e9ef1` OUTPUT In.1, In.0
1 ~0% {2} | JOIN WITH cached_Type::TAssociatedTypeTypeParameter#14a276f6 ON FIRST 1 OUTPUT Rhs.1, Lhs.1
1 ~0% {2} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.1, Lhs.0
3216 ~3% {2} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
3216 ~0% {3} | JOIN WITH `Path::Generated::Path.getSegment/0#dispred#1c7ef50f` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
2958 ~0% {3} | JOIN WITH `PathSegment::Generated::PathSegment.getRetType/0#dispred#9d400241` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
2958 ~0% {3} | JOIN WITH `RetTypeRepr::Generated::RetTypeRepr.getTypeRepr/0#dispred#fd85a980` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
2944 ~0% {3} | JOIN WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0
54186 ~3% {2} r4 = JOIN `TypeAlias::Generated::TypeAlias.getTypeRepr/0#dispred#5fd7e521_10#join_rhs` WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.1, Lhs.0
1446369 ~12% {3} | JOIN WITH `PathResolution::ItemNode.getASuccessor/1#8f430f71_201#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Rhs.2
36945 ~0% {3} | JOIN WITH `PathResolution::ImplItemNode.getTraitPath/0#dispred#3b7d1cb6` ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
377232832 ~1% {4} | JOIN WITH `Name::Generated::Name.getText/0#dispred#107a5a39_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.0
370815806 ~5% {4} | JOIN WITH `TypeAlias::Generated::TypeAlias.getName/0#dispred#bf886045_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3
1490317 ~0% {4} | JOIN WITH cached_Type::TAssociatedTypeTypeParameter#14a276f6 ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3
1490317 ~0% {4} | JOIN WITH `Type::AssociatedTypeTypeParameter.getTrait/0#dispred#41eb3020` ON FIRST 1 OUTPUT Lhs.2, Rhs.1, Lhs.1, Lhs.3
36413 ~1% {4} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e ON FIRST 2 OUTPUT Lhs.1, Lhs.3, Lhs.2, Lhs.0
36413 ~1% {3} | JOIN WITH `PathResolution::ImplOrTraitItemNode.getAssocItem/1#f77bb9ed` ON FIRST 2 OUTPUT Rhs.2, Lhs.2, Lhs.3
36413 ~0% {3} | JOIN WITH cached_Type::TAssociatedTypeTypeParameter#14a276f6 ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
36413 ~0% {3} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.2, Lhs.0, Lhs.1
54979 ~3% {3} r5 = r1 UNION r2 UNION r3 UNION r4
return r5
```
After
```
Evaluated relational algebra for predicate TypeMention::NonAliasPathTypeMention.getTypeMentionForTypeParameter/1#f0c507c8@a37ac19m with tuple counts:
12496 ~2% {3} r1 = SCAN `TypeMention::NonAliasPathTypeMention.getAnAssocTypeArgument/1#c61d1deb` OUTPUT In.2, In.0, In.1
12421 ~0% {3} | JOIN WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.0
12421 ~0% {3} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2
12421 ~0% {3} | JOIN WITH Type::TAssociatedTypeTypeParameter#14a276f6 ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
12421 ~0% {3} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2
1 ~0% {2} r2 = SCAN `Stdlib::FnOnceTrait.getTypeParam/0#dispred#93f20bbc` OUTPUT In.1, In.0
1 ~0% {2} | JOIN WITH Type::TTypeParamTypeParameter#868c69a5 ON FIRST 1 OUTPUT Rhs.1, Lhs.1
1 ~0% {2} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.1, Lhs.0
3216 ~0% {2} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
3216 ~0% {3} | JOIN WITH `Path::Generated::Path.getSegment/0#dispred#1c7ef50f` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
3201 ~0% {3} | JOIN WITH `PathSegment::Generated::PathSegment.getParenthesizedArgList/0#dispred#cd573956` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
3201 ~0% {3} | JOIN WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0
1 ~0% {2} r3 = SCAN `Stdlib::FnOnceTrait.getOutputType/0#0d2e9ef1` OUTPUT In.1, In.0
1 ~0% {2} | JOIN WITH Type::TAssociatedTypeTypeParameter#14a276f6 ON FIRST 1 OUTPUT Rhs.1, Lhs.1
1 ~0% {2} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.1, Lhs.0
3216 ~3% {2} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
3216 ~0% {3} | JOIN WITH `Path::Generated::Path.getSegment/0#dispred#1c7ef50f` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
2958 ~0% {3} | JOIN WITH `PathSegment::Generated::PathSegment.getRetType/0#dispred#9d400241` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
2958 ~0% {3} | JOIN WITH `RetTypeRepr::Generated::RetTypeRepr.getTypeRepr/0#dispred#fd85a980` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
2944 ~0% {3} | JOIN WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0
54186 ~3% {2} r4 = JOIN `TypeAlias::Generated::TypeAlias.getTypeRepr/0#dispred#5fd7e521_10#join_rhs` WITH TypeMention::TypeMention#3ab935d1 ON FIRST 1 OUTPUT Lhs.1, Lhs.0
1446369 ~12% {3} | JOIN WITH `PathResolution::ItemNode.getASuccessor/1#8f430f71_201#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Rhs.2
36945 ~2% {3} | JOIN WITH `PathResolution::ImplItemNode.getTraitPath/0#dispred#3b7d1cb6` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
36398 ~3% {3} | JOIN WITH TypeMention::NonAliasPathTypeMention#9123dc7e ON FIRST 1 OUTPUT Lhs.0, Lhs.2, Lhs.1
36413 ~1% {3} | JOIN WITH `TypeMention::NonAliasPathTypeMention.getResolvedAlias/1#c48b878e` ON FIRST 2 OUTPUT Rhs.2, Lhs.2, Lhs.0
36413 ~0% {3} | JOIN WITH Type::TAssociatedTypeTypeParameter#14a276f6 ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
36413 ~0% {3} | JOIN WITH Type::TypeParameter#f85657da ON FIRST 1 OUTPUT Lhs.2, Lhs.0, Lhs.1
54979 ~3% {3} r5 = r1 UNION r2 UNION r3 UNION r4
return r5
```
2025-11-13 21:31:32 +01:00
Tom Hvitved
caccee9990
Merge pull request #20833 from hvitved/rust/fix-bad-join
...
Rust: Fix bad join
2025-11-13 19:11:27 +01:00
Tom Hvitved
1b6b1e56ed
Rust: Fix bad join
...
Before
```
Pipeline standard for ElementImpl::Impl::MacroExpansion::isFromMacroExpansion/1#69965d18@7580bdbj was evaluated in 205 iterations totaling 49106ms (delta sizes total: 1254645).
8014745124 ~4% {1} r1 = AstNodeImpl::Impl::AstNode#22e758cf AND NOT `ElementImpl::Impl::MacroExpansion::isFromMacroExpansion/1#69965d18#prev`(FIRST 1)
822416474 ~0% {2} | JOIN WITH `ElementImpl::Impl::MacroExpansion::getImmediatelyEnclosingMacroInvocation/1#1eb32ecc` ON FIRST 1 OUTPUT Rhs.1, Lhs.0
1254645 ~0% {1} | JOIN WITH `ElementImpl::Impl::MacroExpansion::isFromMacroExpansion/1#69965d18#prev_delta` ON FIRST 1 OUTPUT Lhs.1
return r1
```
After
```
Pipeline standard for ElementImpl::Impl::MacroExpansion::isFromMacroExpansion/1#69965d18@f39b84ka was evaluated in 205 iterations totaling 138ms (delta sizes total: 1254645).
4675568 ~0% {1} r1 = JOIN `ElementImpl::Impl::MacroExpansion::isFromMacroExpansion/1#69965d18#prev_delta` WITH `ElementImpl::Impl::MacroExpansion::getImmediatelyEnclosingMacroInvocation/1#1eb32ecc_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1
4672186 ~0% {1} | JOIN WITH AstNodeImpl::Impl::AstNode#22e758cf ON FIRST 1 OUTPUT Lhs.0
1254645 ~0% {1} | AND NOT `ElementImpl::Impl::MacroExpansion::isFromMacroExpansion/1#69965d18#prev`(FIRST 1)
return r1
```
2025-11-13 15:26:01 +01:00
Anders Schack-Mulligen
a28a718409
Merge pull request #20814 from aschackmull/guards/wrapper-perf
...
Guards: Improve join-order for wrapper guards
2025-11-13 13:16:13 +01:00
Anders Schack-Mulligen
b31dfdd5f4
Guards: Add elaborating comment.
2025-11-13 13:09:44 +01:00
Tom Hvitved
bfa35629ac
Merge pull request #20744 from hvitved/rust/path-resolution-unqualified-use-tree
...
Rust: Handle unqualified `UseTree`s in path resolution
2025-11-13 11:18:41 +01:00
Tom Hvitved
c6164b33e5
Address review comment
2025-11-13 10:47:04 +01:00
Geoffrey White
e43000f7cf
Rust: Correct ordering in query suite .expected lists.
2025-11-13 09:21:04 +00:00
Geoffrey White
12cbb64ef8
Rust: Add query to suite .expected lists.
2025-11-13 09:00:56 +00:00
Geoffrey White
15fa99a288
Rust: Clarify some confusing text in the .qhelp.
2025-11-13 09:00:46 +00:00
Geoffrey White
42aca4a171
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2025-11-13 08:51:41 +00:00
Asger F
c7341f295d
JS: Fix bad join in BarrierGuards.qll
2025-11-13 09:46:27 +01:00
Asger F
578355ac27
JS: Fix bad join in CallGraphs.qll
2025-11-13 09:46:25 +01:00
Asger F
ecfa94600f
Sync ApiGraphModels.qll
2025-11-13 09:46:23 +01:00
Asger F
16e7dc1b8a
Sync ApiGraphModelsExtensions.qll
2025-11-13 09:46:21 +01:00
Asger F
46b1387846
JS: Make isAssignedInUniqueFile global, as it should be
2025-11-13 09:46:20 +01:00
Asger F
6498cd1b07
JS: Remove obsolete overlay[global] annotations
2025-11-13 09:46:18 +01:00
Asger F
0594f84dfc
JS: Improve join orders related to getABooleanValue()
2025-11-13 09:46:16 +01:00
Asger F
4645f327a5
JS: Avoid more bad joins due to locality
2025-11-13 09:46:14 +01:00
Asger F
269489e817
JS: Avoid bad join in shared predicate induced by 'forex'.
...
Use manual recursion instead.
2025-11-13 09:46:12 +01:00
Asger F
5dd87e379b
JS: Add overlay[local] to restore magic in unwrap() predicate
...
In this case we actually want magic to apply, but was prevented by locality.
2025-11-13 09:46:10 +01:00
Asger F
ac3913e7db
JS: Fix bad join in DuplicateProperty.ql
2025-11-13 09:46:08 +01:00
Asger F
e72232fd1d
JS: Add more overlay[caller?] annotations
2025-11-13 09:46:06 +01:00
Asger F
66febb263d
JS: Add some overlay[caller] and a pragma[nomagic] annotations
2025-11-13 09:46:05 +01:00
Taus
889209719b
JS: Overlay annotations for some failing tests
...
Locally these seem to get rid of the compilation warnings, but of course
CI is the true arbiter here.
2025-11-13 09:46:03 +01:00
Asger F
c09563f775
JS: Make more general-purpose data flow things local
2025-11-13 09:46:01 +01:00
Asger F
b1418e1d70
JS: Add overlay[local?] to new summaries after rebasing
2025-11-13 09:46:00 +01:00
Asger F
2b338fc1d9
JS: Fix getRawEnclosingStmt call
2025-11-13 09:45:58 +01:00
Asger F
23e42c89ee
JS: Overlay annotations for AST layer
2025-11-13 09:45:56 +01:00
idrissrio
e6d4e515b0
Java: Add change note for Maven Java version auto-detection
2025-11-13 09:41:32 +01:00
Geoffrey White
0675a29ae6
Rust: Minor corrections.
2025-11-12 19:26:45 +00:00
Tom Hvitved
467bd541d2
Merge pull request #20770 from hvitved/rust/attribute-macro-expansion-filter
...
Rust: Remove elements superseded by attribute macro expansions
2025-11-12 19:52:09 +01:00
Geoffrey White
7a62642ed7
Rust: Change note.
2025-11-12 18:17:12 +00:00
Geoffrey White
49063ac8a9
Rust: Cut down the example for readability.
2025-11-12 18:13:02 +00:00
Geoffrey White
dcae0ef975
Rust: I prefer the original certificates reference from the Go .qhelp.
2025-11-12 18:10:44 +00:00
Geoffrey White
87d66c69a3
Rust: Clean up the .qhelp a little.
2025-11-12 18:10:02 +00:00
Geoffrey White
bb78fdf150
Rust: Add qhelp and examples (translated from Go, by Copilot).
2025-11-12 16:50:50 +00:00
Geoffrey White
c77eef39e2
Rust: Convert the query to a path-problem with global data flow.
2025-11-12 16:21:46 +00:00
Geoffrey White
209f394b5e
Rust: Fix the alert message.
2025-11-12 15:51:03 +00:00
Geoffrey White
f8ef48b924
Rust: Add query test.
2025-11-12 15:44:15 +00:00
Nick Rolfe
86465b36e0
Merge pull request #20623 from github/nickrolfe/go-extractor-overlay
...
Go: basic overlay support
2025-11-12 14:56:25 +00:00
Geoffrey White
9598772477
Update rust/ql/examples/snippets/simple_constant_password.ql
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2025-11-12 14:37:45 +00:00
Michael Nebel
085d3c85cd
Merge pull request #20425 from michaelnebel/csharp/basicextractoroverlay
...
C#: Overlay extraction support.
2025-11-12 15:25:57 +01:00
Anders Schack-Mulligen
d6800394fa
Guards: Support disjunctive implications.
2025-11-12 14:14:32 +01:00
Anders Schack-Mulligen
2192d75286
Java: Add test for a known FP.
2025-11-12 14:08:18 +01:00
Owen Mansel-Chan
54ff206fde
Merge pull request #20822 from github/dependabot/go_modules/go/extractor/extractor-dependencies-b217d21568
...
Bump golang.org/x/mod from 0.29.0 to 0.30.0 in /go/extractor in the extractor-dependencies group
2025-11-12 09:27:06 +00:00
Paolo Tranquilli
7c31cf17d8
Merge pull request #20815 from github/update-ripunzip
...
Update ripunzip binaries to version v2.0.3
2025-11-12 10:25:59 +01:00
Anders Schack-Mulligen
4a58a0158a
Java: Reinstate useless null check results for fields that are no longer tracked as SSA variables.
2025-11-12 09:06:22 +01:00
Anders Schack-Mulligen
437ca58e3f
Java: Add change note.
2025-11-12 09:06:22 +01:00
Anders Schack-Mulligen
109a5eb7e7
Java: Accept qltest changes due to dropped UntrackedDef.
2025-11-12 09:06:21 +01:00
Anders Schack-Mulligen
e059ded133
Java: Accept toString changes in qltest.
2025-11-12 09:06:21 +01:00
Anders Schack-Mulligen
95ac61df42
Java: Drop caching of deprecated predicates.
2025-11-12 09:06:20 +01:00
Anders Schack-Mulligen
5849d85f1f
Java: Deprecate two more SSA classes.
2025-11-12 09:06:20 +01:00
Anders Schack-Mulligen
ee5d65eba1
Java: Update toString for implicit writes.
2025-11-12 09:06:19 +01:00
Anders Schack-Mulligen
f0bd0346f0
Java: Replace usages of SsaVariable.
2025-11-12 09:06:19 +01:00
Anders Schack-Mulligen
8594ae03df
Java: Replace remaining SsaImplicitInit.
2025-11-12 09:06:19 +01:00
Anders Schack-Mulligen
f4b9efcdce
Java: Replace getAUse with getARead.
2025-11-12 09:06:18 +01:00
Anders Schack-Mulligen
35caede859
Java: Replace SsaPhiNode with SsaPhiDefinition.
2025-11-12 09:06:18 +01:00
Anders Schack-Mulligen
3e43c53b9d
Java: Update some qldoc deprecation notices.
2025-11-12 09:06:17 +01:00
Anders Schack-Mulligen
06df5c0bd1
Java: Introduce SsaCapturedDefinition and replace uses of getAnUltimateDefinition.
2025-11-12 09:06:17 +01:00
Anders Schack-Mulligen
483b2d89a7
Java: Replace uses of SsaExplicitUpdate.
2025-11-12 09:06:16 +01:00
Anders Schack-Mulligen
07e635636c
Java: Replace getAFirstUse with top-level predicate.
2025-11-12 09:06:16 +01:00
Anders Schack-Mulligen
99aa0333cf
Java: Replace usages of isParameterDefinition.
2025-11-12 09:06:15 +01:00
Anders Schack-Mulligen
154f0770de
Java: Simplify instantiation of Guards and ControlFlowReachability.
2025-11-12 09:06:15 +01:00
Anders Schack-Mulligen
d5708fdd4e
Java: Instantiate shared SSA wrappers for main SSA.
2025-11-12 09:06:14 +01:00
Anders Schack-Mulligen
942dc2b89e
Java: Replace BaseSSA class wrappers with shared code.
2025-11-12 09:06:14 +01:00
Anders Schack-Mulligen
551944bacb
Java: Add VariableWrite class.
2025-11-12 09:06:13 +01:00
Anders Schack-Mulligen
289d3374ef
SSA: Improve toString.
2025-11-12 09:06:13 +01:00
Anders Schack-Mulligen
79b2f21b07
SSA: Fix phi defs.
2025-11-12 09:06:12 +01:00
Anders Schack-Mulligen
374c77213f
Java: Remove getAFirstUse in BaseSSA.
2025-11-12 09:06:12 +01:00
Anders Schack-Mulligen
f2181ece4f
Java: Get rid of untracked SSA definitions.
2025-11-12 09:06:11 +01:00
Anders Schack-Mulligen
c4f0868844
Java: Move SSA entry defs to index -1.
2025-11-12 09:06:11 +01:00
idrissrio
3b7f2f4eda
Java: Add LGTM_INDEX_ MAVEN_TOLLCHAINS_FILE for new Maven integration tests
2025-11-12 08:39:40 +01:00
idrissrio
a82b5e7aa1
Java: Add test for selecting the highest compiler release in a pom
2025-11-12 08:39:39 +01:00
idrissrio
7dab2bef69
Java: Add test for Java 16 target when only Java 17+ is available
2025-11-12 08:39:37 +01:00
idrissrio
fcc54c1470
Java: Add test for detecting --add-exports in poms
2025-11-12 08:39:36 +01:00
idrissrio
5247c88da1
Java: Add test for pom targeting Java 8 but rquiring Java 11
2025-11-12 08:39:35 +01:00
idrissrio
6b890eaf94
Java: Add test for multi-module projects with different Java versions
2025-11-12 08:39:34 +01:00
dependabot[bot]
c88952423e
Bump golang.org/x/mod
...
Bumps the extractor-dependencies group in /go/extractor with 1 update: [golang.org/x/mod](https://github.com/golang/mod ).
Updates `golang.org/x/mod` from 0.29.0 to 0.30.0
- [Commits](https://github.com/golang/mod/compare/v0.29.0...v0.30.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/mod
dependency-version: 0.30.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-12 03:08:31 +00:00
Paolo Tranquilli
3483007b2a
Ripunzip: use new archives
2025-11-11 17:44:12 +01:00
Geoffrey White
f6b7aeaaca
Rust: Add prototype query.
2025-11-11 16:01:10 +00:00
Nick Rolfe
e5ba4143ff
Go: add change-note for path transformer fixes
2025-11-11 15:47:53 +00:00
github-actions[bot]
d5734af555
Update ripunzip binaries to version v2.0.3
2025-11-11 13:40:02 +00:00
Paolo Tranquilli
0419667460
Merge pull request #20802 from github/redsun82/ripunzip
...
CI: make `build-ripunzip.yml` auto-create update PR
2025-11-11 14:34:39 +01:00
Michael B. Gale
f1076b9eb1
Merge pull request #20813 from github/post-release-prep/codeql-cli-2.23.5
...
Post-release preparation for codeql-cli-2.23.5
2025-11-11 13:13:14 +00:00
Henry Mercer
d3dc7908f8
Merge branch 'main' into post-release-prep/codeql-cli-2.23.5
2025-11-11 12:55:58 +00:00
Anders Schack-Mulligen
62e28d2dcf
Guards: Simplify non-linear join.
2025-11-11 13:34:47 +01:00
github-actions[bot]
466a6f330a
Post-release preparation for codeql-cli-2.23.5
2025-11-11 12:21:57 +00:00
Anders Schack-Mulligen
3c7522ca7d
Guards: Replace recursion through universal quantification with rank-iteration.
2025-11-11 13:03:05 +01:00
Paolo Tranquilli
e2671da05f
Fix build-ripunzip.yml archive step on macos
2025-11-11 13:01:39 +01:00
Anders Schack-Mulligen
a5279ec420
Guards: Rank return expressions.
2025-11-11 12:52:07 +01:00
Paolo Tranquilli
104f0e3a02
Fix build-ripunzip.yml archive step on windows
2025-11-11 12:51:30 +01:00
Michael B. Gale
e5fa4a6dca
Merge pull request #20812 from github/release-prep/2.23.5
...
Release preparation for version 2.23.5
2025-11-11 11:46:37 +00:00
Paolo Tranquilli
99baf98897
Fix build-ripunzip.yml
2025-11-11 12:46:28 +01:00
Anders Schack-Mulligen
0a4406dec9
Guards: Push forex-range constraint in.
2025-11-11 12:45:46 +01:00
Paolo Tranquilli
82435218dc
Javascript: fix compilation error after scripted replacement
2025-11-11 12:44:33 +01:00
Paolo Tranquilli
9d51932124
Merge branch 'main' into redsun82/update-rules_java
2025-11-11 12:43:05 +01:00
Michael B. Gale
b4fed5bf58
Revert C++ range analysis change note
2025-11-11 11:38:54 +00:00
Michael B. Gale
ac9a29701e
C#: Minor changelog improvements
2025-11-11 11:38:20 +00:00
Napalys Klicius
d122534398
Merge pull request #20671 from github/napalys/adjust_query_severity
...
Adjust query severity ratings
2025-11-11 12:37:31 +01:00
github-actions[bot]
e4f25c9a13
Release preparation for version 2.23.5
2025-11-11 11:33:33 +00:00
Paolo Tranquilli
ff62c65cdf
Javascript: avoid null pointer exception on boolean values
2025-11-11 12:11:49 +01:00
Paolo Tranquilli
47f2617b4d
Use other compression method for ripunzip
2025-11-11 12:07:19 +01:00
Paolo Tranquilli
295744eb36
Set permissions
2025-11-11 12:00:30 +01:00
Paolo Tranquilli
29a2f96cc7
Merge branch 'main' into redsun82/ripunzip
2025-11-11 11:57:29 +01:00
Paolo Tranquilli
6ef314ed03
Javascript: fix errors from upcoming rules_java update
2025-11-11 11:53:07 +01:00
Geoffrey White
109abddc36
Apply suggestions from code review
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-11-11 09:32:14 +00:00
Geoffrey White
8624f9c660
Merge pull request #20749 from github/copilot/add-secure-cookie-test-cases
...
Add test coverage for actix-web, poem, and http-types cookie secure attribute
2025-11-11 09:26:26 +00:00
Michael B. Gale
5b1e651803
Merge pull request #20803 from github/revert-20778-release-prep/2.23.4
...
Revert "Release preparation for version 2.23.4"
2025-11-11 00:06:17 +00:00
Michael B. Gale
8ba29a7821
Revert "Release preparation for version 2.23.4"
2025-11-10 17:13:28 +00:00
Joe Farebrother
eda23902ba
Merge pull request #20692 from joefarebrother/csharp-secure-cookie-promote
...
C#: Promote insecure cookie and httponly cookie queries
2025-11-10 15:02:45 +00:00
Paolo Tranquilli
02e696d9cc
Update .github/workflows/build-ripunzip.yml
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-10 15:58:43 +01:00
Michael Nebel
0541dccc78
C#: Add discarding for ASP elements.
2025-11-10 15:44:17 +01:00
Michael Nebel
3492811cda
C#: Add XML overlay tests.
2025-11-10 15:38:29 +01:00
Michael Nebel
d6b7424e2c
C#: Add the same strategy in as in Java for XML element discarding.
2025-11-10 15:38:26 +01:00
Joe Farebrother
c9a559a6d8
Restrict Append calls to string arguments
2025-11-10 14:14:06 +00:00
Joe Farebrother
b813c13462
Restrict sinks to fix performance
2025-11-10 14:14:01 +00:00
Joe Farebrother
7d5388fb68
Update integration tests
2025-11-10 14:13:56 +00:00
Joe Farebrother
544446bb81
Minor comment update
2025-11-10 14:13:51 +00:00
Joe Farebrother
0a085dccbe
Fix qhelp
2025-11-10 14:13:46 +00:00
Joe Farebrother
d29fc9d2d0
Add changenote
2025-11-10 14:13:41 +00:00
Joe Farebrother
d8eeae781b
Add additional test case for httponly cookies set to true
2025-11-10 14:13:36 +00:00
Paolo Tranquilli
a6fda6ba73
CI: make build-ripunzip.yml auto-create update PR
2025-11-10 15:13:35 +01:00
Joe Farebrother
c734e74c76
Update qhelp
2025-11-10 14:13:31 +00:00
Joe Farebrother
cdd1edd53b
Remove experimental versions
2025-11-10 14:13:26 +00:00
Joe Farebrother
6ba7ece2f0
Add httponly tests for aspnet core + fixes
2025-11-10 14:13:19 +00:00
Joe Farebrother
ae0b997c31
Add system.web tests for httponly cookie
2025-11-10 14:13:14 +00:00
Joe Farebrother
a9b97f7065
Add tests for insecure cookie using system.web
2025-11-10 14:13:09 +00:00
Joe Farebrother
bb010fee6b
Add tests for secure cookie using aspnetcore
2025-11-10 14:13:04 +00:00
Joe Farebrother
3cdfa8e0ac
Update comments and names
2025-11-10 14:12:57 +00:00
Joe Farebrother
a87a03cfa8
Move to main query pack
2025-11-10 14:12:48 +00:00
Joe Farebrother
71ad5a340f
Refactor httponly cookie query
2025-11-10 14:12:43 +00:00
Joe Farebrother
a1864edcb6
Presere behaviour for insecure cookie constructor
2025-11-10 14:12:36 +00:00
Joe Farebrother
d3ea6758c3
Simplify checks for assignments to false to creation case
2025-11-10 14:12:30 +00:00
Joe Farebrother
7bb65fef1b
Refactor secure cookie query
2025-11-10 14:12:24 +00:00
Mathias Vorreiter Pedersen
fd8bf990f6
Merge pull request #20783 from MathiasVP/fix-cp-in-external-flow
...
C++: Fix cartesian-like join in `ExternalFlow.qll`
2025-11-10 13:40:34 +00:00
Michael Nebel
c44b74740e
C#: Minor code quality improvements.
2025-11-10 14:23:59 +01:00
Michael Nebel
0a16cf68de
C#: Do not require that comments and type locations are in source in test.
2025-11-10 13:53:41 +01:00
Geoffrey White
4b212239e1
Rust: Remove unnecessary .(BlockExpr).
2025-11-10 12:35:39 +00:00
Michael Nebel
43118ecccc
C#: The extraction of the TypeMentions for return type and explicit interface return type for methods have changed order.
2025-11-10 13:26:07 +01:00
Michael Nebel
ded1328103
C#: Do not extract comments when scaffolding.
2025-11-10 13:26:05 +01:00
Tom Hvitved
de367eaad6
Update rust/ql/lib/codeql/rust/elements/internal/ElementImpl.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-10 12:42:28 +01:00
Mathias Vorreiter Pedersen
7b052e2404
Merge branch 'main' into fix-cp-in-external-flow
2025-11-10 10:44:31 +00:00
Mathias Vorreiter Pedersen
29a294f8d0
C++: Bind the columns inside the predicate instead of relying on 'bindingset's. The repeated inlining caused by 'bindiingset's created some #shared predicates with repeated regex matching.
2025-11-10 10:21:12 +00:00
Mathias Vorreiter Pedersen
267a7f5229
Merge pull request #20779 from MathiasVP/fix-bad-magic
...
C++: Fix bad magic in `IRGuards`
2025-11-10 10:05:18 +00:00
Jeroen Ketema
eb3e86480f
Merge pull request #20784 from jketema/qual-fail
...
C++: Fix named qualifier dataset check error with decltypes
2025-11-10 10:36:47 +01:00
Paolo Tranquilli
3de598ef79
Merge pull request #20800 from github/redsun82/remove-macos-13
...
CI: update images in `build-ripunzip.yml`
2025-11-10 10:16:14 +01:00
Jeroen Ketema
0bf415acdf
C++: Add upgrade and downgrade scripts
2025-11-10 10:11:05 +01:00
Jeroen Ketema
b660625429
C++: Update dbscheme to address dataset check error
2025-11-10 10:11:04 +01:00
Jeroen Ketema
a3f26fd6bb
C++: Update expected test results after QL changes
2025-11-10 10:11:03 +01:00
Jeroen Ketema
f9554e1542
C++: Give proper getNames to more types and fix QLdoc
2025-11-10 10:11:01 +01:00
Paolo Tranquilli
7fb0e212b2
Make default refs valid on PR checks
...
Set default versions for ripunzip and openssl in the workflow.
2025-11-10 10:09:16 +01:00
Paolo Tranquilli
2ff4af9ede
Update default versions in build-ripunzip.yml
2025-11-10 09:56:52 +01:00
Paolo Tranquilli
cd3b29f249
Update OS versions in ripunzip workflow
2025-11-10 09:54:10 +01:00
Paolo Tranquilli
63a2088ae0
Add pull_request trigger for ripunzip workflow
2025-11-10 09:53:19 +01:00
Paolo Tranquilli
fe690c90d5
Fix typo in workflow name
2025-11-10 09:52:14 +01:00
Paolo Tranquilli
da966fc799
CI: remove deprecated macos-13 image
2025-11-10 09:50:43 +01:00
Tom Hvitved
c81f5f5190
Rust: Remove elements superseded by attribute macro expansions
2025-11-10 09:18:58 +01:00
Tom Hvitved
74dd515c67
Merge pull request #20790 from hvitved/codegen/raw-child
...
Codegen: Add `Raw::getImmediateChild` and `Synth::getSynthParent`
2025-11-10 09:14:16 +01:00
Tom Hvitved
a8a799c919
Swift: Run codegen
2025-11-09 20:41:26 +01:00
Tom Hvitved
0bf458a56f
Rust: Run codegen
2025-11-09 20:40:13 +01:00
Tom Hvitved
d77b35c5d2
Codegen: Add Raw::getImmediateChild and Synth::getSynthParent
2025-11-09 20:39:38 +01:00
Mathias Vorreiter Pedersen
dfdc2a6a15
C++: Delete an incorrect comment.
2025-11-08 16:45:45 +00:00
Mathias Vorreiter Pedersen
3d6b3a31ac
C++: Also join on the 'namespace'.
2025-11-08 16:45:39 +00:00
Mathias Vorreiter Pedersen
bfe2b7dc44
C++: Use the new predicate to remove a cartesian-like join.
2025-11-08 16:43:43 +00:00
Mathias Vorreiter Pedersen
a922d5099f
C++: Factor out some conjuncts from 'interpretElement0' and into a new predicate.
2025-11-08 16:42:16 +00:00
Mathias Vorreiter Pedersen
74b774eec5
Merge pull request #20769 from MathiasVP/add-more-flow-models
...
C++: Add a few more models
2025-11-08 16:39:29 +00:00
Michael B. Gale
dbadb6f738
Merge pull request #20781 from github/post-release-prep/codeql-cli-2.23.4
...
Post-release preparation for codeql-cli-2.23.4
2025-11-07 19:07:21 +00:00
github-actions[bot]
10ae374a82
Post-release preparation for codeql-cli-2.23.4
2025-11-07 18:18:09 +00:00
Michael B. Gale
714296bcc0
Merge pull request #20778 from github/release-prep/2.23.4
...
Release preparation for version 2.23.4
2025-11-07 17:52:45 +00:00
Michael B. Gale
0cbc9358de
Revert C++ range analysis change note
2025-11-07 17:39:40 +00:00
Michael B. Gale
262bfe0351
C#: Minor changelog improvements
2025-11-07 17:39:10 +00:00
Mathias Vorreiter Pedersen
6a2debba96
C++: Fix bad magic.
2025-11-07 17:38:18 +00:00
github-actions[bot]
6342da9503
Release preparation for version 2.23.4
2025-11-07 17:37:29 +00:00
Michael B. Gale
eb32c32d4c
Merge pull request #20777 from github/revert-20745-release-prep/2.23.4
...
Revert "Release preparation for version 2.23.4"
2025-11-07 17:35:35 +00:00
Mathias Vorreiter Pedersen
56b9566299
C++: Fix mistakes in models of internal strcat and strcpy functions.
2025-11-07 17:29:48 +00:00
Michael B. Gale
9d2206be33
Merge pull request #20775 from github/esteffin/revert-20645-cpp-range-analysis-measure
...
Revert "Merge pull request #20645 from paldepind/cpp/range-analysis-m…
2025-11-07 17:29:15 +00:00
Michael B. Gale
6ce8f07290
Revert "Release preparation for version 2.23.4"
2025-11-07 17:28:28 +00:00
Mathias Vorreiter Pedersen
f163d015d5
C++: Clean up comments.
2025-11-07 17:27:25 +00:00
Geoffrey White
61481b51e7
Rust: Change note.
2025-11-07 16:55:35 +00:00
Nick Rolfe
e32a5ca846
Go: add some overlay-related logging
2025-11-07 16:52:24 +00:00
Nick Rolfe
44654bdef6
Go: avoid overlay-discarding @file entities
...
...since they are shared between base and overlay
2025-11-07 16:52:22 +00:00
Nick Rolfe
734cba7b9c
Go: add discard predicates for XML entities
...
This is adapted from the implementation for Java.
Since the HTML/XML extractor is not (yet) incremental, it will extract
files that were not in the diff. These discard predicates are intended
to cope with that, while also being robust against a future version
where the extractor *is* overlay-aware.
2025-11-07 16:52:21 +00:00
Nick Rolfe
10fa1d650d
Go: be consistent in replacement of backslashes in file labels
2025-11-07 16:52:20 +00:00
Nick Rolfe
e4c9bb3c5c
Go: enable overlay compilation
2025-11-07 16:52:19 +00:00
Nick Rolfe
50e01283da
Go: overlay workaround for cgo-processed files
2025-11-07 16:52:17 +00:00
Nick Rolfe
5aaed8941a
Go: pass source root from autobuilder to extractor
...
This ensures the extractor can resolve the relative paths for files
changed in the overlay.
2025-11-07 16:52:16 +00:00
Nick Rolfe
dd4f27868e
Go: apply path transformer for file TRAP labels
2025-11-07 16:52:15 +00:00
Nick Rolfe
4c009d5bc9
Go: implement overlay discarding for @locatable
2025-11-07 16:52:14 +00:00
Nick Rolfe
aff874e835
Go: merge with incoming path transformer when setting GOPATH
2025-11-07 16:52:12 +00:00
Nick Rolfe
99236f7877
Go: skip overlay extraction of unchanged go.mod files
2025-11-07 16:52:10 +00:00
Nick Rolfe
604df2125d
Go: implement basic overlay extraction
...
When in overlay mode, extractFile will exit early if the file isn't in
the list of files that changed since the base was extracted.
2025-11-07 16:52:08 +00:00
Nick Rolfe
05e5502680
Go: recognize CODEQL_PATH_TRANSFORMER env var
2025-11-07 16:52:07 +00:00
Nick Rolfe
4a325986e4
Go: add extractor pack field indicating overlay support
2025-11-07 16:52:06 +00:00
Nick Rolfe
c91e5618a4
Go: add dbscheme relations for overlay support
2025-11-07 16:52:05 +00:00
Enrico Steffinlongo
e7c029ae7d
Revert "Merge pull request #20645 from paldepind/cpp/range-analysis-measure"
...
This reverts commit a0a6f288b5 , reversing
changes made to 32f21d6d49 .
2025-11-07 16:49:47 +00:00
Michael Nebel
9d300e3ad3
C#: Address comments in the QL implementation.
2025-11-07 15:52:37 +01:00
Michael Nebel
1657dfb551
C#: Remove expression population safeguard and guard creation of constructor initializer expressions.
2025-11-07 15:26:07 +01:00
Michael Nebel
7c670cdc3f
C#: Address review comments and make more early returns in Populate.
2025-11-07 14:50:20 +01:00
Geoffrey White
7e3ab99d6b
Rust: Add much more detailed code comments, since these are examples.
2025-11-07 13:48:03 +00:00
Geoffrey White
7b6e06e8de
Rust: Add simple constant password example.
2025-11-07 13:30:53 +00:00
Rasmus Wriedt Larsen
3c20b950a0
Merge pull request #20747 from felickz/patch-4
...
Add 'code-quality-extended' to query packs list
2025-11-07 14:25:54 +01:00
Idriss Riouak
7c2b1a291d
Merge pull request #20760 from github/idrissrio/codeowners-lang-coverage
...
CODEOWNERS: Add code-scanning-language-coverage team to all extractors
2025-11-07 08:44:11 +01:00
Geoffrey White
49aefe2110
Rust: Add simple SQL injection example.
2025-11-06 18:49:55 +00:00
Geoffrey White
6ce0a0d9df
Rust: Add example from the basic-query-for-rust-code.rst.
2025-11-06 17:50:59 +00:00
Geoffrey White
84b50606ed
Rust: Add example queries pack.
2025-11-06 17:33:15 +00:00
Mathias Vorreiter Pedersen
f0da0d98a2
C++: Add a few more models I noticed while here.
2025-11-06 17:00:19 +00:00
Mathias Vorreiter Pedersen
2b6a75f4ad
C++: Accept test changes.
2025-11-06 16:57:11 +00:00
Mathias Vorreiter Pedersen
1d5d272822
C++: Add a few more models.
2025-11-06 16:55:51 +00:00
Mathias Vorreiter Pedersen
0607100310
C++: Add tests with missing flow.
2025-11-06 16:54:54 +00:00
Michael Nebel
446a87713a
C#: Report more timing metrics to the console logger.
2025-11-06 15:17:45 +01:00
Tom Hvitved
000f33fcbf
Merge pull request #20765 from hvitved/rust/variable-if-let-guard
...
Rust: Handle variables introduced in if-let guards
2025-11-06 13:49:38 +01:00
Idriss Riouak
0d76d582b5
CODEOWNERS: Add Go-related folders for extractor and autobuilder
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2025-11-06 11:12:53 +01:00
Geoffrey White
b4b444de48
Merge pull request #20746 from geoffw0/mv3
...
Rust: Clean up some models
2025-11-06 10:07:43 +00:00
Geoffrey White
680870dbf3
Rust: Fix after merge.
2025-11-06 09:39:51 +00:00
Tom Hvitved
f8cde74eac
Merge pull request #20736 from github/copilot/add-constaccess-class
...
Rust: Add ConstAccess class with getConst() predicate
2025-11-06 10:25:06 +01:00
Geoffrey White
1ce787a185
Merge branch 'main' into mv3
2025-11-06 09:23:01 +00:00
Tom Hvitved
c80301d58a
Rust: Handle variables introduced in if-let guards
2025-11-05 19:46:54 +01:00
Geoffrey White
1e7acc5e1a
Merge branch 'main' into copilot/add-secure-cookie-test-cases
2025-11-05 17:53:02 +00:00
Jeroen Ketema
5eac0f7953
Merge pull request #20759 from jketema/swift-6.2.1
...
Swift: Update to Swift 6.2.1
2025-11-05 16:56:35 +01:00
Geoffrey White
62e77687ca
Rust: Move async_std::io models.
2025-11-05 15:09:39 +00:00
Jeroen Ketema
a79c383fd5
Swift: update load.bzl
2025-11-05 15:46:42 +01:00
Jeroen Ketema
6476f60cd4
Swift: Add change note
2025-11-05 15:44:20 +01:00
Jeroen Ketema
a19f49b2ac
Swift: Update resources
2025-11-05 15:41:00 +01:00
Tom Hvitved
db7b187961
Rust: Add more variables tests
2025-11-05 15:32:24 +01:00
Geoffrey White
e78018769b
Rust: Add the model file (missed on previous commits).
2025-11-05 12:50:26 +00:00
Geoffrey White
6e35cb9748
Rust: Change note.
2025-11-05 11:36:04 +00:00
Geoffrey White
ad24b7414e
Rust: Fix for Poem cookies defaulting secure.
2025-11-05 11:32:30 +00:00
Geoffrey White
99a369228b
Rust: Model poem cookie methods.
2025-11-05 11:14:40 +00:00
Michael Nebel
5ec0494467
Merge pull request #20731 from michaelnebel/csharp/updatedependencies
...
C#: Update extractor package dependencies.
2025-11-05 11:58:48 +01:00
Michael B. Gale
046db0419f
Merge pull request #20758 from github/post-release-prep/codeql-cli-2.23.4
...
Post-release preparation for codeql-cli-2.23.4
2025-11-05 10:45:51 +00:00
Owen Mansel-Chan
85175f6d18
Merge pull request #20714 from owen-mc/java/pretty-print-models-quantum-nonce-reuse
...
Java: Pretty print models in nonce reuse test in experimental/quantum
2025-11-05 09:53:21 +00:00
Anders Schack-Mulligen
02fd1dcccd
Merge pull request #20738 from aschackmull/csharp/guards-misc
...
C#: Misc Guards-related cleanup.
2025-11-05 10:22:07 +01:00
idrissrio
51475df5a9
CODEOWNERS: Add code-scanning-language-coverage team to all extractors
2025-11-05 10:04:16 +01:00
Jeroen Ketema
68cd9ab3ab
Swift: Update to Swift 6.2.1
2025-11-05 09:33:06 +01:00
Jeroen Ketema
5d9d6b9a00
Merge pull request #20757 from jketema/swift-doc-update
...
Swift: Update supported versions in the documentation
2025-11-05 09:27:54 +01:00
Geoffrey White
ff06181e4b
Rust: We actually want barriers on set_secure(false) as well as set_secure(true), to prevent excessive flow paths.
2025-11-04 19:30:35 +00:00
Geoffrey White
5fed5a278e
Rust: It turns out Poem defaults 'secure' to true.
2025-11-04 18:37:20 +00:00
Geoffrey White
7383e4ff23
Rust: Test for another edge cases supported by two of the libraries.
2025-11-04 18:25:02 +00:00
Chad Bentz
aac10c1efb
Merge branch 'main' into patch-4
2025-11-04 13:13:50 -05:00
github-actions[bot]
4014df9a6e
Post-release preparation for codeql-cli-2.23.4
2025-11-04 17:57:52 +00:00
Geoffrey White
21274d3d76
Rust: Add tests of poem CookieConfig.
2025-11-04 15:14:00 +00:00
Geoffrey White
e5933d0c54
Rust: Add test cases with cookie builders.
2025-11-04 15:13:31 +00:00
Jeroen Ketema
a29c9af4a7
Update swift/third_party/resources/updating.md
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-04 16:00:23 +01:00
Jeroen Ketema
41bf91072d
Swift: Update supported versions in the documentation
...
Also document that we need to update the supported versions, so we don't forget
it next time around.
2025-11-04 15:56:39 +01:00
Anders Schack-Mulligen
7ab25b593d
C#: Change note.
2025-11-04 15:43:49 +01:00
yoff
f6eabc278a
Merge pull request #20722 from github/tausbn/python-move-points-to-predicates-to-legacy-module
...
Python: Move `ControlFlowNode`, `Expr`, and `Module` points-to to legacy module
2025-11-04 15:40:37 +01:00
Geoffrey White
55cf375886
Rust: Add the cookies to jars, indicating that they're ready for use.
2025-11-04 13:10:33 +00:00
Tom Hvitved
50552da4d8
Rust: Handle unqualified UseTrees in path resolution
2025-11-04 13:57:33 +01:00
Michael B. Gale
da1e93eb0c
Merge pull request #20754 from github/mbg/2.23.4/backport-dont-fail-if-no-js
...
Backport: Merge pull request #20752 from asgerf/actions/dont-fail-if-no-js
2025-11-04 12:51:24 +00:00
Geoffrey White
7fe4877ddd
Rust: Update test annotations.
2025-11-04 12:36:56 +00:00
Michael Nebel
d95ebc77ae
C#: Add using directives and type mentions as star entities.
2025-11-04 13:28:29 +01:00
Michael Nebel
504bb9c4a1
C#: Only scaffold assemblies in overlay mode, only extract expressions when not scaffolding and only extract attributes when they are in source code in overlay mode.
2025-11-04 13:28:28 +01:00
Michael Nebel
1d2f1545d6
C#: Add change-note.
2025-11-04 13:28:26 +01:00
Michael Nebel
04d33cbad7
C#: Add discarding for diagnostics and extractor messages.
2025-11-04 13:28:24 +01:00
Michael Nebel
8927b0a350
C#: Simplify the discarding and also discard type mentions and comments.
2025-11-04 13:28:21 +01:00
Michael Nebel
40035d2e82
C#: Add a locatable type to the dbscheme.
2025-11-04 13:28:19 +01:00
Michael Nebel
8a344215b9
C#: Add QL overlay tests.
2025-11-04 13:28:17 +01:00
Michael Nebel
121c1500ca
C#: Define discarding predicates for expressions, statements, locations and some named TRAP entities.
2025-11-04 13:28:14 +01:00
Michael Nebel
76ac2dff26
C#: Write overlay metadata at end of extraction.
2025-11-04 13:28:12 +01:00
Michael Nebel
61f6512c74
C#: Sprinkle uses of OnlyScaffold to extract less when in overlay mode.
2025-11-04 13:28:10 +01:00
Michael Nebel
cab9d81376
C#: Add unit test.
2025-11-04 13:28:07 +01:00
Michael Nebel
aa805580e3
C#: Add functionality to detect overlay mode and integrate in extraction context.
2025-11-04 13:28:05 +01:00
Michael Nebel
9026a5a82a
C#: Turn on overlay support in codeql-extractor.yml.
2025-11-04 13:28:03 +01:00
Michael Nebel
cfb68436f2
C#: Add upgrade- and downgrade scripts.
2025-11-04 13:28:00 +01:00
Michael Nebel
b48ce8dec2
C#: Add overlay builtins to the dbscheme.
2025-11-04 13:27:58 +01:00
Michael Nebel
bcc6234a60
C#: Fix bad join due to overlay compilation.
2025-11-04 13:27:56 +01:00
Michael Nebel
b600255835
C#: Enable overlay compilation in lib/qlpack.yml.
2025-11-04 13:27:53 +01:00
Asger F
6790684767
Merge pull request #20752 from asgerf/actions/dont-fail-if-no-js
...
Actions: don't fail if no JS/TS code was found
2025-11-04 12:19:54 +00:00
Asger F
d297dcd9e9
Merge pull request #20752 from asgerf/actions/dont-fail-if-no-js
...
Actions: don't fail if no JS/TS code was found
2025-11-04 13:12:12 +01:00
Asger F
81bb07a7ba
JS: Fix check to account for override in tests
...
The code was written on the assumption that 'seenCode' implies 'seenFiles' but the unit test override 'hasSeenCode()' to always return true. Which meant we would start taking this branch in the unit tests.
2025-11-04 11:46:02 +01:00
Geoffrey White
077bcf6b92
Merge pull request #20740 from geoffw0/rustbarriers
...
Rust: Add numeric type barriers for three queries
2025-11-04 10:08:46 +00:00
Asger F
105213df03
Update javascript/extractor/src/com/semmle/js/extractor/AutoBuild.java
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-04 09:51:56 +01:00
Asger F
c4d23d16ed
Actions: dont fail if no JS/TS code was found
2025-11-04 09:37:33 +01:00
copilot-swe-agent[bot]
ee3d57ef3c
Update test cases with correct APIs and run CodeQL test
...
Co-authored-by: geoffw0 <40627776+geoffw0@users.noreply.github.com >
2025-11-03 17:38:25 +00:00
copilot-swe-agent[bot]
8f02ab107c
Add test cases for actix-web, poem, and http-types cookie secure attribute
...
Co-authored-by: geoffw0 <40627776+geoffw0@users.noreply.github.com >
2025-11-03 17:16:04 +00:00
copilot-swe-agent[bot]
2497d8c329
Initial plan
2025-11-03 17:11:12 +00:00
Geoffrey White
56e98c45ec
Rust: Accept trivial changes to test .expected files.
2025-11-03 17:08:22 +00:00
Chad Bentz
20e23f89a2
Merge pull request #2 from felickz/copilot/fix-1760475-601388369-59cd8e3d-0895-49ec-9025-a9864c8e5367
...
Fix generate-code-scanning-query-list.py to handle empty code-quality-extended suites
2025-11-03 11:55:55 -05:00
copilot-swe-agent[bot]
0fc25029bb
Revert query file change and fix script to handle empty code-quality-extended suites
...
Co-authored-by: felickz <1760475+felickz@users.noreply.github.com >
2025-11-03 16:46:56 +00:00
copilot-swe-agent[bot]
7b6b703d06
Add quality tag to Actions maintainability query
...
Co-authored-by: felickz <1760475+felickz@users.noreply.github.com >
2025-11-03 16:31:04 +00:00
copilot-swe-agent[bot]
4346c61e97
Initial plan
2025-11-03 16:19:07 +00:00
Chad Bentz
50597685a2
Add 'code-quality-extended' to query packs list
2025-11-03 10:55:36 -05:00
Michael B. Gale
637e12e7a8
Merge pull request #20745 from github/release-prep/2.23.4
...
Release preparation for version 2.23.4
2025-11-03 15:15:25 +00:00
Michael B. Gale
e825a3acf7
C#: Minor changelog improvements
2025-11-03 15:03:46 +00:00
Geoffrey White
687cc6f544
Rust: Re-arrange models slightly.
2025-11-03 14:54:13 +00:00
github-actions[bot]
64fcdd1f2f
Release preparation for version 2.23.4
2025-11-03 14:52:23 +00:00
Geoffrey White
5af83787d8
Rust: Move a few more models.
2025-11-03 13:35:27 +00:00
Geoffrey White
144fa7dd39
Rust: Deduplicate some models.
2025-11-03 13:33:37 +00:00
Geoffrey White
8a2c117a0e
Rust: Move models between core.model.yml and alloc.model.yml.
2025-11-03 13:31:25 +00:00
Geoffrey White
1b435ed07d
Rust: Move another model file into subdirectory.
2025-11-03 13:26:37 +00:00
Geoffrey White
4b3a1c5abb
Rust: Move a model file into subdirectory.
2025-11-03 13:24:28 +00:00
Tom Hvitved
0ca62ca5b6
Fix copilot implementation
2025-11-03 14:15:16 +01:00
Michael Nebel
c1ede51fe8
C#: Add change note.
2025-11-03 12:52:27 +01:00
Geoffrey White
c381153125
Apply suggestions from code review
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2025-11-03 09:38:43 +00:00
Tom Hvitved
39dd3acd76
Rust: More path resolution tests
2025-11-03 10:34:50 +01:00
Jeroen Ketema
d354b0c97e
Merge pull request #20732 from jketema/swift-6.2-elements
...
Swift: Support AST elements new in Swift 6.2
2025-10-31 19:33:13 +01:00
Geoffrey White
8548c167be
Rust: Autoformat.
2025-10-31 17:30:04 +00:00
Geoffrey White
34f75952d0
Rust: Change note.
2025-10-31 16:40:02 +00:00
Geoffrey White
33efed92b8
Rust: Add integral type barrier for Regex injection.
2025-10-31 16:37:10 +00:00
Geoffrey White
2d4369ac6c
Rust: Add numeric type barrier for log injection.
2025-10-31 16:32:32 +00:00
Geoffrey White
52397f0ce0
Rust: Add numeric type barrier for SQL injection.
2025-10-31 16:25:44 +00:00
Geoffrey White
6433bec699
Rust: Add a test for BuiltinTypes.
2025-10-31 16:24:51 +00:00
Geoffrey White
47019f7f24
Rust: Define NumericType, IntegralType and FloatingPointType in Builtins.qll.
2025-10-31 16:24:39 +00:00
Geoffrey White
aaa3b1bcb4
Rust: Add a couple of new test cases.
2025-10-31 16:20:52 +00:00
Ian Lynagh
7ff696bd2d
Merge pull request #20726 from igfoo/igfoo/ClassInstanceStack
...
Kotlin: Avoid infinite recursion when extracting recursive interfaces
2025-10-31 16:18:39 +00:00
Anders Schack-Mulligen
bda6513fc1
Merge pull request #20737 from aschackmull/csharp/deprecate-abstractvalue
...
C#: Deprecate AbstractValue.
2025-10-31 15:20:24 +01:00
Ian Lynagh
06218d8acd
Kotlin: Add a test for recursive interfaces
2025-10-31 13:42:44 +00:00
Ian Lynagh
9182da1d58
Kotlin: Add a test for nested types
2025-10-31 13:42:44 +00:00
Ian Lynagh
1efecc099c
Kotlin: Avoid infinite recursion when extracting recursive interfaces
2025-10-31 13:42:43 +00:00
Anders Schack-Mulligen
fa20075a4d
C#: Review fix and simplification.
2025-10-31 14:41:32 +01:00
Anders Schack-Mulligen
4f6528a9fb
C#: Deprecate AbstractValue.
2025-10-31 14:23:23 +01:00
Anders Schack-Mulligen
eb93e8ed41
C#: Deprecate controlsBlock.
2025-10-31 14:22:11 +01:00
Anders Schack-Mulligen
4de564eb4e
C#: Replace reference to controlsBlock and simplify.
2025-10-31 14:17:35 +01:00
Anders Schack-Mulligen
f6dfcf1ca4
C#: Delete splitting-aware controls implementation.
2025-10-31 14:17:35 +01:00
Anders Schack-Mulligen
ab2c2ef6ae
C#: Update isUnreachableInCall in dataflow to use Guards library.
2025-10-31 14:17:34 +01:00
Anders Schack-Mulligen
e558c0219c
Merge pull request #20734 from aschackmull/csharp/tweak-nullness
...
C#: Allow nullness sources with SSA at entry.
2025-10-31 14:14:43 +01:00
Anders Schack-Mulligen
09378b8499
Merge pull request #20665 from aschackmull/csharp/guards-replace
...
C#: Replace old Guards with the new shared implementation.
2025-10-31 14:12:47 +01:00
copilot-swe-agent[bot]
ad51b61a2b
Fix trailing whitespace in documentation comments
...
Co-authored-by: hvitved <3667920+hvitved@users.noreply.github.com >
2025-10-31 13:07:04 +00:00
copilot-swe-agent[bot]
6011ecbef4
Add ConstAccess class with getConst() predicate and test cases
...
Co-authored-by: hvitved <3667920+hvitved@users.noreply.github.com >
2025-10-31 13:01:25 +00:00
copilot-swe-agent[bot]
09bef0f4df
Initial plan
2025-10-31 12:51:08 +00:00
Tom Hvitved
95e60ad4a7
Merge pull request #20705 from hvitved/rust/type-inference-unit
...
Rust: Infer more `()` types
2025-10-31 13:43:10 +01:00
Geoffrey White
d8fff44048
Merge pull request #20712 from geoffw0/macrometric2
...
Rust: Exclude skipped files in rust/diagnostic/database-quality
2025-10-31 11:25:41 +00:00
Jeroen Ketema
2a8e3bee36
Swift: Add change note
2025-10-31 12:06:52 +01:00
Jeroen Ketema
94f8ea5612
Swift: Add upgrade and downgrade scripts
2025-10-31 11:35:50 +01:00
Anders Schack-Mulligen
5aa53287ce
C#: Allow nullness sources with SSA at entry.
2025-10-31 11:25:37 +01:00
Tom Hvitved
f672f6b731
Merge pull request #20727 from hvitved/rust/variable-overlap-fix
...
Rust: Fix variable access overlap
2025-10-31 11:07:30 +01:00
Jeroen Ketema
7301bc74cf
Swift: Fix key path numbering in upgrade and downgrade scripts
2025-10-31 11:01:04 +01:00
Jeroen Ketema
92ca0c2b62
Swift: Update expected test results
2025-10-31 10:53:11 +01:00
Tom Hvitved
6d64800e85
Rust: Move variable consistency check into AstConsistency.qll
2025-10-31 10:42:51 +01:00
Michael Nebel
ee6dd0f771
C#: Update integration tests expected output.
2025-10-31 10:37:49 +01:00
Jeroen Ketema
eab6579e12
Swift: sync files
2025-10-31 10:24:03 +01:00
Jeroen Ketema
f4d1e1c034
Swift: Handle InlineArrayTypes
2025-10-31 10:15:07 +01:00
Jeroen Ketema
72e8ec3951
Swift: Update comment for LocatableTypes
2025-10-31 10:02:12 +01:00
Jeroen Ketema
b9d0cb7746
Swift: Add basic support for experimental using decls
...
Note that we cannot write tests for these at the moment. Passing
```
-enable-experimental-feature DefaultIsolationPerFile
```
to the extractor results in:
```
error: experimental feature 'DefaultIsolationPerFile' cannot be enabled in production compile
```
2025-10-31 09:58:12 +01:00
Jeroen Ketema
67b6b9cd15
Swift: Support UnsafeExpr
2025-10-31 09:58:10 +01:00
Jeroen Ketema
119b058629
Swift: Handle method and initializer key path components in QL
...
Note that it does not seem to be possible to write test that exercise this
code. Passing `-enable-experimental-feature KeyPathWithMethodMembers` to the
extractor results in:
```
error: experimental feature 'KeyPathWithMethodMembers' cannot be enabled in production compiler
```
2025-10-31 09:58:09 +01:00
Jeroen Ketema
b08b123184
Swift: Support new accessors
2025-10-31 09:57:58 +01:00
Tom Hvitved
7d5664f2a8
Address review comment
2025-10-31 09:43:18 +01:00
Tom Hvitved
f850025583
Rust: Add another type inference test
2025-10-31 09:39:00 +01:00
Michael Nebel
ad02559b48
C#: Fix Binlog API breaking change.
2025-10-31 09:36:22 +01:00
Asger F
a1a9626eae
Merge pull request #20421 from asgerf/js/compile-for-overlay-eval
...
JS: Add compileForOverlayEval: true
2025-10-31 09:21:16 +01:00
Michael Nebel
0484be6b5b
C#: Update lock files.
2025-10-31 09:16:35 +01:00
Michael Nebel
f410c3c93a
C#: Update Microsft.Build, Roslyn and Binlog dependencies.
2025-10-31 09:16:07 +01:00
Tom Hvitved
5a2467414c
Rust: Fix variable access overlap
2025-10-30 21:52:36 +01:00
Tom Hvitved
3d7b60a439
Rust: Add variable consistency query
2025-10-30 21:40:37 +01:00
Tom Hvitved
d71f2dee9c
Rust: Add more variable tests
2025-10-30 21:39:28 +01:00
Taus
e702d3bfc8
Python: Add change note
...
I wasn't entirely sure if this should be classified as `deprecated` or
`breaking`, but seeing as these changes technically _could_ break
existing queries (requiring a small rewrite), I opted for the latter.
2025-10-30 15:16:51 +00:00
Asger F
c583b480af
JS: Add pragma[nomagic] just to be safe
...
The DIL is unchanged
2025-10-30 15:31:51 +01:00
Asger F
1f7671cf5e
JS: Ensure integration test contains one valid file
2025-10-30 15:31:51 +01:00
Asger F
0acfacefbf
JS: Recursively delete source archive so emptiness detection works
2025-10-30 15:31:51 +01:00
Asger F
a5819a14be
JS: Fix bad join order in getNextToken()
2025-10-30 15:31:51 +01:00
Asger F
39f74d808b
JS: Add compileForOverlayEval
2025-10-30 15:31:51 +01:00
Simon Friis Vindum
a25ae3922d
Merge pull request #20682 from paldepind/rust/ti-condition
...
Rust: Refactor using shared constraint satisfaction
2025-10-30 15:19:16 +01:00
Taus
820d8e76c4
Python: Remove points-to from Module
2025-10-30 13:59:30 +00:00
Taus
b93ce98612
Python: Remove points-to from Expr
2025-10-30 13:58:59 +00:00
Simon Friis Vindum
c648aa69b8
Rust: Rename predicates
2025-10-30 14:35:17 +01:00
Taus
b434ce460e
Python: Get rid of getLiteralValue
...
This had only two uses in our libraries, so I simply inlined the
predicate body in both places.
2025-10-30 13:30:04 +00:00
Taus
fef08afff9
Python: Remove points-to to from ControlFlowNode
...
Moves the existing points-to predicates to the newly added class
`ControlFlowNodeWithPointsTo` which resides in the `LegacyPointsTo`
module.
(Existing code that uses these predicates should import this module, and
references to `ControlFlowNode` should be changed to
`ControlFlowNodeWithPointsTo`.)
Also updates all existing points-to based code to do just this.
2025-10-30 13:30:04 +00:00
Tom Hvitved
cca458c2ac
Rust: Address review comments and handle ! types in type inference
2025-10-30 13:30:42 +01:00
Geoffrey White
0e7d410163
Merge branch 'main' into macrometric2
2025-10-30 10:19:11 +00:00
Tom Hvitved
5697a7e612
Rust: More type inference tests
2025-10-30 10:43:44 +01:00
Simon Friis Vindum
b189f1fe3f
Rust: Refactor using shared constraint satisfaction
2025-10-30 08:18:12 +01:00
Jeroen Ketema
26f59a8786
Merge pull request #20710 from jketema/swift-rsc
...
Swift: Do not include the embedded resources
2025-10-29 17:38:07 +01:00
Jeroen Ketema
cf2cd20884
Swift: Update resources
2025-10-29 15:54:17 +01:00
Jeroen Ketema
ea6b05eda3
Update docs/codeql/codeql-overview/system-requirements.rst
2025-10-29 15:49:53 +01:00
Tom Hvitved
bc53fee1c5
Rust: Infer more () types
2025-10-29 15:43:00 +01:00
Tom Hvitved
f395162afd
Rust: More type inference tests
2025-10-29 15:41:23 +01:00
Tom Hvitved
3c663d8ebf
Merge pull request #20715 from hvitved/rust/type-inference-overlap-test
...
Rust: Add type inference tests for method resolution overlap
2025-10-29 15:39:07 +01:00
Anders Schack-Mulligen
900d0d2477
C#: Accept test changes for assert split removal.
2025-10-29 15:17:34 +01:00
Tom Hvitved
6ed8bcbcf3
Rust: Add type inference tests for method resolution overlap
2025-10-29 14:53:28 +01:00
Tom Hvitved
e5f1238e26
Merge pull request #20707 from paldepind/rust/ti-self-trait
...
Rust: Improve handling of `Self` type parameter
2025-10-29 13:17:14 +01:00
Anders Schack-Mulligen
51a577a429
Merge pull request #20713 from aschackmull/dataflow/qldoc1
...
Dataflow: Minor drive-by qldoc addition.
2025-10-29 13:13:43 +01:00
Geoffrey White
7a864c5244
Rust: Implement suggestion from review.
2025-10-29 12:13:12 +00:00
Anders Schack-Mulligen
87d89fd00f
C#: Fix CFG for assertion.
2025-10-29 13:04:33 +01:00
Anders Schack-Mulligen
e61ddf59d7
C#: Remove assertion splitting.
2025-10-29 13:04:32 +01:00
Anders Schack-Mulligen
b48d4d4834
C#: Recognize assertions as Guards.
2025-10-29 13:04:32 +01:00
Anders Schack-Mulligen
500fdb8723
Guards: Add support for assertions that exit rather than throw.
2025-10-29 13:04:29 +01:00
Anders Schack-Mulligen
72f1fe5d58
C#: Exclude nullness sources that are deemed non-null.
2025-10-29 13:03:51 +01:00
Anders Schack-Mulligen
0df0816c95
Guards: Minor improvement to implications.
2025-10-29 13:03:51 +01:00
Anders Schack-Mulligen
cbfb8fd110
C#: Accept some test changes.
2025-10-29 13:03:50 +01:00
Anders Schack-Mulligen
7241bedf05
C#: Replace Guards with the new implementation.
2025-10-29 13:03:50 +01:00
Anders Schack-Mulligen
8b3e62652c
Guards: Only prune actually trivial guards.
2025-10-29 13:03:46 +01:00
Owen Mansel-Chan
7ad570b5f5
Pretty print models in test
...
Otherwise the test output changes when unrelated models are added.
2025-10-29 12:03:32 +00:00
Anders Schack-Mulligen
84b8b1c01f
C#: Minor test tweak.
2025-10-29 13:02:08 +01:00
Anders Schack-Mulligen
dc4abc952f
C#: Replace references to getANullCheck.
2025-10-29 13:02:08 +01:00
Anders Schack-Mulligen
46fc006c5f
C#: Update NullCheck test to reflect what nullness use.
2025-10-29 13:02:07 +01:00
Anders Schack-Mulligen
1aa0e7c2da
C#: Make private.
2025-10-29 13:02:07 +01:00
Anders Schack-Mulligen
e3fc3192ac
C#: Remove tests referencing impliesStep.
2025-10-29 13:02:06 +01:00
Anders Schack-Mulligen
9776e8f828
C#: Remove an irrelevant reference to impliesStep.
2025-10-29 13:02:06 +01:00
Anders Schack-Mulligen
4ea90e06a5
Dataflow: Minor drive-by qldoc addition.
2025-10-29 12:58:56 +01:00
Geoffrey White
558ca74e9c
Merge pull request #20702 from geoffw0/gen2
...
Rust: Generalize more models
2025-10-29 11:32:00 +00:00
Geoffrey White
5ca0bd071d
Rust: Exclude skipped files from CallTargetStats and ExprTypeStats as well.
2025-10-29 10:42:04 +00:00
Geoffrey White
25e4b790a3
Rust: Exclude skipped files from MacroCallTargetStats.
2025-10-29 10:42:03 +00:00
Simon Friis Vindum
ce8cffc331
Rust: Address comments
2025-10-29 11:18:02 +01:00
Tom Hvitved
b7293541cd
Merge pull request #20704 from hvitved/rust/fix-bad-joins
...
Rust: Fix two bad joins
2025-10-29 11:11:54 +01:00
Jeroen Ketema
6906c88781
Swift: Update change note
2025-10-29 11:08:16 +01:00
Jeroen Ketema
2505c8f3e3
Swift: Improve docs
2025-10-29 11:06:50 +01:00
Jeroen Ketema
9f498df9fa
Swift: Do not include the embedded resources
2025-10-29 11:00:04 +01:00
Simon Friis Vindum
9022f996e8
Rust: Improve handling of occurrences of the Self type parameter
2025-10-29 10:41:46 +01:00
Simon Friis Vindum
9ff3c61c6e
Rust: Add type inference tests involving Self
2025-10-29 10:41:44 +01:00
yoff
4461be180a
Merge pull request #19539 from yoff/java/conflicting-access
2025-10-28 20:37:44 +01:00
Geoffrey White
6f1eca8be1
Rust: Make the QLDoc for fromSource a bit more precise.
2025-10-28 16:22:25 +00:00
Tom Hvitved
f2380d3ef1
Merge pull request #20612 from hvitved/rust/type-inference-blanket-non-satisfaction
...
Rust: Compute incompatible blanket implementations
2025-10-28 14:00:55 +01:00
Tom Hvitved
b3bbe78974
Rust: Fix bad join
...
Before
```
Pipeline standard for TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61@31ee5u2w was evaluated in 821 iterations totaling 1057ms (delta sizes total: 689971).
416937 ~1% {6} r1 = SCAN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev_delta` OUTPUT In.0, In.3, In.1, In.2, In.4, In.5
222757 ~2% {8} r2 = JOIN r1 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
164360 ~3% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
315350783 ~1% {6} r3 = SCAN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev` OUTPUT In.0, In.3, In.1, In.2, In.4, In.5
593815 ~1% {8} r4 = JOIN r3 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
342226 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
826517 ~0% {8} r5 = JOIN r1 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
345294 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
73715 ~0% {8} r6 = JOIN r3 WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
47802 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
899682 ~5% {6} r7 = r2 UNION r4 UNION r5 UNION r6
711040 ~6% {6} | AND NOT `TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61#prev`(FIRST 6)
return r7
```
After
```
Pipeline standard for TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61@ad458u2w was evaluated in 821 iterations totaling 374ms (delta sizes total: 691168).
222757 ~2% {8} r1 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev_delta` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
164360 ~3% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
593815 ~1% {8} r2 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.3, _, Lhs.4, Rhs.2
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
342226 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
826517 ~0% {8} r3 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev_delta` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
345294 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
73715 ~0% {8} r4 = JOIN `TypeInference::MethodCallMatching::directTypeMatch0/6#dfcc7717#prev` WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 3 OUTPUT Lhs.0, Lhs.2, Lhs.3, Lhs.5, Rhs.4, _, Lhs.4, Rhs.3
{6} | REWRITE WITH Tmp.5 := "", Out.5 := InverseAppend(In.6,Tmp.5,In.7) KEEPING 6
47802 ~1% {6} | SCAN OUTPUT In.0, In.1, In.2, In.5, In.4, In.3
899682 ~5% {6} r5 = r1 UNION r2 UNION r3 UNION r4
711095 ~6% {6} | AND NOT `TypeInference::MethodCallMatching::directTypeMatch/6#f0fb0b61#prev`(FIRST 6)
return r5
```
2025-10-28 13:09:39 +01:00
Tom Hvitved
104ba0e291
Rust: Fix bad join
...
Before
```
Pipeline standard for TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748@ada3a07w was evaluated in 801 iterations totaling 31ms (delta sizes total: 182871).
50151 ~1% {4} r1 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta OUTPUT In.0, In.2, In.3, In.4
39574 ~0% {5} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.3, Rhs.3, _, Lhs.2, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
36996 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
36102333 ~0% {4} r2 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev OUTPUT In.0, In.2, In.3, In.4
90175 ~1% {5} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.3, Rhs.3, _, Lhs.2, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
65014 ~1% {3} | SCAN OUTPUT In.0, In.2, In.1
50151 ~1% {5} r3 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta OUTPUT In.2, In.0, In.1, In.3, In.4
24208 ~1% {4} | JOIN WITH `FunctionType::FunctionPosition.isSelf/0#dispred#9e84d302` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4
95022 ~0% {9} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 1 OUTPUT Lhs.2, Lhs.3, Rhs.2, Rhs.3, Rhs.4, _, Rhs.1, Lhs.1, _
{6} | REWRITE WITH Tmp.5 := ";", Tmp.5 := (In.6 ++ Tmp.5), Tmp.8 := "", Out.5 := InverseAppend(Tmp.5,Tmp.8,In.7) KEEPING 6
93919 ~1% {7} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, _
{6} | REWRITE WITH NOT [NOT [Tmp.6 := "borrow", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 = Tmp.6], NOT [Tmp.6 := "", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 != Tmp.6]] KEEPING 6
81298 ~1% {5} | SCAN OUTPUT In.1, In.4, _, In.0, In.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
64110 ~1% {3} | SCAN OUTPUT In.0, In.2, In.1
36102333 ~0% {5} r4 = SCAN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev OUTPUT In.2, In.0, In.1, In.3, In.4
17473531 ~0% {4} | JOIN WITH `FunctionType::FunctionPosition.isSelf/0#dispred#9e84d302` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4
47409 ~1% {9} | JOIN WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 1 OUTPUT Lhs.2, Lhs.3, Rhs.2, Rhs.3, Rhs.4, _, Rhs.1, Lhs.1, _
{6} | REWRITE WITH Tmp.5 := ";", Tmp.5 := (In.6 ++ Tmp.5), Tmp.8 := "", Out.5 := InverseAppend(Tmp.5,Tmp.8,In.7) KEEPING 6
29885 ~0% {7} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, _
{6} | REWRITE WITH NOT [NOT [Tmp.6 := "borrow", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 = Tmp.6], NOT [Tmp.6 := "", TEST InOut.5 = Tmp.6, Tmp.6 := true, TEST InOut.2 != Tmp.6]] KEEPING 6
16952 ~1% {5} | SCAN OUTPUT In.1, In.4, _, In.0, In.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
16829 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
182949 ~1% {3} r5 = r1 UNION r2 UNION r3 UNION r4
182949 ~1% {3} | AND NOT `TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748#prev`(FIRST 3)
return r5
```
After
```
Pipeline standard for TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748@31ee547w was evaluated in 801 iterations totaling 19ms (delta sizes total: 182946).
81298 ~0% {5} r1 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev` ON FIRST 3 OUTPUT Lhs.4, Rhs.4, _, Lhs.3, Rhs.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
64110 ~1% {3} | SCAN OUTPUT In.0, In.2, In.1
39574 ~0% {5} r2 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev_delta WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev` ON FIRST 2 OUTPUT Lhs.4, Rhs.3, _, Lhs.3, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
36996 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
16952 ~0% {5} r3 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev WITH `TypeInference::MethodCallMatchingInput::Access.getInferredSelfType/3#dispred#45b2f893#prev_delta` ON FIRST 3 OUTPUT Lhs.4, Rhs.4, _, Lhs.3, Rhs.3
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
16829 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
90175 ~0% {5} r4 = JOIN TypeInference::MethodCallMatching::AccessConstraint::MkRelevantAccess#7a01048b#prev WITH `TypeInference::MethodCallMatchingInput::Access.getInferredNonSelfType/2#dispred#b181cb0a#prev_delta` ON FIRST 2 OUTPUT Lhs.4, Rhs.3, _, Lhs.3, Rhs.2
{3} | REWRITE WITH Tmp.2 := "", Out.2 := InverseAppend(In.3,Tmp.2,In.4) KEEPING 3
65014 ~0% {3} | SCAN OUTPUT In.0, In.2, In.1
182949 ~1% {3} r5 = r1 UNION r2 UNION r3 UNION r4
182949 ~1% {3} | AND NOT `TypeInference::MethodCallMatching::AccessConstraint::RelevantAccess.getTypeAt/1#dispred#e8abf748#prev`(FIRST 3)
return r5
```
2025-10-28 13:09:32 +01:00
Nora Dimitrijević
727bddea19
Merge pull request #20607 from d10c/d10c/update-diff-informed-testing
...
Update diff-informed testing to always treat sources and sinks as alert locations
2025-10-28 11:52:31 +01:00
Tom Hvitved
409f7fb743
Address review comments
2025-10-28 11:48:45 +01:00
Geoffrey White
d6c4ab2724
Merge branch 'main' into gen2
2025-10-28 09:26:13 +00:00
Geoffrey White
abcc1712d5
Rust: Remove more redundant models.
2025-10-28 09:26:11 +00:00
Nora Dimitrijević
a0975e7e19
Constrain location overrides to actual sources/sinks
2025-10-28 09:42:20 +01:00
Nora Dimitrijević
96e1536769
C++/SqlTainted
2025-10-28 09:42:17 +01:00
Nora Dimitrijević
8e0c453c37
Rust/InsecureCookie
2025-10-28 09:42:14 +01:00
Nora Dimitrijević
4952cb27fb
Rust/AccessAfterLifetime
2025-10-28 09:42:11 +01:00
Nora Dimitrijević
0f0bd0f455
Go/SSRF
...
go/ql/src/experimental/CWE-918/SSRF.ql
2025-10-28 09:42:09 +01:00
Nora Dimitrijević
d41268fc84
Go/UnhandledCloseWritableHandle
2025-10-28 09:42:06 +01:00
Nora Dimitrijević
ec63547925
C++/UseOfHttp
2025-10-28 09:42:03 +01:00
Nora Dimitrijević
a65d4d5997
C++/TaintedAllocationSize
2025-10-28 09:42:01 +01:00
Nora Dimitrijević
f3d51e0151
C++/ArithmeticUncontrolled
2025-10-28 09:41:57 +01:00
Nora Dimitrijević
1321cbb021
C++/DecompressionBombs
2025-10-28 09:41:55 +01:00
Nora Dimitrijević
bbe2bf2b7f
C++/CleartextTransmission
2025-10-28 09:41:52 +01:00
Nora Dimitrijević
b0180409f4
C++/CleartextFileWrite
2025-10-28 09:41:49 +01:00
Nora Dimitrijević
d89aa0f19d
C++/CleartextBufferWrite
2025-10-28 09:41:46 +01:00
Nora Dimitrijević
17b261a506
C++/AuthenticationBypass
2025-10-28 09:41:43 +01:00
Nora Dimitrijević
0ed27f4e81
C++/CleartextSqliteDatabase
2025-10-28 09:41:40 +01:00
Nora Dimitrijević
f7a1a4cf75
C++/NonConstantFormat
2025-10-28 09:41:38 +01:00
Nora Dimitrijević
2756e8255f
C++/UnboundedWrite
2025-10-28 09:41:35 +01:00
Nora Dimitrijević
a4ac0392a6
C++/OverflowDestination
2025-10-28 09:41:32 +01:00
Nora Dimitrijević
65d79ff6fc
C++/ExecTainted
2025-10-28 09:41:29 +01:00
Nora Dimitrijević
464f6cb096
C++/ConstantSizeArrayOffByOne
2025-10-28 09:41:26 +01:00
Nora Dimitrijević
974d174757
Actions/CodeInjectionQuery
...
actions/ql/src/Security/CWE-094/CodeInjectionMedium.ql
actions/ql/src/Security/CWE-094/CodeInjectionCritical.ql
2025-10-28 09:41:24 +01:00
Nora Dimitrijević
62fde8f6e7
Actions/ArgumentInjectionQuery
...
actions/ql/src/experimental/Security/CWE-088/ArgumentInjectionCritical.ql
actions/ql/src/experimental/Security/CWE-088/ArgumentInjectionMedium.ql
2025-10-28 09:41:21 +01:00
Nora Dimitrijević
c40223319c
Actions/EnvVarInjectionQuery
...
actions/ql/src/Security/CWE-077/EnvVarInjectionMedium.ql
actions/ql/src/Security/CWE-077/EnvVarInjectionCritical.ql
2025-10-28 09:41:18 +01:00
Nora Dimitrijević
edc72d29d7
Actions/EnvPathInjectionQuery
...
actions/ql/src/Security/CWE-077/EnvPathInjectionMedium.ql
actions/ql/src/Security/CWE-077/EnvPathInjectionCritical.ql
2025-10-28 09:41:16 +01:00
Nora Dimitrijević
1f53ffbdd7
Actions/ArtifactPoisoningQuery
...
actions/ql/src/Security/CWE-829/ArtifactPoisoningCritical.ql
actions/ql/src/Security/CWE-829/ArtifactPoisoningMedium.ql
2025-10-28 09:41:13 +01:00
Nora Dimitrijević
8a750b3125
Swift/UnsafeUnpackQuery
...
swift/ql/src/experimental/Security/CWE-022/UnsafeUnpack.ql
2025-10-28 09:41:10 +01:00
Nora Dimitrijević
895bd93062
Swift/UnsafeJsEvalQuery
...
swift/ql/src/queries/Security/CWE-094/UnsafeJsEval.ql
2025-10-28 09:41:08 +01:00
Nora Dimitrijević
cd86e7d6f5
Swift/StringLengthConflationQuery
...
swift/ql/src/queries/Security/CWE-135/StringLengthConflation.ql
2025-10-28 09:41:05 +01:00
Nora Dimitrijević
5a6f731ab7
Swift/StaticInitializationVectorQuery
...
swift/ql/src/queries/Security/CWE-1204/StaticInitializationVector.ql
2025-10-28 09:41:02 +01:00
Nora Dimitrijević
7ba7c435f2
Swift/InsufficientHashIterationsQuery
...
swift/ql/src/queries/Security/CWE-916/InsufficientHashIterations.ql
2025-10-28 09:41:00 +01:00
Nora Dimitrijević
6c52d4ba91
Swift/ConstantPasswordQuery
...
swift/ql/src/queries/Security/CWE-259/ConstantPassword.ql
2025-10-28 09:40:57 +01:00
Nora Dimitrijević
c190fae737
Swift/CleartextStoragePreferencesQuery
...
swift/ql/src/queries/Security/CWE-312/CleartextStoragePreferences.ql
2025-10-28 09:40:54 +01:00
Nora Dimitrijević
2332cea330
Swift/CleartextStorageDatabaseQuery
...
swift/ql/src/queries/Security/CWE-311/CleartextStorageDatabase.ql
2025-10-28 09:40:51 +01:00
Nora Dimitrijević
462d8c5dc4
Shared: update qldoc
2025-10-28 09:40:48 +01:00
Nora Dimitrijević
6ede0a7950
Ruby/WeakFilePermissions
2025-10-28 09:40:46 +01:00
Nora Dimitrijević
495be51ae7
Ruby/WeakParams
2025-10-28 09:40:43 +01:00
Nora Dimitrijević
50f2540db1
Ruby/ManuallyCheckHttpVerb
2025-10-28 09:40:41 +01:00
Nora Dimitrijević
6519bd9909
Ruby/PolynomialReDoSQuery
...
ruby/ql/src/queries/security/cwe-1333/PolynomialReDoS.ql
2025-10-28 09:40:38 +01:00
Nora Dimitrijević
1ff24cbee8
Python/LdapInsecureAuth
...
python/ql/src/experimental/Security/CWE-522/LdapInsecureAuth.ql
2025-10-28 09:40:35 +01:00
Nora Dimitrijević
998de144ea
Python/CorsBypass
2025-10-28 09:40:32 +01:00
Nora Dimitrijević
4bc9ede2e8
Python/UnsafeUsageOfClientSideEncryptionVersion
2025-10-28 09:40:30 +01:00
Nora Dimitrijević
6d57316862
Python/UnsafeUnpackQuery
...
python/ql/src/experimental/Security/CWE-022bis/UnsafeUnpack.ql
2025-10-28 09:40:27 +01:00
Nora Dimitrijević
37fff48dcd
Python/ServerSideRequestForgeryQuery
...
python/ql/src/Security/CWE-918/PartialServerSideRequestForgery.ql
2025-10-28 09:40:24 +01:00
Nora Dimitrijević
baccdcc07f
Python/PolynomialReDoSQuery
...
python/ql/src/Security/CWE-730/PolynomialReDoS.ql
2025-10-28 09:40:21 +01:00
Nora Dimitrijević
bb80d83276
JS/SSRF
...
javascript/ql/src/experimental/Security/CWE-918/SSRF.ql
2025-10-28 09:40:19 +01:00
Nora Dimitrijević
bcdbe0b50a
JS/PolynomialReDoSQuery
...
javascript/ql/src/Performance/PolynomialReDoS.ql
2025-10-28 09:40:16 +01:00
Nora Dimitrijević
94343254e3
JS/ShellCommandInjectionFromEnvironmentQuery
...
javascript/ql/src/Security/CWE-078/ShellCommandInjectionFromEnvironment.ql
2025-10-28 09:40:14 +01:00
Nora Dimitrijević
71cf042607
JS/IndirectCommandInjectionQuery
...
javascript/ql/src/Security/CWE-078/IndirectCommandInjection.ql
2025-10-28 09:40:11 +01:00
Nora Dimitrijević
2a30ea923a
JS/CommandInjectionQuery
...
javascript/ql/src/experimental/heuristics/ql/src/Security/CWE-078/CommandInjection.ql
javascript/ql/src/Security/CWE-078/CommandInjection.ql
2025-10-28 09:40:09 +01:00
Nora Dimitrijević
f24a6f64ab
Java/WebviewDebugEnabledQuery
...
java/ql/src/Security/CWE/CWE-489/WebviewDebuggingEnabled.ql
2025-10-28 09:40:06 +01:00
Nora Dimitrijević
518c0818a4
Java/UnsafeDeserializationQuery
...
java/ql/src/Security/CWE/CWE-502/UnsafeDeserialization.ql
2025-10-28 09:40:03 +01:00
Nora Dimitrijević
4439322e88
Java/TempDirLocalInformationDisclosureQuery
...
java/ql/src/Security/CWE/CWE-200/TempDirLocalInformationDisclosure.ql
2025-10-28 09:40:01 +01:00
Nora Dimitrijević
2a889f4f98
Java/TaintedPermissionsCheckQuery
...
java/ql/src/Security/CWE/CWE-807/TaintedPermissionsCheck.ql
2025-10-28 09:39:58 +01:00
Nora Dimitrijević
697f428eae
Java/TaintedEnvironmentVariableQuery
...
java/ql/src/Security/CWE/CWE-078/ExecTaintedEnvironment.ql
2025-10-28 09:39:55 +01:00
Nora Dimitrijević
72a97773b1
Java/NumericCastTaintedQuery
...
java/ql/src/Security/CWE/CWE-681/NumericCastTainted.ql
2025-10-28 09:39:52 +01:00
Nora Dimitrijević
247ae1d23c
Java/MaybeBrokenCryptoAlgorithmQuery
...
java/ql/src/Security/CWE/CWE-327/MaybeBrokenCryptoAlgorithm.ql
2025-10-28 09:39:50 +01:00
Nora Dimitrijević
eebff9c282
Java/ImproperValidationOfArrayConstructionFlow
...
java/ql/src/Security/CWE/CWE-129/ImproperValidationOfArrayConstruction.ql
2025-10-28 09:39:47 +01:00
Nora Dimitrijević
9eeeec336e
Java/ImproperValidationOfArrayConstructionCodeSpecifiedQuery
...
java/ql/src/Security/CWE/CWE-129/ImproperValidationOfArrayConstructionCodeSpecified.ql
2025-10-28 09:39:45 +01:00
Nora Dimitrijević
dc1dff98b0
Java/ConditionalBypass
...
java/ql/src/Security/CWE/CWE-807/ConditionalBypass.ql
2025-10-28 09:39:42 +01:00
Nora Dimitrijević
4482e831d7
Java/CommandLineQuery
...
85a4dd0325/java/ql/src/Security/CWE/CWE-078/ExecTainted.ql
857b51be58/java/ql/src/Security/CWE/CWE-078/ExecUnescaped.ql
b6e56f26c7/java/ql/src/experimental/Security/CWE/CWE-078/ExecTainted.ql
2025-10-28 09:39:39 +01:00
Nora Dimitrijević
b023880a0a
Java/BrokenCryptoAlgorithmQuery
...
java/ql/src/Security/CWE/CWE-327/BrokenCryptoAlgorithm.ql
2025-10-28 09:39:37 +01:00
Nora Dimitrijević
1129230e10
Java/ArithmeticUncontrolledQuery
...
java/ql/src/Security/CWE/CWE-190/ArithmeticUncontrolled.ql
2025-10-28 09:39:34 +01:00
Nora Dimitrijević
a228936c63
Java/ArithmeticTainted
...
java/ql/src/Security/CWE/CWE-190/ArithmeticTainted.ql
2025-10-28 09:39:31 +01:00
Nora Dimitrijević
913550f408
Java/ArbitraryApkInstallationQuery
...
java/ql/src/Security/CWE/CWE-094/ArbitraryApkInstallation.ql
2025-10-28 09:39:29 +01:00
Nora Dimitrijević
59a8e9b78c
Go/InsufficientKeySize
2025-10-28 09:39:27 +01:00
Nora Dimitrijević
7722f31cb8
Go/DivideByZero
2025-10-28 09:39:24 +01:00
Nora Dimitrijević
ba22f0d7d2
C#/DontInstallRootCert
2025-10-28 09:39:21 +01:00
Nora Dimitrijević
ad31f1ab6d
C++/WordexpTainted
...
Same file usees source and sink as endpoints
2025-10-28 09:39:19 +01:00
Nora Dimitrijević
5a1a887fd2
Actions/ReusableWorkflowsSummaries
2025-10-28 09:39:16 +01:00
Nora Dimitrijević
1243c6362d
Actions/ReusableWorkflowsSources
2025-10-28 09:39:14 +01:00
Nora Dimitrijević
a972ef7e31
Actions/ReusableWorkflowsSinks
...
Same file uses source as endpoint
2025-10-28 09:39:11 +01:00
Nora Dimitrijević
9c24ce0650
Actions/CompositeActionsSummaries
...
Same file uses source as endpoint
2025-10-28 09:39:09 +01:00
Nora Dimitrijević
78f2cee51c
Actions/CompositeActionsSources
...
Same file uses source as endpoint
2025-10-28 09:39:06 +01:00
Nora Dimitrijević
d36b721513
Actions/CompositeActionsSinks
...
Same file uses source as endpoint
2025-10-28 09:38:55 +01:00
Nora Dimitrijević
bb10307303
Actions/SecretExfiltrationQuery
...
actions/ql/src/experimental/Security/CWE-200/SecretExfiltration.ql uses source as endpoint
2025-10-28 09:38:38 +01:00
Nora Dimitrijević
890ca8e7d1
Actions/RequestForgeryQuery
...
actions/ql/src/experimental/Security/CWE-918/RequestForgery.ql uses source as endpoint
2025-10-28 09:38:21 +01:00
Nora Dimitrijević
3fa8259042
Actions/OutputClobberingQuery
...
actions/ql/src/experimental/Security/CWE-074/OutputClobberingHigh.ql uses source as endpoint
2025-10-28 09:38:01 +01:00
Asger F
8d49f26f3d
Merge pull request #20397 from asgerf/js/build-artifact-leak-fp
...
JS: Fix FP in js/build-artifact-leak when keys come from an array of constants
2025-10-28 06:40:13 +01:00
Geoffrey White
b76f27d10b
Rust: Remove redundant model.
2025-10-27 18:47:17 +00:00
Geoffrey White
03204b7881
Rust: Accept tests repaired.
2025-10-27 17:53:40 +00:00
Alexander Eyers-Taylor
227e1fcbde
Merge pull request #20598 from github/alexet/overlay-query-libraries
...
Java: Make some query libraries local.
2025-10-27 17:52:27 +00:00
Geoffrey White
0c92b33b8f
Revert "Rust: Generalize more models."
...
This reverts commit 56811d02ac .
2025-10-27 17:47:00 +00:00
Geoffrey White
a468b1d647
Rust: Accept regressions spotted by CI.
2025-10-27 17:46:01 +00:00
Paolo Tranquilli
630ea7bd0a
Merge pull request #20641 from github/redsun82/fix-pytest-build-as-test-windows
...
Pytest: fix the `build-as-test` mode on Windows
2025-10-27 15:47:24 +01:00
Geoffrey White
56811d02ac
Rust: Generalize more models.
2025-10-27 14:11:09 +00:00
Idriss Riouak
11a7d53002
Merge pull request #20657 from github/idrissrio/java-maven-fix
...
Java: Add integration test to reproduce regression
2025-10-27 15:09:41 +01:00
yoff
406e48b3bb
java: fix aliasing FP
...
reorganise code, adding `LockField`
2025-10-27 14:30:25 +01:00
yoff
531b994819
java: add test for aliasing
...
found by triage
2025-10-27 14:27:32 +01:00
idrissrio
d473b36918
Java: Accept new test results after extractor changes
2025-10-27 14:26:48 +01:00
idrissrio
714b2ad565
Java: Add integration test for maven
2025-10-27 14:26:47 +01:00
Simon Friis Vindum
35b4a36f37
Merge pull request #20691 from paldepind/cpp/range-analysis-refactor
...
C++: A few small refactors to the simple range analysis library
2025-10-27 14:15:37 +01:00
Anders Schack-Mulligen
31428b2f66
Merge pull request #20700 from aschackmull/java/delete-old-ssa-consistency
...
Java: Remove old SSA consistency queries.
2025-10-27 14:12:09 +01:00
Paolo Tranquilli
105f810654
Merge pull request #20658 from github/redsun82/csharp-fix-xframe-options-in-location
...
Csharp: fix `cs/web/missing-x-frame-options` to also consider `location` elements
2025-10-27 13:49:09 +01:00
Geoffrey White
bd11873e0d
Rust: Generalize a model of futures_io...poll_read.
2025-10-27 12:22:13 +00:00
Chris Smowton
2e0e9e0834
Merge pull request #20550 from github/smowton/admin/document-rails-5-csrf
...
Ruby: Update CSRF protection notes in documentation
2025-10-27 12:19:16 +00:00
Anders Schack-Mulligen
96fc1e889a
Java: Accept .expected file.
2025-10-27 13:17:53 +01:00
Geoffrey White
c8b8046302
Rust: Generalize a model of alloc::boxed::Box.
2025-10-27 12:09:05 +00:00
Geoffrey White
d650ccb74b
Rust: Generalize some std::io::Read models.
2025-10-27 12:09:04 +00:00
Anders Schack-Mulligen
02a942554d
Java: Remove old SSA consistency queries.
2025-10-27 12:55:43 +01:00
Jeroen Ketema
47b26ddea4
Merge pull request #20446 from github/jketema/swift-6.2
...
Swift: Make extractor compile with Swift 6.2
2025-10-27 12:24:16 +01:00
Jeroen Ketema
be0d405f6d
Swift: Update artifacts
2025-10-27 11:28:53 +01:00
yoff
83508ba661
java: adjust qhelp and examples for SafePublication
2025-10-27 11:25:51 +01:00
Jeroen Ketema
aabc8bc38b
Swift: Fix typo in change note
2025-10-27 10:54:39 +01:00
Jeroen Ketema
2022dd833e
Swift: Address review comments
2025-10-27 10:48:02 +01:00
Paolo Tranquilli
3f98d32124
C#: Update change note for location handling in query
2025-10-27 09:51:10 +01:00
Nicolas Will
d4787520fd
Merge pull request #20690 from bdrodes/weak_symmetric_cipher_bug
...
Crypto: Fix bug in weak symmetric cipher query
2025-10-24 22:38:07 +02:00
Nicolas Will
e7bd435bee
Merge pull request #20696 from bdrodes/bad_mac_decrypt_then_mac
...
Crypto: Adding bad decrypt then mac order query.
2025-10-24 22:07:26 +02:00
REDMOND\brodes
65d0ca9e53
Crypto: Simplifying expression for ql-for-ql alert.
2025-10-24 14:08:25 -04:00
REDMOND\brodes
0394816756
Crypto: typo fix
2025-10-24 14:06:52 -04:00
REDMOND\brodes
b20689fa46
Crypto: removing comments
2025-10-24 14:06:08 -04:00
REDMOND\brodes
0e624f51d5
Crypto: Adding bad decrypt then mac order query. Fixes to BadMacOrderMacOnEncryptPlaintext as well.
2025-10-24 12:44:28 -04:00
Simon Friis Vindum
d1ea1af945
C++: Make small trivial tweaks
2025-10-24 16:16:57 +02:00
Simon Friis Vindum
5709964fbf
C++: Simplify boundFromGuard
...
The last disjunct in `boundFromGuard` is moved into `linearBoundFromGuard`. This avoids repeating the calculation for `boundValue`.
`getBounds` and `getExprTypeBounds` are turned into predicates with result. Their middle argument was the "output" which was confusing.
2025-10-24 16:12:05 +02:00
Simon Friis Vindum
383e6a44aa
C++: Use or instead of if
...
The proposition in the true branch implied the condition, so `or` is more appropriate. Also eliminated an existentially quantified variable.
2025-10-24 16:08:35 +02:00
Simon Friis Vindum
3af9885489
C++: Fix typos in tests
2025-10-24 16:04:34 +02:00
Simon Friis Vindum
17e0dec08a
C++: Add toString for RelationStrictness
...
This helps for debugging.
2025-10-24 16:01:38 +02:00
Simon Friis Vindum
a0a6f288b5
Merge pull request #20645 from paldepind/cpp/range-analysis-measure
...
C++: Range analysis measure bounds
2025-10-24 15:30:07 +02:00
Jeroen Ketema
74384bbeae
Swift: Add change notes
2025-10-24 14:38:01 +02:00
Jeroen Ketema
e415772688
Swift: Add upgrade and downgrade scripts
2025-10-24 14:38:00 +02:00
Jeroen Ketema
2843761471
Swift: Special case the xcode-fails-spm-works test results on macOS 26
...
macOS 26 comes with Xcode 26, which does not call the compiler on the file
with the `#error` diagnostic directive.
2025-10-24 14:37:58 +02:00
Jeroen Ketema
79fd35a482
Swift: Remove flags related to explict modules in the tracer config
...
We have not found a good way to support these.
2025-10-24 14:37:57 +02:00
Jeroen Ketema
06d0d48416
Swift: Work around assertion failures in mangler
2025-10-24 14:37:55 +02:00
Jeroen Ketema
4d9827ff77
Swift: Update expected integration test results
2025-10-24 14:37:54 +02:00
Jeroen Ketema
192c9c3820
Swift: Document that tests disabled with Swift 6.1 are still broken with 6.2
2025-10-24 14:37:53 +02:00
Jeroen Ketema
b50ffe2e0c
Swift: Update PoundDiagnosticDecl test
...
These elements are no longer present in the Swift 6.2 AST.
2025-10-24 14:37:52 +02:00
Jeroen Ketema
7890dc6030
Swift: Update expected test results after 6.2 update
2025-10-24 14:37:51 +02:00
Jeroen Ketema
bc835a310a
Swift: Update KeyPathComponent for new kind values
2025-10-24 14:37:49 +02:00
Jeroen Ketema
d890feedda
Swift: Compensate for backwards going locations
2025-10-24 14:37:48 +02:00
Jeroen Ketema
626bc55caf
Swift: Fix AvailabilitySpec trap generation
2025-10-24 14:37:47 +02:00
Jeroen Ketema
300b5b15e7
Swift: Mangle function type lifetimes
2025-10-24 14:37:46 +02:00
Jeroen Ketema
e79c0b0405
Swift: Update generated files
2025-10-24 14:37:45 +02:00
Jeroen Ketema
22dddb0216
Swift: Fix unavailability checks after 6.2 upgrade
2025-10-24 14:37:43 +02:00
Jeroen Ketema
2ef8bb0c53
Swift: Make extractor compile with Swift 6.2
2025-10-24 14:37:42 +02:00
Tom Hvitved
32f21d6d49
Merge pull request #20688 from hvitved/java/request-forgery-matches-sanitizer
...
Java: Treat `x.matches(regexp)` as a sanitizer for request forgery
2025-10-24 14:34:32 +02:00
REDMOND\brodes
ed492c7d5a
Crypto: Fixed bug in WeakSymmetricCipher.qll, forgot to not only filter if !=AES but the algorithm must still be a SymmetriCipher algorithm.
2025-10-24 08:16:22 -04:00
Tom Hvitved
a4eab484ce
Address review comments
2025-10-24 13:32:39 +02:00
Joe Farebrother
8c277bd1d9
Merge pull request #20494 from joefarebrother/python-insecure-cookie-split
...
Python: Split Insecure Cookie query into multiple queries
2025-10-24 11:10:20 +01:00
Tom Hvitved
0e885e9297
Rust: Compute incompatible blanket implementations
2025-10-24 11:37:24 +02:00
Tom Hvitved
2a43a95049
Rust: More type inference tests
2025-10-24 11:37:22 +02:00
Tom Hvitved
672977acfa
Merge pull request #20592 from hvitved/rust/type-inference-branch-propagation
...
Rust: Non-symmetric type propagation for lub coercions
2025-10-24 11:35:24 +02:00
Tom Hvitved
ce379161fc
Add change note
2025-10-24 09:34:11 +02:00
Tom Hvitved
74411ff979
Merge pull request #20687 from hvitved/js/remove-invalid-qhelp-links
...
JS: Remove two invalid QHelp links
2025-10-24 09:22:33 +02:00
Tom Hvitved
7a9cb64e2e
Java: Treat x.matches(regexp) as a sanitizer for request forgery
2025-10-24 09:06:57 +02:00
Anders Schack-Mulligen
3542cdab43
Merge pull request #20677 from aschackmull/csharp/disable-exc-split
...
C#: Delete exception splitting.
2025-10-24 08:46:33 +02:00
Tom Hvitved
eb9df008b0
JS: Remove two invalid QHelp links
2025-10-24 08:45:12 +02:00
Tom Hvitved
ff31f0e3df
Address review comments
2025-10-23 20:17:28 +02:00
Geoffrey White
7acd214d7b
Merge pull request #20673 from geoffw0/sourcestest
...
Rust: Split up the dataflow/sources test
2025-10-23 13:08:43 +01:00
Anders Schack-Mulligen
6f72234fec
Merge pull request #20680 from aschackmull/shared/align-ssa-interface
...
Shared: Align SSA interfaces in Guards and ControlFlowReachability with shared SSA
2025-10-23 13:12:31 +02:00
Anders Schack-Mulligen
ebb50cd402
C#: Accept qltest changes.
2025-10-23 12:48:44 +02:00
Paolo Tranquilli
d11b44599e
Merge pull request #20679 from github/redsun82/fix-rust-vendor-check
...
Bazel: upgrade `rules_rust`
2025-10-23 12:14:32 +02:00
Anders Schack-Mulligen
72d83cc966
ControlFlowReachability: Align the SSA signature with the one from shared SSA.
2025-10-23 10:57:21 +02:00
Paolo Tranquilli
8f5f65e5fa
Bazel: upgrade rules_rust
2025-10-23 10:49:51 +02:00
Anders Schack-Mulligen
f257c7a570
Guards: Align the SSA signature with the one from shared SSA.
2025-10-23 10:23:22 +02:00
Anders Schack-Mulligen
f6cddc9db7
Merge pull request #20678 from aschackmull/shared/rename-cfg-reach
...
Shared/Java: Rename ControlFlowReachability library.
2025-10-23 10:22:15 +02:00
Geoffrey White
47334fbab7
Rust: Accept changes to the web_frameworks results.
2025-10-23 09:06:11 +01:00
Anders Schack-Mulligen
20147cdd2b
Shared/Java: Rename ControlFlowReachability library.
2025-10-23 09:07:34 +02:00
Anders Schack-Mulligen
dff327ea16
C#: Delete exception splitting.
2025-10-23 08:56:56 +02:00
Anders Schack-Mulligen
8a3f62b9b6
Merge pull request #20558 from aschackmull/csharp/guards3
...
C#: Instantiate shared Guards and shared ControlFlowReachability and replace nullness
2025-10-23 08:43:14 +02:00
Nicolas Will
c7ef8a5ab3
Merge pull request #20605 from bdrodes/santander-java-crypto-check
...
Crypto: Add Java Cryptographic Analysis Queries
2025-10-23 01:30:50 +02:00
REDMOND\brodes
bdad95d810
Crypto: Fixed alphabetical ordering issue in not_included_in_qls.expected
2025-10-22 15:56:14 -04:00
REDMOND\brodes
08379393b3
Crypto: Fix off by one column issue in unit tests.
2025-10-22 15:50:33 -04:00
REDMOND\brodes
3561d01144
Crytpo: Trying to fix in pipeline test failure, experimentally altering a line to see if this forces the test to pass. The test is off by one column in the piepline
2025-10-22 14:16:12 -04:00
Tom Hvitved
65b706ab80
Rust: Non-symmetric type propagation for lub coercions
2025-10-22 19:57:38 +02:00
Tom Hvitved
00bf049c85
Rust: Add more type inference tests
2025-10-22 19:57:37 +02:00
Tom Hvitved
c84cec9d29
Merge pull request #20664 from hvitved/rust/callable-get-body
...
Rust: Add `Callable.getBody()`
2025-10-22 19:57:14 +02:00
Geoffrey White
e18bf1661a
Rust: Accept result de-regression.
2025-10-22 17:52:12 +01:00
Geoffrey White
6b08297c2a
Rust: Repair after merge.
2025-10-22 17:46:25 +01:00
Geoffrey White
bc4d8a8425
Merge branch 'main' into sourcestest
2025-10-22 17:31:25 +01:00
Ben Rodes
e16543ab6d
Merge branch 'main' into santander-java-crypto-check
2025-10-22 11:51:13 -04:00
Geoffrey White
5d2ddbfa8e
Merge pull request #20670 from geoffw0/missingmetric
...
Rust: Add expressions with known type metric
2025-10-22 15:42:48 +01:00
Tom Hvitved
4b6c39004f
Rust: Add DB downgrade script
2025-10-22 16:40:56 +02:00
Tom Hvitved
8b10f68e28
Rust: Add DB upgrade scripts
2025-10-22 16:40:54 +02:00
Tom Hvitved
944ebc5267
Rust: Add Callable.getBody()
2025-10-22 16:40:53 +02:00
Tom Hvitved
7d0509b6af
Merge pull request #20282 from hvitved/rust/type-inference-method-call-resolution-rework
...
Rust: Rework call resolution and type inference for calls
2025-10-22 16:37:26 +02:00
REDMOND\brodes
db6d3ad054
Crypto: Fix typo in not_included_in_qls.expected.
2025-10-22 10:31:19 -04:00
REDMOND\brodes
dd60cf9395
Crypto: Adjust output of bad mac order queries, update associated bad mac order expected results, fix erroneous change to ID for a slicing query, update model to specify elliptic curve type as a property, update associated graph test expected files, update the not_included_in_qls.expected to reflect all queries now under quantum.
2025-10-22 10:29:31 -04:00
Florin Coada
83f9fb14b9
Merge pull request #20660 from github/changedocs/2.23.3
...
Add changelog entry for CodeQL CLI version 2.23.3
2025-10-22 14:58:00 +01:00
Anders Schack-Mulligen
7d0e4f58f3
C#: Fix join-order issue in ConstantCondition.
2025-10-22 15:52:51 +02:00
Anders Schack-Mulligen
f172e36eee
C#: Address more review comments.
2025-10-22 15:50:10 +02:00
Paolo Tranquilli
35990586ae
Merge pull request #20672 from github/redsun82/copilot
...
Copilot: move instructions to path-specific files
2025-10-22 15:41:28 +02:00
Michael Nebel
83343e1031
Merge pull request #20663 from michaelnebel/csharp/dotnet10rc2traced
...
C#: Tracer support for invoking `csc` directly.
2025-10-22 15:36:34 +02:00
Tom Hvitved
cf05414a93
Address review comments (iv)
2025-10-22 15:29:57 +02:00
Geoffrey White
6878a43223
Rust: Add missing file.
2025-10-22 14:18:16 +01:00
Paolo Tranquilli
f0c56edfc7
Update .github/instructions/expected-files.instructions.md
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-22 15:14:51 +02:00
Paolo Tranquilli
31627b4eb9
Copilot: move instructions to path-specific files
...
This is now supported. See
https://docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions
for details.
2025-10-22 14:54:37 +02:00
Geoffrey White
8336a956c0
Rust: Add consistency check failures.
2025-10-22 13:50:49 +01:00
Michael Nebel
47c751be32
C#: Only run integration test on windows and linux.
2025-10-22 14:12:17 +02:00
Napalys Klicius
9c70ae04fb
Add change note
2025-10-22 11:48:16 +00:00
Napalys Klicius
91b0aaa631
Java: Lower security-severity for Insecure Cookie query to 4.0
2025-10-22 11:45:04 +00:00
Napalys Klicius
fa47174013
CWE-020: Lower security-severity for OverlyLargeRange queries to 4.0
2025-10-22 11:32:33 +00:00
Napalys Klicius
7b6720ce2c
JS: Align DOM XSS query severity with other XSS queries
2025-10-22 11:30:34 +00:00
Michael Nebel
6a02649334
Merge pull request #20555 from michaelnebel/csharp/staridlocationsbuildless
...
C#: `*` on Source locations in BMN.
2025-10-22 13:28:11 +02:00
Michael Nebel
7a414089e4
C#: Use autobuilder instead of supplying build command.
2025-10-22 13:25:23 +02:00
Michael Nebel
e14879ba33
C#: Add integration test for DB creation using .NET 10 RC 2.
2025-10-22 12:59:40 +02:00
Michael Nebel
d5ff9bf5d0
C#: Collapse tracer cases for csc, csc.exe and mcs.exe and remote quoting.
2025-10-22 11:58:02 +02:00
Owen Mansel-Chan
50e0ca8cb4
Merge pull request #20622 from owen-mc/docs/fix-dataflow-examples
...
Docs: add path query example to data flow docs
2025-10-22 10:57:42 +01:00
Tom Hvitved
2cc8b7f6dd
Address review comments (iii)
2025-10-22 11:07:20 +02:00
Anders Schack-Mulligen
c44e6fc3f0
C#: Qldoc tweaks.
2025-10-22 10:22:26 +02:00
Geoffrey White
9b11ec53d4
Rust: Merge InlineFlow.ql test queries using .qlrefs.
2025-10-22 09:02:18 +01:00
Geoffrey White
4893f53607
Rust: Fix a comment.
2025-10-22 09:02:15 +01:00
Geoffrey White
42224fe642
Rust: Clean up the sources test directory.
2025-10-22 09:02:14 +01:00
Geoffrey White
7efd4d26a0
Rust: Accept result regression.
...
Presumably because of a change in context, e.g. the module wrapping
this test now, or the different inputs. Either way we *should* be
able to get the result, and what we *actually* get in our analysis
doesn't change here either. We've just slightly changed the test
and exposed a gap.
2025-10-22 09:02:12 +01:00
Geoffrey White
8a7e206401
Rust: Move the remaining test_futures_io test into net.
2025-10-22 09:02:11 +01:00
Geoffrey White
8c02cb2ed1
Rust: Split off sources/web_frameworks.
2025-10-22 09:02:10 +01:00
Geoffrey White
5ba331e986
Rust: Splits off sources/net.
2025-10-22 09:01:34 +01:00
Geoffrey White
7ddd441e5f
Rust: Split off sources/database test.
2025-10-22 09:00:42 +01:00
Geoffrey White
81132beec0
Rust: Split off sources/stdin test.
2025-10-22 09:00:18 +01:00
Geoffrey White
0cc9331abf
Rust: Split off sources/file test.
2025-10-22 08:59:50 +01:00
Geoffrey White
a631130030
Rust: Split off sources/env test.
2025-10-22 08:58:59 +01:00
Tom Hvitved
5550da4870
Address review comments (ii)
2025-10-21 20:53:39 +02:00
Tom Hvitved
41602d3efa
Address review comments
2025-10-21 18:44:42 +02:00
Tom Hvitved
c2ba4ba3fc
Rust: Add change note
2025-10-21 18:44:41 +02:00
Tom Hvitved
ee0467d74c
Rust: Update expected output
2025-10-21 18:44:37 +02:00
Tom Hvitved
2f2c6866c4
Rust: Use doublyBoundedFastTC in TraitIsVisible
2025-10-21 17:58:54 +02:00
Tom Hvitved
4b70d20cd6
Rust: Rework call resolution and type inference for calls
2025-10-21 17:58:52 +02:00
Tom Hvitved
e12e9045a3
Rust: Add more type inference tests
2025-10-21 17:58:51 +02:00
Owen Mansel-Chan
c8c1c6e592
Address review comments
2025-10-21 16:54:28 +01:00
REDMOND\brodes
b374ba3d0c
Crypto: Updating java 'location' information to be just a location's toString to be more verbose/precise.
2025-10-21 11:48:37 -04:00
Paolo Tranquilli
6d31c6abe0
Merge branch 'main' into redsun82/fix-pytest-build-as-test-windows
2025-10-21 17:04:57 +02:00
REDMOND\brodes
ddeb42cddb
Crypto: Adding false positive to BadMacUse.java, we have no way to avoid this FP currently but should note it exists in the test case.
2025-10-21 11:04:57 -04:00
Paolo Tranquilli
a0d2005e1f
Merge pull request #20655 from github/redsun82/rust-file-semantics-predicates
...
Rust: introduce `ExtractedFile::hasSemantics` and `::isSkippedByCompilation`
2025-10-21 17:02:28 +02:00
REDMOND\brodes
c50175bc9b
Crypto: ql-for-ql alert fixes.
2025-10-21 10:32:00 -04:00
Geoffrey White
edabfa73bf
Rust: Delete a no-longer-used test file.
2025-10-21 15:30:32 +01:00
Simon Friis Vindum
f207404b0d
C++: Accept test changes
2025-10-21 16:03:12 +02:00
Geoffrey White
7da00b3e9d
Rust: Change note.
2025-10-21 13:33:17 +01:00
Geoffrey White
751d62aefb
Rust: Add the metric to rust/diagnostic/database-quality (with a very low threshold for the time being).
2025-10-21 13:29:46 +01:00
Geoffrey White
a4aa397ea0
Merge pull request #20634 from geoffw0/mysql2
...
Rust: Model mysql and mysql_async sources
2025-10-21 13:23:03 +01:00
yoff
9e77e5b046
java: add test with deeper paths
...
also format test files
2025-10-21 14:02:36 +02:00
yoff
f183a7223f
java: add test for notFullyMonitored
2025-10-21 13:40:29 +02:00
yoff
f4878b3806
java: make as many predicates private as possible
2025-10-21 13:25:26 +02:00
yoff
de05bfbce3
java: address review comments
...
- do not use `getQualifiedName`
- use camelCase
- rework alert predicates
2025-10-21 13:25:26 +02:00
Michael Nebel
def522d122
C#: Make sure that the file exists before attempting to get version info.
2025-10-21 13:12:21 +02:00
Michael Nebel
af5622a60e
C#: Address review comments.
2025-10-21 13:03:53 +02:00
Geoffrey White
d691c3215f
Rust: Add expressions with unknown type metric (expected by DCA).
2025-10-21 12:00:25 +01:00
yoff
715acefacc
Apply suggestions from code review
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2025-10-21 12:52:59 +02:00
Anders Schack-Mulligen
414e5ecbce
Merge pull request #20646 from aschackmull/ssa/ssa-sig
...
SSA: Add a shared signature for SSA and a module to implement it.
2025-10-21 12:14:08 +02:00
Paolo Tranquilli
316225bb88
Csharp: rename predicate
2025-10-21 11:47:54 +02:00
Paolo Tranquilli
6f8b1f6f4c
Csharp: address review
2025-10-21 11:43:58 +02:00
Michael Nebel
6bc15bcedc
C#: Add change-note.
2025-10-21 11:42:19 +02:00
Michael Nebel
e560ac197f
C#: Tracer support for invoking csc directly.
2025-10-21 11:16:55 +02:00
Paolo Tranquilli
c728503517
Merge branch 'main' into redsun82/csharp-fix-xframe-options-in-location
2025-10-21 11:15:46 +02:00
Anders Schack-Mulligen
242f12d4be
SSA: Remove variable capture reference from shared class.
2025-10-21 10:52:49 +02:00
Simon Friis Vindum
0badcfd663
C++: Address review comments
2025-10-21 09:47:58 +02:00
REDMOND\brodes
22c0f9fa91
Crypto: Adding a proof of concept bad mac ordering predicate that takes in an ArtifactNode to be used for graph generation to intercept nodes with known mac ordering issues, in order to format the node and output error messages in the graph.
2025-10-20 16:24:31 -04:00
REDMOND\brodes
eff94ef91f
Crypto: To allow for graph generation to have properties informed by assessments, altering a few queries weak/vuln/bad crypto to have qll files that can be accessed for other purposes, like graph generation. Also altering weak symmetric cipher to look for non-aes algorithms to be more comprehensive.
2025-10-20 15:51:07 -04:00
REDMOND\brodes
cc436e897d
Merge branch 'santander-java-crypto-check' of https://github.com/bdrodes/codeql into santander-java-crypto-check
2025-10-20 15:24:40 -04:00
REDMOND\brodes
354effe829
Crypto: Missing hash algorithms for HMAC operations in jca.
2025-10-20 15:24:18 -04:00
Taus
9efa20dfc7
Merge pull request #20654 from github/tausbn/add-query-history-patcher
...
Misc: Add script for patching the query history
2025-10-20 17:46:39 +02:00
Florin Coada
2c31090cf6
Update codeql-cli-2.23.3.rst
2025-10-20 14:20:17 +01:00
Florin Coada
aeee30b0c6
Add changelog entry for CodeQL CLI version 2.23.3
2025-10-20 14:17:40 +01:00
Geoffrey White
e4e7b1c528
Merge branch 'main' into mysql2
2025-10-20 14:06:48 +01:00
Anders Schack-Mulligen
be626bf0ce
SSA: Address some review comments.
2025-10-20 14:02:56 +02:00
Geoffrey White
1047c3e014
Merge pull request #20652 from geoffw0/gen1
...
Rust: Generalize some models
2025-10-20 12:37:53 +01:00
Asger F
d7cf5ef645
Merge pull request #20647 from asgerf/js/type-resolution-cache
...
JS: Avoid magic and improve a join in type resolution
2025-10-20 11:50:23 +02:00
Geoffrey White
7b32cd4868
Merge pull request #20649 from geoffw0/mv1
...
Rust: Move rust/weak-sensitive-data-hashing
2025-10-20 10:17:40 +01:00
Tom Hvitved
85abcddd0e
Merge pull request #20614 from hvitved/dataflow/debug-predicates
...
Data flow: Add various debug predicates
2025-10-20 11:01:41 +02:00
Michael B. Gale
4441303623
Merge pull request #20625 from github/mbg/csharp/proxy-log-messages
2025-10-20 10:00:58 +01:00
Tom Hvitved
f71cfac40a
Data flow: Add various debug predicates
2025-10-20 09:59:40 +02:00
Ben Rodes
2b683c210f
Merge branch 'main' into santander-java-crypto-check
2025-10-18 17:56:43 -04:00
REDMOND\brodes
c01c060476
Crypto: more ID renaming to include "examples", fix singleton issues with ql-for-ql, use formatted test for WeakAsymmetricKeyGenSize (add post processing in the qlref), misc expected files updated (test passed locally but on rerun vscode reports failures, known bug with vscode unit tests).
2025-10-17 14:13:53 -04:00
REDMOND\brodes
540daa6df2
Crypto: weak symmetric cipher tests.
2025-10-17 13:40:15 -04:00
REDMOND\brodes
b06e05362b
Crypto: altering all query IDs in examples to have "examples" in the ID, to make clear the query is not intended for production.
2025-10-17 13:39:50 -04:00
REDMOND\brodes
1b205d8673
Removing WeakRSA, this is redundant with weak asymmetric key size.
2025-10-17 13:39:05 -04:00
REDMOND\brodes
b4ecb91c83
Crypto: Add missing cipher algorithms to JCA. Update node tests to account for missing cipher algorithms.
2025-10-17 13:38:47 -04:00
REDMOND\brodes
f480d90a68
Crypto: Add missing block mode JCA Models, add block mode unit tests
2025-10-17 13:13:14 -04:00
REDMOND\brodes
e12734162f
Crypto: WeakKDFKeySize tests.
2025-10-17 12:32:24 -04:00
REDMOND\brodes
628bab92fc
Crypto: Modify BadMacOrderMacOnEncryptPlaintext to be a path query that traces through any intermediate encrypt or mac to the final encrypt or mac.
2025-10-17 12:06:34 -04:00
REDMOND\brodes
ff7840dc9f
Crypto: removing precision tags on experimental queries.
2025-10-17 10:52:32 -04:00
Paolo Tranquilli
4b04b49ca9
Merge branch 'main' into redsun82/rust-file-semantics-predicates
2025-10-17 15:10:55 +02:00
Paolo Tranquilli
6a6015e0eb
Rust: accept test changes
2025-10-17 15:10:49 +02:00
Owen Mansel-Chan
66f95bcbcd
Merge pull request #20603 from owen-mc/update-broken-algo-qhelp
...
Many languages: Update broken algo qhelp
2025-10-17 12:30:43 +01:00
Paolo Tranquilli
0c719af33c
Csharp: add change note
2025-10-17 12:05:52 +02:00
Paolo Tranquilli
c3fd06c8a4
Csharp: fix cs/web/missing-x-frame-options to also consider location elements
...
As explained in
https://learn.microsoft.com/en-us/previous-versions/aspnet/ms178692(v=vs.100) ,
it is possible to add `system.webServer` elements nested inside
`location` elements in `Web.config`.
2025-10-17 11:27:31 +02:00
Simon Friis Vindum
979b05cc1a
C++: Apply suggested fixes from review
2025-10-17 09:50:36 +02:00
yoff
3a0a8999d5
java: fix ql alerts
2025-10-17 01:52:23 +02:00
yoff
61a3e9630f
java: rewrite conflict detection
...
- favour unary predicates over binary ones
(the natural "conflicting access" is binary)
- switch to a dual solution to trade recursion through forall for simple existentials.
Co-authored-by: Anders Schack-Mulligen <aschackmull@github.com >
2025-10-17 01:43:04 +02:00
REDMOND\brodes
ef6f0222f2
Crypto: Addressing FPs in BadMacOrderMacOnEncryptPlaintext
2025-10-16 16:11:42 -04:00
REDMOND\brodes
5923e5cbb0
Crypto: Bad expected files in last push.
2025-10-16 15:45:27 -04:00
REDMOND\brodes
700f34e53a
Crypto: Bad Mac use tests, and fix for BadMacOrderMacOnEncryptPlaintext (barriers were blocking flow through an encrypt to a subsequent mac on the same plaintext)
2025-10-16 15:44:57 -04:00
REDMOND\brodes
b9b0037e07
Crypto: Comment todo for observed missing modeled case. Tests for weak and unknown KDF iteration count.
2025-10-16 14:07:45 -04:00
Paolo Tranquilli
4aef1ba9d1
Rust: clean up
2025-10-16 17:20:41 +02:00
REDMOND\brodes
3f36b09b3c
Crypto: Rename tests for weak asymmetric key gen size.
2025-10-16 11:18:36 -04:00
Paolo Tranquilli
a9ae583e14
Rust: introduce File::hasSemantics and File::isSkippedByCompilation
2025-10-16 17:08:12 +02:00
REDMOND\brodes
a64a24d25d
Crypto: Comment in Language.qll
2025-10-16 11:03:49 -04:00
REDMOND\brodes
79ccef3a58
Crypto: Initial sketch for unknown hash, the model needs to recognize unknowns but where the algorithm category (e.g., hashing) is known.
2025-10-16 11:03:16 -04:00
Taus
3c2635767e
Misc: Add script for patching the query history
...
Adds `patch_query_history.py` in the `misc/scripts` directory. Its
function is to extend the existing VSCode query history with a new entry
whose JSON evaluator log summary points at a log that was created
outside of VSCode.
This enables the use of e.g. the Performance Comparison View on runs
that were not initiated from within VSCode.
2025-10-16 15:00:43 +00:00
REDMOND\brodes
d2598d4f5d
Crypto: Updating weak hash tests
2025-10-16 10:56:08 -04:00
REDMOND\brodes
4860034d41
Crypto: Weak Hash test cases update and expected file.
2025-10-16 10:40:53 -04:00
Geoffrey White
5d95fad467
Rust: Changes suggested by Copilot (with effect on tests).
2025-10-16 14:59:06 +01:00
Simon Friis Vindum
68d4240c26
C++: Add change note
2025-10-16 15:56:11 +02:00
Simon Friis Vindum
9502d83f2c
C++: Add debug predicates
2025-10-16 15:05:48 +02:00
Simon Friis Vindum
c1f0f3da96
C++: Handle guard phi nodes differently
2025-10-16 15:05:46 +02:00
Simon Friis Vindum
99103a5741
C++: Add additional test for range analysis
2025-10-16 15:05:45 +02:00
Simon Friis Vindum
8896a7210b
C++: Add number of bounds test to simple range analysis
2025-10-16 15:05:44 +02:00
Simon Friis Vindum
7eacd87343
C++: Apply widening based on number of bounds measure
2025-10-16 15:05:42 +02:00
Geoffrey White
397563dd0e
Rust: Accept consistency check .expected changes.
2025-10-16 13:54:11 +01:00
Nora Dimitrijević
e120e5c3ba
Merge pull request #20337 from d10c/d10c/python-overlay-compilation-plus-extractor
...
Python: enable overlay compilation + extractor overlay support
2025-10-16 14:49:01 +02:00
Geoffrey White
d4a599c51d
Rust: Accept more minor test expectation changes.
2025-10-16 12:41:49 +01:00
Geoffrey White
b933f8df89
Merge branch 'main' into gen1
2025-10-16 12:38:59 +01:00
Geoffrey White
8f7d3798ad
Rust: Allow rows to be direct sources of taint as well.
2025-10-16 12:14:50 +01:00
Geoffrey White
f310d535ae
Rust: Add models.
2025-10-16 12:07:54 +01:00
Geoffrey White
08ca643cd3
Rust: Test sources for mysql and mysql_async.
2025-10-16 11:55:24 +01:00
Geoffrey White
75a34a4881
Merge pull request #20631 from geoffw0/mysql
...
Rust: Model mysql and mysql_async query sinks
2025-10-16 11:42:33 +01:00
Geoffrey White
ee86655742
Rust: Update another affected test.
2025-10-16 11:37:57 +01:00
Geoffrey White
c56de30248
Rust: Fix merge conflict in .expected file.
2025-10-16 11:16:54 +01:00
Geoffrey White
c30e9a96d4
Rust: Accept changes to other test expectations.
2025-10-16 11:00:29 +01:00
Geoffrey White
217508e2c2
Merge branch 'main' into gen1
2025-10-16 09:35:29 +01:00
Geoffrey White
1936abaaee
Merge pull request #20650 from geoffw0/mv2
...
Rust: Rename stdlib model files to be consistent with others.
2025-10-16 08:47:47 +01:00
Simon Friis Vindum
744b11e421
Merge pull request #20543 from paldepind/rust/model-actix-web
...
Rust: Add models for actix-web
2025-10-16 08:48:06 +02:00
REDMOND\brodes
25599e9b4b
crypto: Update JCA model macs to take into consideration update calls (use prior pattern for signatures). Misc. bug fixes.
2025-10-15 16:25:36 -04:00
Geoffrey White
510597666a
Rust: Change note.
2025-10-15 20:31:47 +01:00
Geoffrey White
612e95b7a4
Rust: More deduplication.
2025-10-15 20:31:46 +01:00
Geoffrey White
483ab5929a
Rust: Combine and expand some of the models.
2025-10-15 20:31:43 +01:00
REDMOND\brodes
15e266db94
Crypto: Tweaks to bad crypto ordering queries.
2025-10-15 14:20:40 -04:00
REDMOND\brodes
9a6aac1300
Crypto: To get unreferenced parameters as general sources for Java, I've included the caveat that if a function is called, all the calls appear to be in test files.
2025-10-15 14:20:16 -04:00
REDMOND\brodes
c6174fbb93
Crypto: remove precision tag
2025-10-15 14:10:16 -04:00
Geoffrey White
ea6c7cfba0
Rust: Generalize stdlib 'a as b' models.
2025-10-15 19:08:05 +01:00
Geoffrey White
072eca233d
Rust: Update consistency check .expected.
2025-10-15 16:50:47 +01:00
Geoffrey White
eb1555c45e
Rust: Update the suite list .expected files.
2025-10-15 16:08:08 +01:00
Geoffrey White
f4a6efa9e0
Rust: Rename stdlib model files to be consistent with others.
2025-10-15 16:02:42 +01:00
REDMOND\brodes
631e482fd6
Crytpo: when key encapsulation or cipher operations have multiple modes at a node, the node name must reflect that it may be any mode.
2025-10-15 11:01:49 -04:00
Geoffrey White
c68112fb60
Rust: Move the CWE-328 test.
2025-10-15 15:24:25 +01:00
Geoffrey White
c7f0e41660
Rust: Move the existing CWE-327 test.
2025-10-15 15:24:14 +01:00
Geoffrey White
9dcc0a0d81
Rust: Move rust/weak-sensitive-data-hashing to CWE-327.
2025-10-15 15:14:16 +01:00
Geoffrey White
48ca04bc40
Rust: Repair test annotations following format and accept .expected changes.
2025-10-15 15:00:28 +01:00
Geoffrey White
28c139abfb
Rust: Format the test.
2025-10-15 14:42:12 +01:00
Geoffrey White
5544dfff6d
Update rust/ql/test/query-tests/security/CWE-089/mysql.rs
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-10-15 14:31:10 +01:00
REDMOND\brodes
c7be23e1fe
Crypto: Remove all precision tags from all experimental queries. Precision is largely in flux while the models are being developed.
2025-10-15 09:22:04 -04:00
REDMOND\brodes
bf9a249624
Crypto: Experimental queries for mac ordering
2025-10-15 08:06:50 -04:00
REDMOND\brodes
ee08385e31
Crytpo: Update JCA keyagreement to type conversion, XDH is a type of ECDH.
2025-10-15 08:06:19 -04:00
Jeroen Ketema
129c8bf2e0
Merge pull request #20639 from jketema/swift-trace
...
Swift: Make tracer config handle resource-dirs passed to clang
2025-10-15 13:16:15 +02:00
Asger F
c6577c8590
JS: Avoid magic and improve a join in type resolution
2025-10-15 11:54:28 +02:00
Simon Friis Vindum
70a8c4f37f
C++: Add range analysis examples that explode
2025-10-15 11:42:17 +02:00
Joe Farebrother
f57526eedc
Merge pull request #20572 from joefarebrother/java-httponly-cookie-promote
...
Java: Promote Sensitive Cookie without HttpOnly query from experimental
2025-10-15 10:28:40 +01:00
Simon Friis Vindum
8aaf9f696a
C++: Factor out widening of bounds
2025-10-15 11:11:45 +02:00
Anders Schack-Mulligen
b196714794
SSA: Add a shared signature for SSA and a module to implement it.
2025-10-15 11:01:58 +02:00
Jeroen Ketema
9fc8faa048
Swift: Address review comments
2025-10-15 10:09:13 +02:00
Napalys Klicius
7bf677d056
Merge pull request #20644 from Napalys/napalys/remove_quality_syntax_err
...
JS: remove quality tag from SyntaxError query
2025-10-15 09:45:02 +02:00
Napalys Klicius
45e8164f14
JS: remove quality tag from SyntaxError query
2025-10-15 09:07:11 +02:00
Joe Farebrother
e95e1a0386
Update integration test
2025-10-14 16:27:28 +01:00
Joe Farebrother
d8b37d0cde
Review suggestions - update comments and description
2025-10-14 16:03:40 +01:00
Paolo Tranquilli
b6aee67b42
Pytest: fix the build-as-test mode on Windows
...
This mode (enabled with `--codeql=build-as-test` or setting
`PYTEST_CODEQL=build-as-test` in the environment) is an experimental
mode that makes the pytest dist installation run as a test. This
allows to avoid running the installation in case nothing changed in the
dist, leveraging bazel's test caching mechanism, and accelrating the
dev loop when working on integration test code. This mode might become
the default for devs in the future.
Up until now, this mode was only working on POSIX systems. This commit
fixes it on Windows. The issue was `native_test` being unable to wrap
a `py_binary` target because of an `.exe` suffix mismatch. Turning the
`native_test` into a full-fledged `py_test` solves the issue.
2025-10-14 15:44:07 +02:00
Owen Mansel-Chan
2e0915ebed
Add missing links to "Creating path queries"
2025-10-14 13:21:52 +01:00
Henry Mercer
c2309a9aca
Merge pull request #20638 from github/post-release-prep/codeql-cli-2.23.3
...
Post-release preparation for codeql-cli-2.23.3
2025-10-14 13:03:22 +01:00
Jeroen Ketema
b6b3767460
Swift: Make tracer config handle resource-dirs passed to clang
2025-10-14 13:50:36 +02:00
Anders Schack-Mulligen
da0b168b2e
Merge pull request #20627 from hvitved/csharp/property-descriptor-get-value-neutral
...
C#: Add neutral model for `System.ComponentModel.PropertyDescriptor.GetValue`
2025-10-14 13:31:40 +02:00
github-actions[bot]
6dd07790ac
Post-release preparation for codeql-cli-2.23.3
2025-10-14 11:16:33 +00:00
Henry Mercer
aa3000df13
Merge pull request #20637 from github/henrymercer/update-expected-output
...
Actions: Update `SecretExfiltration` output for typo fix
2025-10-14 11:47:18 +01:00
Henry Mercer
b737bccb07
Python: Fix "be be" typos in qhelp
2025-10-14 11:33:24 +01:00
Henry Mercer
5310469d69
Actions: Update SecretExfiltration output for typo fix
2025-10-14 11:33:01 +01:00
Henry Mercer
836e3958a9
Merge pull request #20635 from github/release-prep/2.23.3
...
Release preparation for version 2.23.3
2025-10-14 11:17:48 +01:00
Henry Mercer
17352a101d
Rephrase C++ BMN changelog note
2025-10-14 11:13:23 +01:00
Henry Mercer
9466279909
Prefer code quotes for BMN
2025-10-14 11:10:42 +01:00
Henry Mercer
9507ec0853
Fix "be be" typos
2025-10-14 11:09:43 +01:00
github-actions[bot]
33542f7d40
Release preparation for version 2.23.3
2025-10-14 09:30:24 +00:00
REDMOND\brodes
55bbcee301
Crypto: Make WeakAsymmetricKeyGenSize a path problem.
2025-10-13 17:04:29 -04:00
REDMOND\brodes
7e8acd76c3
Crypto: Update WeakAsymmetricKeyGenSize to a path problem.
2025-10-13 15:48:32 -04:00
REDMOND\brodes
8b5a42328e
Crypto: Convert ReusedNonce.ql into a path problem.
2025-10-13 15:34:41 -04:00
REDMOND\brodes
7847e92670
Crypto: Update KDF iteration and count to be path problems
2025-10-13 15:30:53 -04:00
REDMOND\brodes
76128ed8dc
Crypto: Update InsecureIVorNonce to be a path problem.
2025-10-13 15:29:57 -04:00
Geoffrey White
93eb7ce1af
Rust: Accept test changes following suggested edit.
2025-10-13 19:28:40 +01:00
Geoffrey White
35f3fbf357
Rust: Accept consistency regressions.
2025-10-13 19:19:18 +01:00
REDMOND\brodes
bd068c2a69
Crypto: Updating expected file for weak asymmetric key gen size.
2025-10-13 12:08:07 -04:00
REDMOND\brodes
4b241d7065
Crypto: adding initial weak hash query overhaul and tests, but no expected file yet.
2025-10-13 12:04:51 -04:00
REDMOND\brodes
08abdb8c85
Crypto: Adding a "javaConstant" concept to handle config files.
2025-10-13 12:03:41 -04:00
Geoffrey White
1d7ccb6f2b
Update rust/ql/lib/codeql/rust/frameworks/mysql.model.yml
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-13 16:42:36 +01:00
yoff
ab78f2b724
Merge pull request #20630 from github/tausbn/python-fix-importerror-in-imp
...
Python: Fix `ImportError` in `imp.py` under Python 3.14
2025-10-13 17:31:47 +02:00
Simon Friis Vindum
d9c76f258e
Rust: Add suggested model for into_inner for tuples
2025-10-13 16:22:03 +02:00
Simon Friis Vindum
9e2ee04879
Merge branch 'main' into rust/model-actix-web
2025-10-13 16:04:12 +02:00
Joe Farebrother
9cb593b020
Update tests
2025-10-13 14:51:37 +01:00
Joe Farebrother
093b04f79f
Update comments
2025-10-13 14:51:30 +01:00
Joe Farebrother
696ec29dae
Upgrade integration tests
2025-10-13 14:51:24 +01:00
Joe Farebrother
1c54296545
Add change note
2025-10-13 14:51:17 +01:00
Joe Farebrother
c4781146c0
Remove experimental query and tests
2025-10-13 14:51:10 +01:00
Joe Farebrother
c799f93811
Update tests and add inline expectations
2025-10-13 14:51:04 +01:00
Joe Farebrother
e1cf3d30d2
Update documentation, rename things and add more comments to explain how the implementation works, remove filter for test code (prefer to filter in code scanning ui than in query logic)
2025-10-13 14:50:57 +01:00
Joe Farebrother
54aefe0dce
Copy experimental query to main
2025-10-13 14:50:51 +01:00
Taus
c4b27d5f28
Python: Fix ImportError in imp.py under Python 3.14
...
It seems `_ERR_MSG` was silently removed in Python 3.14, leading to an
`ImportError` when running the extractor.
To fix this, we explicitly set `_ERR_MSG` when the existing import fails
(using `_ERR_MSG_PREFIX` which is available in Python 3.14+, along with
the bits that make up the difference between this and `_ERR_MSG`).
2025-10-13 13:50:43 +00:00
Mathias Vorreiter Pedersen
b57243e073
Merge pull request #20579 from aschackmull/shared/rangeanalysis-joinorder
...
Rangeanalysis: Fix a bad join-order in boundedPhiRankStep.
2025-10-13 14:46:48 +02:00
Michael B. Gale
e65f8eacbc
Merge pull request #20609 from github/dependabot/go_modules/go/extractor/extractor-dependencies-5148baeadc
...
Bump the extractor-dependencies group in /go/extractor with 2 updates
2025-10-13 10:33:14 +01:00
dependabot[bot]
500421d891
Bump the extractor-dependencies group in /go/extractor with 2 updates
...
Bumps the extractor-dependencies group in /go/extractor with 2 updates: [golang.org/x/mod](https://github.com/golang/mod ) and [golang.org/x/tools](https://github.com/golang/tools ).
Updates `golang.org/x/mod` from 0.28.0 to 0.29.0
- [Commits](https://github.com/golang/mod/compare/v0.28.0...v0.29.0 )
Updates `golang.org/x/tools` from 0.37.0 to 0.38.0
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.37.0...v0.38.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/mod
dependency-version: 0.29.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
- dependency-name: golang.org/x/tools
dependency-version: 0.38.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-10-13 03:14:48 +00:00
Tom Hvitved
2577452849
C#: Add neutral model for System.ComponentModel.PropertyDescriptor.GetValue
2025-10-12 09:06:54 +02:00
REDMOND\brodes
e76ced1513
Crypto: Updating weak asymmetric key gen to include key exchange.
2025-10-10 15:32:39 -04:00
REDMOND\brodes
d68f3cff8b
Crypto: InsecureIVorNonceSource now ignored null to avoid being too noisy.
2025-10-10 14:51:16 -04:00
REDMOND\brodes
ffd191d0e1
Crypto: missing new endpoint to get the creating operation for a key if known.
2025-10-10 14:50:50 -04:00
REDMOND\brodes
36673659ad
Crypto: Weak asymmetric key gen size fixes and test.
2025-10-10 14:49:35 -04:00
REDMOND\brodes
758759a304
Crypto: Reused nonce query updates and test updates to address false positives.
2025-10-10 12:25:31 -04:00
Geoffrey White
106bad2764
Rust: Add test cases for bad use of prepared statements as well.
2025-10-10 17:17:08 +01:00
Geoffrey White
c102ce41b7
Rust: Claim support for the two libraries.
2025-10-10 17:12:48 +01:00
Geoffrey White
859c1ef55d
Rust: Change note.
2025-10-10 17:11:20 +01:00
Geoffrey White
f16742bf74
Rust: Add models.
2025-10-10 17:09:46 +01:00
Michael B. Gale
47632cdbd1
C#: Improve log messages in DotNetCliInvoker
2025-10-10 17:08:24 +01:00
Owen Mansel-Chan
944e116cc0
Add path query example to other lang data flow docs
2025-10-10 16:22:50 +01:00
Geoffrey White
f15a34f361
Rust: Add test cases for transactions as well.
2025-10-10 16:10:57 +01:00
Geoffrey White
883e00558a
Rust: Add test cases for the mysql_async library.
2025-10-10 16:10:56 +01:00
Geoffrey White
ef93b364da
Rust: Add test cases for the mysql library.
2025-10-10 15:05:21 +01:00
Owen Mansel-Chan
3c80690ba8
Fix link syntax
2025-10-10 13:58:19 +01:00
Michael Nebel
9ec0c9d5f2
C#: Add change note.
2025-10-10 14:06:45 +02:00
Michael Nebel
56ff0baba3
C#: Use * IDs for source locations.
2025-10-10 14:03:49 +02:00
Michael Nebel
ab9f78fee2
Merge pull request #20617 from michaelnebel/csharp/unboundlocations
...
C#: Reduce location TRAP creation for Fields, Parameters, Constructors, Destructors and Operators.
2025-10-10 13:47:57 +02:00
Tom Hvitved
d842107633
Merge pull request #20621 from hvitved/rust/static-target-addressable
...
Rust: Include tuple structs/variants in `CallExprBase.getStaticTarget()`
2025-10-10 13:00:28 +02:00
Michael Nebel
b8c3a28de3
C#: Add change note.
2025-10-10 11:47:19 +02:00
Owen Mansel-Chan
100463572b
Add path query example to python data flow docs
2025-10-10 10:37:09 +01:00
Owen Mansel-Chan
2930e793f1
Fix mistakes in Go data flow examples in docs
2025-10-10 10:36:23 +01:00
Owen Mansel-Chan
87f32dc49f
Merge pull request #20613 from owen-mc/go/sanitize-simpletypes-request-forgery
...
Go: sanitize simple types in `go/request-forgery`
2025-10-10 09:15:30 +01:00
Tom Hvitved
0fc2875527
Rust: Include tuple structs/variants in CallExprBase.getStaticTarget()
2025-10-10 09:48:08 +02:00
Owen Mansel-Chan
2c6af0cdb7
Merge pull request #20580 from owen-mc/codeowners-for-shared-libs-and-catchall
...
Add code owners for `/shared/` and a catch-all
2025-10-09 16:31:17 +01:00
Michael Nebel
e8fd843e52
C#: Update some tuple related tests.
2025-10-09 16:33:47 +02:00
Owen Mansel-Chan
11f20457e2
Fix team name
2025-10-09 14:15:07 +01:00
REDMOND\brodes
fba80870a6
Crypto: Example query reorg - moving queries of this PR into 'examples' subdirectories.
2025-10-09 09:03:00 -04:00
REDMOND\brodes
deb43735be
Crypto: Minor fixes to WeakSymmetricCipher, change to a singular name for consistency.
2025-10-09 08:39:39 -04:00
yoff
5109babd92
java: add qldoc
...
These interfaces were previously in a .ql file.
Also, use the XXAccess variants.
2025-10-09 14:20:28 +02:00
REDMOND\brodes
3dedda4233
Merge branch 'santander-java-crypto-check' of https://github.com/bdrodes/codeql into santander-java-crypto-check
2025-10-09 08:18:04 -04:00
REDMOND\brodes
c6cc4fff51
Crypto: Minor fixes to WeakBlockModes, WeakHash to consider SHA3 ok, Added unknown hash.
2025-10-09 08:16:28 -04:00
Michael Nebel
89681a49e6
C#: Only extract the unbound locations for constructors, destructors and user defined operators and use this in the QL code.
2025-10-09 14:13:27 +02:00
Michael Nebel
02428fc467
C#: Add some location examples for constructors, destructors and operators.
2025-10-09 14:13:24 +02:00
Michael Nebel
051b83f036
C#: Only extract the unbound location for fields and parameters and use this location in the QL code.
2025-10-09 14:04:13 +02:00
Michael Nebel
f200c3ce85
C#: Add field location example.
2025-10-09 14:04:10 +02:00
Michael Nebel
b9eae31172
C#: Add parameter locations test.
2025-10-09 14:04:08 +02:00
Nicolas Will
fdba3acc4b
Crypto: Fix QL-for-QL alert and auto-format
2025-10-09 13:59:51 +02:00
yoff
1ad239459f
java: move shared code into Concurrency.qll
2025-10-09 13:36:35 +02:00
Owen Mansel-Chan
37151791b4
Add change notes
2025-10-09 12:26:32 +01:00
Owen Mansel-Chan
3cbce80d0b
Add SimpleTypeSanitizer to go/request-forgery
2025-10-09 12:17:21 +01:00
Owen Mansel-Chan
7599fdd8fa
Add request forgery test for numeric type
2025-10-09 12:17:19 +01:00
Owen Mansel-Chan
0c9cd09140
Make NumericOrBooleanSanitizer easier to access and rename it
2025-10-09 12:17:17 +01:00
yoff
f90e9dbb5e
java: favour inline_late over inline
...
This gives much greater control over the join-order
2025-10-09 13:01:25 +02:00
yoff
26c1b2f143
java: adjust test expectations; new queries are enabled in extended
2025-10-09 12:29:42 +02:00
Idriss Riouak
f52e3dcb7f
Merge pull request #20601 from github/idrissrio/java-localhost
...
Java integration test: wait for test servers to come up before running test
2025-10-09 10:57:11 +02:00
Geoffrey White
a7c166d161
Merge pull request #20599 from geoffw0/rust-ga-change-note
...
Rust: Add change note for Rust GA.
2025-10-09 08:51:44 +01:00
yoff
830f02af1f
java: fixes from the CI bots
2025-10-09 09:37:31 +02:00
yoff
93fc287ef1
java: add auto-generated overlay annotations
2025-10-09 09:25:57 +02:00
yoff
a1671ea8af
java: small cleanups
...
- add missing qldoc
- remove use of `getErasure`
- remove use of `getTypeDescriptor`
- define `ExposedField`
2025-10-09 09:16:25 +02:00
yoff
821b1de5b3
java: inline char pred
2025-10-09 09:16:25 +02:00
yoff
01ddc11fa7
java: address some review comments
2025-10-09 09:16:25 +02:00
yoff
77734f83d5
java: better detection of thread safe fields.
...
Identified by triage of DCA results.
Previously, we did not use the erased type, so would not recgnize `CompletableFuture<R>`.
We now also recognize safe initializers.
2025-10-09 09:16:25 +02:00
yoff
bf138693a3
java: update expectations for java-code-quality suite
2025-10-09 09:16:07 +02:00
yoff
096d5f2a56
java: implement SCC contraction of the call graph
...
Our monitor analysis would be fooled by cycles in the call graph,
since it required all edges on a path to a conflicting access to be either
- targetting a method where the access is monitored (recursively) or
- monitored locally, that is the call is monitored in the calling method
For access to be monitored (first case) all outgoing edges (towards an access) need
to satisfy this property. For a loop, that is too strong, only edges out of the loop
actually need to be protected. This led to FPs.
2025-10-09 09:14:16 +02:00
yoff
5b30153113
java: add Escaping query (P1)
2025-10-09 09:14:16 +02:00
yoff
328b53576a
java: add SafePublication query (P2)
2025-10-09 09:14:16 +02:00
yoff
fe487e8bf0
java: add ThreadSafe query (P3)
...
Co-authored-by: Raúl Pardo <raul.pardo@protonmail.com >
Co-authored-by: SimonJorgensenMancofi <simon.jorgensen@mancofi.dk >
Co-authored-by: Bjørnar Haugstad Jåtten <bjornjaat@hotmail.com >
2025-10-09 09:14:16 +02:00
idrissrio
546d59ff9d
Java: Wait for test HTTP servers to be ready before running buildless test
2025-10-09 08:37:54 +02:00
REDMOND\brodes
f524de4afc
Crypto: Updating insecure iv/nonce to consider if an operation is known for it, and if so do not alert on non-secure random if it is tied to decryption
2025-10-08 16:27:18 -04:00
REDMOND\brodes
7a57496c54
Crypto: Missing test update.
2025-10-08 14:16:47 -04:00
REDMOND\brodes
11e81395b5
Crypto: Updated default flows to use taint tracking (this is needed to fix false positives in the unknown IV/Nonce query). Add the unknown IV/Nonce query and associated test cases. Fix unknown IV/Nonce query to focus on cases where the oepration isn't known or the operation subtype is not encrypt or wrap.
2025-10-08 14:14:17 -04:00
REDMOND\brodes
75b5a9fda8
Crypto: Update general regression test results to account for removal of JCA random source.
2025-10-08 12:55:11 -04:00
REDMOND\brodes
8e10e1937d
Crypto: Adding query for unknown IV initialization.
2025-10-08 12:49:54 -04:00
REDMOND\brodes
83ff70bcd8
Crypto: Adding tests for insecure iv or nonce. Updating generic literal sources to include array literals.
2025-10-08 12:47:58 -04:00
Jon Janego
83519a9fcc
Merge pull request #20606 from github/changedocs-2.23.2
...
changedocs for 2.23.2
2025-10-08 11:07:58 -05:00
Jon Janego
4534d67107
Merge branch 'main' into changedocs-2.23.2
2025-10-08 11:00:45 -05:00
Jon Janego
9c610e8bab
Update links in CodeQL CLI changelog
2025-10-08 10:57:17 -05:00
Owen Mansel-Chan
2f22acdd06
Remove hashing example when not covered by query
2025-10-08 16:48:57 +01:00
Jon Janego
f8626cd417
changedocs for 2.23.2
2025-10-08 10:42:10 -05:00
REDMOND\brodes
bd34b6ce02
Crypto: Removing JCA model of random, need to reassess this as this impacts the insecure IV/Nonce query. Updated name of the Insecure nonce query to be InsecureIVorNonce
2025-10-08 11:41:21 -04:00
REDMOND\brodes
143be8cc35
Crypto: Remove redundant queries.
2025-10-08 10:26:05 -04:00
REDMOND\brodes
1b1b333e8b
Crypto: Modify suggested queries per misc. side conversations on standards. Remove redundant query. Fix QL-for-QL issues.
2025-10-08 10:21:06 -04:00
REDMOND\brodes
cf88e3f52d
Crypto: Standardize naming where use of "family" and "type" have been used. Prefer 'type'.
2025-10-08 09:54:53 -04:00
REDMOND\brodes
bba541c016
Merge remote-tracking branch 'upstream/java-crypto-check' into santander-java-crypto-check
2025-10-08 09:30:26 -04:00
Owen Mansel-Chan
0bcdb91639
Improve qhelp for broken crypto algo queries
...
Previously it focussed too much on the risk of data being decrypted,
and didn't explain why using weak algorithms is a problem in other
contexts.
2025-10-08 14:10:54 +01:00
Owen Mansel-Chan
2a1c9d8ec1
Remove erroneous comma
2025-10-08 14:08:36 +01:00
Owen Mansel-Chan
90db349f4b
State that ruby broken crypto algo doesn't deal with hashing
2025-10-08 14:05:00 +01:00
Geoffrey White
d39c8d155c
Merge pull request #20574 from geoffw0/rustga3
...
Rust: Docs updates
2025-10-08 11:04:29 +01:00
Anders Schack-Mulligen
2d9b249367
Merge pull request #20600 from aschackmull/java/constant-exp-fix
...
Java: Fix bug in ConstantExpAppearsNonConstant.
2025-10-08 11:40:50 +02:00
Michael Nebel
4cc6a07620
Merge pull request #20593 from michaelnebel/csharp/reducetypeparameterandtuplelocations
...
C#: Reduce Type Parameter- and Tuple type location extraction.
2025-10-08 11:36:32 +02:00
Anders Schack-Mulligen
99f5dcaaa4
Java: Fix bug in ConstantExpAppearsNonConstant.
2025-10-08 10:32:51 +02:00
Michael Nebel
cdfa58645a
C#: Add change-note.
2025-10-08 10:14:51 +02:00
Idriss Riouak
28fe20e3e4
Merge pull request #20595 from github/idrissrio/java-lambda
...
Java: Add integration test for buildless lambda recovery
2025-10-08 09:53:29 +02:00
Paolo Tranquilli
75a7507017
Merge pull request #20590 from github/redsun82/rust-test-compatibility
...
Rust: test with the 1.90 toolchain
2025-10-08 09:00:30 +02:00
Asger F
10c9b747a5
Merge pull request #20586 from asgerf/js/api-graphs-block-this
...
JS: Restrict receiver-flow in API graphs
2025-10-08 08:41:56 +02:00
Geoffrey White
8a2be0910c
Rust: Add change note for Rust GA.
2025-10-07 23:10:31 +01:00
Ian Lynagh
2918d30697
Merge pull request #20597 from github/igfoo/bmn-ga
...
C++: Add a changenote for C/C++ BMN GA
2025-10-07 22:57:32 +01:00
Alexander Eyers-Taylor
825d3709d8
Merge pull request #20386 from github/alexet/overlay-informed-dataflow
...
Dataflow: Overlay informed dataflow.
2025-10-07 20:22:57 +01:00
Alex Eyers-Taylor
77d4af153d
Java: Make some query libraries local.
2025-10-07 18:24:37 +01:00
Alex Eyers-Taylor
193cd46a76
DataFlow: Adress comments on overlay informed dataflow
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
7a8d2392ee
Daatflow: Fix bug
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
542bdf0792
Java: Use Overlay dataflow in java.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
3c110f2eb8
DataFlow: Add code for merging base with overlay.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
c49e2ab2da
DataFlow: Add code to do overlay informed dataflow.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
82e4fc9f0f
AlertFiltering: Expose filtering further.
2025-10-07 17:52:12 +01:00
Alex Eyers-Taylor
8c02130bcf
DataFlow: Rearrange files to group the parts that can be shared with overlay aware.
2025-10-07 17:52:12 +01:00
Ian Lynagh
791a92b146
C++: Add a changenote for C/C++ BMN GA
2025-10-07 17:32:36 +01:00
idrissrio
f69e5f5ffc
Java: Accept new test results after extractor changes
2025-10-07 16:55:53 +02:00
idrissrio
55b15a261a
Java: Add integration test for buildless lambda recovery
2025-10-07 16:55:52 +02:00
Michael Nebel
eb84b1441a
C#: Add some locations tests for type parameters and tuple types.
2025-10-07 15:26:33 +02:00
Michael Nebel
f0842e430d
C#: Respect the context when extracting locations for type parameters and tuple typles.
2025-10-07 15:26:31 +02:00
Anders Schack-Mulligen
18e33b193e
Merge pull request #20589 from aschackmull/java/array-entrypoint-read-taint
...
Java: Allow taint-read-steps for array sources.
2025-10-07 15:04:03 +02:00
Michael Nebel
ea4d4751f3
Merge pull request #20581 from michaelnebel/csharp/reducetyplocationtuples
...
C#: Reduce location tuple extraction for named types.
2025-10-07 14:50:36 +02:00
Paolo Tranquilli
122b7ebba8
Rust: accept test changes
2025-10-07 14:49:08 +02:00
Michael Nebel
584d8c5377
C#: Add change-note.
2025-10-07 14:24:21 +02:00
Anders Schack-Mulligen
7dadbc43fb
Java: Add change note.
2025-10-07 13:51:49 +02:00
Owen Mansel-Chan
b0c8fcda35
Merge pull request #20591 from owen-mc/shared/update-inline-expectations-qldoc
...
Shared: Correct comment about empty `.expected` file
2025-10-07 12:47:11 +01:00
Anders Schack-Mulligen
f0bfd7053e
Java: Add test case.
2025-10-07 13:40:44 +02:00
Owen Mansel-Chan
db9bb83898
Move rule for /ql/ for consistency
2025-10-07 12:33:32 +01:00
Owen Mansel-Chan
f83b80a584
Add codeql-alert-coverage-eng as catch-all
2025-10-07 12:32:38 +01:00
Owen Mansel-Chan
101d2ddd4f
Use new team for shared library reviewers
2025-10-07 12:12:49 +01:00
Kasper Svendsen
0396756cd9
Merge pull request #20184 from Marcono1234/patch-1
...
Doc: Fix link to `warnOnImplicitThis` GitHub docs
2025-10-07 13:08:32 +02:00
Kasper Svendsen
74fb46c849
Merge branch 'main' into patch-1
2025-10-07 12:59:56 +02:00
Owen Mansel-Chan
bf76cab7e0
Correct comment about empty .expected file
2025-10-07 11:48:25 +01:00
Idriss Riouak
c809cce170
Merge pull request #20588 from github/idrissrio/macos-26
...
Java: Fix buildless test HTTP server binding on macOS26
2025-10-07 12:17:51 +02:00
Paolo Tranquilli
ace2ff5775
Rust: test with the 1.90 toolchain
2025-10-07 11:32:20 +02:00
Nora Dimitrijević
c749607db8
Bump python extractor version to 7.1.5
2025-10-07 11:22:16 +02:00
Anders Schack-Mulligen
11665bea0a
Java: Allow taint-read-steps for array sources.
2025-10-07 10:10:02 +02:00
Michael Nebel
f9d62a0efc
C#: Narrow the use of unbound declaration locations to nested types.
2025-10-07 09:43:39 +02:00
idrissrio
5c6d187ef2
Java: Fix buildless test HTTP server binding on macOS26
2025-10-07 09:24:55 +02:00
Nicolas Will
e2a8d58e02
Merge pull request #20583 from bdrodes/jca_signature_extensions
...
Crypto: Add JCA signatures, RNG, and unit tests
2025-10-06 18:51:30 +02:00
REDMOND\brodes
cb812b47ed
Crypto: more non-ascii removal.
2025-10-06 11:53:39 -04:00
Nicolas Will
9e278b9fa4
Merge pull request #20258 from bdrodes/java_nonce_reuse_tests
...
Crypto: Add reuse nonce test for Java
2025-10-06 17:42:25 +02:00
REDMOND\brodes
017a956d5e
Crypto: more non-ascii removal.
2025-10-06 11:34:45 -04:00
REDMOND\brodes
abeb3141b1
Crypto: Formatting test cases, more removal of non-ascii
2025-10-06 10:46:09 -04:00
Michael Nebel
6149608c03
C#: Always use the unbound type declaration location for type location.
2025-10-06 16:41:12 +02:00
Michael Nebel
b362b4657f
C#: Add some examples with nested types.
2025-10-06 16:40:13 +02:00
Nicolas Will
15e9bb9cc1
Format Test and update .expected
2025-10-06 16:29:25 +02:00
REDMOND\brodes
96f6832a6f
Crypto: Updating expected files for unit tests.
2025-10-06 10:07:15 -04:00
REDMOND\brodes
606aef38cb
Crypto: Removing non-ascii characters from unit tests
2025-10-06 09:56:14 -04:00
Ben Rodes
b32a6407b9
Update java/ql/lib/experimental/quantum/JCA.qll
...
Co-authored-by: Nicolas Will <nicolaswill@github.com >
2025-10-06 09:04:19 -04:00
Idriss Riouak
4a1157bff9
Merge pull request #20491 from github/idrissrio/java-maven
...
Java: Integration tests for Maven 4
2025-10-06 14:57:22 +02:00
Nicolas Will
378eb18db5
Merge branch 'main' into jca_signature_extensions
2025-10-06 14:50:15 +02:00
Nicolas Will
579da1dbd6
Fix QL-for-QL alerts
2025-10-06 14:45:45 +02:00
Michael Nebel
7b61a5fffa
C#: Update some test expected output that uses the location of the implicit constructor.
2025-10-06 14:02:17 +02:00
Michael Nebel
0ba9b80d08
C#: Add some more partial class related tests.
2025-10-06 14:02:15 +02:00
Michael Nebel
12dc65d170
C#: For implicit constructors, pick a unique source location as reporting location (if any).
2025-10-06 14:02:13 +02:00
Michael Nebel
b5592ad42f
C#: Add partial class example.
2025-10-06 14:02:12 +02:00
Michael Nebel
0cd7c37209
C#: Avoid extracting duplicate type locations.
2025-10-06 14:02:10 +02:00
Michael Nebel
f2b45b8726
C#: Add type locations test.
2025-10-06 14:02:07 +02:00
Geoffrey White
1c8ee0af89
Rust: Fix backticks.
2025-10-06 11:40:41 +01:00
Geoffrey White
a31c10c4fa
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2025-10-06 11:37:40 +01:00
Nora Dimitrijević
ece121070b
Add change note.
2025-10-06 12:31:21 +02:00
Nora Dimitrijević
9d7c52423a
Basic python overlay tests
...
The base source is in basic-overlay-eval/orig_src,
the overlay source is in basic-full-eval.
We run two tests: a full evaluation test in basic-full-eval,
and an overlay evaluation test in basic-overlay-eval.
The test source and expected results are the SAME,
due to the .qlref, meaning we expect the same results
for full and overlay evaluation.
2025-10-06 12:30:08 +02:00
Nora Dimitrijević
20d4e429ca
Add consistency query (exactly one path for every entity)
2025-10-06 11:47:56 +02:00
Nora Dimitrijević
7174d4c8ba
Overlay.qll: discard predicates
...
for dbscheme elements with direct or indirect location links in dbscheme.
- Unify discardable entities under one Discardable superclass.
- Two discard predicates depending on TRAP ID type.
- Future-proof the XML and Yaml discard predicates for when their
extractors become incremental.
2025-10-06 11:47:51 +02:00
Nora Dimitrijević
1a9683f986
Add @top database type
2025-10-06 11:47:14 +02:00
Nora Dimitrijević
6f208e9dec
Write overlay metadata at end of extraction.
2025-10-06 11:47:12 +02:00
Nora Dimitrijević
49b18db044
Python extractor: in overlay mode, traverse only changed files
...
- fall back to full extraction on overlay changes json read error
- we filter both root modules and (transitive) imports against the overlay-changes json.
2025-10-06 11:47:09 +02:00
Asger F
587ad5c600
JS: Refine criteria so that explicit this-passing is not affected
2025-10-06 11:43:18 +02:00
Asger F
4d33190241
JS: Restrict this-argument passing in API graphs
2025-10-06 11:42:36 +02:00
Asger F
84c788a027
JS: Add API graph test for explicit 'this' passing
2025-10-06 11:40:40 +02:00
Nora Dimitrijević
e0cf719cb9
Path transformer: handle Windows-style paths
...
And don't add slash to start of path patterns on Windows.
2025-10-06 11:37:04 +02:00
Nora Dimitrijević
29b1a7403b
Support CODEQL_PATH_TRANSFORMER env var in python path renamer
...
The new name is required by overlay support.
2025-10-06 11:37:02 +02:00
Nora Dimitrijević
1574b5fd91
Add synthetic data to dbscheme.stats for databaseMetadata/overlayChangedFiles
2025-10-06 11:37:00 +02:00
Nora Dimitrijević
1c3a7f2b1e
Add database upgrade/downgrade scripts
2025-10-06 11:36:58 +02:00
Nora Dimitrijević
a88d3397cd
Add overlay builtins to python dbscheme
2025-10-06 11:36:56 +02:00
Nora Dimitrijević
4c9ca93cdf
Turn on overlay support in codeql-extractor.yml
2025-10-06 11:36:54 +02:00
Nora Dimitrijević
dac50fa0c1
Enable overlay compilation in lib/qlpack.yml
2025-10-06 11:36:51 +02:00
idrissrio
a22ec2d9c6
Java: Accept new test results after extractor changes
2025-10-06 11:18:16 +02:00
idrissrio
f6b6a007b1
Java: Add integration tests for Maven 4
2025-10-06 11:18:15 +02:00
Simon Friis Vindum
1f2cca7d00
Merge pull request #20547 from paldepind/rust/function-as-lambda
...
Rust: Handle functions as data flow lambdas
2025-10-06 10:15:55 +02:00
REDMOND\brodes
9fa30a3884
Crypto: Updating algorithm string literals and key generation algorithm literal sources to include signatures.
2025-10-03 18:09:27 -04:00
REDMOND\brodes
9c5765a48c
Crypto: Add missing string constants for signature algorithms.
2025-10-03 17:17:07 -04:00
REDMOND\brodes
66e9d7671d
Crypto: Add jca unit tests.
2025-10-03 13:32:02 -04:00
REDMOND\brodes
f4fea6d635
Crypto: Fix consistency update with "other" vs "unknown" naming convetions for openssl.
2025-10-03 12:10:48 -04:00
REDMOND\brodes
f1eb6511a7
Crypto: Add modeling for JCA signatures. Make consistent use of "unknown" or "other" for unrecognized types.
2025-10-03 12:07:37 -04:00
Anders Schack-Mulligen
84a65bef43
C#: Add change note.
2025-10-03 16:29:56 +02:00
Anders Schack-Mulligen
fad49ffbfb
C++: Accept qltest change (useless guard tautology removed).
2025-10-03 15:59:54 +02:00
Anders Schack-Mulligen
613c789378
C#: Remove some obsolete tests.
2025-10-03 15:29:36 +02:00
Anders Schack-Mulligen
b392767252
C#: Accept qltest changes.
2025-10-03 15:29:35 +02:00
Anders Schack-Mulligen
df6172b1f3
C#: Update nullness qltest
2025-10-03 15:29:35 +02:00
Anders Schack-Mulligen
64810f6fb5
C#: Improve ConstantCondition.ql
2025-10-03 15:29:34 +02:00
Anders Schack-Mulligen
587901bc8a
C#: Replace NullMaybe.ql implementation.
2025-10-03 15:29:34 +02:00
Anders Schack-Mulligen
6cfadbfe90
C#: Clean up.
2025-10-03 15:29:33 +02:00
Anders Schack-Mulligen
c2d21e95b9
C#: Instantiate ControlFlowReachability and implement new nullness.
2025-10-03 15:29:33 +02:00
Anders Schack-Mulligen
449059f1ac
C#: Disable FinallySplit, BooleanSplit, and LoopSplit
2025-10-03 15:29:32 +02:00
Anders Schack-Mulligen
b52a9a818c
C#: Instantiate shared Guards.
2025-10-03 15:29:32 +02:00
Anders Schack-Mulligen
c01ac307b0
Guards: Disregard more trivial guards.
2025-10-03 15:29:31 +02:00
Anders Schack-Mulligen
ca7d56023a
ControlFlow: Rename getAPhiInput to getAnInput.
2025-10-03 15:29:31 +02:00
Anders Schack-Mulligen
64caae554a
Guards: Refactor representation of false.
2025-10-03 15:29:30 +02:00
Simon Friis Vindum
402d58bc3a
Merge pull request #20553 from paldepind/rust-ruby/update-cargo-deps
...
Rust, ruby: Update cargo dependencies
2025-10-03 14:50:55 +02:00
Owen Mansel-Chan
ef1fe6cabc
Add code owners for /shared/
2025-10-03 10:40:45 +01:00
Anders Schack-Mulligen
2e9e357d7e
Rangeanalysis: Fix a join-order.
2025-10-03 10:52:52 +02:00
Jeroen Ketema
7807804f4d
Merge pull request #20573 from MathiasVP/fix-bad-magic-on-get-file
...
C++: Fix bad magic on `Element.getFile`
2025-10-03 01:21:32 +02:00
Owen Mansel-Chan
218c2a59eb
Merge pull request #14751 from owen-mc/go/feature/use-use-flow
...
Go: Switch from def-use flow to use-use flow
2025-10-02 23:53:54 +01:00
REDMOND\brodes
a46bd4c4ca
Crypto: JCA random number generation model.
2025-10-02 15:21:28 -04:00
REDMOND\brodes
507174e44f
Crypto: Fix bug in MacOperationNode constructor with detecting if the operation is also used for signatures.
2025-10-02 15:20:59 -04:00
Geoffrey White
479e735e77
Rust: Mirror information from supported-versions-compilers.rst in system-requirements.rst.
2025-10-02 19:00:30 +01:00
Geoffrey White
fb738f2d02
Rust: Update creating-path-queries.rst.
2025-10-02 18:36:39 +01:00
Ben Rodes
e823d80f0c
Merge branch 'main' into java_nonce_reuse_tests
2025-10-02 13:31:40 -04:00
Geoffrey White
3b1d6cd3d9
Rust: Add missing link (to existing doc).
2025-10-02 18:31:26 +01:00
Nicolas Will
cbe34f101b
Merge pull request #19944 from bdrodes/signature_model_refactor
...
Crypto: Refactor Model and signatures, fix models, add unit tests
2025-10-02 19:30:46 +02:00
Geoffrey White
4ec18c8a79
Rust: Remove the experimental note in supported-frameworks.rst.
2025-10-02 18:21:52 +01:00
Nicolas Will
4901cdf929
Crypto: Refactor and change casts to super
2025-10-02 18:43:38 +02:00
Mathias Vorreiter Pedersen
bc0b87632d
C++: Fix bad magic on Element.getFile when running on InconsistentCheckReturnNull.qll:
...
Evaluated non-recursive predicate Element::Element.getFile/0#dispred#536cb5f3#bb@f6f5329i in 182326ms (size: 50437).
Evaluated relational algebra for predicate Element::Element.getFile/0#dispred#536cb5f3#bb@f6f5329i with tuple counts:
2029351 ~0% {2} r1 = SCAN `Expr::Expr.getLocation/0#dispred#0a3d90c6` OUTPUT In.1, In.0
2029351 ~0% {2} | JOIN WITH `Location::Location.getStartLine/0#d54f9e6c` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
1168789 ~0% {2} | JOIN WITH `InconsistentCheckReturnNull::assertInvocation/2#b2a4c9e3_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
5533128288 ~0% {3} | JOIN WITH `Location::Location.getContainer/0#9edabfb6_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0
50413 ~0% {2} | JOIN WITH `Element::Element.getLocation/0#dispred#6c3f5b09#bf` ON FIRST 2 OUTPUT Lhs.0, Lhs.2
3043 ~0% {2} r2 = JOIN `project#InconsistentCheckReturnNull::relevantFunctionCall/2#d18cd566` WITH `Expr::Expr.getLocation/0#dispred#0a3d90c6` ON FIRST 1 OUTPUT Rhs.1, Lhs.0
3043 ~0% {2} r3 = JOIN r2 WITH locations_default ON FIRST 1 OUTPUT Rhs.4, Lhs.1
1945 ~3% {2} | JOIN WITH `InconsistentCheckReturnNull::assertInvocation/2#b2a4c9e3_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
9106248 ~2% {3} | JOIN WITH `Location::Location.getContainer/0#9edabfb6_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0
0 ~0% {2} | JOIN WITH `Element::Element.getLocation/0#dispred#6c3f5b09#bf` ON FIRST 2 OUTPUT Lhs.0, Lhs.2
3043 ~0% {3} r4 = JOIN r2 WITH locations_default ON FIRST 1 OUTPUT _, Lhs.1, Rhs.4
3043 ~0% {2} | REWRITE WITH Tmp.0 := 1, Out.0 := (In.2 + Tmp.0) KEEPING 2
2013 ~0% {2} | JOIN WITH `InconsistentCheckReturnNull::assertInvocation/2#b2a4c9e3_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
9621327 ~0% {3} | JOIN WITH `Location::Location.getContainer/0#9edabfb6_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0
24 ~3% {2} | JOIN WITH `Element::Element.getLocation/0#dispred#6c3f5b09#bf` ON FIRST 2 OUTPUT Lhs.0, Lhs.2
50437 ~0% {2} r5 = r1 UNION r3 UNION r4
return r5
2025-10-02 17:36:21 +01:00
Owen Mansel-Chan
f35d28de45
Change note for bug fix in go/unvalidated-url-redirection
2025-10-02 17:03:55 +01:00
Owen Mansel-Chan
cce44b1f54
Update change notes for api changes
2025-10-02 16:52:16 +01:00
Owen Mansel-Chan
4d4862899e
Preserve old behaviour of Write.writesComponent
2025-10-02 16:50:18 +01:00
REDMOND\brodes
9673b81677
Crypto: Update JCA 'wihHmac" raw name to be the entire raw string, not just "Hmac"
2025-10-02 11:49:23 -04:00
REDMOND\brodes
704a06e1fa
Crypto: Update JCA PBKDF2 modeling: 1) add further inheritance structures to make the inheritance decomposition and caveats clearer, and 2) use getConsumer to establish the hash and hmac consumer. Update the Model to expect hash node types specifically for HMAC getHashALgorithmOrUnknown.
2025-10-02 11:45:13 -04:00
Owen Mansel-Chan
d8891e34d1
Small improvement to go/unhandled-writable-file-close
2025-10-02 15:15:51 +01:00
REDMOND\brodes
850c1ec12d
Crypto: Fix use of a member where a singleton set literal exists
2025-10-02 09:20:40 -04:00
REDMOND\brodes
b08533b322
Crypto: Fix missing output variable
2025-10-02 09:10:50 -04:00
REDMOND\brodes
c37b7c1389
Merge branch 'signature_model_refactor' of https://github.com/bdrodes/codeql into signature_model_refactor
2025-10-02 09:05:09 -04:00
REDMOND\brodes
38421cec94
Crypto: Missing casing fix for JCA classes
2025-10-02 09:04:23 -04:00
Ben Rodes
d251b3f9f7
Merge branch 'main' into signature_model_refactor
2025-10-02 09:02:34 -04:00
REDMOND\brodes
329a7dee1c
Crypto: Fixing JCA class naming casing for PBKDF2 classes.
2025-10-02 09:02:17 -04:00
Tom Hvitved
b4c979f586
Merge pull request #20548 from hvitved/rust/macro-call-resolution
...
Rust: Macro call resolution
2025-10-02 14:54:10 +02:00
Jeroen Ketema
a34d6d484a
Merge pull request #20485 from MathiasVP/use-shared-guards-library
...
C++: Switch to the shared Guards library
2025-10-02 14:19:49 +02:00
Owen Mansel-Chan
7fdda87b06
Fix go/impossible-interface-nil-check for separate post-update nodes
...
When tracing back from nil checks on interfaces, ignore post-update
nodes. There will always be a corresponding pre-update node that
contains the information we want.
2025-10-02 12:34:58 +01:00
Michael Nebel
b5aa972bd1
Merge pull request #20525 from michaelnebel/csharp/reducelocationtuples
...
C#: Reduce location tuples.
2025-10-02 12:32:35 +02:00
Michael Nebel
57efa05215
C#: Add change note.
2025-10-02 11:34:14 +02:00
Tom Hvitved
f8b104d174
Rust: Use doubleBoundedFastTC for resolving $crate paths
2025-10-02 11:22:56 +02:00
Philip Ginsbach
d889fa8d39
Merge pull request #20571 from github/ginsbach/MoreAnnotationDocs
...
document `extensible` and `additional` in QL reference and spec
2025-10-02 09:11:06 +01:00
Philip Ginsbach
a2d31be152
improve the wording based on PR review feedback
2025-10-02 09:02:20 +01:00
Michael Nebel
4f833ca7fe
Merge pull request #20513 from ewillonermsft/systemwebhttprequest-test-stubs
...
Add additional SystemWeb HttpRequset properties to C# test stubs
2025-10-02 09:22:55 +02:00
Michael Nebel
191dae47fd
C#: Add a stub for the System.Uri class for the CWE-611 test.
2025-10-01 14:44:54 -07:00
ewillonermsft
6f57e5a13e
Merge branch 'main' into systemwebhttprequest-test-stubs
2025-10-01 14:33:09 -07:00
REDMOND\brodes
d49efefefa
Crypto: Fix for non-monotonic recursion in JCA
2025-10-01 14:36:26 -04:00
Mark C
f38ab45e94
removed all @security.severity ratings to keep the main impartial
2025-10-01 17:49:45 +01:00
Mathias Vorreiter Pedersen
011739cbd9
Merge branch 'main' into use-shared-guards-library
2025-10-01 17:21:05 +01:00
Mathias Vorreiter Pedersen
6eb2aad7da
Merge pull request #20569 from aschackmull/guards/uniquevalue-perf
...
Guards: Improve performance for phi nodes with many incoming constant values.
2025-10-01 17:19:42 +01:00
Owen Mansel-Chan
2629369c93
Improve additional flow step for Host field
2025-10-01 16:18:05 +01:00
Philip Ginsbach
f0b39099e3
discuss 'extensible' whenever the spec mentions 'external'
2025-10-01 16:18:04 +01:00
Owen Mansel-Chan
c006777714
Simplify PathAssignmentBarrier
2025-10-01 16:18:03 +01:00
Philip Ginsbach
3159b299f7
member predicates cannot be 'external'
2025-10-01 16:18:02 +01:00
Owen Mansel-Chan
6d6852fb8d
Test PathAssignmentBarrier for OpenUrlRedirect
2025-10-01 16:18:02 +01:00
Philip Ginsbach
341a1191a3
language reference section on 'extensible' annotation
2025-10-01 16:18:00 +01:00
Owen Mansel-Chan
f0f5fc7eac
Improve SSRF additional flow step
2025-10-01 16:18:00 +01:00
Philip Ginsbach
bd3bcf981a
language reference section on 'additional' annotation
2025-10-01 16:17:58 +01:00
Owen Mansel-Chan
c9ce2c8043
Add test for assignment to Url.Host field
2025-10-01 16:17:58 +01:00
Owen Mansel-Chan
8b04d0a2b9
Convert SSRF tests to inline expectations tests
2025-10-01 16:17:57 +01:00
Philip Ginsbach
7893768cb2
update annotation docs to reference type unions
2025-10-01 16:17:55 +01:00
Philip Ginsbach
8160ef6e81
update annotation docs to reference signatures
2025-10-01 16:17:53 +01:00
Owen Mansel-Chan
6e4dbe8e22
Fix SafeUrlFlow so test passes
2025-10-01 16:17:52 +01:00
Owen Mansel-Chan
620ae33e0c
Make SafeUrlFlow test more comprehensive (failing)
2025-10-01 16:17:04 +01:00
REDMOND\brodes
92dac0341c
Crypto: Adding necessary model interfaces for MacOperationCall in JCA.
2025-10-01 11:13:37 -04:00
Owen Mansel-Chan
8a21a4ff92
Deprecate WriteNode.writesComponent
2025-10-01 16:13:33 +01:00
Owen Mansel-Chan
59e3c14a5e
Add and use WriteNode.writesElementPreUpdate
2025-10-01 16:13:31 +01:00
Owen Mansel-Chan
6fcd35885e
Fix pointer content store step for write to field of pointer dereference
2025-10-01 16:13:29 +01:00
Owen Mansel-Chan
2ffb638b7e
Delete WriteNode.writesFieldOnSsaWithFields
...
This can be easily expressed in terms of `WriteNode.writesFieldPreUpdate`.
2025-10-01 16:13:27 +01:00
Owen Mansel-Chan
489b8431ea
Add and use WriteNode.writesFieldPreUpdate
2025-10-01 16:13:25 +01:00
Owen Mansel-Chan
c9a2816bfe
Fix OpenUrlRedirect barrier for write to Url.Host
2025-10-01 16:13:24 +01:00
Owen Mansel-Chan
414bab1f30
Add OpenUrlRedirect tests for Url.Host field
2025-10-01 16:13:22 +01:00
Owen Mansel-Chan
1144bb99b4
Convert OpenUrlRedirect tests to InlineExpectations
2025-10-01 16:13:21 +01:00
Owen Mansel-Chan
7b426186aa
Rephrase change note to avoid technical terms
2025-10-01 16:13:19 +01:00
Owen Mansel-Chan
630a8446ad
Rename confusing predicate and add qldoc
2025-10-01 16:13:17 +01:00
Owen Mansel-Chan
b1bcbec37d
Use slightly less confusing syntax
2025-10-01 16:13:15 +01:00
Owen Mansel-Chan
1d9a93a731
Rename helper predicate
2025-10-01 16:13:14 +01:00
Owen Mansel-Chan
4ee236d73f
Delete commented out code
2025-10-01 16:13:12 +01:00
Owen Mansel-Chan
25f182302d
Fix email injection sink that needs local flow
2025-10-01 16:13:10 +01:00
Owen Mansel-Chan
f5f6d64d9d
Add change notes
2025-10-01 16:13:08 +01:00
Owen Mansel-Chan
52b6539697
Typo
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-01 16:13:06 +01:00
Owen Mansel-Chan
a9420d46c8
Fix bad join order
2025-10-01 16:13:04 +01:00
Owen Mansel-Chan
6cb69535a5
Add missing qldocs
2025-10-01 16:13:03 +01:00
Owen Mansel-Chan
5efc8ac1a4
Fix backwards flow through TaintTracking::FunctionModel
...
We only do this for taint models as there isn't any backwards flow
through data flow function models.
2025-10-01 16:13:01 +01:00
Owen Mansel-Chan
3906f2560d
Adjust Stack Exposure test so it passes
...
A minor bug in our CFG means that we evaluate the base of a
SliceExpr before the bounds. Since the bounds may have side
effects, as in this case, it would be better to evaluate them first.
But in the short term I am just adjusting the test to make it work.
2025-10-01 16:12:59 +01:00
Owen Mansel-Chan
62155876c5
Fix flow to variable capture
...
The jump step to a `SsaCaptureVariable` should start at the last use
before it, rather than from the previous definition.
2025-10-01 16:12:57 +01:00
Owen Mansel-Chan
748c53a791
Refactor: Create writesFieldOnSsaWithFields
2025-10-01 16:12:56 +01:00
Owen Mansel-Chan
cf6cfe2a1e
Non-initializing writes should target post-update nodes
2025-10-01 16:12:54 +01:00
Owen Mansel-Chan
8a3bd8408b
Fix test expectations for Cleartext Logging
...
One spurious alert was removed, one missing alert was added, and some
source locations changed.
2025-10-01 16:12:52 +01:00
Owen Mansel-Chan
3229630598
Make store step to send stmt's channel use post-update node
2025-10-01 16:12:51 +01:00
Owen Mansel-Chan
ac71f9cd8e
Expected change in test output
...
These sources are now modeled using models-as-data, which (probably
correctly) uses the post-update node as the source. But the deprecated
QL models still exist, so we get two test results for each of these
calls.
2025-10-01 16:12:49 +01:00
Owen Mansel-Chan
d2230c531d
Expected changes in test output
2025-10-01 16:12:47 +01:00
Owen Mansel-Chan
118def8d28
Make separate post-update nodes
2025-10-01 16:12:45 +01:00
Owen Mansel-Chan
a0c647ce83
Add Email Injection tests for reverse flow models
2025-10-01 16:12:43 +01:00
Owen Mansel-Chan
9892836f14
Switch order of PUN test output
2025-10-01 16:12:42 +01:00
Owen Mansel-Chan
89ae0e3bf3
Inline predicate only used once
2025-10-01 16:12:40 +01:00
Owen Mansel-Chan
05a16dc100
Convert post-update logic to IR (part 3)
2025-10-01 16:12:38 +01:00
Owen Mansel-Chan
ad1801827b
Implement writesComponent at IR level
2025-10-01 16:12:37 +01:00
Owen Mansel-Chan
203952fa47
Convert post-update logic to IR (part 2)
...
Note that we don't create post-update nodes for method receivers if the
call to the method is indirect, via a function variable. We could aim to
do this in future.
2025-10-01 16:12:35 +01:00
Owen Mansel-Chan
c8b8e25fbb
Convert post-update logic to IR (part 1)
2025-10-01 16:12:34 +01:00
Owen Mansel-Chan
7a515c101a
Pull out post-update node logic into predicate
2025-10-01 16:12:32 +01:00
Owen Mansel-Chan
d13d7173ed
Fix QLDoc typo
2025-10-01 16:12:30 +01:00
Owen Mansel-Chan
14301e0af4
Expected changes in dataflow edges
2025-10-01 16:12:28 +01:00
Owen Mansel-Chan
c20abf6d58
Line numbers change because 3 lines were added
2025-10-01 16:12:27 +01:00
Owen Mansel-Chan
521066578b
Test result that was missing is now found
2025-10-01 16:12:25 +01:00
Owen Mansel-Chan
3594dba83c
Make insecure randomness test more realistic
2025-10-01 16:12:24 +01:00
Owen Mansel-Chan
32de2113a6
Use _ instead of exists variable x2
2025-10-01 16:12:22 +01:00
Chris Smowton
a3eb0100a6
Optimise join order for varBlockReaches
2025-10-01 16:12:21 +01:00
Owen Mansel-Chan
9068315f03
Fix IncorrectIntegerConversion for use-use flow
...
We were assuming that `sink` only had one successor, the TypeCastNode, but it
can now have an adjacent use as well.
2025-10-01 16:12:19 +01:00
Owen Mansel-Chan
b2a9cecd69
Fix Allocation Size Overflow for use-use flow
...
We have an operator expression like `x * 5`. We want to follow where the
value of the operator expression goes. We used to follow local flow from
an operand, but now there is flow from that operand to the next use of
the variable. The fix is to explicitly start local flow from the
operator expression.
There are also some expected edge changes due to use-use flow.
2025-10-01 16:12:18 +01:00
Owen Mansel-Chan
4e04d27d32
Adjust SafeFormatArgumentSanitizer to use-use flow
...
Make it sanitize the result of the call rather than the input, so that
further uses of the input are still tainted. This means that it catches
things like `log.Print(fmt.Sprintf("user %q logged in.\n", username))`
where the argument to the LoggerCall contains a StringFormatCall, but
it misses things like `log.Printf("user %q logged in.\n", username)`. So
we extract the logic into a predicate and apply it as a condition in the
sink as well.
The downside of this approach is that if there are two tainted inputs
and only one has a safe format argument then we still sanitize the
result. Hopefully this is rare.
2025-10-01 16:12:16 +01:00
Owen Mansel-Chan
49b8b0bca3
Remove local flow step from SSA defn to SSA capture
2025-10-01 16:12:15 +01:00
Owen Mansel-Chan
b4743155f6
Include first step from SsaVariableCapture
...
Without this change the test
go/ql/test/query-tests/InconsistentCode/UnhandledCloseWritableHandle/UnhandledCloseWritableHandle.qlref
was failing.
2025-10-01 16:12:14 +01:00
Owen Mansel-Chan
5267671b15
Clean up code in basicLocalFlowStep
...
No changes in functionality.
2025-10-01 16:12:12 +01:00
Owen Mansel-Chan
4484d5bfa9
Add missing QLDoc
2025-10-01 16:12:09 +01:00
Owen Mansel-Chan
16a11b48ad
Switch to use-use dataflow. This will make post-update nodes easy to implement.
...
Queries / tests that required changes:
* The CleartextLogging and MissingErrorCheck queries are updated because they assumed def-use flow
* The CommandInjection query works around the shortcomings of use-use flow by essentially reintroducing def-use flow when it applies a sanitizer
* The OpenUrlRedirect query currently just accepts its fate; the tests are updated to avoid excess sanitization while the query comments on the problem. We should choose this approach or the CommandInjection one.
2025-10-01 16:12:07 +01:00
Simon Friis Vindum
1408c245e0
Merge pull request #20557 from paldepind/rust/type-inference-delete-predicates
...
Rust: Remove member predicates on `Type`
2025-10-01 16:48:41 +02:00
Owen Mansel-Chan
ff3d795a8f
Merge pull request #20556 from owen-mc/go/test/safeurlflow
...
Go: Add tests for SafeUrlFlow, and fix a latent bug
2025-10-01 15:05:55 +01:00
Geoffrey White
f96a42c075
Merge pull request #20561 from geoffw0/basicquery
...
Rust: Add Basic query for Rust code doc
2025-10-01 14:20:11 +01:00
Owen Mansel-Chan
8983ac9212
Phrase test in terms of safe URLs
2025-10-01 14:13:15 +01:00
Tom Hvitved
dd3debc2d5
Address review comments
2025-10-01 14:41:28 +02:00
Anders Schack-Mulligen
a1028d604c
Guards: Improve performance for uniqueValue.
2025-10-01 14:08:37 +02:00
Mathias Vorreiter Pedersen
b0e9238ddf
Merge branch 'main' into use-shared-guards-library
2025-10-01 11:59:17 +01:00
Geoffrey White
b02c19b5bf
Rust: Slightly cleaner screenshots.
2025-10-01 11:59:08 +01:00
Mark C
c5cf0ffa75
added java cryptographic check queries
2025-10-01 11:55:51 +01:00
Geoffrey White
936702a0e5
Rust: Update graphics.
2025-10-01 11:49:54 +01:00
Mathias Vorreiter Pedersen
353ee8baa0
C++: Port a test from the experimental directory to show that it works in the non-experimental "new" range analysis.
2025-10-01 11:33:47 +01:00
Chris Smowton
f5ae5bed47
Merge pull request #20560 from smowton/smowton/fix/start-in-constructor-fp
...
Java: note that classes with entirely private constructors can't be subclassed
2025-10-01 11:16:50 +01:00
Geoffrey White
2c7291d27e
Rust: Fix toctree bug.
2025-10-01 11:12:29 +01:00
Ben Ahmady
513dcf1cb4
Merge branch 'main' into basicquery
2025-10-01 11:02:19 +01:00
Owen Mansel-Chan
c93852d87a
Improve comments in test file
2025-10-01 11:01:58 +01:00
Simon Friis Vindum
daf0cf1c1b
Rust: Rename predicates
2025-10-01 11:43:51 +02:00
Owen Mansel-Chan
dd3f754cb3
Add change note.
2025-10-01 09:32:00 +01:00
Simon Friis Vindum
a359a24c9e
Merge pull request #20559 from paldepind/rust/string-add-ref
...
Rust: Add taint model for add on `String`
2025-10-01 09:38:54 +02:00
Geoffrey White
372b5870b1
Merge pull request #20554 from geoffw0/docs1
...
Rust: Consistency fix for reusables/extractors.rst.
2025-09-30 17:41:05 +01:00
Geoffrey White
92122fef58
Rust: statement -> expression.
2025-09-30 15:48:26 +01:00
Geoffrey White
d9955ce93c
Merge pull request #20503 from geoffw0/cookie
...
Rust: New query rust/insecure-cookie
2025-09-30 15:26:37 +01:00
Tom Hvitved
537e7a8ec3
Rust: Fix formatting
2025-09-30 16:24:38 +02:00
Tom Hvitved
701cff3ca4
Rust: Macro call resolution
2025-09-30 16:21:02 +02:00
Owen Mansel-Chan
a2a9575587
Add tests for safe URL flow
2025-09-30 15:05:42 +01:00
Simon Friis Vindum
19871a2653
Rust: Accept test changes
2025-09-30 15:26:30 +02:00
Geoffrey White
771d9345b5
Merge branch 'main' into basicquery
2025-09-30 14:19:00 +01:00
Mathias Vorreiter Pedersen
ca53a8e787
C++: Update QLDoc.
2025-09-30 14:15:55 +01:00
Mathias Vorreiter Pedersen
1b2bd30a29
Update cpp/ql/lib/semmle/code/cpp/controlflow/IRGuards.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2025-09-30 14:14:19 +01:00
Chris Smowton
f88daff45f
Java: note that classes with entirely private constructors can't be subclassed
2025-09-30 13:57:44 +01:00
Simon Friis Vindum
49efd574a0
Rust: Add taint model for add on String
2025-09-30 14:48:03 +02:00
Idriss Riouak
fa8cbeeb44
Merge pull request #20546 from github/idrissrio/ql-constant
...
Java: Fix false positives in evaluation-to-constant query for ErrorType
2025-09-30 14:24:28 +02:00
Chris Smowton
ff4b97bf2d
Reword
2025-09-30 13:08:03 +01:00
Simon Friis Vindum
c878af2b9d
Rust: Remove member predicates on Type
2025-09-30 13:28:33 +02:00
Owen Mansel-Chan
5b07e8c9c4
Fix bug in UnsafeFieldReadSanitizer
2025-09-30 12:05:06 +01:00
Owen Mansel-Chan
b5fda88bd3
Remove duplication of UnsafeFieldReadSanitizer
2025-09-30 12:04:39 +01:00
idrissrio
63771110a5
Java: Address review comment
2025-09-30 11:46:37 +02:00
Michael Nebel
018ccb3354
C#: Update locations test expected output.
2025-09-30 11:33:28 +02:00
Michael Nebel
d7a2c7da18
C#: Adjust the QL library to use the locations of the unbound declarations.
2025-09-30 11:33:26 +02:00
Michael Nebel
b2cbac3250
C#: Temporarily update the test expected file.
2025-09-30 11:33:23 +02:00
Michael Nebel
443c183e41
C#: Only extract locations for unbound declarations (if a declaration can be unfound) and don't extract empty locations.
2025-09-30 11:33:21 +02:00
Michael Nebel
e9901305b2
C#: Rename GeneratedLocation to EmptyLocation and make sure that we always create one such location.
2025-09-30 11:33:19 +02:00
Michael Nebel
5843fdbdd8
C#: Add a locations example.
2025-09-30 11:33:17 +02:00
Geoffrey White
90a7a58929
Merge pull request #20515 from geoffw0/libs
...
Rust: Update Supported languages and frameworks
2025-09-30 09:56:09 +01:00
Geoffrey White
a286631018
Merge pull request #20512 from geoffw0/stmtlist
...
Rust: Improve StmtList
2025-09-30 09:53:55 +01:00
Nick Rolfe
9688d84f3e
Merge pull request #20549 from github/post-release-prep/codeql-cli-2.23.2
...
Post-release preparation for codeql-cli-2.23.2
2025-09-30 09:45:22 +01:00
Simon Friis Vindum
ef80ff416f
Bazel: regenerate vendored cargo dependencies
2025-09-30 10:28:42 +02:00
Simon Friis Vindum
4846cf4791
Cargo: upgrade dependencies
2025-09-30 10:21:17 +02:00
Chris Smowton
f1239352ce
Note issue in related query
2025-09-29 18:43:59 +01:00
Chris Smowton
18c5cb10d9
Ruby: Update CSRF protection notes in documentation
...
Autofix is confused about how the `protect_from_forgery` method works in Rails >= 5: GPT-5 says:
> In modern Rails versions (>=5, including 6 and 7 which this gem permits), ActionController::Base already enables CSRF protection by default with the `:exception` strategy; an explicit call to `protect_from_forgery` without options does not weaken security.
This is false: manual testing confirms that it actually does downgrade from `:exception` to `:null-session` behaviour when a manual call is made.
I can't find any authoritative source showing this gotcha, so I can see how the AI is confused and how humans might also struggle to verify the truth.
2025-09-29 18:42:11 +01:00
github-actions[bot]
a7a4e43991
Post-release preparation for codeql-cli-2.23.2
2025-09-29 15:10:19 +00:00
Simon Friis Vindum
98a20f9820
Rust: Add change note
2025-09-29 14:58:34 +02:00
Simon Friis Vindum
37ffe82ac9
Rust: Handle functions as lambdas
2025-09-29 14:49:04 +02:00
Simon Friis Vindum
0728692e93
Rust: Add tests for functions as lambdas
2025-09-29 14:46:53 +02:00
idrissrio
b82d8c2252
Java: Accept new test results after query change
2025-09-29 13:38:01 +02:00
idrissrio
659afb5f30
Java: Fix false positives in evaluation-to-constant query for ErrorType
2025-09-29 13:37:25 +02:00
idrissrio
e0444c531b
Java: Add integration test for constant expr detection
2025-09-29 13:37:20 +02:00
Simon Friis Vindum
84c6a3a376
Rust: Add change note for actix-web models
2025-09-29 13:03:10 +02:00
Kasper Svendsen
b52fff2f81
Merge pull request #20505 from kaspersv/kaspersv/future-proof-java-discarding2
...
Overlay: Discard Java config and XML base entities in overlay extracted files
2025-09-29 13:01:08 +02:00
Simon Friis Vindum
6b7d5d2902
Rust: Add models for actix-web
2025-09-29 09:14:03 +02:00
Geoffrey White
c7f6f2c8e1
Rust: Consistency fix for reusables/extractors.rst.
2025-09-26 16:40:25 +01:00
Geoffrey White
1236e2b829
Rust: Add references to alternatives in the getStmtOrExpr methods.
2025-09-26 14:55:06 +01:00
Geoffrey White
4570d7e46e
Rust: Replace getBlockChildNode with uses of getStmtOrExpr.
2025-09-26 14:32:36 +01:00
Geoffrey White
27b6f12b3c
Rust: Use the suggested cleaner implementation for getStmtOrExpr.
2025-09-26 14:30:31 +01:00
Geoffrey White
77e7898f71
Rust: Use US spelling in comment.
2025-09-26 11:49:23 +01:00
Geoffrey White
f458149655
Rust: Remove a sentance from the qhelp.
2025-09-26 11:32:45 +01:00
Geoffrey White
57f84873b4
Rust: Split off cookieOptionalBarrier predicate (as suggested) and expand / clarify the QLDoc.
2025-09-26 11:29:17 +01:00
Geoffrey White
21fe142955
Update rust/ql/src/queries/security/CWE-614/InsecureCookie.qhelp
...
Co-authored-by: Simon Friis Vindum <paldepind@github.com >
2025-09-26 10:39:49 +01:00
ewillonermsft
c89ce067a3
Merge branch 'main' into systemwebhttprequest-test-stubs
2025-09-25 12:58:34 -07:00
ewillonermsft
b267bd11e0
Update properties to getters which is inline with the actual implementation.
2025-09-25 10:37:56 -07:00
ewillonermsft
b49b84e072
Remove this[] logic from the commit.
...
Stub should not include code logic.
2025-09-25 10:10:48 -07:00
Geoffrey White
dba4b5e5a9
Rust: Add images.
2025-09-25 14:21:54 +01:00
Geoffrey White
db3d177300
Rust: Port the code examples to Rust / CodeQL for Rust.
2025-09-25 14:21:53 +01:00
Geoffrey White
1211dc8f3c
Rust: Replace 'swift' with 'rust'.
2025-09-25 14:21:52 +01:00
Geoffrey White
f4758fe3e5
Rust: Add a basic-query-for-rust-code.rst (copied from Swift).
2025-09-25 14:21:51 +01:00
Mathias Vorreiter Pedersen
c1c1f60241
C++: Delete incorrect comment and add a bunch of barrier guard tests.
2025-09-25 12:56:46 +01:00
Mathias Vorreiter Pedersen
04ce4057e1
C++: Add more comments to describe the constant expression hack.
2025-09-25 12:43:57 +01:00
Mathias Vorreiter Pedersen
5b5c1de05b
C++: Fix fan-out.
2025-09-25 12:33:44 +01:00
Geoffrey White
a72eb87c93
Rust: Remove one that is essentially a duplicate.
2025-09-25 10:35:47 +01:00
Geoffrey White
a45a3e427c
Rust: Update supported frameworks.
2025-09-25 10:28:10 +01:00
Joe Farebrother
cb7b1efe81
Update alert message
2025-09-25 09:52:27 +01:00
Mathias Vorreiter Pedersen
b169ccf29a
C++: Fully delete TRange.
2025-09-25 08:30:42 +01:00
ewillonermsft
b2fc68ff81
Add additional SystemWeb HttpRequset properties to C# test stubs
2025-09-24 18:24:36 -07:00
Mathias Vorreiter Pedersen
a07d03f49b
C++: Use the 'StoreInstruction' instead of the 'ReturnValueInstruction' when detecting return expressions.
2025-09-24 20:09:35 +01:00
Mathias Vorreiter Pedersen
26a8a4b3d2
C++: Add failing test demonstrating broken wrapper barrier guards.
2025-09-24 19:54:05 +01:00
Mathias Vorreiter Pedersen
b2269fb5f5
C++: Add more tests.
2025-09-24 19:06:02 +01:00
Geoffrey White
7e8e855f28
Rust: Fix bug when there are no statements.
2025-09-24 17:16:26 +01:00
Geoffrey White
93a0198326
Rust: Add a test for StmtList.
2025-09-24 17:04:39 +01:00
Geoffrey White
9bdac9d1cf
Rust: Move 'operations' test into elements subdir.
2025-09-24 17:04:38 +01:00
Geoffrey White
b12b36f302
Rust: Codegen.
2025-09-24 17:04:28 +01:00
Geoffrey White
8debce0349
Rust: Add helper predicates for accessing statements and expressions together.
2025-09-24 17:04:08 +01:00
Geoffrey White
85945dba29
Rust: Codegen.
2025-09-24 16:08:06 +01:00
Geoffrey White
7459eed435
Rust: Update doc comments for StmtList predicates.
2025-09-24 16:08:04 +01:00
Geoffrey White
ab30c786a5
Rust: Accept test changes.
2025-09-24 16:08:03 +01:00
Mathias Vorreiter Pedersen
d15e388f5c
C++: Get rid of the case range constant value with and instead implement 'rangeGuard'.
2025-09-24 15:52:10 +01:00
Mathias Vorreiter Pedersen
13cde4d700
C++: Add testcase demonstrating that a ConstantValue IPA branch representing a gcc case range is a bad idea.
2025-09-24 15:34:35 +01:00
Mathias Vorreiter Pedersen
d10d5fd05e
C++: Rename in the name of consistency.
2025-09-24 15:34:03 +01:00
Geoffrey White
ed3a6fd799
Rust: Codegen.
2025-09-24 15:32:10 +01:00
Geoffrey White
ed2a14a3ec
Rust: Update doc comments for StmtList.
2025-09-24 15:28:23 +01:00
Joe Farebrother
9f5bfeb7f4
Update test output
2025-09-24 15:03:40 +01:00
Joe Farebrother
654ed9ca12
Update integration tests
2025-09-24 10:58:53 +01:00
Mathias Vorreiter Pedersen
99e1a07b8e
C++: Add a comment to the 'ConditionalBranchInstruction' case in 'additionalImpliesStep.
2025-09-24 10:58:47 +01:00
Mathias Vorreiter Pedersen
2b47ac83e8
C++: Remove superfluous inference logic.
2025-09-24 10:51:45 +01:00
Mathias Vorreiter Pedersen
b3cbdb5c1a
C++: Add QLDoc to TRange.
2025-09-24 10:39:27 +01:00
Joe Farebrother
85f886932d
Update changenote
2025-09-23 15:51:31 +01:00
Joe Farebrother
55fd7c85c6
Update documentation
2025-09-23 15:50:27 +01:00
Joe Farebrother
1208195d8a
Align alert messages across languages.
2025-09-23 15:46:53 +01:00
Joe Farebrother
2cffb21604
Update and fix tests
2025-09-23 15:41:09 +01:00
Kasper Svendsen
f02da68c55
Overlay: Discard base XML entities in overlay extracted files
2025-09-23 12:27:51 +02:00
Kasper Svendsen
718c0abdb6
Overlay: Discard base config entities in overlay extracted files
2025-09-23 12:27:51 +02:00
Joe Farebrother
d28e8004fd
Add sensitive data heuristic
2025-09-23 10:08:08 +01:00
Geoffrey White
266624dd0f
Rust: The test needs to have Source tags now.
2025-09-22 17:12:52 +01:00
Geoffrey White
86c8c3c8c0
Rust: Fix warning by making the query a path-problem.
2025-09-22 17:01:12 +01:00
Geoffrey White
6362884d16
Rust: Autoformat.
2025-09-22 16:59:11 +01:00
Geoffrey White
43ac75ed62
Rust: Address another tiny suggestion from review.
2025-09-22 16:58:07 +01:00
Geoffrey White
5b4632b432
Apply suggestions from code review
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-09-22 16:55:43 +01:00
Geoffrey White
cc9c4149d7
Apply suggestions from code review
2025-09-22 16:54:08 +01:00
Geoffrey White
3de191177c
Rust: Change note.
2025-09-22 16:12:30 +01:00
Geoffrey White
ae9025334e
Rust: Add the new query to suite lists.
2025-09-22 16:12:29 +01:00
Geoffrey White
4662e42584
Rust: Add examples as tests (and fix them).
2025-09-22 16:12:27 +01:00
Geoffrey White
bd07350bc3
Rust: Add qhelp and examples.
2025-09-22 16:12:26 +01:00
Geoffrey White
94afc82304
Rust: Fix an issue with the local flow.
2025-09-22 16:12:25 +01:00
Geoffrey White
a3ed83bfff
Rust: Make state transition / barrier nodes more reliable.
2025-09-22 16:12:23 +01:00
Geoffrey White
2654affeee
Rust: Account for the 'secure' and 'partitioned' attributes.
2025-09-22 16:12:22 +01:00
Geoffrey White
257a1b0179
Rust: Refactor sources, sinks into an extensions source file.
2025-09-22 16:09:30 +01:00
Geoffrey White
eadf922280
Rust: Use models-as-data, add source/sink/flow models.
2025-09-22 16:04:56 +01:00
Geoffrey White
d52b668149
Rust: Add security-severity tag.
2025-09-22 16:04:54 +01:00
Geoffrey White
7e75c1d242
Rust: Add very basic query prototype.
2025-09-22 16:04:53 +01:00
Geoffrey White
513ae2ab54
Rust: Add tests for insecure cookies.
2025-09-22 16:04:52 +01:00
Joe Farebrother
6eac6b7258
Rename qhelp file
2025-09-19 17:03:19 +01:00
Joe Farebrother
a9a258e743
Add changenote
2025-09-19 15:11:02 +01:00
Joe Farebrother
2e95c2b3c2
Split test cases for insecure cookie queries
2025-09-19 14:41:02 +01:00
Joe Farebrother
04316d306f
Update qhelp
2025-09-19 12:42:30 +01:00
Joe Farebrother
7eabed6594
Split insecure cookies queries into 3 queries
2025-09-18 13:34:10 +01:00
Mathias Vorreiter Pedersen
c481be8ea7
C++: Accept test changes for tests that select all types of an expression.
2025-09-18 12:16:28 +01:00
Mathias Vorreiter Pedersen
a4dbee3b13
C++: Add change note.
2025-09-18 12:16:26 +01:00
Mathias Vorreiter Pedersen
e22d6656fe
C++: Fix barrier guards.
2025-09-18 12:16:25 +01:00
Mathias Vorreiter Pedersen
d8f34dba17
C++: Do not use the deprecated predicate in queries.
2025-09-18 12:16:23 +01:00
Mathias Vorreiter Pedersen
5e82eb9b24
C++: Fixup queries which assumes that a guard is always an expression.
2025-09-18 12:16:21 +01:00
Mathias Vorreiter Pedersen
fbd877a118
C++: Delete a test. This is no longer useful when every expression is a guard condition.
2025-09-18 12:16:20 +01:00
Mathias Vorreiter Pedersen
2dc783d91f
C++: Accept test changes.
2025-09-18 12:16:16 +01:00
Mathias Vorreiter Pedersen
0b81fbbb2b
C++: Fixup tests.
2025-09-18 12:16:11 +01:00
Mathias Vorreiter Pedersen
9ed8b75c5d
C++: Add a few helper predicates on 'Definition' which the guards library needs.
2025-09-18 11:05:55 +01:00
Mathias Vorreiter Pedersen
ac5233d19c
C++: Lots of renamings.
2025-09-18 11:05:54 +01:00
Mathias Vorreiter Pedersen
840097f121
C++: Instantiate the shared guards library.
2025-09-18 11:05:52 +01:00
Mathias Vorreiter Pedersen
3a8f77d6f4
C++: Qualified import of cpp.
2025-09-18 11:05:50 +01:00
Mathias Vorreiter Pedersen
2b0b8402ce
C++: Delete a bunch of predicates. Also set up things so that they work after instantiating the shared guards library.
2025-09-18 11:05:49 +01:00
Mathias Vorreiter Pedersen
f0f4311b65
C++: Sync identical files.
2025-09-18 11:05:47 +01:00
Mathias Vorreiter Pedersen
70a8364a38
C++: Add another convenience predicate on 'BinaryInstruction'.
2025-09-18 11:05:45 +01:00
Mathias Vorreiter Pedersen
19b8e0db9c
C++: Add a few subclasses to 'EdgeKind'.
2025-09-18 11:05:43 +01:00
Mathias Vorreiter Pedersen
be8195ab7d
C++: Do not rely on dataflow nodes when implement 'getAUse' and 'getAnIndirectUse'. This will solve a non-monotonic recursion issue later.
2025-09-18 11:05:39 +01:00
Mathias Vorreiter Pedersen
f47dd2bbc6
C++: Add a 'hasInputFromBlock' predicate.
2025-09-18 11:05:38 +01:00
Mathias Vorreiter Pedersen
f55ace8311
C++: Make the return type a bit more precise.
2025-09-18 10:10:07 +01:00
Asger F
2a4d6830ec
JS: An array of constants should be considered "filtered"
2025-09-10 11:07:32 +02:00
Asger F
602dae0592
JS: Add test showing FP
2025-09-10 10:58:34 +02:00
Asger F
36e18c2a89
JS: Enable inline expectations in BuildArtifactLeak
...
The tests already have the annotations, it just seems to have been disable by accident
2025-09-10 10:56:34 +02:00
REDMOND\brodes
74ce7cd188
Crypto: Moving all data flow analyses to taint tracking.
2025-08-28 20:40:05 -04:00
REDMOND\brodes
7c8177de97
Crypto: Added missing ArtifactPassthrough.qll (forgot to add to merged in branch). Acronym casing fix.
2025-08-26 17:12:21 -04:00
Ben Rodes
73b3398b46
Merge pull request #2 from bdrodes/signature_model_refactor_experimental
...
Signature model refactor experimental
2025-08-26 17:05:01 -04:00
REDMOND\brodes
938b47c2ad
Crypto: Debug missing hashes associated with HMAC. EVP_PKEY_get1_RSA is now just a passthrough, it is not a known implicit operation call. Some final operations generating null outputs are now removed from possible final operartions (typically used to determine buffer lenghth and not actually performing the operation). Misc. false positive/error fixes and code clean up, and added missing models.
2025-08-26 16:07:04 -04:00
REDMOND\brodes
422352c632
Crypto: Continued refactoring of operation steps and bug fixes.
2025-08-26 11:49:26 -04:00
REDMOND\brodes
48dc280e6c
Crypto: Fix issue with OAEP padding edges regressing.
2025-08-26 08:51:52 -04:00
REDMOND\brodes
5d29240f27
Crypto: OperationStep overhaul to account for errors and missing interproc flow.
2025-08-25 16:59:09 -04:00
REDMOND\brodes
b7ceeb399f
Crypto: nodes.expected update and removed dead code from Language.qll
2025-08-22 14:50:31 -04:00
REDMOND\brodes
ec7e41cb30
Crypto: Fixed issues in CBOM representations (gaps in the underlying model) and simplified unit tests in terms of the graph complexity to aid visual assessments of model correctness.
2025-08-21 15:05:45 -04:00
REDMOND\brodes
30a07763e8
Crypto: Copilot suggested code changes.
2025-08-20 13:28:28 -04:00
REDMOND\brodes
33aa6c94df
Crypto: Adding tests for reuse nonce query for JAVA/JCA.
2025-08-20 13:21:18 -04:00
Ben Rodes
65ff72719e
Merge branch 'main' into signature_model_refactor
2025-08-20 12:34:06 -04:00
Marcono1234
adf01e76cd
Doc: Fix link to warnOnImplicitThis GitHub docs
2025-08-07 16:02:36 +02:00
REDMOND\brodes
a98f4c29d3
Crypto: Code scanning warning fix.
2025-07-01 12:26:50 -04:00
REDMOND\brodes
ff93045938
Crypto: remove JCA bad import.
2025-07-01 12:21:51 -04:00
REDMOND\brodes
88d36aa574
Crypto: Intermediate JCA updates to support new MAC model. Work in progress.
2025-07-01 12:19:15 -04:00
REDMOND\brodes
0270fac4e7
Crypto: Update model to have a mac operation instance that extends the signature or mac operation instance.
2025-07-01 11:51:40 -04:00
REDMOND\brodes
d32e09ac37
Crypto: Misc. cleanup and completed model refactor for Mac. Passing tests for openssl, refactor still required for JCA.
2025-07-01 10:37:09 -04:00
REDMOND\brodes
8b64a72fe1
Crypto: Initial sketch for refactoring MAC and signatures to account for APIs having one function to do both. Incomplete. Work in progress.
2025-06-30 15:36:55 -04:00
REDMOND\brodes
e6b363b81b
Crypto: fix Ql-for-QL alerts.
2025-06-30 11:08:30 -04:00
REDMOND\brodes
eba120444e
Merge branch 'main' into openssl_padding_refactor
2025-06-27 13:54:27 -04:00
REDMOND\brodes
97cd083f65
Merge branch 'operation_step_refactor' into openssl_padding_refactor
...
# Conflicts:
# cpp/ql/lib/experimental/quantum/OpenSSL/AlgorithmInstances/AlgToAVCFlow.qll
# cpp/ql/lib/experimental/quantum/OpenSSL/AlgorithmInstances/PaddingAlgorithmInstance.qll
2025-06-27 09:42:06 -04:00
REDMOND\brodes
6e5734adca
Crypto: Fix openssl padding to propery link async padding to hashing configs.
2025-06-26 09:18:30 -04:00