Hello,<br>&nbsp;&nbsp; As development for LifeType 2.0 takes highe priority, will this plugin, or the LifeType 1.2 version of it, move back to the main plugin subversion branch?&nbsp; This would allow quick patches to the plugin to be done, with out having to spin a whole LifeType release.<br>
<br>--Paul<br><br><div><span class="gmail_quote">On 2/28/08, <b class="gmail_sendername"><a href="mailto:pwestbro@devel.lifetype.net">pwestbro@devel.lifetype.net</a></b> &lt;<a href="mailto:pwestbro@devel.lifetype.net">pwestbro@devel.lifetype.net</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Author: pwestbro<br> Date: 2008-02-29 01:49:43 -0500 (Fri, 29 Feb 2008)<br> New Revision: 6192<br> <br> Modified:<br>&nbsp;&nbsp; plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/blacklist.inc.php<br>&nbsp;&nbsp; plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/msie.inc.php<br>
&nbsp;&nbsp; plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/version.inc.php<br>&nbsp;&nbsp; plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/whitelist.inc.php<br>&nbsp;&nbsp; plog/branches/lifetype-1.2/plugins/badbehavior/pluginbadbehavior.class.php<br>
 Log:<br> Checked in version 2.0.13 of bad behavior<br> <br> <br> Modified: plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/blacklist.inc.php<br> ===================================================================<br>
 --- plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/blacklist.inc.php&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2008-02-28 10:54:49 UTC (rev 6191)<br> +++ plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/blacklist.inc.php&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2008-02-29 06:49:43 UTC (rev 6192)<br>
 @@ -1,113 +1,113 @@<br> -&lt;?php if (!defined(&#39;BB2_CORE&#39;)) die(&#39;I said no cheating!&#39;);<br> -<br> -function bb2_blacklist($package) {<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Blacklisted user agents<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // These user agent strings occur at the beginning of the line.<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_spambots_0 = array(<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;&lt;sc&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// XSS exploit attempts<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;8484 Boston Project&quot;,&nbsp;&nbsp;// video poker/porn spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;adwords&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// referrer spam<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;autoemailspider&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;blogsearchbot-martin&quot;, // from honeypot<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Digger&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;ecollector&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;EmailCollector&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Email Extractor&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Email Siphon&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;EmailSiphon&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;grub crawler&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment/email spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;HttpProxy&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Internet Explorer&quot;,&nbsp;&nbsp;&nbsp;&nbsp;// XMLRPC exploits seen<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Jakarta Commons&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// custommised spambots<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Java 1.&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// definitely a spammer<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Java/1.&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// definitely a spammer<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;libwww-perl&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spambot scripts<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;LWP&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spambot scripts<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Microsoft URL&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Missigua&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;MJ12bot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// crawls MUCH too fast<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Movable Type&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // customised spambots<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Mozilla &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // malicious software<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Mozilla/4.0(&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // from honeypot<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Mozilla/4.0+(&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// suspicious harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;MSIE&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // malicious software<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;NutchCVS&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // unidentified robots<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Nutscrape/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;OmniExplorer&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;psycheclone&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;PussyCat &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;PycURL&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment spam<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Shockwave Flash&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;TrackBack/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // trackback spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;user&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // suspicious harvester<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;User Agent: &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;User-Agent: &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Wordpress&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// malicious software<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;\&quot;&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // malicious software<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // These user agent strings occur anywhere within the line.<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_spambots = array(<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;\r&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // A really dumb bot<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;; Widows &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;a href=&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// referrer spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Bad Behavior Test&quot;,&nbsp;&nbsp;&nbsp;&nbsp;// Add this to your user-agent to test BB<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;compatible ; MSIE&quot;,&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;compatible-&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;DTS Agent&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Gecko/25&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // revisit this in 500 years<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;grub-client&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// search engine ignores robots.txt<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;hanzoweb&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // very badly behaved crawler<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Indy Library&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment/email spam<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;larbin@unspecified&quot;,&nbsp;&nbsp; // stealth harvesters<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Murzillo compatible&quot;,&nbsp;&nbsp;// comment spam bot<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;.NET CLR 1)&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// free poker, etc.<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;POE-Component-Client&quot;, // free poker, etc.<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Turing Machine&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // <a href="http://www.anonymizer.com">www.anonymizer.com</a> abuse<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;WebaltBot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;WISEbot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;WISEnutbot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows NT 4.0;)&quot;,&nbsp;&nbsp;&nbsp;&nbsp; // wikispam bot<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows NT 5.0;)&quot;,&nbsp;&nbsp;&nbsp;&nbsp; // wikispam bot<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows NT 5.1;)&quot;,&nbsp;&nbsp;&nbsp;&nbsp; // wikispam bot<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows XP 5&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;\\\\)&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br>
 -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // These are regular expression matches.<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_spambots_regex = array(<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/^[A-Z]{10}$/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc email spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/^Mozilla...[05]$/i&quot;,&nbsp;&nbsp;// fake user agent/email spam<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/[bcdfghjklmnpqrstvwxz ]{8,}/&quot;,<br> -//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/(;\){1,2}$/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc spammers/harvesters<br> -//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/MSIE.*Windows XP/&quot;,&nbsp;&nbsp; // misc comment spam<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br>
 -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Do not edit below this line.<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ua = $package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;];<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_spambots_0 as $spambot) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pos = stripos($ua, $spambot);<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($pos !== FALSE &amp;&amp; $pos == 0) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17f4e8c8&quot;;<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_spambots as $spambot) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (stripos($ua, $spambot) !== FALSE) {<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17f4e8c8&quot;;<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_spambots_regex as $spambot) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (preg_match($spambot, $ua)) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17f4e8c8&quot;;<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return FALSE;<br> -}<br> -<br> -?&gt;<br> +&lt;?php if (!defined(&#39;BB2_CORE&#39;)) die(&#39;I said no cheating!&#39;);<br> +<br> +function bb2_blacklist($package) {<br>
 +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Blacklisted user agents<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // These user agent strings occur at the beginning of the line.<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_spambots_0 = array(<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;&lt;sc&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// XSS exploit attempts<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;8484 Boston Project&quot;,&nbsp;&nbsp;// video poker/porn spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;adwords&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// referrer spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;autoemailspider&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;blogsearchbot-martin&quot;, // from honeypot<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Digger&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;ecollector&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;EmailCollector&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Email Extractor&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Email Siphon&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;EmailSiphon&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;grub crawler&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment/email spam<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;HttpProxy&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Internet Explorer&quot;,&nbsp;&nbsp;&nbsp;&nbsp;// XMLRPC exploits seen<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Jakarta Commons&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// custommised spambots<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Java 1.&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// definitely a spammer<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Java/1.&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// definitely a spammer<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;libwww-perl&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spambot scripts<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;LWP&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spambot scripts<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Microsoft URL&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Missigua&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;MJ12bot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// crawls MUCH too fast<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Movable Type&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // customised spambots<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Mozilla &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // malicious software<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Mozilla/4.0(&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // from honeypot<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Mozilla/4.0+(&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// suspicious harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;MSIE&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // malicious software<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;NutchCVS&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // unidentified robots<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Nutscrape/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;OmniExplorer&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;psycheclone&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;PussyCat &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment spam<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;PycURL&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Shockwave Flash&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;TrackBack/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // trackback spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;user&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // suspicious harvester<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;User Agent: &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;User-Agent: &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Wordpress&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// malicious software<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;\&quot;&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // malicious software<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // These user agent strings occur anywhere within the line.<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_spambots = array(<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;\r&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // A really dumb bot<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;; Widows &quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;a href=&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// referrer spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Bad Behavior Test&quot;,&nbsp;&nbsp;&nbsp;&nbsp;// Add this to your user-agent to test BB<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;compatible ; MSIE&quot;,&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;compatible-&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;DTS Agent&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc comment/email spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Gecko/25&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // revisit this in 500 years<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;grub-client&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// search engine ignores robots.txt<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;hanzoweb&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // very badly behaved crawler<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Indy Library&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc comment/email spam<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;larbin@unspecified&quot;,&nbsp;&nbsp; // stealth harvesters<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Murzillo compatible&quot;,&nbsp;&nbsp;// comment spam bot<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;.NET CLR 1)&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// free poker, etc.<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;POE-Component-Client&quot;, // free poker, etc.<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Turing Machine&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // <a href="http://www.anonymizer.com">www.anonymizer.com</a> abuse<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;WebaltBot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;WISEbot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;WISEnutbot&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows NT 4.0;)&quot;,&nbsp;&nbsp;&nbsp;&nbsp; // wikispam bot<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows NT 5.0;)&quot;,&nbsp;&nbsp;&nbsp;&nbsp; // wikispam bot<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows NT 5.1;)&quot;,&nbsp;&nbsp;&nbsp;&nbsp; // wikispam bot<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;Windows XP 5&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;\\\\)&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// spam harvester<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br>
 +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // These are regular expression matches.<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_spambots_regex = array(<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/^[A-Z]{10}$/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// misc email spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/^Mozilla...[05]$/i&quot;,&nbsp;&nbsp;// fake user agent/email spam<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/[bcdfghjklmnpqrstvwxz ]{8,}/&quot;,<br> +//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/(;\){1,2}$/&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // misc spammers/harvesters<br> +//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;/MSIE.*Windows XP/&quot;,&nbsp;&nbsp; // misc comment spam<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br>
 +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Do not edit below this line.<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ua = $package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;];<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_spambots_0 as $spambot) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pos = strpos($ua, $spambot);<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($pos !== FALSE &amp;&amp; $pos == 0) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17f4e8c8&quot;;<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_spambots as $spambot) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (strpos($ua, $spambot) !== FALSE) {<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17f4e8c8&quot;;<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_spambots_regex as $spambot) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (preg_match($spambot, $ua)) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17f4e8c8&quot;;<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return FALSE;<br> +}<br> +<br> +?&gt;<br> <br> Modified: plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/msie.inc.php<br> ===================================================================<br>
 --- plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/msie.inc.php&nbsp;&nbsp;&nbsp;&nbsp;2008-02-28 10:54:49 UTC (rev 6191)<br> +++ plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/msie.inc.php&nbsp;&nbsp;&nbsp;&nbsp;2008-02-29 06:49:43 UTC (rev 6192)<br>
 @@ -1,24 +1,25 @@<br> -&lt;?php if (!defined(&#39;BB2_CORE&#39;)) die(&#39;I said no cheating!&#39;);<br> -<br> -// Analyze user agents claiming to be MSIE<br> -<br> -function bb2_msie($package)<br> -{<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!array_key_exists(&#39;Accept&#39;, $package[&#39;headers_mixed&#39;])) {<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17566707&quot;;<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // MSIE does NOT send &quot;Windows ME&quot; or &quot;Windows XP&quot; in the user agent<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Windows ME&quot;) !== FALSE || strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Windows XP&quot;) !== FALSE || strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Windows 2000&quot;) !== FALSE || strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Win32&quot;) !== FALSE) {<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;a1084bad&quot;;<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // MSIE does NOT send Connection: TE<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (preg_match(&#39;/\bTE\b/i&#39;, $package[&#39;headers_mixed&#39;][&#39;Connection&#39;])) {<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;2b90f772&quot;;<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br> -}<br> -<br> -?&gt;<br> +&lt;?php if (!defined(&#39;BB2_CORE&#39;)) die(&#39;I said no cheating!&#39;);<br> +<br> +// Analyze user agents claiming to be MSIE<br>
 +<br> +function bb2_msie($package)<br> +{<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!array_key_exists(&#39;Accept&#39;, $package[&#39;headers_mixed&#39;])) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;17566707&quot;;<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // MSIE does NOT send &quot;Windows ME&quot; or &quot;Windows XP&quot; in the user agent<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Windows ME&quot;) !== FALSE || strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Windows XP&quot;) !== FALSE || strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Windows 2000&quot;) !== FALSE || strpos($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], &quot;Win32&quot;) !== FALSE) {<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;a1084bad&quot;;<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // MSIE does NOT send Connection: TE but Akamai does<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Bypass this test when Akamai detected<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!array_key_exists(&#39;Akamai-Origin-Hop&#39;, $package[&#39;headers_mixed&#39;]) &amp;&amp; preg_match(&#39;/\bTE\b/i&#39;, $package[&#39;headers_mixed&#39;][&#39;Connection&#39;])) {<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return &quot;2b90f772&quot;;<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br> +}<br> +<br> +?&gt;<br> <br> Modified: plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/version.inc.php<br> ===================================================================<br>
 --- plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/version.inc.php 2008-02-28 10:54:49 UTC (rev 6191)<br> +++ plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/version.inc.php 2008-02-29 06:49:43 UTC (rev 6192)<br>
 @@ -1,3 +1,3 @@<br> -&lt;?php if (!defined(&#39;BB2_CWD&#39;)) die(&quot;I said no cheating!&quot;);<br> -define(&#39;BB2_VERSION&#39;, &quot;2.0.11&quot;);<br> -?&gt;<br> +&lt;?php if (!defined(&#39;BB2_CWD&#39;)) die(&quot;I said no cheating!&quot;);<br>
 +define(&#39;BB2_VERSION&#39;, &quot;2.0.13&quot;);<br> +?&gt;<br> <br> Modified: plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/whitelist.inc.php<br> ===================================================================<br>
 --- plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/whitelist.inc.php&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2008-02-28 10:54:49 UTC (rev 6191)<br> +++ plog/branches/lifetype-1.2/plugins/badbehavior/bad-behavior/whitelist.inc.php&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2008-02-29 06:49:43 UTC (rev 6192)<br>
 @@ -1,56 +1,58 @@<br> -&lt;?php if (!defined(&#39;BB2_CORE&#39;)) die(&#39;I said no cheating!&#39;);<br> -<br> -function bb2_whitelist($package)<br> -{<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER!<br>
 -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Inappropriate whitelisting WILL expose you to spam, or cause Bad<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Behavior to stop functioning entirely!&nbsp;&nbsp;DO NOT WHITELIST unless you<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // are 100% CERTAIN that you should.<br> -<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // IP address ranges use the CIDR format.<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Includes four examples of whitelisting by IP address and netblock.<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_whitelist_ip_ranges = array(<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://10.0.0.0/8">10.0.0.0/8</a>&quot;,<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://172.16.0.0/12">172.16.0.0/12</a>&quot;,<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://192.168.0.0/16">192.168.0.0/16</a>&quot;,<br> -//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://127.0.0.1">127.0.0.1</a>&quot;,<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER!<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Inappropriate whitelisting WILL expose you to spam, or cause Bad<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Behavior to stop functioning entirely!&nbsp;&nbsp;DO NOT WHITELIST unless you<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // are 100% CERTAIN that you should.<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // You should not whitelist search engines by user agent. Use the IP<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // netblock for the search engine instead. See <a href="http://whois.arin.net/">http://whois.arin.net/</a><br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // to locate the netblocks for an IP.<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // User agents are matched by exact match only.<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Includes one example of whitelisting by user agent.<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // All are commented out.<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_whitelist_user_agents = array(<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) It&#39;s me, let me in&quot;,<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER!<br>
 -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Do not edit below this line<br> -<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($bb2_whitelist_ip_ranges)) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_whitelist_ip_ranges as $range) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (match_cidr($package[&#39;ip&#39;], $range)) return true;<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($bb2_whitelist_user_agents)) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_whitelist_user_agents as $user_agent) {<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!strcmp($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], $user_agent)) return true;<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br> -}<br> -<br> -?&gt;<br> +&lt;?php if (!defined(&#39;BB2_CORE&#39;)) die(&#39;I said no cheating!&#39;);<br> +<br> +function bb2_whitelist($package)<br> +{<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER!<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Inappropriate whitelisting WILL expose you to spam, or cause Bad<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Behavior to stop functioning entirely!&nbsp;&nbsp;DO NOT WHITELIST unless you<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // are 100% CERTAIN that you should.<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // IP address ranges use the CIDR format.<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Includes four examples of whitelisting by IP address and netblock.<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_whitelist_ip_ranges = array(<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://64.191.203.34/32">64.191.203.34/32</a>&quot;,&nbsp;&nbsp;&nbsp;&nbsp; // Digg whitelisted as of 2.0.12<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://208.67.217.130/32">208.67.217.130/32</a>&quot;,&nbsp;&nbsp;&nbsp;&nbsp;// Digg whitelisted as of 2.0.12<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://10.0.0.0/8">10.0.0.0/8</a>&quot;,<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://172.16.0.0/12">172.16.0.0/12</a>&quot;,<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://192.168.0.0/16">192.168.0.0/16</a>&quot;,<br>
 +//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;<a href="http://127.0.0.1">127.0.0.1</a>&quot;,<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER!<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Inappropriate whitelisting WILL expose you to spam, or cause Bad<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Behavior to stop functioning entirely!&nbsp;&nbsp;DO NOT WHITELIST unless you<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // are 100% CERTAIN that you should.<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // You should not whitelist search engines by user agent. Use the IP<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // netblock for the search engine instead. See <a href="http://whois.arin.net/">http://whois.arin.net/</a><br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // to locate the netblocks for an IP.<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // User agents are matched by exact match only.<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Includes one example of whitelisting by user agent.<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // All are commented out.<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $bb2_whitelist_user_agents = array(<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) It&#39;s me, let me in&quot;,<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER! DANGER!<br>
 +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Do not edit below this line<br> +<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($bb2_whitelist_ip_ranges)) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_whitelist_ip_ranges as $range) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (match_cidr($package[&#39;ip&#39;], $range)) return true;<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!empty($bb2_whitelist_user_agents)) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach ($bb2_whitelist_user_agents as $user_agent) {<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!strcmp($package[&#39;headers_mixed&#39;][&#39;User-Agent&#39;], $user_agent)) return true;<br>
 +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br> +}<br> +<br> +?&gt;<br> <br> Modified: plog/branches/lifetype-1.2/plugins/badbehavior/pluginbadbehavior.class.php<br> ===================================================================<br>
 --- plog/branches/lifetype-1.2/plugins/badbehavior/pluginbadbehavior.class.php&nbsp;&nbsp;2008-02-28 10:54:49 UTC (rev 6191)<br> +++ plog/branches/lifetype-1.2/plugins/badbehavior/pluginbadbehavior.class.php&nbsp;&nbsp;2008-02-29 06:49:43 UTC (rev 6192)<br>
 @@ -20,7 +20,7 @@<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;desc = &quot;Bad Behavior for LifeType&quot;;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;author = &quot;The Lifetype Project&quot;;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;db =&amp; Db::getDb();<br>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;version = &quot;20071205&quot;;<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;version = &quot;20080228&quot;;<br> <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$config =&amp; Config::getConfig();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$prefix = Db::getPrefix();<br>
 <br> _______________________________________________<br> pLog-svn mailing list<br> <a href="mailto:pLog-svn@devel.lifetype.net">pLog-svn@devel.lifetype.net</a><br> <a href="http://limedaley.com/mailman/listinfo/plog-svn">http://limedaley.com/mailman/listinfo/plog-svn</a><br>
 </blockquote></div><br>