[Dovecot] 1.0.1 release candidate 2
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.
- 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
Trying to compile on Solaris 10 - X86_64 with Sun Studio 12.
./configure --without-ssl {...} Install prefix ...................... : /usr/local File offsets ........................ : 64bit I/O loop method ..................... : poll File change notification method ..... : none Building with SSL support ........... : no Building with IPv6 support .......... : yes Building with pop3 server ........... : yes Building with mail delivery agent .. : yes Building with GSSAPI support ........ : no Building with user database modules . : static prefetch passwd passwd-file checkpassword (modules) Building with password lookup modules : passwd passwd-file shadow pam checkpassword (modules) Building with SQL drivers ............:
make starts ok
make all-recursive
Making all in src
Making all in lib
Making all in lib-dict
Making all in lib-sql
rm -f sql-drivers-register.c
{....}
cc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../src/lib
-I../../src/lib-settings -DSYSCONFDIR=\""/usr/local/etc"\"
-DPKG_RUNDIR=\""/usr/local/var/run/dovecot"\"
-DPKG_STATEDIR=\""/usr/local/var/lib/dovecot"\"
-DPKG_LIBEXECDIR=\""/usr/local/libexec/dovecot"\"
-DMODULEDIR=\""/usr/local/lib/dovecot"\" -DSSLDIR=\""/etc/ssl\""
-I/usr/local/include -g -c ssl-init.c
"ssl-init.c", line 171: identifier redeclared:
ssl_parameter_process_destroyed
current : function(long) returning void
previous: function(_Bool) returning void : "ssl-init.h", line 6
cc: acomp failed for ssl-init.c
make[3]: *** [ssl-init.o] Error 2
make[3]: Leaving directory /root/dovecot-1.0.1rc2/src/master' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory
/root/dovecot-1.0.1rc2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/dovecot-1.0.1rc2'
make: *** [all] Error 2
The 1.0 release compiles and run just fine.
-- Brett Morrow, NSSL Senior Systems and Storage Administrator INDUS Corporation National Severe Storms Laboratory (405) 325-6995 Brett.Morrow@noaa.gov http://www.induscorp.com
Should have checked it out before I sent the message, but same problem with gmake and gcc...
Brett Morrow wrote:
Trying to compile on Solaris 10 - X86_64 with Sun Studio 12.
./configure --without-ssl {...} Install prefix ...................... : /usr/local File offsets ........................ : 64bit I/O loop method ..................... : poll File change notification method ..... : none Building with SSL support ........... : no Building with IPv6 support .......... : yes Building with pop3 server ........... : yes Building with mail delivery agent .. : yes Building with GSSAPI support ........ : no Building with user database modules . : static prefetch passwd passwd-file checkpassword (modules) Building with password lookup modules : passwd passwd-file shadow pam checkpassword (modules) Building with SQL drivers ............:
make starts ok
make all-recursive Making all in src Making all in lib Making all in lib-dict Making all in lib-sql rm -f sql-drivers-register.c {....} cc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../src/lib -I../../src/lib-settings -DSYSCONFDIR=\""/usr/local/etc"\" -DPKG_RUNDIR=\""/usr/local/var/run/dovecot"\" -DPKG_STATEDIR=\""/usr/local/var/lib/dovecot"\" -DPKG_LIBEXECDIR=\""/usr/local/libexec/dovecot"\" -DMODULEDIR=\""/usr/local/lib/dovecot"\" -DSSLDIR=\""/etc/ssl\"" -I/usr/local/include -g -c ssl-init.c "ssl-init.c", line 171: identifier redeclared: ssl_parameter_process_destroyed current : function(long) returning void previous: function(_Bool) returning void : "ssl-init.h", line 6 cc: acomp failed for ssl-init.c make[3]: *** [ssl-init.o] Error 2 make[3]: Leaving directory
/root/dovecot-1.0.1rc2/src/master' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory
/root/dovecot-1.0.1rc2/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/dovecot-1.0.1rc2' make: *** [all] Error 2The 1.0 release compiles and run just fine.
-- Brett Morrow, NSSL Senior Systems and Storage Administrator INDUS Corporation National Severe Storms Laboratory (405) 325-6995 Brett.Morrow@noaa.gov http://www.induscorp.com
On Mon, 2007-06-11 at 14:44 -0500, Brett Morrow wrote:
Trying to compile on Solaris 10 - X86_64 with Sun Studio 12.
./configure --without-ssl .. ssl_parameter_process_destroyed current : function(long) returning void previous: function(_Bool) returning void : "ssl-init.h", line 6
Oh, it doesn't compile without SSL. Thanks! This fixes it: diff -r 84994704291b src/master/ssl-init.c --- a/src/master/ssl-init.c Sun Jun 10 22:39:47 2007 +0300 +++ b/src/master/ssl-init.c Mon Jun 11 22:52:53 2007 +0300 @@ -168,7 +168,7 @@ void ssl_deinit(void) #else -void ssl_parameter_process_destroyed(pid_t pid __attr_unused__) {} +void ssl_parameter_process_destroyed(bool abnormal_exit __attr_unused__) {} void ssl_check_parameters_file(void) {} void ssl_init(void) {} void ssl_deinit(void) {}
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
On Mon, 2007-06-11 at 18:03 -0400, Adam McDougall wrote:
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.
Does this fix it: http://hg.dovecot.org/dovecot-1.0/rev/69ab5669855a
On Tue, Jun 12, 2007 at 02:03:00AM +0300, Timo Sirainen wrote:
On Mon, 2007-06-11 at 18:03 -0400, Adam McDougall wrote:
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.
Does this fix it: http://hg.dovecot.org/dovecot-1.0/rev/69ab5669855a
No, although the behavior changed. It seems that: a LIST "" *
now works once in telnet but the second, third, etc time shows:
a LIST "" *
- LIST (\Noselect \HasChildren) "/" "#shared/be" a NO Internal error occurred. Refer to server log for more information. [2007-06-11 23:31:38]
When I try in Squirrelmail, it fails every time, with the same error in the browser: ERROR: Could not complete request. Query: Reason Given: Internal error occurred. Refer to server log for more information. [2007-06-11 23:30:52]
but in the dovecot log (for either case whenever I get an Internal error at the client): Jun 11 23:25:48 hill dovecot: IMAP(mcdouga9): stat(/egr/mail/shared/be/.bedata.In/dovecot-acl) failed: Permission denied Jun 11 23:25:48 hill in.imapproxyd[992]: IMAP_Line_Read(): connection closed prematurely.
On Mon, 2007-06-11 at 23:37 -0400, Adam McDougall wrote:
On Tue, Jun 12, 2007 at 02:03:00AM +0300, Timo Sirainen wrote:
On Mon, 2007-06-11 at 18:03 -0400, Adam McDougall wrote:
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.
Does this fix it: http://hg.dovecot.org/dovecot-1.0/rev/69ab5669855a
No, although the behavior changed. It seems that: .. Jun 11 23:25:48 hill dovecot: IMAP(mcdouga9): stat(/egr/mail/shared/be/.bedata.In/dovecot-acl) failed: Permission denied
OK, this then: http://hg.dovecot.org/dovecot-1.0/rev/6eded4438f44
On Tue, Jun 12, 2007 at 02:54:56PM +0300, Timo Sirainen wrote:
On Mon, 2007-06-11 at 23:37 -0400, Adam McDougall wrote:
On Tue, Jun 12, 2007 at 02:03:00AM +0300, Timo Sirainen wrote:
On Mon, 2007-06-11 at 18:03 -0400, Adam McDougall wrote:
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.
Does this fix it: http://hg.dovecot.org/dovecot-1.0/rev/69ab5669855a
No, although the behavior changed. It seems that: .. Jun 11 23:25:48 hill dovecot: IMAP(mcdouga9): stat(/egr/mail/shared/be/.bedata.In/dovecot-acl) failed: Permission denied
OK, this then: http://hg.dovecot.org/dovecot-1.0/rev/6eded4438f44
Yes it seems to work now, thanks! No errors about the folder anywhere.
On Mon, 11 Jun 2007, 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:
[...]
On a couple of occasions we discussed having the logfile entries be somewhat more consistent and more easily machine-parseable. And I think I saw mention of a potential mail_log plugin or similar. Was that related?
Is this likely to be in 1.0.1? If this were planned, I would hope to try to test it for you.
--
: David Lee I.T. Service : : Senior Systems Programmer Computer Centre : : UNIX Team Leader Durham University : : South Road : : http://www.dur.ac.uk/t.d.lee/ Durham DH1 3LE : : Phone: +44 191 334 2752 U.K. :
On Tue, 2007-06-12 at 09:37 +0100, David Lee wrote:
On Mon, 11 Jun 2007, 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:
[...]
On a couple of occasions we discussed having the logfile entries be somewhat more consistent and more easily machine-parseable. And I think I saw mention of a potential mail_log plugin or similar. Was that related?
Is this likely to be in 1.0.1? If this were planned, I would hope to try to test it for you.
Not going to be in v1.0.x.
Hi,
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?
nice. As I understand, this is a current checkout from the dovecot-1.0 branch. Did you change the Version number there manually? hg head still says 1.0.0. Btw, I think it would be nice to have this versions (1.0.0, 1.0.1rc*) tagged (if there's such a mechanism in hg, I didn't have the time to look at closer).
Changes since v1.0.0:
Any chance to get http://dovecot.org/list/dovecot-cvs/2007-May/008761.html into 1.0.1? The patch is small and it runs here (applied manually to hg head), but it really makes deliver do The Right Thing, IMO.
On Tue, 2007-06-12 at 14:30 +0200, Jakob Hirsch wrote:
Hi,
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?
nice. As I understand, this is a current checkout from the dovecot-1.0 branch. Did you change the Version number there manually? hg head still says 1.0.0.
I'm doing it manually.
Btw, I think it would be nice to have this versions (1.0.0, 1.0.1rc*) tagged (if there's such a mechanism in hg, I didn't have the time to look at closer).
For releases I agree.. There's "hg tag" command which apparently creates a .tags file with name <-> changeset ID mapping. So it should be possible to update the .tags file easily. I haven't bothered to try yet.
Changes since v1.0.0:
Any chance to get http://dovecot.org/list/dovecot-cvs/2007-May/008761.html into 1.0.1? The patch is small and it runs here (applied manually to hg head), but it really makes deliver do The Right Thing, IMO.
Well .. OK, done. I guess I'll still make rc3.
participants (5)
-
Adam McDougall
-
Brett Morrow
-
David Lee
-
Jakob Hirsch
-
Timo Sirainen