Forum OpenACS Q&A: Error invoking the password management driver

OpenACS => ACS Mail Services Lite
I have setup only the IMAP and SMTP and directed the information to an Email server used outside of OpenACS.

I have control and access to both the OpenACS and Email servers.

I preformed two test and both failed.
Test 1 - Adding a new users. The users was added after a long wait to process and the user did not receive an email.

Test 2. Functionality "Forgot your password"
When using this functionality I receive the message "Error invoking the password management driver"

I have search and looked in a number of places to no prevail.
I did see a comment from Gustaf Neumann
"I would recommend configuring the package parameter "EmailDeliveryMode" of acs-mail-lite to "nssmtpd" and install the NaviServer module nssmtpd. This solved several issues for us. It also supports debugging of the mail server communication by activating log severity "Debug(smtpd)""

Would that be a good starting place or is there something else that should be done first.

Thanks in advance - Tyge

Collapse
Posted by Brian Fenton on
Hi Tyge!

Mail issues can have a multitude of causes. It might be that your mail server doesn't allow connections from the server where Naviserver is running. A firewall might need to allow the port etc. Office 365 needs extra configuration I believe.

I think as a starting point, you don't need to look at nssmtpd. Basic mail should work out of the box once configured correctly. If I recall correctly, ACS Mail Lite needs to have the BounceDomain parameter configured, apart from the obvious SMTPHost and SMTPPort. Assuming you have checked all your config, I would start debugginb by calling some of the ACS Mail Lite APIs directly.

If you have the Developer Shell configured, you can try something like this (replacing YOUREMAILADDRESS with an email address):

acs_mail_lite::send_immediately -to_addr YOUREMAILADDRESS -from_addr YOUREMAILADDRESS -subject Subject -body Body -mime_type "text/html"

You should then check your error log to see if it's an error with your config, or a timeout etc.

For more advanced debugging, if you are comfortable with the command line, you can do some more direct calls to the mail server using SMTP calls like this https://mailtrap.io/blog/smtp-commands-and-responses/#Example-of-an-SMTP-session

Happy to help further if you need more input.
Brian

Collapse
Posted by Tyge Cawthon on
Brian, Thank you for information.
I will work on this and keep you posted.
I had it working at one time, but forgot to document my steps.

Fortunately, my firewall, routers, DNS, email, and openacs servers are all controlled by myself. Makes it easier to troubleshoot and experiment with things.

Thanks again.

Collapse
Posted by Brian Fenton on
Hi Tyge

I should also mention that the "Error invoking the password management driver" message is a little bit confusing. It's probably caused by the underlying email issue. That particular message comes from a password retrieval or reset, which ultimately calls acs_mail_lite::send, as you can see here https://openacs.org/api-doc/proc-view?proc=auth::local::password::RetrievePassword&source_p=1

There should be more info in the error log when that happens.

good luck!
Brian