forked-synapse/synapse
Eric Eastwood b07b14b494
Federation outbound proxy (#15773)
Allow configuring the set of workers to proxy outbound federation traffic through (`outbound_federation_restricted_to`).

This is useful when you have a worker setup with `federation_sender` instances responsible for sending outbound federation requests and want to make sure *all* outbound federation traffic goes through those instances. Before this change, the generic workers would still contact federation themselves for things like profile lookups, backfill, etc. This PR allows you to set more strict access controls/firewall for all workers and only allow the `federation_sender`'s to contact the outside world.

The original code is from @erikjohnston's branches which I've gotten in-shape to merge.
2023-07-05 18:53:55 -05:00
..
_scripts Add basic read/write lock (#15782) 2023-07-05 17:25:00 +01:00
api Remove experimental MSC2716 implementation to incrementally import history into existing rooms (#15748) 2023-06-16 14:12:24 -05:00
app Federation outbound proxy (#15773) 2023-07-05 18:53:55 -05:00
appservice Consolidate logic to check for deactivated users. (#15634) 2023-05-23 10:35:43 -04:00
config Federation outbound proxy (#15773) 2023-07-05 18:53:55 -05:00
crypto Factor out an is_mine_server_name method (#15542) 2023-05-05 15:06:22 +01:00
events Remove experimental MSC2716 implementation to incrementally import history into existing rooms (#15748) 2023-06-16 14:12:24 -05:00
federation Regularly try to wake up dests instead of waiting for next PDU/EDU (#15743) 2023-06-16 10:15:12 +00:00
handlers Remove experimental MSC2716 implementation to incrementally import history into existing rooms (#15748) 2023-06-16 14:12:24 -05:00
http Federation outbound proxy (#15773) 2023-07-05 18:53:55 -05:00
logging Trace functions which return Awaitable (#15650) 2023-06-06 17:39:22 -05:00
media Add tracing to media /upload endpoint (#15850) 2023-07-05 10:22:21 -05:00
metrics Quick & dirty metric for background update status (#15740) 2023-06-07 17:12:23 +00:00
module_api Add tracing to media /upload endpoint (#15850) 2023-07-05 10:22:21 -05:00
push Remove experimental MSC2716 implementation to incrementally import history into existing rooms (#15748) 2023-06-16 14:12:24 -05:00
replication Add Unix socket support for Redis connections (#15644) 2023-05-26 15:28:39 -04:00
res Use oEmbed for YouTube Shorts (#15025) 2023-05-03 12:54:42 -04:00
rest Add not_user_type param to the list accounts admin API (#15844) 2023-07-04 15:03:20 -07:00
server_notices Remove unused room_alias field from /createRoom response (#15093) 2023-02-22 11:07:28 +00:00
spam_checker_api Fix import in module_api module and docs on the new check_event_for_spam signature (#12918) 2022-05-31 12:04:53 +02:00
state Instrument state and state_group storage related things (tracing) (#15610) 2023-05-19 12:26:58 -05:00
static Remove registration fallback code. (#15405) 2023-04-13 11:36:29 -04:00
storage Add basic read/write lock (#15782) 2023-07-05 17:25:00 +01:00
streams Use mypy 1.0 (#15052) 2023-02-16 16:09:11 +00:00
types Fix empty scope when having version mismatch between workers (#15774) 2023-06-14 11:53:55 +02:00
util Remove support for Python 3.7 (#15851) 2023-07-05 18:45:42 -05:00
__init__.py Remove support for Python 3.7 (#15851) 2023-07-05 18:45:42 -05:00
event_auth.py Remove experimental MSC2716 implementation to incrementally import history into existing rooms (#15748) 2023-06-16 14:12:24 -05:00
notifier.py Move ThirdPartyEventRules into module_api/callbacks (#15535) 2023-05-04 14:18:22 +00:00
py.typed Mark Module API error imports as re-exported and mark Synapse as containing type annotations (#11054) 2021-10-13 08:42:41 +01:00
server.py Remove experimental MSC2716 implementation to incrementally import history into existing rooms (#15748) 2023-06-16 14:12:24 -05:00
visibility.py Log when events are (unexpectedly) filtered out of responses in tests (#14213) 2023-06-01 21:27:18 -05:00