DENYHARD - allows you to DENY with a disconnect
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@196 958fd67b-6ff1-0310-b445-bb7760255be9
This commit is contained in:
parent
c1aa3ddb8a
commit
c4903199ff
@ -2,7 +2,7 @@ package Qpsmtpd::Constants;
|
|||||||
use strict;
|
use strict;
|
||||||
require Exporter;
|
require Exporter;
|
||||||
|
|
||||||
my (@common) = qw(OK DECLINED DONE DENY DENYSOFT TRACE);
|
my (@common) = qw(OK DECLINED DONE DENY DENYSOFT DENYHARD TRACE);
|
||||||
|
|
||||||
use vars qw($VERSION @ISA @EXPORT);
|
use vars qw($VERSION @ISA @EXPORT);
|
||||||
@ISA = qw(Exporter);
|
@ISA = qw(Exporter);
|
||||||
@ -15,6 +15,7 @@ use constant DENY => 901;
|
|||||||
use constant DENYSOFT => 902;
|
use constant DENYSOFT => 902;
|
||||||
use constant DECLINED => 909;
|
use constant DECLINED => 909;
|
||||||
use constant DONE => 910;
|
use constant DONE => 910;
|
||||||
|
use constant DENYHARD => 903;
|
||||||
|
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
@ -115,6 +115,7 @@ sub transaction {
|
|||||||
|
|
||||||
sub reset_transaction {
|
sub reset_transaction {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
|
$self->run_hooks("reset_transaction") if $self->{_transaction};
|
||||||
return $self->{_transaction} = Qpsmtpd::Transaction->new();
|
return $self->{_transaction} = Qpsmtpd::Transaction->new();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -230,6 +231,12 @@ sub mail {
|
|||||||
$self->log(2, "denysoft mail from " . $from->format . " ($msg)");
|
$self->log(2, "denysoft mail from " . $from->format . " ($msg)");
|
||||||
$self->respond(450, $msg);
|
$self->respond(450, $msg);
|
||||||
}
|
}
|
||||||
|
elsif ($rc == DENYHARD) {
|
||||||
|
$msg ||= $from->format . ', denied';
|
||||||
|
$self->log(2, "deny mail from " . $from->format . " ($msg)");
|
||||||
|
$self->respond(550, $msg);
|
||||||
|
$self->disconnect;
|
||||||
|
}
|
||||||
else { # includes OK
|
else { # includes OK
|
||||||
$self->log(2, "getting mail from ".$from->format);
|
$self->log(2, "getting mail from ".$from->format);
|
||||||
$self->respond(250, $from->format . ", sender OK - how exciting to get mail from you!");
|
$self->respond(250, $from->format . ", sender OK - how exciting to get mail from you!");
|
||||||
|
Loading…
Reference in New Issue
Block a user