Commit Graph

2124 Commits

Author SHA1 Message Date
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
Tom Hvitved
d5a95a8099 Rust: Strengthen isNotInstantiationOf uses 2025-12-10 20:48:21 +01:00
Tom Hvitved
f30a3b3712 Rust: Add type inference blowup test 2025-12-10 20:48:18 +01:00
Simon Friis Vindum
c6d2047827 Rust: Update expected files 2025-12-10 15:05:36 +01:00
Simon Friis Vindum
047ea10a9a Rust: Update tests and expected files 2025-12-10 14:35:17 +01:00
Simon Friis Vindum
c5a44cf8ff Rust: Accept changes to expected files 2025-12-10 11:35:32 +01:00
Geoffrey White
506a1ea0b8 Rust: Add test case for rust/access-after-lifetime-ended involving an invalidated reference. 2025-12-10 11:35:31 +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
30b903604d Rust: Update expected test output 2025-12-10 11:02:04 +01:00
Tom Hvitved
fe18e0e414 Merge pull request #20997 from paldepind/rust/fix-expected
Rust: Accept changes to expected files
2025-12-09 14:25:36 +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
Simon Friis Vindum
53ad3282c3 Rust: Accept changes to expected files 2025-12-09 14:01:31 +01: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
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
Simon Friis Vindum
5888ed30bd Rust: Do not dispatch to all implementations when trait target is accurate 2025-12-05 13:01:22 +01:00
Simon Friis Vindum
59ce721f7d Rust: Add global data flow example 2025-12-05 09:38:22 +01:00
Tom Hvitved
5a5679bd51 Rust: Taint flow through operations using MaD 2025-12-05 09:19:03 +01:00
Tom Hvitved
41916640c3 Rust: Taint flow tests for operations 2025-12-05 09:19:02 +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
Tom Hvitved
09461e9cb6 Merge pull request #20967 from hvitved/rust/call-refactor-fix
Rust: Call refactor follow-up fixes
2025-12-05 09:16:18 +01:00
Tom Hvitved
57bca5ca9b Rust: Include more calls in DB quality metrics 2025-12-05 09:15:26 +01:00
Simon Friis Vindum
1a19df2044 Merge pull request #20950 from paldepind/rust/ti-raw-pointer
Rust: Type inference for raw pointers
2025-12-05 09:06:13 +01:00
Tom Hvitved
be1d756de4 Rust: Call refactor follow-up fixes 2025-12-04 21:15:28 +01:00
Geoffrey White
b7402fef09 Merge remote-tracking branch 'upstream/main' into lifetimetest 2025-12-04 17:33:39 +00:00
Geoffrey White
32e9fdfe19 Rust: Fix the false positives. 2025-12-04 17:19:41 +00:00
Tom Hvitved
8b89e15dfa Merge pull request #20863 from hvitved/rust/call-refactor
Rust: Restructure classes representing calls
2025-12-04 17:02:17 +01:00
Simon Friis Vindum
27ddc813af Rust: Cleanup of raw pointer types based in PR feedback 2025-12-04 16:41:28 +01:00
Geoffrey White
8594c7a29a Rust: Add test for rust/access-after-lifetime-ended FP involving generic calls. 2025-12-04 15:28:15 +00:00
Tom Hvitved
bc6d38ebb4 Address review comments 2025-12-04 10:38:47 +01:00
Tom Hvitved
38a572dfa0 Rust: Run codegen 2025-12-03 20:47:05 +01:00
Geoffrey White
2665d8395a Merge pull request #20939 from geoffw0/saltmodel
Rust: Add heuristic sinks for passwords, initialization vectors etc
2025-12-03 18:01:48 +00:00
Simon Friis Vindum
299fed5901 Rust: Apply fixes from code review 2025-12-03 13:04:54 +01:00
Simon Friis Vindum
236df0ab65 Rust: Accept changes to expected files 2025-12-02 15:07:54 +01:00
Simon Friis Vindum
ea1b0a8476 Rust: Fix path resolution for raw pointer types 2025-12-02 14:43:52 +01:00
Simon Friis Vindum
c15e12c9ff Rust: Accept test changes 2025-12-02 14:43:51 +01:00
Simon Friis Vindum
785025f1e3 Rust: Type inference for raw pointers 2025-12-02 14:43:50 +01:00
Simon Friis Vindum
3e7a7d541b Rust: Include certain types in type inference tests 2025-12-02 13:16:33 +01:00
Simon Friis Vindum
6a2502c97a Rust: Add type inference tests for raw pointers 2025-12-02 13:14:09 +01:00
Tom Hvitved
7378fbc567 Rust: Restructure classes representing calls 2025-12-02 10:08:04 +01:00
Tom Hvitved
666855dbd7 Shared: Improvements to content-sensitive model generation 2025-12-01 21:23:14 +01:00
Tom Hvitved
a2782a12f2 Rust: Run codegen 2025-12-01 20:59:28 +01:00
Tom Hvitved
464d2cd5fc Merge pull request #20891 from hvitved/rust/data-flow-implicit-deref-borrow
Rust: Improve handling of implicit derefs/borrows in data flow
2025-12-01 19:03:55 +01:00
Simon Friis Vindum
87d6a60814 Merge pull request #20924 from paldepind/rust/struct-field-tostring
Rust: Implement `toString` for struct fields and visibility
2025-12-01 14:52:23 +01:00
Geoffrey White
450403883b Rust: Add test cases for a small number of FPs we see. 2025-12-01 12:39:18 +00:00
Geoffrey White
e834e8665a Rust: Remove one of the cases that is causing FP results in MRVA. 2025-12-01 12:39:16 +00:00
Geoffrey White
bb50e9fb40 Rust: Add heuristic sinks for rust/hard-coded-cryptographic-value. 2025-12-01 12:39:12 +00:00
Tom Hvitved
6ddb9c784c Merge pull request #20853 from hvitved/rust/path-resolution-impl-self
Rust: Refine `Self` resolution inside `impl` blocks
2025-12-01 12:50:30 +01:00
Tom Hvitved
4bfe1a81dc Rust: Update expected test output following rebase 2025-12-01 11:38:50 +01:00