fix: only try to split host/port for RemoteAddr

This commit is contained in:
Evan Buss
2024-08-10 21:52:53 +00:00
parent 6c41117af1
commit 041d8d5e22

View File

@@ -91,13 +91,12 @@ func requestMiddleware(next http.Handler) http.Handler {
id := uuid.New()
requestIP := r.Header.Get("X-Forwarded-For")
if requestIP == "" {
requestIP = r.RemoteAddr
requestIP, _, _ = net.SplitHostPort(r.RemoteAddr)
}
isLocal := true
for _, addr := range strings.Split(requestIP, ", ") {
host, _, _ := net.SplitHostPort(addr)
ip := net.ParseIP(host)
ip := net.ParseIP(addr)
if ip == nil || (!ip.IsPrivate() && !ip.IsLoopback()) {
isLocal = false
break