all repos — legit @ c16d290d3cb1b65ee8820e625c7096a7b303cc60

web frontend for git, written in go

add configurable check for git-daemon-export-ok file

Alan Pearce
commit

c16d290d3cb1b65ee8820e625c7096a7b303cc60

parent

5acac24dede0143e6415d83d94a66017fd3c2692

1 file changed, 15 insertions(+), 1 deletion(-)

changed files
M routes/routes.goroutes/routes.go
@@ -2,6 +2,7 @@ package routes
import ( "compress/gzip" + "errors" "fmt" "html/template" "log"
@@ -52,7 +53,20 @@ log.Printf("securejoin error: %v", err)
d.Write404(w) return } - + if d.c.Repo.CheckGitDaemonExportOk { + gdPath, err := securejoin.SecureJoin(path, "git-daemon-export-ok") + if err != nil { + log.Printf("securejoin error: %v", err) + d.Write404(w) + return + } + if _, err := os.Stat(gdPath); err != nil { + if !errors.Is(err, os.ErrNotExist) { + log.Println(err) + } + continue + } + } gr, err := git.Open(path, "") if err != nil { log.Println(err)