[Dovecot] Segfault when opening a public folder, dovecot 1.1 beta4

Adam McDougall mcdouga9 at egr.msu.edu
Sun Oct 28 15:25:01 EET 2007


On Sun, Oct 28, 2007 at 02:06:49AM +0300, Timo Sirainen wrote:

  On Sat, 2007-10-27 at 17:42 -0400, Adam McDougall wrote:
  > If you don't need the other groups in Dovecot you can get rid of them and 
  >     just have the process use the user's primary group and mail_extra_groups. I 
  >     think this should work:
  >     
  >     userdb passwd {
  >       args = system_user=
  >     }
  >   
  >   Actually, yes I like this alot and put this change into production.  I was 
  >   planning on using some secondary groups to prevent filesystem access, but
  >   I can accomplish the same protection easier with this and mail_extra_groups.
  >   Thanks!  I didn't test yet that the secondary groups aren't loaded but I will
  >   sometime.
  > 
  > According to my logs, it seems it does not prevent the secondary groups.
  > I'd look at the code to see how it works, but I have to switch tasks and
  > may not work more with dovecot until tomorrow.  I suppose if I cannot get
  > this to work, it sounds like I may be able to depend on the patch below.
  
  Looks like it overrides the system_user with empty value and Dovecot
  ends up calling initgroups(""). I'm not sure what that does, if
  anything. This fixes it: http://hg.dovecot.org/dovecot/rev/7f2501b3e993

Upon some further testing, this patch doesn't seem to do anything, because 
for some reason 1.1 allows me to login when I am in too many groups, but 
1.0 fails (this is where I saw the errors), and both versions seem to act the same
with or without the patch.  When I use mail_executable to run a shell script to 
report group membership, on both servers I still see the full list when using
system_user=   and mail_extra_groups but I don't see the group I set in mail_extra_groups.
I'm not sure what to think, is there a good place to stick in some debugging?

      
  >   >> With some recent permission changes I've
  >   >> done (affects dovecot 1.0 as well), I get a good amount of these fchown 
  >   >> errors
  >   >> and I was thinking of muting them so they do not fill my log, since they 
  >   >> are harmless
  >   >> in my setup.
  >     
  >     If these errors happen for index files Dovecot currently fallbacks to using 
  >     in-memory indexes.
  >   
  >   Oh. Ugh. That might explain why the indexes don't always seem to load.
  >   For some reason I thought dovecot might print a message when it falls back
  >   to in-memory indexes; would that be possible?
  
  Possible yes, but I'm not sure if it's a good idea. Users with
  filesystem quotas probably wouldn't want to see them. It's anyway done
  silently only when write fails because of ENOSPC/EDQUOT, in other cases
  some error is always logged.
  




More information about the dovecot mailing list