i'm working my way through converting my exim configuration file to workin
3.952, and i've hit one where i'm not sure if i'm looking a condition that
needs to be rewritten for 3.952, or if i'm simply not testing it right.
the scenario is this: i need to hide the majordomo outgoing aliases
(majordomo 1.94.5, not majordomo 2). i've been doing this in exim 3.x by
separating my majordomo director into two separate directors, call them
majordomo_public and majordomo_private. the outgoing addresses are all in
an alias file associated with majordomo_private; the typical exim 3.x
director looks like this:
majordomo_private:
domains = digest.net
driver = aliasfile
file_transport = address_file
pipe_transport = majordomo_pipe
file=/etc/exim.d/digest.net-private
user = majordomo
search_type = lsearch
condition = "${if eq {$received_protocol} {local} \
{true} {false} }"
the condition at the end won't let non-local users send to the outgoing
addresses; i don't have any local users who are interested in spamming the
list, so i've never put in any protection beyond this.
convert4r4 produces this:
majordomo_private:
driver = redirect
allow_defer
allow_fail
condition = "${if eq {$received_protocol} {local} \
{true} {false} }"
data = ${lookup{$local_part}lsearch{/etc/exim.d/digest.net-private}}
domains = digest.net
file_transport = address_file
pipe_transport = majordomo_pipe
retry_use_local_part
user = majordomo
the condition is unchanged, and my superficial read of the exim 4 docs
suggests that this is ok. however, here is the pertinent output from a
test, showing condition failure:
[root@krusty-motorsports build-Linux-i386]# ./exim -bt -d all -v bmw-digest-outgoing@???
<much output snipped, until the relevant router is reached>
--------> majordomo_private router <--------
local_part=bmw-digest-outgoing domain=digest.net
checking domains
digest.net in "digest.net"? yes (matched "digest.net")
checking "condition"
majordomo_private router skipped: condition failure
as i recall (it was a while back), this condition was a real bastard to
verify in a standalone manner. does exim -bt do the localhost thing?
i get a similar failure with
./exim -bh 127.0.0.1 -d all -v
giving "helo krusty-motorsports.com" (one of the local domains),
"mail from:<owner-bmw-digest@???>" (a typical mail from:),
"rcpt to:<bmw-digest-outgoing@???>" (a typical rcpt to:)
(pardon the snipping, but the output is voluminous and mostly irrelevant)
which ends with the identical condition failure as the -bt test.
thanks for any help anyone can offer,
richard
--
Richard Welty
rwelty@??? Averill Park Networking
rwelty@??? Unix, Linux, IP Network Engineering, Security
rwelty@??? 518-573-7592