Modify

Opened 5 years ago

Last modified 4 years ago

#7022 new defect

validate_author won't validate email address stored in trac preferences.

Reported by: andrew.beck@… Owned by: richard
Priority: normal Component: TracTicketValidatorPlugin
Severity: normal Keywords:
Cc: Trac Release: 0.11

Description

When using the following config in trac.ini

[components]
ticketvalidator.* = enabled

[ticketvalidator]
validate_author = true
validate_author.tip = Please fill your valid email address

and an anonymous user saves his email in trac preferences cookie
e.g. http://hostname/projects/pathtoproject/prefs

then the Author field becomes something like
"Andrew Beck <andrew.beck@…>"
which fails validation where just andrew.beck@… works

Attachments (0)

Change History (1)

comment:1 Changed 4 years ago by lee.calabrese@…

This ticket is over 11 months old, but I just ran into the same problem, which I was able to fix relatively quickly. I don't believe this has any side-effects as I just changed the regex to also accept email addresses in the form "Name <email@…>".

--- ticketvalidator.py~ 2010-01-05 03:35:32.000000000 -0800
+++ ticketvalidator.py  2011-03-06 21:34:17.000000000 -0800
@@ -89,7 +89,7 @@
             return False

         if len(email) > 7:
-            if re.match("^[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+\.[a-zA-Z]{2,6}$", email) != None:
+            if re.match("^(?P<named>.*? <){,1}[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+\.[a-zA-Z]{2,6}(?(named)>)$", email) != None:
                 return True
         return False

Add Comment

Modify Ticket

Action
as new .
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.