[Dovecot] version_ignore=yes

Timo Sirainen tss at iki.fi
Thu Nov 18 22:41:46 EET 2010


On Thu, 2010-11-18 at 14:27 -0600, Mike Abbott wrote:
> > Also note that because of a change in how (upcoming) v2.0.8 checks if
> > imap/pop3/lmtp has been started from command line, version_ignore=yes is
> > effectively always enabled for them when older master process is
> > running.
> 
> I don't understand this.  Can you please elaborate?  Thanks.

In <= v2.0.7 imap, pop3 and lmtp does getenv("GENERATION") at startup.
If that's NULL, they assume that they're running standalone and don't do
any version checks.

But this environment could already be set, because Java uses it also. So
I changed >= v2.0.8 to do getenv("DOVECOT_CHILD_PROCESS") != NULL check
instead.

Now the problem is that if you have v2.0.7 dovecot master running, it
doesn't set DOVECOT_CHILD_PROCESS environment. Then if you upgrade imap
executable to v2.0.8 it thinks that it's running standalone because that
environment isn't set. It'll probably fail with:

Nov 18 20:40:57 imap: Error: Fatal: USER environment missing




More information about the dovecot mailing list