[Exim] Quota and final delivery (maybe Feature Request)

Top Page
Delete this message
Reply to this message
Author: tilo.buschmann
Date:  
To: exim-users
Subject: [Exim] Quota and final delivery (maybe Feature Request)
Hi

Currently I am testing the quota mechanism of Exim (latest 3.3x) and
found a problem.

Maybe you can remember, that I start a perl script everytime the email
got delivered:

virtual_delivery:
  driver = appendfile
  maildir_format
  directory = /var/spool/virtual/mail/${perl{foo}{${lookup \
         mysql {USER_TO_USERID}{$value}{${local_part}}}}{$message_id}}
  user = mail
  group = mail
  maildir_tag = "$message_id:2,"
  quota = ${lookup mysql {select CONCAT(equota,'M') from
          \user where user = '${quote_mysql:$local_part}'}{$value}}
  mode = 0660
  directory_mode = 0770
  create_directory = true
  check_string = ""
  escape_string = ""
  prefix = ""
  suffix = ""
  envelope_to_add
  return_path_add
  delivery_date_add



The above Perl Lookup gives back the userid of this user and it makes
something with this email (in fact: It decodes all parts of this email and
writes the results to a database, this is used to have a fast access to the
parts of the email without using imap and decoding the email later).
Of course this should only be done if the email delivery was succesful.
The only condition that could prevent delivery is the quota mechanism.

Now my question:

Where/How should I put my perl lookup to get it only executed, when delivery
was succesful (It should _not_ be in a filter file, it is possible to
change the output of the perl script to nothing or anything else).

If this is not possible, I would have a feature request, somethink like

perl_execute_if_successful = perl_func

:-)

Tilo
(I am on the list)