]> Sergey Matveev's repositories - godlighty.git/blobdiff - media.go
.xht
[godlighty.git] / media.go
index dec08224bcb928ed134b11ee87e9694ce7d5cf12..aabb5b8a76bb16b58512b4aa3ca13c808bc649fc 100644 (file)
--- a/media.go
+++ b/media.go
@@ -1,6 +1,6 @@
 /*
 godlighty -- highly-customizable HTTP, HTTP/2, HTTPS server
-Copyright (C) 2021 Sergey Matveev <stargrave@stargrave.org>
+Copyright (C) 2021-2023 Sergey Matveev <stargrave@stargrave.org>
 
 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
@@ -21,20 +21,23 @@ import "path"
 
 const OctetStream = "application/octet-stream"
 
-var ContentTypes = make(map[string]string)
+var (
+       ContentTypes             = make(map[string]string)
+       CompressibleContentTypes = make(map[string]struct{})
+)
 
-func mediaType(fn string, override map[string]string) string {
+func mediaType(fn string, overrides map[string]string) string {
        ext := path.Ext(fn)
        if ext == "" {
                ext = fn
        }
-       if ct := override[ext]; ct != "" {
+       if ct := overrides[ext]; ct != "" {
                return ct
        }
        if ct := ContentTypes[ext]; ct != "" {
                return ct
        }
-       if ct := override[""]; ct != "" {
+       if ct := overrides[""]; ct != "" {
                return ct
        }
        return OctetStream