
Bug in Mailman version 2.1.26
We're sorry, we hit a bug!
Please inform the webmaster for this site of this problem. Printing of traceback and other system information has been explicitly inhibited, but the webmaster can find this information in the Mailman error logs.
I was trying to log in to the mailman pending admin tasks page to delete an attempted post by a non-member.
in /var/log/mailman/error is:
admin(22004): [----- Traceback ------]
admin(22004): Traceback (most recent call last):
admin(22004): File "/var/lib/mailman/scripts/driver", line 117, in
run_main admin(22004): main()
admin(22004): File "/var/lib/mailman/Mailman/Cgi/admindb.py", line
219, in main admin(22004): mlist.Lock()
admin(22004): File "/var/lib/mailman/Mailman/MailList.py", line 162,
in Lock admin(22004): self.__lock.lock(timeout)
admin(22004): File "/var/lib/mailman/Mailman/LockFile.py", line 243,
in lock admin(22004): self.__write()
admin(22004): File "/var/lib/mailman/Mailman/LockFile.py", line 422,
in __write admin(22004): fp = open(self.__tmpfname, 'w')
admin(22004): IOError: [Errno 2] No such file or directory:
'/var/lib/mailman/locks/amsmembers.lock.web6.bcenclave.ca.22004.0'
admin(22004): [----- Python Information -----] admin(22004):
sys.version = 2.7.15+ (default, Oct 7 2019, 17:39:04) [GCC
7.4.0] admin(22004): sys.executable = /usr/bin/python
admin(22004): sys.prefix = /usr
admin(22004): sys.exec_prefix = /usr
admin(22004): sys.path = ['/var/lib/mailman/pythonlib',
'/var/lib/mailman', '/usr/lib/mailman/scripts', '/var/lib/mailman',
'/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old',
'/usr/lib/python2.7/lib-dynload', '/usr/lib/python2.7/site-packages',
'/usr/lib/python2.7/dist-packages'] admin(22004): sys.platform =
linux2 admin(22004): [----- Environment Variables -----]
admin(22004): CONTENT_LENGTH: 40 admin(22004): SERVER_NAME:
cleanairplan.ca admin(22004): SERVER_PORT: 10000 admin(22004):
HTTPS: ON admin(22004): HTTP_COOKIE: admin(22004): REMOTE_ADDR:
207.194.211.2 admin(22004): PYTHONPATH: /var/lib/mailman
admin(22004): PATH_INFO: /amsmembers admin(22004):
SCRIPT_NAME: /virtualmin-mailman/unauthenticated/admindb.cgi
admin(22004): REQUEST_METHOD: POST admin(22004): HTTP_HOST:
cleanairplan.ca:10000 admin(22004): USER: www-data
admin(22004): CONTENT_TYPE: application/x-www-form-urlencoded
admin(22004): SERVER_PROTOCOL: HTTP/1.0
admin(22004): QUERY_STRING:
admin(22004): LOGNAME: www-data
admin(22004):
REQUEST_URI: /virtualmin-mailman/unauthenticated/admindb.cgi/amsmembers
admin(22004): DOCUMENT_ROOT: /usr/share/webmin
I don't know what to do about this.
Dave

Dave Stevens writes:
I was trying to log in to the mailman pending admin tasks page to delete an attempted post by a non-member.
in /var/log/mailman/error is:
admin(22004): File "/var/lib/mailman/Mailman/LockFile.py", line 422, in __write admin(22004): fp = open(self.__tmpfname, 'w') admin(22004): IOError: [Errno 2] No such file or directory: '/var/lib/mailman/locks/amsmembers.lock.web6.bcenclave.ca.22004.0'
Lockfile.__write is a nearly trivial function; I doubt this is a bug, rather a configuration issue or an environment it's not designed to work in.
It appears this process is running as www-data. Does /var/lib/mailman/locks exist? Is it a directory? Is it readable and writable as a directory by www-data or www-data's group? Is it on a local disk, or some kind of network file system?
SCRIPT_NAME: /virtualmin-mailman/unauthenticated/admindb.cgi
This is not provided by Mailman, I suspect, unless it's a link to a Mailman script. What does it do? Is it just a call to /var/lib/mailman/scripts/driver?
Steve

On 10/27/19 9:24 PM, Stephen J. Turnbull wrote:
It appears this process is running as www-data. Does /var/lib/mailman/locks exist? Is it a directory? Is it readable and writable as a directory by www-data or www-data's group? Is it on a local disk, or some kind of network file system?
Actually, the owner of /var/lib/mailman/locks doesn't matter. The key requirement is its group is Mailman's group ('mailman', 'list', whatever Mailman runs as)
SCRIPT_NAME: /virtualmin-mailman/unauthenticated/admindb.cgi
This is not provided by Mailman, I suspect, unless it's a link to a Mailman script. What does it do? Is it just a call to /var/lib/mailman/scripts/driver?
This is probably the standard CGI wrapper for admindb. It too should be Mailman's group and SETGID.
Does the admin URL have the same error?
participants (3)
-
Dave Stevens
-
Mark Sapiro
-
Stephen J. Turnbull