On Fri, 28 Apr 2006, listrcv wrote:
> > Lots of things start failing when path names get longer than 256
> > characters (or perhaps 1024). I think 256 is a POSIX limit.
>
> How does Exim handle that?
Without searching the code, I can't be sure, but I don't think it does
any checks itself. However, if it tries to create a directory and fails,
delivery is deferred. I imagine the OS or file system will impose this
limit and give an error when at attempt is made to exceed it.
> Well, if I got it right, the idea was that subsequent directories should
> not have to be created before mail can be delivered to them. Having Exim
> create them could eventually be exploited by supplying suitable content
> to string expansions or to lookups, or even by putting such content into
> mail.
Exim does not, and cannot, protect sysadmins against their own mistakes.
It's the sysadmin who creates the string expansions and presumably
controls the contents of lookups. Or am I misunderstanding what you are
saying?
Data from the mail in this connection is normally only $local_part and
$local_part_suffix (or prefix), and the values of these are presumably
constrained by the routers.
> Without finer grained control on directory creation, the only choices
> then would be to either turn it off or to pre-create directories and
> making use of the require_files option (as someone suggested). Or am I
> mistaken?
There is some fine-grained control. Look at the create_file option and
file_must_exist options.
--
Philip Hazel University of Cambridge Computing Service
Get the Exim 4 book: http://www.uit.co.uk/exim-book