[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Exim4 configuration: routing through uucp (worked in Exim 3)



I've spent countless hours reading about Exim4 trying to determine
how to send out mail like I am doing on this Exim3 (woody) machine.
This gets complicated because:

o The real name of the machine in question is not the mail name.
o I want all mail to go in and out through the machine that I connect
  to via uucp (and who then relays via SMTP).
o The standard Debian config utility assumes an SMTP smarthost.

Given that I want to make some pretty non-standard changes, it appears
that the new multiple-file configuration is more appropriate as changes
can be localized to small files, but I'm not clear what I need to change
where.

In Exim3 I had this transport for uucp:

uucp:
  driver = pipe
  user = uucp
  command = "/usr/bin/uux -r - $host!rmail ${local_part}@${domain}"
  return_fail_output = true

and this router:

uucphost:
  condition = ${if eq {${lc:$sender_address}} {mailname@machine.domain.org} {true} fail }
  transport = uucp
  driver = domainlist
  route_list = "* uucp_name_of_machine_where_uucp_mail_goes"

I had to comment out the smarthost entry in Exim3 as it would catch all
mail sent.

I have configured UUCP in the sarge machine the same way it is in
woody.  I have read that the place to put local configuration is in
/etc/exim4/conf.d/main/00_exim4-config_local (or other suitable name
beginning in 00) so that the local commands get read before others,
but there are other issues as, for instance, "domainlist" and
"route_list" are no longer valid in Exim4.  Plus, it seems main is not
the directory to put routers or transports.

What is the proper debianized way of configuring Exim4 to do this?  Where
should the proper code snippets go?

Once I have the uucp path properly working, I would like to also set up
other smart hosts to which emails with other mailnames would be routed.

For instance, I had this entry in Exim3 (that was never tested)

smarthost_otherisp:
  condition = ${if eq {${lc:$sender_address}} {popuser@otherisp.net} {true} fail }
  driver = domainlist
  transport = remote_smtp
  route_list = "* relay.otherisp.net bydns_a"

where the mail that had a From: line of popuser@otherisp.net would be directed
to the otherisp.net mail machine.  And so on with other addresses/mail servers.

The idea was that mutt would generate emails with different From: lines
depending on the mailing list I was sending to/replying to, but I never got
around to do that part.

What would be the easiest way to achieve this in the Debian Exim4
configuration scheme?

Help please!

A.



Reply to: