X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=cfg.go;h=41e8505055ed4172c2f5214c48e7297a1f504384;hb=8b367e01f9433e383c39ba1121c9e97d1909667f;hp=1aa243a8c901064442cfcca2f2ba7978d9d79848;hpb=a65ca9f1e9917d3c8193297ce20b59352a009c55;p=godlighty.git diff --git a/cfg.go b/cfg.go index 1aa243a..41e8505 100644 --- a/cfg.go +++ b/cfg.go @@ -1,19 +1,17 @@ -/* -godlighty -- highly-customizable HTTP, HTTP/2, HTTPS server -Copyright (C) 2021 Sergey Matveev - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, version 3 of the License. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ +// godlighty -- highly-customizable HTTP, HTTP/2, HTTPS server +// Copyright (C) 2021-2024 Sergey Matveev +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, version 3 of the License. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . package godlighty @@ -25,18 +23,29 @@ type TLSCfg struct { Cert string Key string CACert string + + // Require client authentication + ClientCAs []string +} + +type AuthCfg struct { + Passwords string + Realm string } type Hook func(http.ResponseWriter, *http.Request) bool type HostCfg struct { - Root string - TLS *TLSCfg - DirList bool - WebDAV bool - Hooks []Hook - - Indexes []string + Root string + ECDSATLS *TLSCfg + EdDSATLS *TLSCfg + GOSTTLS *TLSCfg + DirList bool + WebDAV bool + Hooks []Hook + Auth *AuthCfg + + Indices []string Readmes []string MIMEs map[string]string }