[Dovecot] 1.0.1 release candidate 2

Adam McDougall mcdouga9 at egr.msu.edu
Tue Jun 12 01:03:23 EEST 2007


On Mon, Jun 11, 2007 at 08:13:51PM +0300, Timo Sirainen wrote:

  I'll release v1.0.1 in a day or two, but it would be nice to get some
  testing before the release to see if I managed to break something after
  the Mercurial conversion. And did I forget something that should be
  fixed for v1.0.1?
  
  http://dovecot.org/tmp/dovecot-1.0.1rc2.tar.gz
  
  Changes since v1.0.0:
  
  	* deliver: If Return-Path doesn't contain user and domain, don't try
  	  to bounce the mail (this is how it was supposed to work earlier too)
  	* deliver: %variables in mail setting coming from userdb aren't
  	  expanded anymore (again how it should have worked). The expansion
  	  could have caused problems if paths contained any '%' characters.
  
  	+ Print Dovecot version number with dovecot -n and -a
  	- Trying to start Dovecot while it's already running doesn't anymore
  	  wipe out login_dir and break the running Dovecot.
  	- maildir: Fixed "UID larger than next_uid" errors which happened
  	  sometimes when dovecot-uidlist file didn't exist but index files did
  	  (usually because mailbox didn't have any messages when it was
  	  selected for the first time)
  	- maildir: We violated maildir spec a bit by not having keyword
  	  characters sorted in the filename.
  	- maildir: If we don't have write access to cur/ directory, treat the
  	  mailbox as read-only. This fixes some internal error problems with
  	  trying to use read-only maildirs.

I encountered another FS permission related issue with shared mailboxes and acls that 
causes an Internal error, that I was planning on reporting when I got a chance to sit 
down and clarify it.  It seems to behave better in Thunderbird, because checking for 
folders to subscribe to just puts in the log "cannot read (path to)/.bedata.In/dovecot-acl"
and continues executing.  For squirrelmail or telnet, its a simple problem where an IMAP
client tries to list folders available for subscription (click Folders in Squirrelmail)
but if ANY maildir in configured namespace has insufficient unix permissions to enter,
the LIST "" * command aborts with an Internal error:

a LIST "" *
* LIST (\Noselect \HasChildren) "/" "#shared/be"
a NO Internal error occurred. Refer to server log for more information. [2007-06-11 17:38:24]

This case was caused from:
drwxrwx---  5 postlocal  somegroup  4096 Oct 18  2006 .bedata.In
inside one of my shared namespaces "#shared/be" where the current logged in
user is not postlocal and is not a member of somegroup.

When I change .bedata.In to 775, it works fine, or when I temporarily disable
the acl plugin, it works fine.  I believe this problem affects ALL users except
if they happen to be a member of "somegroup".  

My first workaround was to make .bedata.In mode 775 then restrict the permissions on 
cur/ tmp/ new/ inside to 770, but this conflicts with permission requirements in 
other parts of my tree, and for some of my namespaces I really want to prevent world 
access through unix to the maildirs because of private data, even if my dovecot ACL 
setup properly restricts the permissions through IMAP.

In short, I don't think dovecot should die when it encounters a failure to enter a 
directory (to read an ACL file or otherwise), since if the acl cannot be read or the 
directory is inaccessible anyway, it is of no use to the user and dovecot should log 
it and continue searching for accessible folders.  Hopefully this is an easy case to 
test, but if I need to participate more, please let me know.  Thanks.



  	- maildir: Deleting a symlinked maildir failed with internal error.
  	- mbox: pop3_uidl_format=%m wasn't working right
  	- mbox: If non-filesystem quota was enabled, we could have failed
  	  with "Unexpectedly lost From-line" errors while saving new messages
  	- mysql auth: %c didn't work. Patch by Andrey Panin
  	- COPY: We sent "Hang in there.." too early sometimes and checked it
  	  too often (didn't break anything, but was slower than needed).
  	- deliver: Postfix's sendmail binary wasn't working with mail_debug=yes
  	- Don't corrupt ssl-parameters.dat files when running multiple Dovecot
  	  instances.
  	- Cache compression caused dovecot.index.cache to be completely deleted
  	  with big endian CPUs if 64bit file offsets were used (default)
  	- Fixed "(index_mail_parse_header): assertion failed" crash
  




More information about the dovecot mailing list