John, any chance of getting a copy of your assp.pl?
----- Original Message ----- From: "John Calvi" <webform...@lewis.com.au> To: <assp-user@lists.sourceforge.net> Sent: Friday, August 01, 2014 5:14 PM Subject: [Assp-user] Assp V1 >I have a number of comments re ASSP V1 that I have noticed in the last few > months and have changed for myself. > > > > I thought I would share for discussion or implementation. (Line numbers > are > after changes). > > > > > > 1. I find that ISPIP should be IP limited as my ISPIP acts as a > backup > MX and can thus flood the server with connections (up to MAXSMTP > preventing > other connections) so I changed the following. > > Line 9642 #! matchIP($ip,'ispip',0,1) && #JC Removed to > reduce server load from ispip > > Line 9659 pbAdd( $client, $ip,$iplValencePB, "LimitingIP" > ) if (! matchIP($ip,'noPB',0,1) && ! matchIP($ip,'ispip',0,1)); #JC > Added, > to not pbox ispip > > > > This limits my backup mx servers (ispip) to the ip limit but does not > penalty box them. Another possibility would be to have a separate limit > for > ISPIP setting that can be set between IPlimit and MaxSMTP limit. > > > > 2. The & symbol does NOT make a system call in windows activestate > perl > non blocking (System(1,$cmd) does) . This means rebuildspamDB does not > work > properly when scheduled on a windows server. So I changed the following > code > around Line 10439. > > if ( $^O eq "MSWin32" ) { > > > > $assp =~ s/\//\\/go; > > my $asspbase = $base; > > $asspbase =~ s/\\/\//go; > > #JC Mods to make non blocking in Windows work. > > $cmd = "\"$perl\" \"$base\\rebuildspamdb.pl\" > \"$asspbase\" silent"; > > $cmd = $RebuildCmd if $RebuildCmd; > > system(1,$cmd); > > } else { > > $cmd = "\"$perl\" \"$base/rebuildspamdb.pl\" > \"$base\" silent &"; > > $cmd = $RebuildCmd if $RebuildCmd; > > system($cmd); > > } > > > > 3. PVRS and lately BTV1 tags have blocked whitelisting so this still > needs a solution. I use (\w{4}=+\w+=+)([^\r\n]*)/o) which picks either > out. > I know you don't like this but it still happens. > > > > 4. Line 1493 sets redlist hardcoded which was really annoying when I > was troubleshooting redlisting. I don't see how it's a RFC requirement to > redlist? > > if ( ! $this->{red} > > && $this->{header} =~ > /(auto-submitted\:|subject\:.*?auto\:)/i ) > > # RFC 3834 > > { > > d('isred auto'); > > #$this->{red} = ($1||$2); #JC Note this sets redlist even > if > redlist is off. > > } > > > > 5. If an email is determined to be redlisted it no longer checks if > it > is from a whitelisted source. This causes ASSP to potentially block a lot > of redlisted email. It also makes it hard to troubleshoot as there are > emails that are MessageOK or Blocked from whitelisted users and domains in > the log. This makes no sense to me. A redlisted mail should be let through > and not checked for Bayesian etc (if from a whitelisted user). I changed > the > following lines and this now works well. > > > > Line 15200 #onwhitelist( $fh, $this->{header}) if > !$this->{relayok} > && !$this->{red}; > > onwhitelist( $fh, $this->{header}) if > !$this->{relayok}; #JC Mod to prevent Red Blocking White > > > > Line 20904 #onwhitelist( $fh, $this->{header}) if > $this->{relayok} > && !$this->{red} && !$this->{spamfound}; > > onwhitelist( $fh, $this->{header}) if > $this->{relayok} && !$this->{spamfound}; #JC Mod to prevent Red Blocking > White > > > > Line 27856 #return 0 if $adr && $Redlist{$adr}; #JC Mod to > prevent > Redlist Blocking Whitelist > > > > 6. I was getting some Senderbase timeouts so changed the timeout from > 5 > to 10s (would be good if configurable). > > Line 18565 Timeout => 10, #JC Mod to extend Senderbase > timeout > > > > 7. My country (Australia) was getting scored as a home country AND > FOREIGN country. This does not make sense and not consitent with the > config > information. > > The regex $ipcountry !~ > /$MyCountryCodeReRE$CountryCodeReRE$MyCountryCodeReRE/ looks wrong to me. > > > > I changed Line 18882 from && $ipcountry !~ > /$MyCountryCodeReRE$CountryCodeReRE$MyCountryCodeReRE/ > > To the following lines. > > > > && $ipcountry !~ $CountryCodeBlockedReRE > > && $ipcountry !~ $CountryCodeReRE > > && $ipcountry !~ $NoCountryCodeReRE > > && $ipcountry !~ $MyCountryCodeReRE > > > > 8. Line 27499 $valence = int ($baysValencePB * > $this->{spamprob} + 0.5); looks wrong as the 0.5 does nothing useful > (int > rounds down) was it meant to be . > > $valence = int ($baysValencePB * ($this->{spamprob} + 0.5)); ? > > > > I made it $valence = int ($baysValencePB * $this->{spamprob} + 1); > #JC Mod to better use scoring (Was + 0.5) as think 0.5 is useless and > ($baysValencePB * ($this->{spamprob} + 0.5) would be too aggressive. > > > > 9. If I set the config Maxfiles to the Default of 14000 it gets reset > to 20000 this is very annoying. > > Line 38192 has $Config{MaxFiles} = 20000 if $Config{MaxFiles} < 20000; > #JC This is annoying as the default is 14000 > > I am not sure what is intended by this line? Is is trying to set a minimum > for the maximum? > > I have commented it out of my version. > > > > > > 10. Config Item bugs: > > > > a. Default is set to 0 which is not a valid option: > > ['invalidSenderLog','Invalid Sender','1:spam folder|3:spam folder and > sendAllSpam|6:discard folder|7:discard folder and > sendAllSpam',\&listbox,3,'(.*)',undef,'Where to store messages from a > local > domain with an unknown userpart.'], #JC Typo > > b. Spelling typo > > The notation is : generationnumber[0-9]=secretKey. Multiple pairs are > separated by pipes (|). Do not define spaces, tabs and \'=\' as part of > the > keys(secrets)!'], #JC Typo > > c. Space in front of default option. > > ['noMsgID','Skip FBMTV for these > IPs*',80,\&textinput,'127.0.0.|192.168.|10.','(\S*)','ConfigMakeIPRe','Enter > IP addresses that you don\'t want to be FBMTV validated, separated by > pipes > (|). For example: 127.0.0.1|192.168.',undef,'7','msg001710','msg001711'], > #JC Typo > > d. Typo in default option. > > ['noMsgID','Skip FBMTV for these > IPs*',80,\&textinput,'127.0.0.|192.168.|10.','(\S*)','ConfigMakeIPRe','Enter > IP addresses that you don\'t want to be FBMTV validated, separated by > pipes > (|). For example: 127.0.0.1|192.168.',undef,'7','msg001710','msg001711'], > #JC Typo > > > > John Calvi > > > > > > > > > > > > ------------------------------------------------------------------------------ > Want fast and easy access to all the code in your enterprise? Index and > search up to 200,000 lines of code with a free copy of Black Duck > Code Sight - the same software that powers the world's largest code > search on Ohloh, the Black Duck Open Hub! Try it now. > http://p.sf.net/sfu/bds > _______________________________________________ > Assp-user mailing list > Assp-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/assp-user ------------------------------------------------------------------------------ Infragistics Professional Build stunning WinForms apps today! Reboot your WinForms applications with our WinForms controls. Build a bridge from your legacy apps to the future. http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk _______________________________________________ Assp-user mailing list Assp-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/assp-user