summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorErik Romijn <eromijn@solidlinks.nl>2013-02-23 14:44:57 +0100
committerErik Romijn <eromijn@solidlinks.nl>2013-02-23 14:44:57 +0100
commit21f333bcefccc151d6439246f8203d609ab6ca79 (patch)
treef7af85bcf2141f1b912310a0198b28178edb8e4a /django
parentc12891e8cd629cc16fc5d22e485b87ca3169df2c (diff)
Fix #17751: Added stripping of whitespace for IPAddressField/GenericIPAddressField
Diffstat (limited to 'django')
-rw-r--r--django/core/validators.py2
-rw-r--r--django/forms/fields.py8
2 files changed, 9 insertions, 1 deletions
diff --git a/django/core/validators.py b/django/core/validators.py
index 948ae28673..322741be39 100644
--- a/django/core/validators.py
+++ b/django/core/validators.py
@@ -129,7 +129,7 @@ validate_email = EmailValidator()
slug_re = re.compile(r'^[-a-zA-Z0-9_]+$')
validate_slug = RegexValidator(slug_re, _("Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens."), 'invalid')
-ipv4_re = re.compile(r'^(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}$')
+ipv4_re = re.compile(r'^\s*(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\s*$')
validate_ipv4_address = RegexValidator(ipv4_re, _('Enter a valid IPv4 address.'), 'invalid')
diff --git a/django/forms/fields.py b/django/forms/fields.py
index 621d3801f2..aa909a8aa5 100644
--- a/django/forms/fields.py
+++ b/django/forms/fields.py
@@ -1096,6 +1096,10 @@ class IPAddressField(CharField):
}
default_validators = [validators.validate_ipv4_address]
+ def clean(self, value):
+ value = self.to_python(value).strip()
+ return super(IPAddressField, self).clean(value)
+
class GenericIPAddressField(CharField):
default_error_messages = {}
@@ -1107,6 +1111,10 @@ class GenericIPAddressField(CharField):
self.default_error_messages['invalid'] = invalid_error_message
super(GenericIPAddressField, self).__init__(*args, **kwargs)
+ def clean(self, value):
+ value = self.to_python(value).strip()
+ return super(GenericIPAddressField, self).clean(value)
+
def to_python(self, value):
if value in validators.EMPTY_VALUES:
return ''