Author: aaugustin
Date: 2012-01-07 10:43:46 -0800 (Sat, 07 Jan 2012)
New Revision: 17349
Modified:
django/trunk/django/core/validators.py
django/trunk/tests/modeltests/validators/tests.py
Log:
Fixed #17100 -- Typo in the regex for EmailValidator. Thanks reames AT
asymmetricventures com for the report and Claude Paroz for the patch.
Modified: django/trunk/django/core/validators.py
===================================================================
--- django/trunk/django/core/validators.py 2012-01-07 18:39:14 UTC (rev
17348)
+++ django/trunk/django/core/validators.py 2012-01-07 18:43:46 UTC (rev
17349)
@@ -158,7 +158,8 @@
email_re = re.compile(
r"(^[-!#$%&'*+/=?^_`{}|~0-9A-Z]+(\.[-!#$%&'*+/=?^_`{}|~0-9A-Z]+)*" #
dot-atom
-
r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001-011\013\014\016-\177])*"'
# quoted-string
+ # quoted-string, see also http://tools.ietf.org/html/rfc2822#section-3.2.5
+
r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001-\011\013\014\016-\177])*"'
r')@((?:[A-Z0-9](?:[A-Z0-9-]{0,61}[A-Z0-9])?\.)+[A-Z]{2,6}\.?$)' # domain
r'|\[(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\]$',
re.IGNORECASE) # literal form, ipv4 address (SMTP 4.1.3)
validate_email = EmailValidator(email_re, _(u'Enter a valid e-mail address.'),
'invalid')
Modified: django/trunk/tests/modeltests/validators/tests.py
===================================================================
--- django/trunk/tests/modeltests/validators/tests.py 2012-01-07 18:39:14 UTC
(rev 17348)
+++ django/trunk/tests/modeltests/validators/tests.py 2012-01-07 18:43:46 UTC
(rev 17349)
@@ -30,6 +30,9 @@
(validate_email, 'a @x.cz', ValidationError),
(validate_email, 'something@@somewhere.com', ValidationError),
(validate_email, '[email protected]', ValidationError),
+ # Quoted-string format (CR not allowed)
+ (validate_email, '"\\\011"@here.com', None),
+ (validate_email, '"\\\012"@here.com', ValidationError),
(validate_slug, 'slug-ok', None),
(validate_slug, 'longer-slug-still-ok', None),
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/django-updates?hl=en.