Good morning,

So......

in trying to figure this out this morning I did the following and was able to 
get mail filtered into techsupports SPAM folder, but I don't understand why the 
global sieve script does not do the same things

Created the following sieve script file (sorry I just realized i have two 
requires with the same info at top :S):

require ["fileinto"];
require "fileinto";
  if exists "X-Spam-Flag" {
          if header :contains "X-Spam-Flag" "NO" {
          } else {
          fileinto "user.techsupport.SPAM";
          stop;
          }
  }
if header :contains "From" "MAILER-DAEMON"
{
fileinto  "INBOX.MAILER-DAEMON";
}
if header :contains "From" "logwatch"
{
fileinto  "INBOX.Server Logs";
}
if header :contains "From" "root"
{
fileinto  "INBOX.Server Logs";
}


then:

prompt> sieveshell -u techsupport localhost
connecting to localhost
Please enter your password: 
> put techsupport.txt phpscript
> quit

Now... the test emails are going into the right folder. 

Questions, should I not be able to add global sieve rules like such?


prompt>  sieveshell localhost
connecting to localhost
Please enter your password: 
> put techsupport.txt phpscript
> quit

In my global sieve directory: /var/lib/imap/sieve/global
I have the following three files

lrwxrwxrwx 1 cyrus mail  12 2013-04-19 08:27 defaultbc -> phpscript.bc
-rw------- 1 cyrus mail 184 2013-04-19 08:26 phpscript.bc
-rw------- 1 cyrus mail 194 2013-04-19 08:26 phpscript.script

and the content of phpscript.script is:

require "fileinto";
  if exists "X-Spam-Flag" {
          if header :contains "X-Spam-Flag" "NO" {
          } else {
          fileinto "user.techsupport.SPAM";
          stop;
          }
  }


which is the one I created yesterday, and loaded using sieveshell.

any help would be greatly appreciated. 

















From: shashan...@hotmail.com
To: info-cyrus@lists.andrew.cmu.edu
Subject: Global Sieve script
Date: Wed, 17 Apr 2013 16:56:07 -0400




Good afternoon all,

I am trying to configure a global sieve script to move all incoming emails to a 
particular folder. According to the following link this should be a slam dunk:

http://cyrusimap.web.cmu.edu/mediawiki/index.php/Cyrus_Sieve

http://oregonstate.edu/helpdocs/e-mail/onid-e-mail/modifying-your-email-filters-using-sieveshell

So here is what I did:

[shawn@postoffice ~]$ sieveshell -u shawn localhost
connecting to localhost
Please enter your password: 
> list
phpscript  <- active script
> get phpscript phpscript.txt
> exit

[shawn@postoffice ~]$ more phpscript.txt 
# This script has been automatically generated by avelsieve
# (Sieve Mail Filters Plugin for Squirrelmail)
# Warning: If you edit this manually, then the changes will not 
# be reflected in the users' front-end!
#AVELSIEVE_VERSIONYTo0OntzOjU6Im1ham9yIjtpOjE7czo1OiJtaW5vciI7aTo5O3M6NzoicmVsZWFzZSI7aTo5O3M6Njoic3
RyaW5nIjtzOjU6IjEuOS45Ijt9
#AVELSIEVE_CREATED1342104019
#AVELSIEVE_MODIFIED1351180357
require 
["fileinto","envelope","reject","vacation","imapflags","relational","comparator-i;ascii-nume
ric","regex","notify"];
#START_SIEVE_RULEYTo1OntzOjQ6ImNvbmQiO2E6MTp7aTowO2E6NTp7czo0OiJraW5kIjtzOjc6Im1lc3NhZ2UiO3M6NDoidHl
wZSI7czo2OiJoZWFkZXIiO3M6NjoiaGVhZGVyIjtzOjExOiJYLVNwYW0tRmxhZyI7czo5OiJtYXRjaHR5cGUiO3M6MjoiaXMiO3M
6MTE6ImhlYWRlcm1hdGNoIjtzOjM6IllFUyI7fX1zOjQ6InR5cGUiO3M6MToiMSI7czo5OiJjb25kaXRpb24iO3M6MzoiYW5kIjt
zOjY6ImFjdGlvbiI7czoxOiI1IjtzOjY6ImZvbGRlciI7czoxMDoiSU5CT1guU1BBTSI7fQ%3D%3DEND_SIEVE_RULE
if header :is "X-Spam-Flag" "YES"
{
fileinto  "INBOX.SPAM";
}


At this point I am a little baffled, since this should be moving all 
X-Spam-Flag that are YES into a folder INBOX.SPAM which does not exists at the 
top level (although I assume this means it should be filtered into each users 
individual SPAM folder). I am using Squirrelmail as a web based from end for my 
remote users and imagine the package manager must have installed this at some 
point. To simplify my life I re-wrote the script as:

require 
["fileinto","envelope","reject","vacation","imapflags","relational","comparator-i;ascii-nume
ric","regex","notify"];
if exists "X-Spam-Flag" {
    if header :contains "X-Spam-Flag" "YES"
    {
    fileinto  "user.techsupport.SPAM";
    stop;
    }
}

then

[shawn@postoffice ~]$ sieveshell -u shawn localhost
connecting to localhost
Please enter your password: 
> put phpscript.txt phpscript
> list
phpscript  <- active script
> quit


However, users are still receiving emails marked as SPAM in their inbox. What I 
am trying to do is make it so that any and all emails marked as SPAM are 
redirected to a single folder called SPAM in the techsupport users mail store. 

Any help is greatly appreciated,  
Shawn












require "fileinto";
  if exists "X-Spam-Flag" {
          if header :contains "X-Spam-Flag" "NO" {
          } else {
          fileinto "user.techsupport.SPAM";
          stop;
          }
  }

                                                                                
  
----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

Reply via email to