fix(honeypot/naive): implement better IP parsing logic

Signed-off-by: Xe Iaso <me@xeiaso.net>
This commit is contained in:
Xe Iaso 2025-12-16 04:32:45 -05:00
parent 122e4bc072
commit 40afc13d7f
No known key found for this signature in database
2 changed files with 7 additions and 3 deletions

View file

@ -100,6 +100,9 @@ func XForwardedForToXRealIP(next http.Handler) http.Handler {
ip := xff.Parse(xffHeader)
slog.Debug("setting X-Real-Ip from X-Forwarded-For", "to", ip, "x-forwarded-for", xffHeader)
r.Header.Set("X-Real-Ip", ip)
if addr, err := netip.ParseAddr(ip); err == nil {
r = r.WithContext(context.WithValue(r.Context(), realIPKey{}, addr))
}
}
next.ServeHTTP(w, r)