by Colin K » Mon Jul 11, 2005 11:37 pm
Hi Kevin...
The mail replacement function was a work around for programs which did not support using mail servers which are not configured as open relay's (i.e. a simple call to the mail function without username or password authentication...) Due to abuse from a variety of easily exploitable open source "form-mail" type scripts we had to disable simple "mail" functionality. The work around adds it back in, but in a traceable form (adding key headers to enable us to backtrace to who has been hacked / abused).
The key issue, is that the default mail script will not deliver mail - it results in an error as relaying will be disallowed.
A "simple" fix from my point of view and one that seems VERY popular in other open source content managers, forums etc. is to implement support for Authenticated SMTP, which will support non-localhost mail servers using the RFC standard ESMTP authentication. Our work around uses PEAR, which causes the namespace conflict - if the OJS supported Authenticated SMTP there would be no problem.
Hopefully that explains the issues / reasoning better.
Thanks!