On Thu, 12 Aug 1999, F.F. Jacot-Guillarmod wrote:
> Hi,
>
> I've taken all the good advice about eliminating procmail as a delivery
> agent in our mail configuration, and am looking at achieving similar
> functionality using just exim, cyrus and exim system and user filters.
>
> In between a zillion other crises, things are edging along and I'm
> getting somewhere.
>
> But there's two problems I've encountered in checking that cyrus
> quotas handshake correctly with exim and requeue mail destined for an
> overquota mailbox. Cyrus signals correctly with a "75" temporary error,
> but exim bounces the mail immediately instead of holding it in the
> queue. As far as I can see, the transport is set up to do just this,
> but no way...
>
> The second problem is related to this... how does one specify a list of
> integers? I've tried:
>
> temp_errors = 73 75
> temp_errors = 73, 75
> temp_errors = 73 : 75
> and
> temp_errors = "73 : 75"
All I can offer is this from the spec.txt:
| temp_errors
|
| Type: string
| Default: see below
|
|
| This option contains a colon-separated list of numbers. If
| ignore_status is false and the command exits with a return code that
| matches one of the numbers, the failure is treated as temporary and
| the delivery is deferred. The default setting contains the codes
| defined by EX_TEMPFAIL and EX_CANTCREAT in sysexits.h. If Exim is
| compiled on a system that does not define these macros, it assumes
| values of 75 and 73, respectively.
>
> all to no avail. Exim whines about configuration errors when reloading,
> and I've searched in vain through the online documentation for an
> example.
>
> Anyway, here's the relevant transport section dealing with simple
> cyrus delivery:
>
> ================================================================
> local_delivery_cyrus:
> driver = pipe
> command = "/usr/local/cyrus/bin/deliver \
> -e -m ${substr_1:${local_part_suffix}} -- ${local_part}"
> user = cyrus
> group = cyrus
> delivery_date_add
> envelope_to_add
> return_path_add
> return_output
> ignore_status = false
> temp_errors = 75
> log_output
> prefix =
> suffix =
> ================================================================
>
> When sending mail to a test user mailbox that is deliberately driven
> over quota, exim logs the following and immediately returns the mail.
> The bounce message, incidentally, makes all the right noises about the
> destination mailbox being over quota.
>
> ================================================================
> 1999-08-12 19:15:49 11EySD-0001Xm-00 <= Jacot@??? H=turtle.ru.ac.za
> [146.231.128.8] P=esmtp S=868
> id=Pine.LNX.4.10.9908121915240.2153-100000@??? from
> <Jacot@???> for ccfjg+imap@???
> 1999-08-12 19:15:49 11EySD-0001Xm-00 <ccfjg+imap@???>:
> local_delivery_cyrus transport output: ccfjg: Over quota
> 1999-08-12 19:15:49 11EySD-0001Xm-00 ** ccfjg+imap@???
> D=local_user_cyrus T=local_delivery_cyrus: Child process of
> local_delivery_cyrus transport returned 75 (could mean temporary error)
> from command: /usr/local/cyrus/bin/deliver
> 1999-08-12 19:15:49 11EySD-0001Xr-00 <= <> R=11EySD-0001Xm-00 U=exim
> P=local S=1757 from <> for Jacot@???
> 1999-08-12 19:15:49 11EySD-0001Xm-00 Completed
> 1999-08-12 19:15:49 11EySD-0001Xr-00 => ccfjg+imap@???
> <Jacot@???> R=lookuphost T=smtp H=terrapin.ru.ac.za [146.231.128.6]
> C="250 OK id=11EySD-0006tS-00"
> 1999-08-12 19:15:49 11EySD-0001Xr-00 Completed
> ================================================================
>
> Are there any other config settings that could be causing this
> behaviour?
>
> Many thanks,
> Jacot
> --
> F.F. Jacot Guillarmod - Information Technology - Rhodes University - Grahamstown
> Internet: Jacot@??? Phone: +27 46 603 8284 Fax: +27 46 622 7764
> The views expressed above are not necessarily those of Rhodes University
>
>
>
> --
> ## List details at http://www.exim.org/mailman/listinfo/exim-users Exim details at http://www.exim.org/ ##
>