Peter,
I dumped the idea of running qpsmtpd from the smtpd directory and
instead followed James Turnbull's instructions at
http://searchopensource.techtarget.com/tip/0,289483,sid39_gci1235770,00.html
to install 0.3x.
This means
# perl Makefile.PL
# make
# make install
all the way to
# mkdir /usr/share/qpsmtpd
# mv qpsmtpd-0.32/plugins /usr/share/qpsmtpd
# ln -s /usr/share/qpsmtpd/plugins ~smtpd/plugins
and
# ln -s /usr/bin/qpsmtpd-forkserver ~smtpd
# ~smtpd/qpsmtpd-forkserver
This works fine so far. -- Then I put your two files in the appropriate
places, and unfortunately, this won't work. If I remove the redirection from
> #!/bin/sh
> export QPSMTPD_CONFIG=/etc/qpsmtpd
> exec /usr/bin/qpsmtpd 2> /dev/null
and telnet to the server then I get:
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Deep recursion on subroutine "Qpsmtpd::log" at
/usr/lib/perl5/site_perl/5.8.6/Qpsmtpd.pm line 323.
Deep recursion on subroutine "Qpsmtpd::varlog" at
/usr/lib/perl5/site_perl/5.8.6/Qpsmtpd.pm line 64.
Deep recursion on subroutine "Qpsmtpd::load_logging" at
/usr/lib/perl5/site_perl/5.8.6/Qpsmtpd.pm line 80.
Deep recursion on subroutine "Qpsmtpd::_load_plugin" at
/usr/lib/perl5/site_perl/5.8.6/Qpsmtpd.pm line 33.
Out of memory!
Out of memory!
Connection closed by foreign host.
This confirms that /usr/bin/qpsmtpd is indeed called, but apparently it
can't find its plugins, which are linked at ~smtpd/plugins . It
recursively tries to find a plugin to report the message about not
finding the plugins. How can I tell it where the plugins are?
Hans