Example #1
0
    def process_request(self, request):
        ips = []

        if 'HTTP_X_FORWARDED_FOR' in request.META:
            xff = [i.strip() for i in
                   request.META['HTTP_X_FORWARDED_FOR'].split(',')]
            ips = [ip for ip in xff if is_valid(ip)]
        else:
            return

        ips.append(request.META['REMOTE_ADDR'])

        known = getattr(settings, 'KNOWN_PROXIES', [])
        ips.reverse()
        for ip in ips:
            request.META['REMOTE_ADDR'] = ip
            if not ip in known:
                break
Example #2
0
    def process_request(self, request):
        ips = []

        if 'HTTP_X_FORWARDED_FOR' in request.META:
            xff = [
                i.strip()
                for i in request.META['HTTP_X_FORWARDED_FOR'].split(',')
            ]
            ips = [ip for ip in xff if is_valid(ip)]
        else:
            return

        ips.append(request.META['REMOTE_ADDR'])

        known = getattr(settings, 'KNOWN_PROXIES', [])
        ips.reverse()
        for ip in ips:
            request.META['REMOTE_ADDR'] = ip
            if not ip in known:
                break
Example #3
0
 def _check(i, v):
     eq_(v, is_valid(i))
Example #4
0
 def _check(i, v):
     eq_(v, is_valid(i))