mirror of
https://github.com/hoernschen/dendrite.git
synced 2025-08-02 14:12:47 +00:00
Configuration format v1 (#1230)
* Initial pass at refactoring config (not finished) * Don't forget current state and EDU servers * More shifting around * Update server key API tests * Fix roomserver test * Fix more tests * Further tweaks * Fix current state server test (sort of) * Maybe fix appservices * Fix client API test * Include database connection string in database options * Fix sync API build * Update config test * Fix unit tests * Fix federation sender build * Fix gobind build * Set Listen address for all services in HTTP monolith mode * Validate config, reinstate appservice derived in directory, tweaks * Tweak federation API test * Set MaxOpenConnections/MaxIdleConnections to previous values * Update generate-config
This commit is contained in:
parent
fdabba1851
commit
4b09f445c9
155 changed files with 1716 additions and 1503 deletions
33
internal/config/config_federationapi.go
Normal file
33
internal/config/config_federationapi.go
Normal file
|
@ -0,0 +1,33 @@
|
|||
package config
|
||||
|
||||
import "github.com/matrix-org/gomatrixserverlib"
|
||||
|
||||
type FederationAPI struct {
|
||||
Matrix *Global `yaml:"-"`
|
||||
|
||||
Listen Address `yaml:"listen"`
|
||||
Bind Address `yaml:"bind"`
|
||||
|
||||
// List of paths to X509 certificates used by the external federation listeners.
|
||||
// These are used to calculate the TLS fingerprints to publish for this server.
|
||||
// Other matrix servers talking to this server will expect the x509 certificate
|
||||
// to match one of these certificates.
|
||||
// The certificates should be in PEM format.
|
||||
FederationCertificatePaths []Path `yaml:"federation_certificates"`
|
||||
|
||||
// A list of SHA256 TLS fingerprints for the X509 certificates used by the
|
||||
// federation listener for this server.
|
||||
TLSFingerPrints []gomatrixserverlib.TLSFingerprint `yaml:"-"`
|
||||
}
|
||||
|
||||
func (c *FederationAPI) Defaults() {
|
||||
c.Listen = "localhost:7772"
|
||||
c.Bind = "localhost:7772"
|
||||
}
|
||||
|
||||
func (c *FederationAPI) Verify(configErrs *ConfigErrors, isMonolith bool) {
|
||||
checkNotEmpty(configErrs, "federation_api.listen", string(c.Listen))
|
||||
checkNotEmpty(configErrs, "federation_api.bind", string(c.Bind))
|
||||
// TODO: not applicable always, e.g. in demos
|
||||
//checkNotZero(configErrs, "federation_api.federation_certificates", int64(len(c.FederationCertificatePaths)))
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue