Hi Timo, today I found this in the logs again:
Jul 29 10:38:27 trevi mail:err|error dovecot: IMAP(beckerr): fchown(/u/f0/rzuser/beckerr/Mail/.subscriptions.lock, -1, -1) failed: Invalid argument Jul 29 10:38:27 trevi mail:err|error dovecot: IMAP(beckerr): file_dotlock_open() failed with subscription file /u/f0/rzuser/beckerr/Mail/.subscriptions: Invalid argument I located the bug in src/lib/file-dotlock.c ... a patch is attached. Ralf Timo Sirainen schrieb am 07.07.2009 18:40: > On Tue, 2009-07-07 at 17:58 +0200, Axel Luttgens wrote: >>> Is my understanding of these sentences correct? >>> "If owner and group are -1, nothing is done?" >>> >>> In this case it should be save to skip the call, shouldn't it? >> Yes, I guess so. > > Yes. Committed: http://hg.dovecot.org/dovecot-1.2/rev/d6337be8ae30 > >> Unless the rationale for that call is to ensure a correct cache >> flushing for NFS clients, while being some kind of (costly) no-op >> otherwise? > > In that case I would have used those nfs_flush_*() functions. > -- ______________________________________________________________________ Dipl.-Inform. (FH) Ralf Becker Rechenzentrum (r/ft) der FH Trier (Network|Mail|Web|Firewall) University of applied sciences Administrator Schneidershof, D-54293 Trier Mail: [email protected] Fon: +49 651 8103 499 Web: http://www.fh-trier.de/~beckerr Fax: +49 651 8103 214 PubKey: http://www.fh-trier.de/~beckerr Crypto: GnuPG, S/MIME ______________________________________________________________________ Wenn Gott gewollt haette, dass E-Mail in HTML geschrieben wuerden, endeten Gebete traditionell mit </amen>. (Tom Listen)
--- dovecot-1.2.2/src/lib/file-dotlock.c.org 2009-07-29 10:44:21.000000000
+0200
+++ dovecot-1.2.2/src/lib/file-dotlock.c 2009-07-29 10:44:42.000000000
+0200
@@ -780,7 +780,7 @@
fd = file_dotlock_open(set, path, flags, &dotlock);
umask(old_mask);
- if (fd != -1 && (uid != (uid)-1 || gid != (gid_t)-1)) {
+ if (fd != -1 && (uid != (uid_t)-1 || gid != (gid_t)-1)) {
if (fchown(fd, uid, gid) < 0) {
if (errno == EPERM && uid == (uid_t)-1) {
i_error("%s", eperm_error_get_chgrp("fchown",
smime.p7s
Description: S/MIME Cryptographic Signature
