Signing works

This commit is contained in:
Melody Becker 2025-04-10 16:40:06 +02:00
parent d272fa90b4
commit da2a89010c
Signed by: mstar
SSH key fingerprint: SHA256:9VAo09aaVNTWKzPW7Hq2LW+ox9OdwmTSHRoD4mlz1yI
19 changed files with 348 additions and 100 deletions

View file

@ -50,7 +50,9 @@ type ConfigAdmin struct {
// The password has to be supplied in the `password` GET form value for all requests
// to /profiling/*
ProfilingPassword string `toml:"profiling_password"`
AllowRegistration bool `toml:"allow_registration"`
// Allow registration on the server
// If disabled, user must be manually created (currently via the debug server)
AllowRegistration bool `toml:"allow_registration"`
}
type ConfigStorage struct {
@ -103,15 +105,32 @@ type ConfigSelf struct {
ServerDisplayName string `toml:"server_display_name"`
}
// Contains experimental features that could be good to have
// but are either in an unstable implementation state
// or maybe not widely supported by other implementations
//
// All features controlled by this config section
// **MUST BE**
// disabled by default
type ConfigExperimental struct {
// Use ED25519 key pairs instead of RSA 2048
// ED25519 keys are shorter and safer, but might not be supported by other
// implementations
// Both are created and stored for each local user. If this flag is enabled,
// Linstrom shares the ED25519 key on request, otherwise the RSA key
UseEd25519Keys bool `toml:"use_ed25519_keys"`
}
type Config struct {
General ConfigGeneral `toml:"general"`
SSL ConfigSSL `toml:"ssl"`
Admin ConfigAdmin `toml:"admin"`
Webauthn ConfigWebAuthn `toml:"webauthn"`
Storage ConfigStorage `toml:"storage"`
Mail ConfigMail `toml:"mail"`
Self ConfigSelf `toml:"self"`
S3 ConfigS3 `toml:"s3"`
General ConfigGeneral `toml:"general"`
SSL ConfigSSL `toml:"ssl"`
Admin ConfigAdmin `toml:"admin"`
Webauthn ConfigWebAuthn `toml:"webauthn"`
Storage ConfigStorage `toml:"storage"`
Mail ConfigMail `toml:"mail"`
Self ConfigSelf `toml:"self"`
S3 ConfigS3 `toml:"s3"`
Experimental ConfigExperimental `toml:"experimental"`
}
var GlobalConfig Config
@ -178,6 +197,9 @@ var defaultConfig Config = Config{
Endpoint: "http://localhost:3900",
UseSSL: false,
},
Experimental: ConfigExperimental{
UseEd25519Keys: false,
},
}
func (gc *ConfigGeneral) GetFullDomain() string {