From: Michael M Slusarz Date: Tue, 24 Nov 2009 05:15:27 +0000 (-0700) Subject: More efficient regex X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=b985abda1822ab9fde68d9e4dc7dcd16b6d6ebbc;p=horde.git More efficient regex --- diff --git a/framework/Text_Filter/lib/Horde/Text/Filter/Xss.php b/framework/Text_Filter/lib/Horde/Text/Filter/Xss.php index 5aee8eaeb..ad26f4ee1 100644 --- a/framework/Text_Filter/lib/Horde/Text/Filter/Xss.php +++ b/framework/Text_Filter/lib/Horde/Text/Filter/Xss.php @@ -127,19 +127,19 @@ class Horde_Text_Filter_Xss extends Horde_Text_Filter '(?:r|�*82;?|�*52;?|�*114;?|�*72;?)\s*' . '(?:i|�*73;?|�*49;?|�*105;?|�*69;?)\s*' . '(?:p|�*80;?|�*50;?|�*112;?|�*70;?)\s*' . - '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)(\s*)/i', + '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)/i', '/<([^>a-z]*)' . '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)\s*' . '(?:m|�*77;?|�*4d;?|�*109;?|�*6d;?)\s*' . '(?:b|�*66;?|�*42;?|�*98;?|�*62;?)\s*' . '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)\s*' . - '(?:d|�*68;?|�*44;?|�*100;?|�*64;?)(\s*)/i', + '(?:d|�*68;?|�*44;?|�*100;?|�*64;?)/i', '/<([^>a-z]*)' . '(?:x|�*88;?|�*58;?|�*120;?|�*78;?)\s*' . '(?:m|�*77;?|�*4d;?|�*109;?|�*6d;?)\s*' . - '(?:l|�*76;?|�*4c;?|�*108;?|�*6c;?)(\s*)/i', + '(?:l|�*76;?|�*4c;?|�*108;?|�*6c;?)/i', '/<([^>a-z]*)\?([^>a-z]*)' . '(?:i|�*73;?|�*49;?|�*105;?|�*69;?)\s*' . @@ -147,19 +147,19 @@ class Horde_Text_Filter_Xss extends Horde_Text_Filter '(?:p|�*80;?|�*50;?|�*112;?|�*70;?)\s*' . '(?:o|�*79;?|�*4f;?|�*111;?|�*6f;?)\s*' . '(?:r|�*82;?|�*52;?|�*114;?|�*72;?)\s*' . - '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)(\s*)/i', + '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)/i', '/<([^>a-z]*)' . '(?:m|�*77;?|�*4d;?|�*109;?|�*6d;?)\s*' . '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)\s*' . '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)\s*' . - '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)(\s*)/i', + '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)/i', '/<([^>a-z]*)' . '(?:j|�*74;?|�*4a;?|�*106;?|�*6a;?)\s*' . '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)\s*' . '(?:v|�*86;?|�*56;?|�*118;?|�*76;?)\s*' . - '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)(\s*)/i', + '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)/i', '/<([^>a-z]*)' . '(?:o|�*79;?|�*4f;?|�*111;?|�*6f;?)\s*' . @@ -167,7 +167,7 @@ class Horde_Text_Filter_Xss extends Horde_Text_Filter '(?:j|�*74;?|�*4a;?|�*106;?|�*6a;?)\s*' . '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)\s*' . '(?:c|�*67;?|�*43;?|�*99;?|�*63;?)\s*' . - '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)(\s*)/i', + '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)/i', '/<([^>a-z]*)' . '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)\s*' . @@ -175,14 +175,14 @@ class Horde_Text_Filter_Xss extends Horde_Text_Filter '(?:p|�*80;?|�*50;?|�*112;?|�*70;?)\s*' . '(?:l|�*76;?|�*4c;?|�*108;?|�*6c;?)\s*' . '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)\s*' . - '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)(\s*)/i', + '(?:t|�*84;?|�*54;?|�*116;?|�*74;?)/i', '/<([^>a-z]*)' . '(?:l|�*76;?|�*4c;?|�*108;?|�*6c;?)\s*' . '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)\s*' . '(?:y|�*89;?|�*59;?|�*121;?|�*79;?)\s*' . '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)\s*' . - '(?:r|�*82;?|�*52;?|�*114;?|�*72;?)(\s*)/i', + '(?:r|�*82;?|�*52;?|�*114;?|�*72;?)/i', '/<([^>a-z]*)' . '(?:i|�*73;?|�*49;?|�*105;?|�*69;?)?\s*' . @@ -190,10 +190,10 @@ class Horde_Text_Filter_Xss extends Horde_Text_Filter '(?:r|�*82;?|�*52;?|�*114;?|�*72;?)\s*' . '(?:a|�*65;?|�*41;?|�*97;?|�*61;?)\s*' . '(?:m|�*77;?|�*4d;?|�*109;?|�*6d;?)\s*' . - '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)(\s*)/i'); + '(?:e|�*69;?|�*45;?|�*101;?|�*65;?)/i'); foreach ($malicious as $pattern) { - $patterns[$pattern] = '<$1' . $this->_params['replace'] . '_tag$2'; + $patterns[$pattern] = '<$1' . $this->_params['replace'] . '_tag'; } /* Comment out style/link tags. */