Changeset 47f55c0 in github


Ignore:
Timestamp:
Feb 4, 2011 7:03:31 AM (2 years ago)
Author:
alecpl <alec@…>
Branches:
master, HEAD, courier-fix, dev-browser-capabilities, pdo, release-0.6, release-0.7, release-0.8
Children:
d80bd15
Parents:
e18d992e
Message:
  • Fix ICANN example addresses doesn't validate (#1487742)
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • CHANGELOG

    r784a425 r47f55c0  
    22=========================== 
    33 
     4- Fix ICANN example addresses doesn't validate (#1487742) 
    45- Security: protect login form submission from CSRF 
    56- Security: prevent from relaying malicious requests through modcss.inc 
  • program/js/common.js

    ref4f591 r47f55c0  
    494494      //domain_literal = '\\x5b('+dtext+'|'+quoted_pair+')*\\x5d', 
    495495      //sub_domain = '('+atom+'|'+domain_literal+')', 
    496       domain = '([^@\\x2e]+\\x2e)+[a-z]{2,}', 
     496      // allow punycode in last domain part for ICANN test domains 
     497      domain = '([^@\\x2e]+\\x2e)+([a-z]{2,}|xn--[a-z0-9]{2,})', 
     498      // ICANN e-mail test (http://idn.icann.org/E-mail_test) 
     499      icann_domains = [ 
     500        '\\u0645\\u062b\\u0627\\u0644\\x2e\\u0625\\u062e\\u062a\\u0628\\u0627\\u0631', 
     501        '\\u4f8b\\u5b50\\x2e\\u6d4b\\u8bd5', 
     502        '\\u4f8b\\u5b50\\x2e\\u6e2c\\u8a66', 
     503        '\\u03c0\\u03b1\\u03c1\\u03ac\\u03b4\\u03b5\\u03b9\\u03b3\\u03bc\\u03b1\\x2e\\u03b4\\u03bf\\u03ba\\u03b9\\u03bc\\u03ae', 
     504        '\\u0909\\u0926\\u093e\\u0939\\u0930\\u0923\\x2e\\u092a\\u0930\\u0940\\u0915\\u094d\\u0937\\u093e', 
     505        '\\u4f8b\\u3048\\x2e\\u30c6\\u30b9\\u30c8', 
     506        '\\uc2e4\\ub840\\x2e\\ud14c\\uc2a4\\ud2b8', 
     507        '\\u0645\\u062b\\u0627\\u0644\\x2e\\u0622\\u0632\\u0645\\u0627\\u06cc\\u0634\u06cc', 
     508        '\\u043f\\u0440\\u0438\\u043c\\u0435\\u0440\\x2e\\u0438\\u0441\\u043f\\u044b\\u0442\\u0430\\u043d\\u0438\\u0435', 
     509        '\\u0b89\\u0ba4\\u0bbe\\u0bb0\\u0ba3\\u0bae\\u0bcd\\x2e\\u0baa\\u0bb0\\u0bbf\\u0b9f\\u0bcd\\u0b9a\\u0bc8', 
     510        '\\u05d1\\u05f2\\u05b7\\u05e9\\u05e4\\u05bc\\u05d9\\u05dc\\x2e\\u05d8\\u05e2\\u05e1\\u05d8' 
     511      ], 
     512      icann_addr = 'mailtest\\x40('+icann_domains.join('|')+')', 
    497513      word = '('+atom+'|'+quoted_string+')', 
    498514      delim = '[,;\s\n]', 
    499515      local_part = word+'(\\x2e'+word+')*', 
    500       addr_spec = local_part+'\\x40'+domain, 
     516      addr_spec = '(('+local_part+'\\x40'+domain+')|('+icann_addr+'))', 
    501517      reg1 = inline ? new RegExp('(^|<|'+delim+')'+addr_spec+'($|>|'+delim+')', 'i') : new RegExp('^'+addr_spec+'$', 'i'); 
    502518 
Note: See TracChangeset for help on using the changeset viewer.