401 on hidden files/dirs

This commit is contained in:
Stephen McQuay 2013-10-21 19:44:52 -07:00
parent c3bcf30890
commit 4996fa50a2
1 changed files with 6 additions and 0 deletions

View File

@ -6,13 +6,19 @@ import (
"log"
"net/http"
"os"
"strings"
)
var port = flag.Int("port", 8000, "port from which to serve")
var hidden = flag.Bool("hidden", false, "allow serving hidden dirs")
func logger(h http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
log.Printf("%s: %s\n", r.RemoteAddr, r.URL)
if !*hidden && strings.Contains(r.URL.Path, "/.") {
http.Error(w, "hidden files and directories are not allowed", http.StatusUnauthorized)
return
}
h.ServeHTTP(w, r)
})
}