Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-48m6-wm5p-rr6h

Опубликовано: 14 нояб. 2023
Источник: github
Github: Прошло ревью

Описание

Insufficient covariance check makes self_cell unsound

All public versions prior to 1.02 used an insufficient check to ensure that users correctly marked the dependent type as either covariant or not_covariant. This allowed users to mark a dependent as covariant even though its type was not covariant but invariant, for certain invariant types involving trait object lifetimes. One example for such a dependent type is type Dependent<'a> = RefCell<Box<dyn fmt::Display + 'a>>. Such a type allowed unsound usage in purely safe user code that leads to undefined behavior. The patched versions now produce a compile time error if such a type is marked as covariant.

Пакеты

Наименование

self_cell

rust
Затронутые версииВерсия исправления

< 0.10.3

0.10.3

Наименование

self_cell

rust
Затронутые версииВерсия исправления

>= 1.0.0, < 1.0.2

1.0.2