func()

in remoteip/parser.go [176:199]


func (p *RemoteIPParser) isTrustedProxy(ip string) bool {
	if ip == "" {
		return false
	}

	parsedIP := net.ParseIP(ip)
	if parsedIP == nil {
		return false
	}

	for _, trustedProxy := range p.TrustedProxies {
		// Handle both CIDR ranges and specific IPs
		if strings.Contains(trustedProxy, "/") {
			_, ipNet, err := net.ParseCIDR(trustedProxy)
			if err == nil && ipNet.Contains(parsedIP) {
				return true
			}
		} else if trustedProxy == ip {
			return true
		}
	}

	return false
}