You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by mr...@apache.org on 2005/08/14 19:29:08 UTC

svn commit: r232623 - in /jakarta/commons/proper/validator/trunk/src: share/org/apache/commons/validator/EmailValidator.java test/org/apache/commons/validator/EmailTest.java

Author: mrdon
Date: Sun Aug 14 10:29:04 2005
New Revision: 232623

URL: http://svn.apache.org/viewcvs?rev=232623&view=rev
Log:
Added check for the ' character in a domain name
PR: 29541

Modified:
    jakarta/commons/proper/validator/trunk/src/share/org/apache/commons/validator/EmailValidator.java
    jakarta/commons/proper/validator/trunk/src/test/org/apache/commons/validator/EmailTest.java

Modified: jakarta/commons/proper/validator/trunk/src/share/org/apache/commons/validator/EmailValidator.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/validator/trunk/src/share/org/apache/commons/validator/EmailValidator.java?rev=232623&r1=232622&r2=232623&view=diff
==============================================================================
--- jakarta/commons/proper/validator/trunk/src/share/org/apache/commons/validator/EmailValidator.java (original)
+++ jakarta/commons/proper/validator/trunk/src/share/org/apache/commons/validator/EmailValidator.java Sun Aug 14 10:29:04 2005
@@ -41,11 +41,11 @@
  */
 public class EmailValidator {
 
-    private static final String SPECIAL_CHARS = "\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
+    private static final String SPECIAL_CHARS = "\\(\\)<>@,;:'\\\\\\\"\\.\\[\\]";
     private static final String VALID_CHARS = "[^\\s" + SPECIAL_CHARS + "]";
     private static final String QUOTED_USER = "(\"[^\"]*\")";
     private static final String ATOM = VALID_CHARS + '+';
-    private static final String WORD = "(" + ATOM + "|" + QUOTED_USER + ")";
+    private static final String WORD = "((" + VALID_CHARS + "|')+|" + QUOTED_USER + ")";
 
     // Each pattern must be surrounded by /
     private static final String LEGAL_ASCII_PATTERN = "/^[\\000-\\177]+$/";

Modified: jakarta/commons/proper/validator/trunk/src/test/org/apache/commons/validator/EmailTest.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/validator/trunk/src/test/org/apache/commons/validator/EmailTest.java?rev=232623&r1=232622&r2=232623&view=diff
==============================================================================
--- jakarta/commons/proper/validator/trunk/src/test/org/apache/commons/validator/EmailTest.java (original)
+++ jakarta/commons/proper/validator/trunk/src/test/org/apache/commons/validator/EmailTest.java Sun Aug 14 10:29:04 2005
@@ -174,9 +174,13 @@
         info.setValue("andy.noble@\u008fdata-workshop.com");
         valueTest(info, false);
     
-        // The ' character is valid in an email address.
+        // The ' character is valid in an email username.
         info.setValue("andy.o'reilly@data-workshop.com");
         valueTest(info, true);
+        
+        // But not in the domain name.
+        info.setValue("andy@o'reilly.data-workshop.com");
+        valueTest(info, false);
 
         info.setValue("foo+bar@i.am.not.in.us.example.com");
         valueTest(info, true);



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org