1
0
Fork
You've already forked ogg
0

Verify that no pages exist after EoS #6

Open
opened 2026年03月16日 22:48:18 +01:00 by SamWhited · 0 comments

If we've found the End-of-Stream (EoS) page, we should continue to scan past it and decide if any future pages belong to this stream and return an error if so. This will take time and isn't ideal, but if we don't it lets badly formatted Ogg files smuggle in hidden data that isn't visible to tools written or read with this library but which may be visible to other Ogg implementations, leading to odd outcomes and possibly security issues.

How exactly we handle this (keep reading as if the EoS marker was the mistake, return an error but allow the user to read past it, etc.) I'm not sure yet.

If we've found the End-of-Stream (EoS) page, we should continue to scan past it and decide if any future pages belong to this stream and return an error if so. This will take time and isn't ideal, but if we don't it lets badly formatted Ogg files smuggle in hidden data that isn't visible to tools written or read with this library but which may be visible to other Ogg implementations, leading to odd outcomes and possibly security issues. How exactly we handle this (keep reading as if the EoS marker was the mistake, return an error but allow the user to read past it, etc.) I'm not sure yet.
Sign in to join this conversation.
No Branch/Tag specified
main
No results found.
Labels
Clear labels
No items
No labels
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
SamWhited/ogg#6
Reference in a new issue
SamWhited/ogg
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?