Hi, this little patch enables the pre-connection and post-connection hooks in qpsmtpd-forkserver. The second attached file is my test plugin.
Hanno
diff -urN qpsmtpd-0.31-dev/lib/Qpsmtpd/TcpServer.pm
qpsmtpd-0.31-dev+pre+post/lib/Qpsmtpd/TcpServer.pm
--- qpsmtpd-0.31-dev/lib/Qpsmtpd/TcpServer.pm 2005-11-01 13:34:53.000000000
+0100
+++ qpsmtpd-0.31-dev+pre+post/lib/Qpsmtpd/TcpServer.pm 2005-11-12
19:17:04.000000000 +0100
@@ -67,6 +67,7 @@
or $self->respond(502, "command unrecognized: '$_'");
alarm $timeout;
}
+ $self->run_hooks("post-connection");
alarm(0);
}
@@ -84,6 +85,7 @@
my $self = shift;
$self->log(LOGDEBUG,"click, disconnecting");
$self->SUPER::disconnect(@_);
+ $self->run_hooks("post-connection");
exit;
}
diff -urN qpsmtpd-0.31-dev/qpsmtpd-forkserver
qpsmtpd-0.31-dev+pre+post/qpsmtpd-forkserver
--- qpsmtpd-0.31-dev/qpsmtpd-forkserver 2005-11-01 13:34:53.000000000 +0100
+++ qpsmtpd-0.31-dev+pre+post/qpsmtpd-forkserver 2005-11-12
18:13:49.000000000 +0100
@@ -209,6 +209,7 @@
next;
}
}
+ $qpsmtpd->run_hooks("pre-connection");
my $pid = safe_fork();
if ($pid) {
# parent
connection_time
Description: Binary data
