-
- Downloads
Filter out rooms from the room directory being served to other homeservers...
Filter out rooms from the room directory being served to other homeservers when those rooms block that homeserver by their Access Control Lists. (#16759)
The idea here being that the directory server shouldn't advertise rooms
to a requesting server is the requesting server would not be allowed to
join or participate in the room.
<!--
Fixes: # <!-- -->
<!--
Supersedes: # <!-- -->
<!--
Follows: # <!-- -->
<!--
Part of: # <!-- -->
Base: `develop` <!-- git-stack-base-branch:develop -->
<!--
This pull request is commit-by-commit review friendly. <!-- -->
<!--
This pull request is intended for commit-by-commit review. <!-- -->
Original commit schedule, with full messages:
<ol>
<li>
Pass `from_federation_origin` down into room list retrieval code
</li>
<li>
Don't cache /publicRooms response for inbound federated requests
</li>
<li>
fixup! Don't cache /publicRooms response for inbound federated requests
</li>
<li>
Cap the number of /publicRooms entries to 100
</li>
<li>
Simplify code now that you can't request unlimited rooms
</li>
<li>
Filter out rooms from federated requests that don't have the correct ACL
</li>
<li>
Request a handful more when filtering ACLs so that we can try to avoid
shortchanging the requester
</li>
</ol>
---------
Signed-off-by:
Olivier Wilkinson (reivilibre) <oliverw@matrix.org>
Showing
- changelog.d/16759.feature 1 addition, 0 deletionschangelog.d/16759.feature
- synapse/federation/transport/server/__init__.py 5 additions, 2 deletionssynapse/federation/transport/server/__init__.py
- synapse/handlers/room_list.py 127 additions, 50 deletionssynapse/handlers/room_list.py
- tests/handlers/test_room_list.py 88 additions, 0 deletionstests/handlers/test_room_list.py
Loading
Please register or sign in to comment