Monthly password reminders not working
![](https://secure.gravatar.com/avatar/f643d4a092d7b79238b449a7d75a31aa.jpg?s=120&d=mm&r=g)
Hello,
I thought this was working when we moved to Mailman 2.1.6b4
in June, (I could be wrong) but the monthly password reminder is not working. I, and a colleague, have tried to manually test the script for a single list but it is not working. The script that runs out of mailman's cron is:
# 5 AM on the first of each month, mail out password reminders. 0 5 1 * * /usr/bin/python -S /usr1/mailman/mailman/cron/mailpasswds
I tried testing with:
$ pwd /usr1/mailman/mailman/cron
$ runas -u mailman ./mailpasswds -l testlist
It just exits. Nothing in the mail or mailman logs.
Other details: Red Hat Enterprise Linux AS release 3
Any suggestions?
Darren Old Dominion University
![](https://secure.gravatar.com/avatar/f07ab66e1cdf0b3862943bafe6b683b1.jpg?s=120&d=mm&r=g)
On Wed, 2005-09-21 at 10:42 -0400, Darren G Pifer wrote:
Have you verified that the list has its password reminder flag set to yes under general options and that the per user option to receive reminders is enabled for at least some members of the list?
John Dennis <jdennis@redhat.com>
![](https://secure.gravatar.com/avatar/f07ab66e1cdf0b3862943bafe6b683b1.jpg?s=120&d=mm&r=g)
On Wed, 2005-09-21 at 13:44 -0400, Darren G Pifer wrote:
Well, if it were me I'd edit the script and throw in a few print statements in a few judicious places to track what it was or wasn't doing since you're not getting any info in the logs.
Python print statements are pretty easy, in its simplest form:
print "value1=%s value2=%s" % (value1, value2)
each %s is replaced by the matching value inside the parens, just make sure the indentation of the print statement lines up.
John Dennis <jdennis@redhat.com>
![](https://secure.gravatar.com/avatar/f643d4a092d7b79238b449a7d75a31aa.jpg?s=120&d=mm&r=g)
Hello,
On Wed, 2005-09-21 at 14:01, John Dennis wrote:
Thanks for the 'print' statement because I do not know python, but it will be on my list to learn it.
I added this to my version of mailpasswds at line 237:
print "msg=%s" % (msg)
msg.send(sitelist, **{'errorsto': sitebounce,
'_nolist' : 1,
'verp' : mm_cfg.VERP_PASSWORD_REMINDERS,
})
The output from the print statement shows that everything is in the message but once it hands off to msg.send for the delivery that is it. Where is msg.send located? Also, has anyone played with the test_message.py script in the mailman/tests directory? I haven't seen any documentation on the test code, a Google search offers no help and the Mailman FAQ wizard comes up with zero hits.
Darren Old Dominion University
![](https://secure.gravatar.com/avatar/f643d4a092d7b79238b449a7d75a31aa.jpg?s=120&d=mm&r=g)
Hello,
On Thu, 2005-09-22 at 11:28, Darren G Pifer wrote:
Just to let everyone know, for grins and giggles, I changed the msg.send line to:
msg.send(mlist)
and it sent the password reminder. Now I must find out why the original code did not work. Can someone who knows python tell me what the second argument to msg.send is doing? Also, were there changes in the code from 2.1.6b4 (our current version) to 2.1.6 for mailpasswds? We will be upgrading soon but I wonder if we should do it sooner rather than later.
Darren
![](https://secure.gravatar.com/avatar/746f7519ba02fb0d815e59f305c53fa2.jpg?s=120&d=mm&r=g)
Darren G Pifer wrote:
It is adding those three items and values to the message metadata (the msgdata dictionary). I think 'errorsto' once was used to set the Errors-To: header, but this is now set unconditionally to the envelope sender in SMTPDirect.py and 'errorsto' is ignored. '_nolist' : 1 causes CookHeaders.py to skip adding rfc 2369 headers. 'verp' : mm_cfg.VERP_PASSWORD_REMINDERS sets VERP delivery based on the value of VERP_PASSWORD_REMINDERS in mm_cfg.py or Defaults.py.
No. there were no changes in mailpasswds from 2.1.6b1 through the 2.1.6 final release.
-- Mark Sapiro <msapiro@value.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
![](https://secure.gravatar.com/avatar/f07ab66e1cdf0b3862943bafe6b683b1.jpg?s=120&d=mm&r=g)
On Wed, 2005-09-21 at 10:42 -0400, Darren G Pifer wrote:
Have you verified that the list has its password reminder flag set to yes under general options and that the per user option to receive reminders is enabled for at least some members of the list?
John Dennis <jdennis@redhat.com>
![](https://secure.gravatar.com/avatar/f07ab66e1cdf0b3862943bafe6b683b1.jpg?s=120&d=mm&r=g)
On Wed, 2005-09-21 at 13:44 -0400, Darren G Pifer wrote:
Well, if it were me I'd edit the script and throw in a few print statements in a few judicious places to track what it was or wasn't doing since you're not getting any info in the logs.
Python print statements are pretty easy, in its simplest form:
print "value1=%s value2=%s" % (value1, value2)
each %s is replaced by the matching value inside the parens, just make sure the indentation of the print statement lines up.
John Dennis <jdennis@redhat.com>
![](https://secure.gravatar.com/avatar/f643d4a092d7b79238b449a7d75a31aa.jpg?s=120&d=mm&r=g)
Hello,
On Wed, 2005-09-21 at 14:01, John Dennis wrote:
Thanks for the 'print' statement because I do not know python, but it will be on my list to learn it.
I added this to my version of mailpasswds at line 237:
print "msg=%s" % (msg)
msg.send(sitelist, **{'errorsto': sitebounce,
'_nolist' : 1,
'verp' : mm_cfg.VERP_PASSWORD_REMINDERS,
})
The output from the print statement shows that everything is in the message but once it hands off to msg.send for the delivery that is it. Where is msg.send located? Also, has anyone played with the test_message.py script in the mailman/tests directory? I haven't seen any documentation on the test code, a Google search offers no help and the Mailman FAQ wizard comes up with zero hits.
Darren Old Dominion University
![](https://secure.gravatar.com/avatar/f643d4a092d7b79238b449a7d75a31aa.jpg?s=120&d=mm&r=g)
Hello,
On Thu, 2005-09-22 at 11:28, Darren G Pifer wrote:
Just to let everyone know, for grins and giggles, I changed the msg.send line to:
msg.send(mlist)
and it sent the password reminder. Now I must find out why the original code did not work. Can someone who knows python tell me what the second argument to msg.send is doing? Also, were there changes in the code from 2.1.6b4 (our current version) to 2.1.6 for mailpasswds? We will be upgrading soon but I wonder if we should do it sooner rather than later.
Darren
![](https://secure.gravatar.com/avatar/746f7519ba02fb0d815e59f305c53fa2.jpg?s=120&d=mm&r=g)
Darren G Pifer wrote:
It is adding those three items and values to the message metadata (the msgdata dictionary). I think 'errorsto' once was used to set the Errors-To: header, but this is now set unconditionally to the envelope sender in SMTPDirect.py and 'errorsto' is ignored. '_nolist' : 1 causes CookHeaders.py to skip adding rfc 2369 headers. 'verp' : mm_cfg.VERP_PASSWORD_REMINDERS sets VERP delivery based on the value of VERP_PASSWORD_REMINDERS in mm_cfg.py or Defaults.py.
No. there were no changes in mailpasswds from 2.1.6b1 through the 2.1.6 final release.
-- Mark Sapiro <msapiro@value.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (3)
-
Darren G Pifer
-
John Dennis
-
Mark Sapiro