Security context

What an agent needs to avoid regressing past fixes and find the next vuln in this repo.

microsoft/windows-rs
master @ 0f7fbf4
17
Fixes
0
CVEs
HIGH
Peak severity
7.1%
Coverage
Highlights
Memory Corruption: 6 prior fixes. Scrutinize any change in this area.
bindgen: most-fixed (3 issues). Treat as high-risk during review.
11 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns

The bug types that recur here, drawn from past fixes, not open vulnerabilities.

Memory Safety: Incorrect lifetime annotations during pointer casting or transmutations can allow temporary references to survive beyond their valid lifetime, leading to use-after-free and arbitrary memory corruption. Ensure strict lifetime bounds are explicitly emitted on raw pointer transformations.
Memory Corruption: Writing to uninitialized out-parameters using raw dereference assignment causes Rust's compiler to try dropping the uninitialized memory. Code generation must emit core::ptr::write for raw pointers to bypass Rust's drop semantics.
Thread Safety Violations: Generating WinRT delegate closures as FnMut rather than Fn allow concurrent execution to trigger data races when called from multiple thread boundaries. Enforcing Fn and Send trait constraints on delegates is critical.