Skip to content

fix: rename data loss, name and full-root panics, BufStream cache coherence - #72

Open
bugadani wants to merge 3 commits into
masterfrom
fix/audit-high
Open

bugadani wants to merge 3 commits into
masterfrom
fix/audit-high

Conversation

@bugadani

Copy link
Copy Markdown
Collaborator
  • Dir::rename writes the new entry before it frees the old one. A full destination no longer loses the file.
  • Short name generation does not panic on a name that starts with a non-ASCII character, or on an empty name.
  • A full FAT12/16 root directory returns NotEnoughSpace, and a write at the 4 GiB file limit returns WriteZero. Before, write returned Ok(0), which made write_all panic.
  • BufStream flushes a dirty cached block before an aligned read that covers it, and discards a cached block that an aligned write replaces.

Fixes #71

bugadani and others added 3 commits October 23, 2026 21:16
…d transfers

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ame panic on non-ASCII and empty names

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…not grow

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BufStream: direct block reads and writes bypass the cached block

1 participant