Hello,
there has been a lengthy discussion on the linux-kernel mailing list
(mostly under the subject of "ext3-2.4-0.9.4") - which can be read
e.g. via
http://www.cs.Helsinki.FI/linux/linux-kernel/2001-29/
(also in following weeks) - about semantics of file system operations
like rename, unlink etc. in different variants of Unix and file systems
regarding synchronous operation.
Is the way Exim handles spool files and local delivery safe, especially
on Linux ext2?
James Antill seems to think that it's not.
-- forwarded message --
From: james@??? (James Antill)
Newsgroups: lists.linux.kernel
Subject: Re: ext3-2.4-0.9.4
Date: 7 Aug 2001 04:09:41 +0200
"Patrick J. LoPresti" <patl@???> writes:
[snip sendmail/cyrus/qmail/postfix]
Just in case anyone cares here's what exim does (AFAICS)...
int fd1 = open(f1);
write(fd1);
fsync(fd1);
int fd2 = open(tmp);
write(fd2);
fsync(fd2);
rename(tmp, f2); // Good at this point.
So that seems to rely on all dir operations being sync.
Ps. I did a patch for exim to do the dir sync though...
http://www.and.org/exim-3.31-dirfsync.patch
--
# James Antill -- james@???
:0:
* ^From: .*james@and\.org
/dev/null
-- end of forwarded message --
Any comment? Regards,
Lutz
--
_ | Lutz Pressler | Tel: ++49-551-3700002
|_ |\ | | Service Network GmbH | FAX: ++49-551-3700009
._|ER | \|ET | Bahnhofsallee 1b | mailto:lp@SerNet.DE
Service Network | D-37081 Goettingen | http://www.SerNet.DE/