RustSec logo

History ⋅ Edit ⋅ JSON (OSV)

RUSTSEC-2026-0528

UB can be reached from safe code

Reported
Issued
Package
ref-swap (crates.io)
Type
INFO Unsound
Categories
Keywords
#use-after-free #null-pointer
References
Patched
  • >=0.1.3

Description

The variance of RefSwap and OptionRefSwap were incorrect, possibly allowing use-after-free.

OptionRefSwap::into_inner did not check for null.

The fix is to make RefSwap and OptionRefSwap invariant, and to change OptionRefSwap::into_inner to return an option. It is available in version 0.1.3. If your project still compiles with 0.1.3 then it is not affected by the unsoundness on version 0.1.2

Advisory available under CC0-1.0 license.