You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by er...@apache.org on 2012/07/18 16:31:58 UTC

svn commit: r1362965 - /james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractHookableCmdHandler.java

Author: eric
Date: Wed Jul 18 14:31:58 2012
New Revision: 1362965

URL: http://svn.apache.org/viewvc?rev=1362965&view=rev
Log:
AbstractHookableCmdHandler.calcDefaultSMTPResponse throws exception for lonely DISCONNECT and incorrect condition for DENYSOFT, contributed by TzeKai Lee (PROTOCOLS-97)

Modified:
    james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractHookableCmdHandler.java

Modified: james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractHookableCmdHandler.java
URL: http://svn.apache.org/viewvc/james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractHookableCmdHandler.java?rev=1362965&r1=1362964&r2=1362965&view=diff
==============================================================================
--- james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractHookableCmdHandler.java (original)
+++ james/protocols/trunk/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractHookableCmdHandler.java Wed Jul 18 14:31:58 2012
@@ -176,7 +176,7 @@ public abstract class AbstractHookableCm
                     response.setEndSession(true);
                 }
                 return response;
-            } else if (rCode == HookReturnCode.DENYSOFT) {
+            } else if ((rCode & HookReturnCode.DENYSOFT) == HookReturnCode.DENYSOFT) {
                 if (smtpRetCode == null)
                     smtpRetCode = SMTPRetCode.LOCAL_ERROR;
                 if (smtpDesc == null)
@@ -199,7 +199,12 @@ public abstract class AbstractHookableCm
                 }
                 return response;
             } else if ((rCode & HookReturnCode.DISCONNECT) == HookReturnCode.DISCONNECT) {
-                SMTPResponse response = new SMTPResponse("");
+                if (smtpRetCode == null)
+                    smtpRetCode = SMTPRetCode.TRANSACTION_FAILED;
+                if (smtpDesc == null)
+                    smtpDesc = "Server disconnected";
+
+                SMTPResponse response =  new SMTPResponse(smtpRetCode, smtpDesc);
                 response.setEndSession(true);
                 return response;
             } else {



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org