When executing the program from within a .qmail file using: |preline /usr/local/mailman/mail/mailman request listname I get this in the qmail logs: @4000000040f6a28e1c519494 delivery 8: deferral: Group_mismatch_error.__Mailman_expected_the_mail/wrapper_script_to_be_executed_as_group_"mailman",_but/the_system's_mail_server_executed_the_mail_script_as/group_"nofiles".__Try_tweaking_the_mail_server_to_run_the/script_as_group_"mailman",_or_re-run_configure,_/providing_the_command_line_option_`--with-mail-gid=nofiles'./ On line 121 of src/common.c: GID_T mygid = getgid(); I suspect that this should be getegid which will pick up the gid of mailman instead of that of the calling process. The comment however says: /* Is the parent process allowed to call us? */ Which doesn't make sense, as this would imply that the primary group of the calling process must also be mailman, thus only the mailman user is allowed to call the wrapper? Something is fishy, or I'm missing something. Reproducible: Always Steps to Reproduce:
jeez, it shouldn't be in /usr/local at all -- that's a glaring error to begin with.
That is what I thought as well. But I can't see any asy way of fixing this, other than say moving the whole mailman tree to, say /opt/mailman. Back to the problem of it being run with gid=nofiles and egid=mailman. How do we solve that?
Managed to fix this the "correct" way. By getting qmail to deliver to mailman using aliases. I'll write up a howto on this and publish the URI tomorrow afternoon.
http://www.kroon.co.za/howto.php?howto=qmail_mailman should shed some light :).
*** Bug 60842 has been marked as a duplicate of this bug. ***