>
> Hi all,
>
> I've been using qpsmtpd for about 6 months now but I've just
> signed up for
> this list. I recently upgraded to 0.40 and I'm running on a
> modified Mandriva
> using qmail and with qpsmtpd running under tcpserver.
>
> I've long had a problem with connections from certain
> spammers hanging around
> forever. I wrote a script that I run out of cron that sends
> a -9 to any
> connection that's been around for over an hour and that's
> kept me up and
> running, but...
>
> Any idea what's going on here? It requires a -9 to kill the
> processes.
>
> Should I not be running under tcpserver? Also, why does the
> default run
> script default to -c 10; that seems awfully low to me.
>
> Chris
>
Did you try to set the timeout in the configuration files ?
echo -n 600 > config/timeout
By default it is set to 1200 seconds (20 minutes).
See in lib/Qpsmtpd/TcpServer.pm :
sub read_input {
my $self = shift;
my $timeout =
$self->config('timeoutsmtpd') # qmail smtpd control file
|| $self->config('timeout') # qpsmtpd control file
|| 1200; # default value
alarm $timeout;
while (<STDIN>) {
alarm 0;
$_ =~ s/\r?\n$//s; # advanced chomp
$self->log(LOGINFO, "dispatching $_");
$self->connection->notes('original_string', $_);
defined $self->dispatch(split / +/, $_, 2)
or $self->respond(502, "command unrecognized: '$_'");
alarm $timeout;
}
alarm(0);
}
If you have connections running for more than one hour, the client must
be saying something during this time.
You can try to lower the timeout parameter. Mine is 120s (maybe a
little short, but it works quite well).
Sydney.
Thread Previous
|
Thread Next