Files
VeraCrypt/src/Platform
9cfce29514 Use direct burn in BufferPtr::Erase and guard token keyfile data (#1816)
BufferPtr::Erase() previously delegated to Zero()/memset even though
its current callers use it to wipe sensitive data. Expand burn()
directly in the inline Erase implementation, matching VeraCrypt's
established erasure design without adding an out-of-line wrapper.

Install vector-referencing cleanup guards before token keyfile reads
and fetches in the four GUI and text-mode import/export paths. This
ensures partially populated data is wiped when an operation throws
and avoids retaining a stale BufferPtr if the vector reallocates.

Reject empty token exports before accessing vector::front().
Memory::Zero(), Buffer::Erase(), and the existing password guards
remain unchanged.

Co-authored-by: Damian Rickard <damian@rickard.us>
2026-10-14 11:42:51 +02:00
..
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-09-30 20:12:20 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-09-30 20:12:20 +09:00
2026-06-09 09:56:25 +09:00
2026-09-30 20:12:20 +09:00
2026-09-30 20:12:20 +09:00
2026-09-30 20:12:20 +09:00
2026-09-30 20:12:20 +09:00
2026-09-30 20:12:20 +09:00
2026-06-09 09:56:25 +09:00
2026-09-30 20:12:20 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00
2026-06-25 14:40:34 +09:00
2026-06-09 09:56:25 +09:00
2026-06-09 09:56:25 +09:00