Beispiel #1
0
def form_clean_url(url):
    try:
        if is_url_or_host_banned(url):
            raise ValidationError(_("Invalid URL"))
    except CannotResolveHost:
        raise ValidationError(_("Cannot Resolve URL"))

    return url
Beispiel #2
0
    def testBannedHosts(self):
        self.assertTrue(is_url_or_host_banned('anything.commcarehq.org'))

        for i in sample_range(0, 255):
            for j in sample_range(0, 255):
                for k in sample_range(0, 255):
                    self.assertTrue(is_url_or_host_banned('10.%s.%s.%s' % (i, j, k)))

        for i in sample_range(16, 31):
            for j in sample_range(0, 255):
                for k in sample_range(0, 255):
                    self.assertTrue(is_url_or_host_banned('172.%s.%s.%s' % (i, j, k)))

        for i in sample_range(0, 255):
            for j in sample_range(0, 255):
                self.assertTrue(is_url_or_host_banned('192.168.%s.%s' % (i, j)))

        self.assertTrue(is_url_or_host_banned('127.0.0.1'))
        self.assertTrue(is_url_or_host_banned('localhost'))
        self.assertFalse(is_url_or_host_banned('dimagi.com'))
    def testBannedHosts(self):
        self.assertTrue(is_url_or_host_banned('anything.commcarehq.org'))

        for i in inclusive_range(0, 255):
            for j in inclusive_range(0, 255):
                for k in inclusive_range(0, 255):
                    self.assertTrue(is_url_or_host_banned('10.%s.%s.%s' % (i, j, k)))

        for i in inclusive_range(16, 31):
            for j in inclusive_range(0, 255):
                for k in inclusive_range(0, 255):
                    self.assertTrue(is_url_or_host_banned('172.%s.%s.%s' % (i, j, k)))

        for i in inclusive_range(0, 255):
            for j in inclusive_range(0, 255):
                self.assertTrue(is_url_or_host_banned('192.168.%s.%s' % (i, j)))

        self.assertTrue(is_url_or_host_banned('127.0.0.1'))
        self.assertTrue(is_url_or_host_banned('localhost'))
        self.assertFalse(is_url_or_host_banned('dimagi.com'))
Beispiel #4
0
 def clean_host(self):
     value = self.cleaned_data.get("host")
     if is_url_or_host_banned(value):
         raise ValidationError(_("Invalid Host"))
     return value
Beispiel #5
0
 def clean_url(self):
     value = self.cleaned_data.get("url")
     if is_url_or_host_banned(value):
         raise ValidationError(_("Invalid URL"))
     return value