diff options
Diffstat (limited to 'spamassassin/oftc-listmod-learn-mail')
-rwxr-xr-x | spamassassin/oftc-listmod-learn-mail | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/spamassassin/oftc-listmod-learn-mail b/spamassassin/oftc-listmod-learn-mail deleted file mode 100755 index d8074f9..0000000 --- a/spamassassin/oftc-listmod-learn-mail +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/ruby - -SPAMIN="mail/spam-learn" -SPAMOUT="mail/spam-learned" -HAMIN="mail/ham-learn" -HAMOUT="mail/ham-learned" - -$verbose = 0 -if ARGV[0] == "-v" - $verbose = 1 -end - -def check_maildir(d) - throw "#{d} is not a maildir" unless FileTest.directory?(d) - throw "#{d} is not a maildir" unless FileTest.directory?(d+"/new") - throw "#{d} is not a maildir" unless FileTest.directory?(d+"/cur") - throw "#{d} is not a maildir" unless FileTest.directory?(d+"/tmp") - true -end - -def move(filename, to) - basename = File.basename(filename) - component = File.basename( File.dirname(filename) ) - throw "Bad component '#{component}' in filename '#{filename}'." unless %w{cur new tmp}.include?(component) - File.link(filename, to+"/"+component+"/"+basename) - File.unlink(filename) -end - -check_maildir SPAMIN -check_maildir SPAMOUT -check_maildir HAMIN -check_maildir HAMOUT - -Dir[SPAMIN+"/new/*"].each do |filename| - puts "learning #{filename}" if $verbose > 0 - if system("sudo -H -u amavis sa-learn --spam < #{filename} > /dev/null") - puts "moving #{filename}" if $verbose > 0 - move(filename, SPAMOUT) - else - STDERR.puts "Learning of #{filename} failed." - end -end -Dir[HAMIN+"/new/*"].each do |filename| - puts "learning #{filename}" if $verbose > 0 - if system("sudo -H -u amavis sa-learn --ham < #{filename} > /dev/null") - puts "moving #{filename}" if $verbose > 0 - move(filename, HAMOUT) - else - STDERR.puts "Learning of #{filename} failed." - end -end |