Expand description
Loads and validates server configuration.
Configuration types preserve startup sources for reloads and expose typed settings to the rest of the workspace. Field documentation also supplies the generated example configuration.
Re-exportsΒ§
pub use self::check::check;pub use self::ip_source::IpSource;pub use self::manager::Manager;pub use self::sources::Sources;
ModulesΒ§
- check
- Validates configuration before startup and reload.
- identity_
provider_ πserde - ip_
source - Defines sources for trusted client IP extraction.
- manager
- Maintains the active reloadable configuration.
- net π
- proxy
- Defines outbound proxy configuration and domain matching.
- regenerate π
- room_
version - Defines supported Matrix room-version policy.
- sources
- Defines the inputs used to assemble configuration.
- well_
known - Converts discovery configuration into Matrix API values.
StructsΒ§
- AppService
- Defines one inline Matrix application service registration.
- AppService
Namespace - Defines one namespace claimed by an application service.
- Config
- All the config options for tuwunel.
- Figment
- Combiner of [
Provider]s for configuration value extraction. - Identity
Provider - Configures one OpenID Connect identity provider.
- JwtConfig
- Configures authentication using JSON Web Tokens.
- Ldap
Config - Configures LDAP authentication and directory-backed administration.
- Regenerate
Options - Selects how an existing configuration is regenerated.
- Regeneration
Summary - Summarizes a completed configuration regeneration.
- Smtp
Config - Configures outbound email verification through SMTP.
- Storage
Provider Local - Configures local filesystem object storage.
- Storage
Provider S3 - Configures an S3-compatible object storage provider.
- Support
Contact - Defines a contact published by the support discovery endpoint.
- Support
Policy - Defines one policy published by the support discovery endpoint.
- Support
Policy Translation - Defines one localized support policy document.
- Terms
Policy - Defines a policy document required during registration.
- Terms
Policy Translation - Defines one localized registration policy document.
- TlsConfig
- Configures direct TLS listener behavior.
- Well
Known Config - Configures Matrix discovery documents and related response data.
EnumsΒ§
- Figment
Value - An enum representing all possible figment value variants.
- Overwrite
- Selects whether an existing output may be replaced.
- Storage
Provider - Selects the backend for a named media storage provider.
ConstantsΒ§
- ENV_
PREFIXES π - TUWUNEL_
CONFIG_ πSECTION_ APPSERVICE - TUWUNEL_
CONFIG_ πSECTION_ APPSERVICENAMESPACE - TUWUNEL_
CONFIG_ πSECTION_ CONFIG - TUWUNEL_
CONFIG_ πSECTION_ IDENTITYPROVIDER - TUWUNEL_
CONFIG_ πSECTION_ JWTCONFIG - TUWUNEL_
CONFIG_ πSECTION_ LDAPCONFIG - TUWUNEL_
CONFIG_ πSECTION_ SMTPCONFIG - TUWUNEL_
CONFIG_ πSECTION_ STORAGEPROVIDERLOCAL - TUWUNEL_
CONFIG_ πSECTION_ STORAGEPROVIDER S3 - TUWUNEL_
CONFIG_ πSECTION_ SUPPORTCONTACT - TUWUNEL_
CONFIG_ πSECTION_ SUPPORTPOLICY - TUWUNEL_
CONFIG_ πSECTION_ SUPPORTPOLICYTRANSLATION - TUWUNEL_
CONFIG_ πSECTION_ TERMSPOLICY - TUWUNEL_
CONFIG_ πSECTION_ TERMSPOLICYTRANSLATION - TUWUNEL_
CONFIG_ πSECTION_ TLSCONFIG - TUWUNEL_
CONFIG_ πSECTION_ WELLKNOWNCONFIG
StaticsΒ§
- DEPRECATED_
KEYS π - Items listed here generate a deprecation warning when configured.
- KNOWN_
KEYS π - Items matched here will not generate an βunknown to tuwunelβ warning when
configured. This is important for environment variables which share the
TUWUNEL_prefix namespace but arenβt config items; match them here in their split+lowercased format.
FunctionsΒ§
- default_
access_ πtoken_ ttl - default_
admin_ πlog_ capture - default_
admin_ πoutput_ max_ events - default_
admin_ πroom_ tag - default_
appservice_ πidle_ timeout - default_
appservice_ πtimeout - default_
auth_ πchain_ cache_ capacity - default_
cache_ πcapacity_ modifier - default_
client_ πreceive_ timeout - default_
client_ πrequest_ timeout - default_
client_ πresponse_ timeout - default_
client_ πshutdown_ timeout - default_
client_ πsync_ timeout_ default - default_
client_ πsync_ timeout_ max - default_
client_ πsync_ timeout_ min - default_
conduit_ πmedia_ directory_ depth - default_
conduit_ πmedia_ directory_ length - default_
database_ πbackups_ to_ keep - default_
database_ πpath - default_
db_ πcache_ capacity_ mb - default_
db_ πpool_ max_ workers - default_
db_ πpool_ queue_ mult - default_
db_ πpool_ workers - default_
db_ πpool_ workers_ limit - default_
db_ πwrite_ buffer_ capacity_ mb - default_
default_ room_ version - Returns the default Matrix room version.
- default_
deprioritize_ πjoins_ through_ servers - default_
dns_ πattempts - default_
dns_ πcache_ entries - default_
dns_ πmin_ ttl - default_
dns_ πmin_ ttl_ nxdomain - default_
dns_ πtimeout - default_
eventid_ πbackoff_ cache_ capacity - default_
eventid_ πpdu_ cache_ capacity - default_
eventidshort_ πcache_ capacity - default_
federation_ πidle_ per_ host - default_
federation_ πidle_ timeout - default_
federation_ πkeys_ timeout - default_
federation_ πtimeout - default_
fetch_ πprev_ wait_ ms - default_
forward_ πextremities_ emergency_ max - default_
forward_ πextremities_ max - default_
forward_ πextremities_ prune_ batch - default_
ip_ πlookup_ strategy - default_
ip_ πrange_ denylist - default_
jaeger_ πfilter - default_
jwt_ πalgorithm - default_
jwt_ πformat - default_
ldap_ πsearch_ filter - default_
ldap_ πuid_ attribute - default_
log - do debug logging by default for debug builds
- default_
log_ span_ events - Returns the default tracing span-event mode.
- default_
login_ πtoken_ ttl - default_
max_ πfetch_ prev_ events - default_
max_ πjoin_ attempts_ per_ join_ request - default_
max_ πmake_ join_ attempts_ per_ join_ attempt - default_
max_ πpending_ media_ uploads - default_
max_ πrequest_ size - default_
max_ πresponse_ size - default_
media_ πcreate_ unused_ expiration_ time - default_
media_ πrc_ create_ burst_ count - default_
media_ πrc_ create_ per_ second - default_
media_ πstorage_ providers - default_
media_ πthumbnail_ max_ pixels - default_
media_ πvideo_ thumbnail_ concurrency - default_
media_ πvideo_ thumbnail_ max_ size - default_
media_ πvideo_ thumbnail_ timeout - default_
mediaid_ πlazycontent_ cache_ capacity - default_
multipart_ πpart_ size - default_
multipart_ πthreshold - default_
new_ πuser_ displayname_ suffix - default_
notification_ πpush_ path - default_
one_ πtime_ key_ limit - default_
openid_ πtoken_ ttl - default_
pdu_ πcache_ capacity - default_
policy_ πserver_ request_ timeout - default_
port π - default_
presence_ πidle_ timeout_ s - default_
presence_ πoffline_ timeout_ s - default_
pusher_ πidle_ timeout - default_
redaction_ πretention_ seconds - default_
refresh_ πtoken_ reuse_ grace - default_
rendezvous_ πmax_ sessions - default_
rendezvous_ πrc_ burst_ count - default_
rendezvous_ πrc_ per_ second - default_
rendezvous_ πsession_ max_ bytes - default_
rendezvous_ πsession_ ttl - default_
request_ πconn_ timeout - default_
request_ πidle_ per_ host - default_
request_ πidle_ timeout - default_
request_ πtimeout - default_
request_ πtotal_ timeout - default_
resolve_ πstate_ locally_ max - default_
resolver_ πcache_ capacity - default_
rocksdb_ πbottommost_ compression_ level - Default RocksDB compression level is 32767, which is internally read by
RocksDB as the default magic number and translated to the libraryβs default
compression level as they all differ. See their
kDefaultCompressionLevel. - default_
rocksdb_ πcompression_ algo - default_
rocksdb_ πcompression_ level - Default RocksDB compression level is 32767, which is internally read by
RocksDB as the default magic number and translated to the libraryβs default
compression level as they all differ. See their
kDefaultCompressionLevel. - default_
rocksdb_ πlog_ level - default_
rocksdb_ πlog_ time_ to_ roll - default_
rocksdb_ πmax_ log_ file_ size - default_
rocksdb_ πmax_ log_ files - default_
rocksdb_ πparallelism_ threads - default_
rocksdb_ πrecovery_ mode - default_
rocksdb_ πstats_ level - default_
sender_ πidle_ timeout - default_
sender_ πretry_ backoff_ limit - default_
sender_ πretry_ grace - default_
sender_ πshutdown_ timeout - default_
sender_ πtimeout - default_
sentry_ πendpoint - default_
sentry_ πfilter - default_
sentry_ πtraces_ sample_ rate - default_
servername_ πstatus_ cache_ capacity - default_
servernameevent_ πdata_ cache_ capacity - default_
shorteventid_ πcache_ capacity - default_
shortstatekey_ πcache_ capacity - default_
spacehierarchy_ πcache_ ttl_ max - default_
spacehierarchy_ πcache_ ttl_ min - default_
sso_ πgrant_ session_ duration - default_
startup_ πnetburst_ keep - default_
stateinfo_ πcache_ capacity - default_
statekeyshort_ πcache_ capacity - default_
stream_ πamplification - default_
stream_ πwidth_ default - default_
stream_ πwidth_ scale - default_
tracing_ πflame_ filter - default_
tracing_ πflame_ output_ path - default_
trusted_ πserver_ batch_ concurrency - default_
trusted_ πserver_ batch_ size - default_
trusted_ πservers - default_
turn_ πttl - default_
typing_ πclient_ timeout_ max_ s - default_
typing_ πclient_ timeout_ min_ s - default_
typing_ πfederation_ timeout_ s - default_
unix_ πsocket_ perms - default_
url_ πpreview_ max_ media_ size - default_
url_ πpreview_ max_ spider_ size - default_
well_ πknown_ conn_ timeout - default_
well_ πknown_ timeout - example_
config - Renders the example configuration carried by this binary.
- parallelism_
scaled π - parallelism_
scaled_ πf64 - parallelism_
scaled_ πu32 - regenerate_
config - Regenerates the file-backed configuration retained by
sources. - some_
true_ πfn - true_fn π
- write_
example_ config - Writes the example configuration to a filesystem path.