John Wang wrote: > I'm trying to get qpsmtpd working with pperl and was wondering how to do it. > > I tried following the README instructions by commenting out the > softlimit/tcpserver line and replacing it with the pperl line: > > pperl -Tw -- --prefork=$MAXCLIENTS --maxclients=$MAXCLIENTS \ > --no-cleanup ./qpsmtpd 2>&1 > > However, when I do this the TCPREMOTE* environment variables are no longer > set (b/c tcpserver isn't used) and Qpsmtpd::TcpServer dies with: > > Qpsmtpd::TcpServer must be started by tcpserver > > Am I missing something? > > My current setup is to edit the qpsmtpd script's shebang line to use pperl > instead of perl as described at: > http://www.pycs.net/lateral/stories/11.html. Then I patch > Qpsmtpd::TcpServer so it can use the socket to populate > $remote_(host|ip|info) and use xinetd as described by the patch set at: > http://www.hjp.at/(en)/projekte/qpsmtpd/tutorial.rxml > > It works but it doesn't use the README syntax. What's the recommended way to > use qpsmtpd with pperl?
Why would you want to use xinetd instead of tcpserver? Also, I've found that qpsmtpd-forkserver works better than qpsmtpd with pperl or speedy-cgi. R.