Simon Friis Vindum
|
9e8735f84c
|
Merge pull request #20878 from paldepind/rust/axum-model
Rust: Add models for Axum
|
2025-12-17 15:47:28 +01:00 |
|
Tom Hvitved
|
47e375f6e4
|
Merge pull request #21057 from hvitved/rust/fix-bad-join
Rust: Fix bad join
|
2025-12-17 15:34:45 +01:00 |
|
Tom Hvitved
|
5c604fce48
|
Rust: Fix bad join
Before
```
Evaluated relational algebra for predicate TypeInference::MethodResolution::MethodCall.getTrait/0#dispred#fc13ba6e@914858bt with tuple counts:
153112 ~2% {2} r1 = SCAN `Operation::Operation.isOverloaded/3#f0e64084` OUTPUT In.0, In.1
153112 ~2% {2} | STREAM DEDUP
18807 ~0% {2} r2 = JOIN `TypeInference::getCallExprTraitQualifier/1#c084fe9f` WITH TypeInference::MethodResolution::MethodCallCallExpr#6eae461f ON FIRST 1 OUTPUT Lhs.0, Lhs.1
65859035 ~3% {3} r3 = JOIN `_IndexExpr::Generated::IndexExpr#9975e37a_TypeInference::MethodResolution::MethodCallIndexExpr.isInM__#shared` WITH Trait::Generated::Trait#ecf50173 CARTESIAN PRODUCT OUTPUT Rhs.0, _, Lhs.0
65859035 ~0% {3} | REWRITE WITH Out.1 := "core::ops::index::Index"
11191 ~0% {2} | JOIN WITH `Addressable::Addressable.getCanonicalPath/0#dispred#6044348f#bb` ON FIRST 2 OUTPUT Lhs.2, Lhs.0
671 ~0% {1} r4 = JOIN IndexExpr::Generated::IndexExpr#9975e37a WITH `TypeInference::MethodResolution::MethodCallIndexExpr.isInMutableContext/0#dispred#8c8ad425` ON FIRST 1 OUTPUT Lhs.0
3948835 ~2% {3} | JOIN WITH Trait::Generated::Trait#ecf50173 CARTESIAN PRODUCT OUTPUT Rhs.0, _, Lhs.0
3948835 ~2% {3} | REWRITE WITH Out.1 := "core::ops::index::IndexMut"
671 ~1% {2} | JOIN WITH `Addressable::Addressable.getCanonicalPath/0#dispred#6044348f#bb` ON FIRST 2 OUTPUT Lhs.2, Lhs.0
183781 ~0% {2} r5 = r1 UNION r2 UNION r3 UNION r4
return r5
```
After
```
Evaluated relational algebra for predicate TypeInference::MethodResolution::MethodCall.getTrait/0#dispred#fc13ba6e@1b4a55e3 with tuple counts:
153112 ~2% {2} r1 = SCAN `Operation::Operation.isOverloaded/3#f0e64084` OUTPUT In.0, In.1
153112 ~2% {2} | STREAM DEDUP
11191 ~0% {2} r2 = JOIN `_IndexExpr::Generated::IndexExpr#9975e37a_TypeInference::MethodResolution::MethodCallIndexExpr.isInM__#shared` WITH Stdlib::IndexTrait#e80543a5 CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0
18807 ~0% {2} r3 = JOIN `TypeInference::getCallExprTraitQualifier/1#c084fe9f` WITH TypeInference::MethodResolution::MethodCallCallExpr#6eae461f ON FIRST 1 OUTPUT Lhs.0, Lhs.1
671 ~0% {1} r4 = JOIN IndexExpr::Generated::IndexExpr#9975e37a WITH `TypeInference::MethodResolution::MethodCallIndexExpr.isInMutableContext/0#dispred#8c8ad425` ON FIRST 1 OUTPUT Lhs.0
671 ~1% {2} | JOIN WITH Stdlib::IndexMutTrait#4d6c31bd CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0
183781 ~0% {2} r5 = r1 UNION r2 UNION r3 UNION r4
return r5
```
|
2025-12-17 11:52:28 +01:00 |
|
Tom Hvitved
|
eb56cbd358
|
Rust: Fix candidate receiver type calculation for trait bounds
|
2025-12-17 11:06:27 +01:00 |
|
Tom Hvitved
|
802c465b31
|
Merge pull request #21027 from hvitved/rust/type-inference-matching-specialization
Rust: Also use specialized types when inferring types for calls
|
2025-12-17 11:03:44 +01:00 |
|
Tom Hvitved
|
fe0ce7a492
|
Address review comments
|
2025-12-17 10:35:28 +01:00 |
|
Simon Friis Vindum
|
420dd9ab61
|
Rust: Add change note for Axum models
|
2025-12-16 15:15:22 +01:00 |
|
Simon Friis Vindum
|
63329b47d8
|
Merge pull request #21036 from paldepind/rust/prioritize-manual-summaries
Rust: Don't apply generated models for functions that have a manual model
|
2025-12-16 12:47:27 +01:00 |
|
Simon Friis Vindum
|
cbdab99497
|
Rust: Add XSS sink for Axum HTML response creation
|
2025-12-16 12:41:44 +01:00 |
|
Simon Friis Vindum
|
fbf9f7eda7
|
Rust: Add models for Axum
|
2025-12-16 12:41:32 +01:00 |
|
Simon Friis Vindum
|
8c4b81ebc7
|
Rust: Fix typo in comment
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
2025-12-16 10:19:01 +01:00 |
|
Simon Friis Vindum
|
477e1cd96c
|
Rust: Fix manual model for PathBuf::as_path
|
2025-12-16 09:25:42 +01:00 |
|
Tom Hvitved
|
74ed18a89f
|
Merge pull request #21035 from hvitved/rust/ord-models
Rust: Add models for `core::cmp::Ord::{min,max,clamp}`
|
2025-12-15 17:09:33 +01:00 |
|
Simon Friis Vindum
|
1b70111dd2
|
Rust: Don't apply generated models for functions that have a manual model
|
2025-12-15 14:25:49 +01:00 |
|
Tom Hvitved
|
3239afb278
|
Rust: Also use specialized types when inferring types for calls
|
2025-12-15 13:10:37 +01:00 |
|
Óscar San José
|
2824c98efb
|
Merge pull request #21025 from github/oscarsj/mergeback-rc-3-20-into-main
Mergeback rc/3.20 into main
|
2025-12-15 11:59:58 +01:00 |
|
Tom Hvitved
|
fc49360e81
|
Rust: Add models for core::cmp::Ord::{min,max,clamp}
|
2025-12-15 11:52:05 +01:00 |
|
Tom Hvitved
|
b61a439491
|
Merge pull request #21020 from hvitved/shared/source-sink-provenance-prio
Shared: Prefer source/sink models with manual provenance over generated
|
2025-12-12 16:01:06 +01:00 |
|
Óscar San José
|
d972af9ef8
|
Merge branch 'main' of https://github.com/github/codeql into oscarsj/mergeback-rc-3-20-into-main
|
2025-12-12 13:22:08 +01:00 |
|
Tom Hvitved
|
0b81d44ec7
|
Rust: Apply same filtering of generated summaries as in C# and Java
|
2025-12-12 11:16:16 +01:00 |
|
Simon Friis Vindum
|
4425891352
|
Rust: Don't propagate impl in return position into function bodies
|
2025-12-12 09:13:04 +01:00 |
|
Simon Friis Vindum
|
e13bb0f866
|
Merge pull request #20879 from paldepind/rust/reads-as-taint
Rust: Lift content reads as taint steps
|
2025-12-11 16:05:29 +01:00 |
|
Simon Friis Vindum
|
74a77a7c3c
|
Rust: Fix typo in change note
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
|
2025-12-11 15:04:25 +01:00 |
|
Simon Friis Vindum
|
8c39472d73
|
Rust: Add change note for reads as taint steps
|
2025-12-11 09:09:12 +01:00 |
|
Tom Hvitved
|
d5a95a8099
|
Rust: Strengthen isNotInstantiationOf uses
|
2025-12-10 20:48:21 +01:00 |
|
Simon Friis Vindum
|
efbc0934c4
|
Rust: Do not use types to limit lifting of reads to taint steps
|
2025-12-10 14:35:24 +01:00 |
|
Simon Friis Vindum
|
fe37e3d9be
|
Rust: Address PR feedback
|
2025-12-10 14:35:23 +01:00 |
|
Simon Friis Vindum
|
273eb19b88
|
Rust: Apply suggestions from code review
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com>
|
2025-12-10 14:35:22 +01:00 |
|
Simon Friis Vindum
|
5ba4e30c20
|
Rust: Exclude range start and end from field taint steps
|
2025-12-10 14:35:20 +01:00 |
|
Simon Friis Vindum
|
647bed9e2f
|
Rust: Add extensible predicate to exclude fields and block fieldless enum types
|
2025-12-10 14:35:19 +01:00 |
|
Simon Friis Vindum
|
6fcd8d194a
|
Rust: Refactor flow summary implementation
|
2025-12-10 14:35:18 +01:00 |
|
Simon Friis Vindum
|
0f97e7e29d
|
Rust: Remov unneeded model
|
2025-12-10 14:35:16 +01:00 |
|
Simon Friis Vindum
|
8a0e5b5675
|
Rust: Lift content reads as taint steps
|
2025-12-10 14:35:14 +01:00 |
|
Simon Friis Vindum
|
7d1acbcb87
|
Rust: Restrict the scope of DereferenceSink to dereferences of raw pointers
|
2025-12-10 11:35:28 +01:00 |
|
Tom Hvitved
|
a5f513f178
|
Merge pull request #20954 from hvitved/rust/stats-more-calls
Rust: Include more calls in DB quality metrics
|
2025-12-09 14:14:07 +01:00 |
|
github-actions[bot]
|
2854330759
|
Post-release preparation for codeql-cli-2.23.8
|
2025-12-08 15:49:10 +00:00 |
|
github-actions[bot]
|
66c51e979e
|
Release preparation for version 2.23.8
|
2025-12-08 14:38:23 +00:00 |
|
Tom Hvitved
|
0280771c51
|
Merge pull request #20953 from hvitved/rust/data-flow-call-models
Rust: Model more data flow constructs as calls using MaD
|
2025-12-08 15:22:02 +01:00 |
|
Tom Hvitved
|
57ce2ee749
|
Address review comments
|
2025-12-08 13:27:36 +01:00 |
|
Simon Friis Vindum
|
cd6429a39e
|
Merge pull request #20969 from paldepind/rust/dispath-default-trait
Rust: Do not dispatch to all implementations when trait target is accurate
|
2025-12-08 10:45:55 +01:00 |
|
Geoffrey White
|
24852c6664
|
Merge pull request #20966 from geoffw0/lifetimetest
Rust: Fix FPs from rust/access-after-lifetime-ended
|
2025-12-08 09:03:51 +00:00 |
|
Óscar San José
|
bc6133de5c
|
Merge branch 'main' of https://github.com/github/codeql into oscarsj/merge-back-rc-3.20
|
2025-12-05 19:31:47 +01:00 |
|
Geoffrey White
|
108db75124
|
Update rust/ql/lib/codeql/rust/security/AccessAfterLifetimeExtensions.qll
Co-authored-by: Simon Friis Vindum <paldepind@github.com>
|
2025-12-05 13:19:38 +00:00 |
|
Simon Friis Vindum
|
f200dba7dd
|
Rust: Add change note
|
2025-12-05 14:12:58 +01:00 |
|
Simon Friis Vindum
|
fa4b212020
|
Rust: Fix grammar
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
2025-12-05 14:03:29 +01:00 |
|
Simon Friis Vindum
|
5888ed30bd
|
Rust: Do not dispatch to all implementations when trait target is accurate
|
2025-12-05 13:01:22 +01:00 |
|
Tom Hvitved
|
12a6dcc4ff
|
Rust: Remove some predicates
|
2025-12-05 12:50:36 +01:00 |
|
Tom Hvitved
|
5a5679bd51
|
Rust: Taint flow through operations using MaD
|
2025-12-05 09:19:03 +01:00 |
|
Tom Hvitved
|
294c489fd8
|
Rust: Handle x[y] expressions as *.index(y) calls in data flow
|
2025-12-05 09:18:59 +01:00 |
|
Tom Hvitved
|
e72c8acb6c
|
Rust: Add data flow tests for collections
|
2025-12-05 09:16:57 +01:00 |
|