mirror of https://github.com/django/django.git
Corrected domain max length for EmailValidator; refs #20631.
Thanks MarkusH for the report.
This commit is contained in:
parent
7fd55c3481
commit
1f8bb95cc2
|
@ -124,9 +124,9 @@ class EmailValidator(object):
|
||||||
r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001-\011\013\014\016-\177])*"$)', # quoted-string
|
r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001-\011\013\014\016-\177])*"$)', # quoted-string
|
||||||
re.IGNORECASE)
|
re.IGNORECASE)
|
||||||
domain_regex = re.compile(
|
domain_regex = re.compile(
|
||||||
# max length of the domain is 251: 254 (max email length) minus one
|
# max length of the domain is 249: 254 (max email length) minus one
|
||||||
# period and two characters for the TLD.
|
# period, two characters for the TLD, @ sign, & one character before @.
|
||||||
r'(?:[A-Z0-9](?:[A-Z0-9-]{0,249}[A-Z0-9])?\.)+(?:[A-Z]{2,6}|[A-Z0-9-]{2,}(?<!-))$',
|
r'(?:[A-Z0-9](?:[A-Z0-9-]{0,247}[A-Z0-9])?\.)+(?:[A-Z]{2,6}|[A-Z0-9-]{2,}(?<!-))$',
|
||||||
re.IGNORECASE)
|
re.IGNORECASE)
|
||||||
literal_regex = re.compile(
|
literal_regex = re.compile(
|
||||||
# literal form, ipv4 or ipv6 address (SMTP 4.1.3)
|
# literal form, ipv4 or ipv6 address (SMTP 4.1.3)
|
||||||
|
|
|
@ -66,9 +66,9 @@ TEST_DATA = (
|
||||||
(validate_email, '"\\\011"@here.com', None),
|
(validate_email, '"\\\011"@here.com', None),
|
||||||
(validate_email, '"\\\012"@here.com', ValidationError),
|
(validate_email, '"\\\012"@here.com', ValidationError),
|
||||||
(validate_email, 'trailingdot@shouldfail.com.', ValidationError),
|
(validate_email, 'trailingdot@shouldfail.com.', ValidationError),
|
||||||
# Max length of domain name in email is 251 (see validator for calculation)
|
# Max length of domain name in email is 249 (see validator for calculation)
|
||||||
(validate_email, 'a@%s.com' % ('a' * 251), None),
|
(validate_email, 'a@%s.us' % ('a' * 249), None),
|
||||||
(validate_email, 'a@%s.com' % ('a' * 252), ValidationError),
|
(validate_email, 'a@%s.us' % ('a' * 250), ValidationError),
|
||||||
|
|
||||||
(validate_slug, 'slug-ok', None),
|
(validate_slug, 'slug-ok', None),
|
||||||
(validate_slug, 'longer-slug-still-ok', None),
|
(validate_slug, 'longer-slug-still-ok', None),
|
||||||
|
|
Loading…
Reference in New Issue