diff options
author | Matthew Hodgson <matthew@arasphere.net> | 2018-06-28 21:15:06 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-28 21:15:06 +0100 |
commit | fc0e17b3e50d92a600cbb067577f147a966cf3c4 (patch) | |
tree | 2d6b3baad1aa0ed44132d8f9d9352ce9de070cbf /synapse/config/appservice.py | |
parent | Attempt to be more performant on PyPy (#3462) (diff) | |
parent | add test (diff) | |
download | synapse-fc0e17b3e50d92a600cbb067577f147a966cf3c4.tar.xz |
Merge pull request #3465 from matrix-org/matthew/as_ip_lock
add ip_range_whitelist parameter to limit where ASes can connect from
Diffstat (limited to 'synapse/config/appservice.py')
-rw-r--r-- | synapse/config/appservice.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/synapse/config/appservice.py b/synapse/config/appservice.py index 277305e184..0c27bb2fa7 100644 --- a/synapse/config/appservice.py +++ b/synapse/config/appservice.py @@ -17,6 +17,8 @@ from ._base import Config, ConfigError from synapse.appservice import ApplicationService from synapse.types import UserID +from netaddr import IPSet + import yaml import logging @@ -154,6 +156,13 @@ def _load_appservice(hostname, as_info, config_filename): " will not receive events or queries.", config_filename, ) + + ip_range_whitelist = None + if as_info.get('ip_range_whitelist'): + ip_range_whitelist = IPSet( + as_info.get('ip_range_whitelist') + ) + return ApplicationService( token=as_info["as_token"], hostname=hostname, @@ -163,5 +172,6 @@ def _load_appservice(hostname, as_info, config_filename): sender=user_id, id=as_info["id"], protocols=protocols, - rate_limited=rate_limited + rate_limited=rate_limited, + ip_range_whitelist=ip_range_whitelist, ) |