From 059d44027018f1eaa69d3a0f9779da78eb651ced Mon Sep 17 00:00:00 2001 From: tjpcc Date: Tue, 10 Oct 2023 18:30:22 -0600 Subject: identify and error on conflicting servertls directives on merged gemini servers fixes #7 --- gemini.go | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'gemini.go') diff --git a/gemini.go b/gemini.go index 975b62b..f48f3ac 100644 --- a/gemini.go +++ b/gemini.go @@ -59,9 +59,16 @@ func buildGeminiServers(servers []Server, config *Configuration) ([]sr.Server, e } var tlsConfig *tls.Config + var keyfile, certfile string for _, config := range configs { + if (keyfile != "" && config.tlsKeyFile == keyfile) || (certfile != "" && config.tlsCertFile == certfile) { + return nil, errors.New("conflicting 'servertls' directives for gemini server") + } + if config.TLS != nil { tlsConfig = config.TLS + keyfile = config.tlsKeyFile + certfile = config.tlsCertFile break } } -- cgit v1.2.3