Author: vetinari
Date: Wed Aug 15 09:11:36 2007
New Revision: 771

Modified:
   trunk/lib/Qpsmtpd/SMTP.pm

Log:
make the documented DENY{,SOFT}_DISCONNECT work in the data-post hook

Modified: trunk/lib/Qpsmtpd/SMTP.pm
==============================================================================
--- trunk/lib/Qpsmtpd/SMTP.pm   (original)
+++ trunk/lib/Qpsmtpd/SMTP.pm   Wed Aug 15 09:11:36 2007
@@ -728,6 +728,18 @@
     # DATA is always the end of a "transaction"
     return $self->reset_transaction;
   } 
+  elsif ($rc == DENY_DISCONNECT) {
+    $msg->[0] ||= "Message denied";
+    $self->respond(552, @$msg);
+    $self->disconnect;
+    return 1;
+  }
+  elsif ($rc == DENYSOFT_DISCONNECT) {
+    $msg->[0] ||= "Message denied temporarily";
+    $self->respond(452, @$msg);
+    $self->disconnect;
+    return 1;
+  }
   else {
     $self->queue($self->transaction);
   }

Reply via email to