diff options
author | Neil Alexander <neilalexander@users.noreply.github.com> | 2022-10-26 12:59:19 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-26 12:59:19 +0100 |
commit | f6dea712d2e9c71f6ebe61f90e45a142852432e8 (patch) | |
tree | 981b818ec9ece4e67f1b27ed52f82510aecc465d /setup/config | |
parent | 2a4c7f45b37a9bcd1a37d42b0668e0c3dfb29762 (diff) |
Initial support for multiple server names (#2829)
This PR is the first step towards virtual hosting by laying the
groundwork for multiple server names being configured.
Diffstat (limited to 'setup/config')
-rw-r--r-- | setup/config/config_global.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/setup/config/config_global.go b/setup/config/config_global.go index 784893d2..82577282 100644 --- a/setup/config/config_global.go +++ b/setup/config/config_global.go @@ -14,6 +14,9 @@ type Global struct { // The name of the server. This is usually the domain name, e.g 'matrix.org', 'localhost'. ServerName gomatrixserverlib.ServerName `yaml:"server_name"` + // The secondary server names, used for virtual hosting. + SecondaryServerNames []gomatrixserverlib.ServerName `yaml:"-"` + // Path to the private key which will be used to sign requests and events. PrivateKeyPath Path `yaml:"private_key"` @@ -120,6 +123,18 @@ func (c *Global) Verify(configErrs *ConfigErrors, isMonolith bool) { c.Cache.Verify(configErrs, isMonolith) } +func (c *Global) IsLocalServerName(serverName gomatrixserverlib.ServerName) bool { + if c.ServerName == serverName { + return true + } + for _, secondaryName := range c.SecondaryServerNames { + if secondaryName == serverName { + return true + } + } + return false +} + type OldVerifyKeys struct { // Path to the private key. PrivateKeyPath Path `yaml:"private_key"` |