In Rust time crate from version 0.2.7 and before version 0.2.23, unix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires the user to set any environment variable in a different thread than the affected functions. The affected functions are time::UtcOffset::local_offset_at, time::UtcOffset::try_local_offset_at, time::UtcOffset::current_local_offset, time::UtcOffset::try_current_local_offset, time::OffsetDateTime::now_local and time::OffsetDateTime::try_now_local. Non-Unix targets are unaffected. This includes Windows and wasm. The issue was introduced in version 0.2.7 and fixed in version 0.2.23.
A NULL pointer dereference occurs when the application dereferences a pointer that it expects to be valid, but is NULL, typically causing a crash or exit.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Time | Time_project | 0.2.7 (including) | 0.2.23 (excluding) |
Rust-time | Ubuntu | groovy | * |
Rust-time | Ubuntu | hirsute | * |
Rust-time | Ubuntu | impish | * |
Rust-time | Ubuntu | kinetic | * |
Rust-time | Ubuntu | lunar | * |
Rust-time | Ubuntu | mantic | * |
Rust-time | Ubuntu | trusty | * |