Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Rejected events not handled correctly during state resolution #13797

Open
squahtx opened this issue Sep 13, 2022 · 0 comments
Open

Rejected events not handled correctly during state resolution #13797

squahtx opened this issue Sep 13, 2022 · 0 comments
Labels
A-DAG Directed acyclic graph of events (events connected by prev_events) A-Spec-Compliance places where synapse does not conform to the spec O-Occasional Affects or can be seen by some users regularly or most users rarely S-Minor Blocks non-critical functionality, workarounds exist. T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.

Comments

@squahtx
Copy link
Contributor

squahtx commented Sep 13, 2022

The spec seems to imply that events rejected due to failing auth at their state may be later accepted by state resolution: https://spec.matrix.org/v1.2/rooms/v9/#rejected-events

This might or might not also include events that pass auth at their state, but were rejected because they cite an auth event that didn't pass auth at its state.

Synapse handles this badly, as it does not distinguish between events rejected due to state checks and events rejected because they are malformed, etc. Once Synapse has rejected an event, it expects it to remain rejected and various things break if a rejected event later becomes accepted.

@squahtx squahtx added A-Spec-Compliance places where synapse does not conform to the spec S-Minor Blocks non-critical functionality, workarounds exist. A-DAG Directed acyclic graph of events (events connected by prev_events) O-Occasional Affects or can be seen by some users regularly or most users rarely labels Sep 13, 2022
@DMRobertson DMRobertson added the T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues. label Sep 13, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A-DAG Directed acyclic graph of events (events connected by prev_events) A-Spec-Compliance places where synapse does not conform to the spec O-Occasional Affects or can be seen by some users regularly or most users rarely S-Minor Blocks non-critical functionality, workarounds exist. T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.
Projects
None yet
Development

No branches or pull requests

2 participants