Please ignore the first email

hello all,

Lets say i have a user call "a" and i have an alias call "b" for that
user, I would like
to be able to get email coming for user "a" in INBOX folder and email
coming for
alias "b" in folder INBOX-B.

my user filter look like this
-----------------------.filter----------------------------------------
# Exim filter
if $local_part is "a"
then
        save /var/mail/${domain}/${local_part}/.INBOX-B/
elif $local_part is "b"
then
        save /var/mail/${domain}/${local_part}/
endif
-----------------------.filter----------------------------------------


the problem is, if i send an email to "a" or "b" i will get the email
in both folders,
is there is a way i can keep mail coming for "a" in folder INBOX and
mail coming
for "B" in folder INBOX ?


I have Virtual Mail System with Exim and MySQL



routers.conf---------------------------------------------------------------------------------
begin routers
dnslookup:
  driver = dnslookup
  domains = ! +local_domains
  transport = remote_smtp
  ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
  no_more
autoreply:
  driver = redirect
  allow_filter
  hide_child_in_errmsg
  ignore_eacces
  ignore_enotdir
  reply_transport = autoreply_reply
  no_verify
  file_transport = address_file
  pipe_transport = address_pipe
  directory_transport = address_directory
  require_files = /var/mail/${domain}/${local_part}/.filter
  file = /var/mail/${domain}/${local_part}/.filter
  user = mail
  group = mail
  unseen

mysql_all_domain_alias:
  driver        = redirect
  domains       = +local_domains
  local_parts   = alle
  data          = ${lookup mysql{ \
                        SELECT CONCAT(username,'@',domain) AS sendto \
                        FROM user \
                        WHERE domain='${quote_mysql:$domain}' \
                        AND SMTP_allowed='YES' \
                  }}
  condition     = ${if or {{\
                        def:authenticated_id\
                    }{\
                        eq {$sender_host_address}{127.0.0.1}\
                    }}\
                  }
  file_transport = address_file
  pipe_transport = address_pipe

mysql_alias:

  driver                = redirect
  domains               = +local_domains
  file_transport        = address_file
  pipe_transport        = address_pipe
  data                  = ${if or {{\
                                def:authenticated_id\
                          }{\
                                eq {$sender_host_address}{127.0.0.1}\
                          }}{\
                                ${lookup mysql{ \
                                        SELECT sendto \
                                        FROM alias \
                                        WHERE ( 
username='${quote_mysql:$local_part}' \
                                        AND (domain='${quote_mysql:$domain}' OR 
domain='') )}}\
                          } {\
                                ${lookup mysql{ \
                                        SELECT sendto \
                                        FROM alias \
                                        WHERE ( ( 
username='${quote_mysql:$local_part}' AND
(domain='${quote_mysql:$domain}' OR domain='') ) \
                                        AND internal='NO' )}}\
                          }}
  local_part_suffix     = +*
  local_part_suffix_optional

mysql_user_condition:
  driver                = accept
  domains               = +local_domains
  caseful_local_part    = true
  condition             = ${if and {{\
                                        
                                        eq {${lookup mysql{ \
                                                SELECT 
CONCAT(username,'@',domain) AS email \
                                                FROM user \
                                                WHERE 
username='${quote_mysql:$local_part}' \
                                                AND 
domain='${quote_mysql:$domain}' \
                                                AND SMTP_allowed='YES' \
                                        }{true}{false}}}{true}\
                                   }{\
                                        
                                        or {{\
                                                        
                                                and {{\
                                                        eq 
{${sg{$local_part_suffix}{^#([^#]+)#[0-9]\{8\}\$}{\$1}}}{before}\
                                                }{\
                                                        lt 
{$tod_logfile}{${sg{$local_part_suffix}{^#[^#]+#([0-9]\{8\})\$}{\$1}}}\
                                                }\
                                           }\
                                           }{\
                                                and {{\
                                                        eq 
{${sg{$local_part_suffix}{^#([^#]+)#.*\$}{\$1}}}{fromdomain}\
                                                    }{\
                                                        eq 
{$sender_address_domain}{${sg{$local_part_suffix}{^#[^#]+#(.*)\$}{\$1}}}\
                                                    }\
                                                }\
                                           }{\
                                                and {{\
                                                        eq 
{${sg{$local_part_suffix}{^#([^#]+)#.*\$}{\$1}}}{b64from}\
                                                    }{\
                                                        eq 
{${str2b64:$sender_address}}{${sg{$local_part_suffix}{^#[^#]+#(.*)\$}{\$1}}}\
                                                    }\
                                                }\
                                           }\
                                        }\
                                   }\
                          }\
                          }
  local_part_suffix     = #*
  transport             = local_mysql_delivery

mysql_user:
  driver                = accept
  domains               = +local_domains
  condition             = ${lookup mysql{ \
                                SELECT CONCAT(username,'@',domain) AS email \
                                FROM user \
                                WHERE username='${quote_mysql:$local_part}' \
                                AND domain='${quote_mysql:$domain}' \
                                AND SMTP_allowed='YES' \
                          }{true}{false}}
  local_part_suffix     = +*
  local_part_suffix_optional
  transport             = local_mysql_delivery
  no_more
mysql_catchall:
  driver                = redirect
  # restriction to local domains only may be a double check, as data
takes care of it already ;-)
  domains               = +local_domains
  file_transport        = address_file
  pipe_transport        = address_pipe
  data                  = ${lookup mysql{ \
                                SELECT sendto \
                                FROM catchall \
                                WHERE domain='${quote_mysql:$domain}' \
                          }}
system_aliases:
  driver = redirect
  allow_fail
  allow_defer
  data = ${lookup{$local_part}lsearch{/etc/mail.d/exim.d/aliases}}
  file_transport = address_file
  pipe_transport = address_pipe



localuser:
  driver = accept
  check_local_user
  transport = local_delivery
  cannot_route_message = Unknown user
routers.conf---------------------------------------------------------------------------------

transports.conf---------------------------------------------------------------------------------
begin transports

remote_smtp:
  driver = smtp
  headers_remove        = X-Spam-Report:X-Spam-Bar

autoreply_reply:
        driver = autoreply
address_directory:
        driver = appendfile
        maildir_format

local_delivery:
  driver = appendfile
  directory     = /var/mail/${local_part}/
  maildir_format
  delivery_date_add
  envelope_to_add
  return_path_add
  group         = mail
  mode          = 0660

local_mysql_delivery:
  driver        = appendfile

  directory     = /var/mail/${domain}/${local_part}/
  maildir_format
  delivery_date_add
  envelope_to_add
  return_path_add
  user          = mail
  group         = mail
  mode          = 0660

  headers_remove = Subject : X-Spam-Flag : X-Spam-Score-Int :
X-Spam-Score : X-Spam-Bar : X-Spam-Report
  headers_add   = "X-Spam-Threshold: ${lookup mysql{ \
                                        SELECT spam_threshold \
                                        FROM user \
                                        WHERE 
username='${quote_mysql:$local_part}' \
                                        AND domain='${quote_mysql:$domain}' \
                                        AND SMTP_allowed='YES' \
                                      }{$value}{ERROR}}\n\
                  X-Spam-Score: $header_X-Spam-Score:\n\
                  X-Spam-Score-Int: $header_X-Spam-Score-Int:\n\
                  X-Spam-Bar: $header_X-Spam-Bar:\n\
                  X-Spam-Report: $header_X-Spam-Report:\n\
                  X-Spam-Flag: ${if def:header_X-Spam-Score-Int:{\
                                        ${if 
>={${eval:${sg{$header_X-Spam-Score-Int:}{^.*\n}{}}}}\
                                                {${lookup mysql{ \
                                                        SELECT 
spam_threshold*10 \
                                                        FROM user \
                                                        WHERE 
username='${quote_mysql:$local_part}' \
                                                        AND 
domain='${quote_mysql:$domain}' \
                                                        AND SMTP_allowed='YES' \
                                                }{$value}{ERROR}}}{YES}{NO}}\
                                        }{\
                                        UNKNOWN\
                                }}\n\
                  Subject: ${if def:header_X-Spam-Score-Int:{\
                                        ${if 
>={${eval:${sg{$header_X-Spam-Score-Int:}{^.*\n}{}}}}\
                                                {${lookup mysql{ \
                                                        SELECT 
spam_threshold*10 \
                                                        FROM user \
                                                        WHERE 
username='${quote_mysql:$local_part}' \
                                                        AND 
domain='${quote_mysql:$domain}' \
                                                        AND SMTP_allowed='YES' \
                                                }{$value}{ERROR}}}{${lookup 
mysql{ \
                                                                        SELECT 
spam_tag \
                                                                        FROM 
user \
                                                                        WHERE 
username='${quote_mysql:$local_part}' \
                                                                        AND 
domain='${quote_mysql:$domain}' \
                                                                        AND 
SMTP_allowed='YES' \
                                                                   
}{$value}{ERROR}}$h_subject:}{$h_subject:}}\
                                }{$h_subject:}}\n\
                  X-Delivered-To: $original_local_part@$original_domain
($local_part@$domain)\n\
                  X-Message-Age: $message_age"

address_pipe:
  driver = pipe
  return_output

address_file:
  driver = appendfile
  delivery_date_add
  envelope_to_add
  return_path_add

address_reply:
  driver = autoreply

transports.conf---------------------------------------------------------------------------------



thank you


-- 
Sincerely,

Falazemi

-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to