JAMES-2557 All Rcpt hooks should use new API
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/3f68078d Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/3f68078d Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/3f68078d Branch: refs/heads/master Commit: 3f68078d4e4cd81a492c157740998cd5ac65c7bd Parents: 585c172 Author: Benoit Tellier <btell...@linagora.com> Authored: Tue Oct 30 11:07:27 2018 +0700 Committer: Benoit Tellier <btell...@linagora.com> Committed: Thu Nov 1 10:56:32 2018 +0700 ---------------------------------------------------------------------- .../AbstractAuthRequiredToRelayRcptHook.java | 4 ++-- ...tSenderAuthIdentifyVerificationRcptHook.java | 6 +++--- .../AcceptRecipientIfRelayingIsAllowed.java | 4 ++-- .../smtp/core/PostmasterAbuseRcptHook.java | 3 ++- .../protocols/smtp/core/RcptCmdHandler.java | 7 ++++--- .../core/fastfail/AbstractGreylistHandler.java | 10 ++++------ .../core/fastfail/AbstractValidRcptHandler.java | 3 ++- .../smtp/core/fastfail/DNSRBLHandler.java | 3 ++- .../smtp/core/fastfail/MaxRcptHandler.java | 3 ++- .../fastfail/ResolvableEhloHeloHandler.java | 3 ++- .../smtp/core/fastfail/SpamTrapHandler.java | 3 ++- .../fastfail/SupressDuplicateRcptHandler.java | 3 ++- .../james/protocols/smtp/hook/SimpleHook.java | 2 +- .../protocols/smtp/AbstractSMTPServerTest.java | 4 ++-- .../smtp/core/fastfail/DNSRBLHandlerTest.java | 13 +++++++------ .../smtp/core/fastfail/MaxRcptHandlerTest.java | 4 ++-- .../fastfail/ResolvableEhloHeloHandlerTest.java | 9 +++++---- .../smtp/core/fastfail/SpamTrapHandlerTest.java | 9 +++++---- .../SenderAuthIdentifyVerificationRcptHook.java | 3 ++- .../fastfail/JDBCGreylistHandler.java | 3 ++- .../james/smtpserver/fastfail/SPFHandler.java | 2 +- .../james/smtpserver/fastfail/ValidRcptMX.java | 3 ++- .../apache/james/smtpserver/SPFHandlerTest.java | 16 ++++++++-------- .../james/smtpserver/ValidRcptHandlerTest.java | 20 +++++++++++--------- .../james/smtpserver/ValidRcptMXTest.java | 3 ++- 25 files changed, 79 insertions(+), 64 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractAuthRequiredToRelayRcptHook.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractAuthRequiredToRelayRcptHook.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractAuthRequiredToRelayRcptHook.java index e432003..43fc8c8 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractAuthRequiredToRelayRcptHook.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractAuthRequiredToRelayRcptHook.java @@ -20,6 +20,7 @@ package org.apache.james.protocols.smtp.core; import org.apache.james.core.Domain; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPRetCode; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.dsn.DSNStatus; @@ -48,8 +49,7 @@ public abstract class AbstractAuthRequiredToRelayRcptHook implements RcptHook { .build(); @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, - MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (!session.isRelayingAllowed()) { Domain toDomain = rcpt.getDomain(); if (!isLocalDomain(toDomain)) { http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractSenderAuthIdentifyVerificationRcptHook.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractSenderAuthIdentifyVerificationRcptHook.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractSenderAuthIdentifyVerificationRcptHook.java index d568b14..dea7d52 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractSenderAuthIdentifyVerificationRcptHook.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AbstractSenderAuthIdentifyVerificationRcptHook.java @@ -22,6 +22,7 @@ import java.util.Locale; import org.apache.james.core.Domain; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.api.ProtocolSession; import org.apache.james.protocols.smtp.SMTPRetCode; import org.apache.james.protocols.smtp.SMTPSession; @@ -42,8 +43,7 @@ public abstract class AbstractSenderAuthIdentifyVerificationRcptHook implements .build(); @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, - MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (session.getUser() != null) { String authUser = (session.getUser()).toLowerCase(Locale.US); MailAddress senderAddress = (MailAddress) session.getAttachment( @@ -62,7 +62,7 @@ public abstract class AbstractSenderAuthIdentifyVerificationRcptHook implements return HookResult.DECLINED; } - public String retrieveSender(MailAddress sender, MailAddress senderAddress) { + public String retrieveSender(MaybeSender sender, MailAddress senderAddress) { if (senderAddress != null && !sender.isNullSender()) { return getUser(senderAddress); } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AcceptRecipientIfRelayingIsAllowed.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AcceptRecipientIfRelayingIsAllowed.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AcceptRecipientIfRelayingIsAllowed.java index 2391572..7ab45a7 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AcceptRecipientIfRelayingIsAllowed.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/AcceptRecipientIfRelayingIsAllowed.java @@ -21,6 +21,7 @@ package org.apache.james.protocols.smtp.core; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.hook.HookResult; import org.apache.james.protocols.smtp.hook.RcptHook; @@ -31,8 +32,7 @@ import org.apache.james.protocols.smtp.hook.RcptHook; public class AcceptRecipientIfRelayingIsAllowed implements RcptHook { @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, - MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (session.isRelayingAllowed()) { return HookResult.OK; } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/PostmasterAbuseRcptHook.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/PostmasterAbuseRcptHook.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/PostmasterAbuseRcptHook.java index 540568e..35d0506 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/PostmasterAbuseRcptHook.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/PostmasterAbuseRcptHook.java @@ -21,6 +21,7 @@ package org.apache.james.protocols.smtp.core; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.hook.HookResult; import org.apache.james.protocols.smtp.hook.RcptHook; @@ -34,7 +35,7 @@ public class PostmasterAbuseRcptHook implements RcptHook { private static final Logger LOGGER = LoggerFactory.getLogger(PostmasterAbuseRcptHook.class); @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (rcpt.getLocalPart().equalsIgnoreCase("postmaster") || rcpt.getLocalPart().equalsIgnoreCase("abuse")) { LOGGER.debug("Sender allowed"); return HookResult.OK; http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/RcptCmdHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/RcptCmdHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/RcptCmdHandler.java index c7b17ca..2640564 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/RcptCmdHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/RcptCmdHandler.java @@ -29,6 +29,7 @@ import javax.inject.Inject; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.metrics.api.MetricFactory; import org.apache.james.protocols.api.ProtocolSession.State; import org.apache.james.protocols.api.Response; @@ -228,10 +229,10 @@ public class RcptCmdHandler extends AbstractHookableCmdHandler<RcptHook> impleme } @Override - protected HookResult callHook(RcptHook rawHook, SMTPSession session, - String parameters) { + protected HookResult callHook(RcptHook rawHook, SMTPSession session, String parameters) { + MailAddress sender = (MailAddress) session.getAttachment(SMTPSession.SENDER, State.Transaction); return rawHook.doRcpt(session, - (MailAddress) session.getAttachment(SMTPSession.SENDER, State.Transaction), + MaybeSender.of(sender), (MailAddress) session.getAttachment(CURRENT_RECIPIENT, State.Transaction)); } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractGreylistHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractGreylistHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractGreylistHandler.java index bdacc2c..9ccff46 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractGreylistHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractGreylistHandler.java @@ -22,6 +22,7 @@ package org.apache.james.protocols.smtp.core.fastfail; import java.util.Iterator; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPRetCode; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.dsn.DSNStatus; @@ -76,16 +77,13 @@ public abstract class AbstractGreylistHandler implements RcptHook { } - private HookResult doGreyListCheck(SMTPSession session, MailAddress senderAddress, MailAddress recipAddress) { + private HookResult doGreyListCheck(SMTPSession session, MaybeSender senderAddress, MailAddress recipAddress) { String recip = ""; - String sender = ""; + String sender = senderAddress.asString(""); if (recipAddress != null) { recip = recipAddress.toString(); } - if (senderAddress != null) { - sender = senderAddress.toString(); - } long time = System.currentTimeMillis(); String ipAddress = session.getRemoteAddress().getAddress().getHostAddress(); @@ -219,7 +217,7 @@ public abstract class AbstractGreylistHandler implements RcptHook { @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (!session.isRelayingAllowed()) { return doGreyListCheck(session, sender,rcpt); } else { http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractValidRcptHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractValidRcptHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractValidRcptHandler.java index 374a164..23eb4fb 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractValidRcptHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/AbstractValidRcptHandler.java @@ -21,6 +21,7 @@ package org.apache.james.protocols.smtp.core.fastfail; import org.apache.james.core.Domain; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPRetCode; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.dsn.DSNStatus; @@ -37,7 +38,7 @@ public abstract class AbstractValidRcptHandler implements RcptHook { private static final Logger LOGGER = LoggerFactory.getLogger(AbstractValidRcptHandler.class); @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (!isLocalDomain(session, rcpt.getDomain())) { return HookResult.DECLINED; } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandler.java index b3822ba..b79dddc 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandler.java @@ -27,6 +27,7 @@ import java.util.StringTokenizer; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.api.ProtocolSession.State; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.dsn.DSNStatus; @@ -178,7 +179,7 @@ public class DNSRBLHandler implements RcptHook { } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { checkDNSRBL(session, session.getRemoteAddress().getAddress().getHostAddress()); if (!session.isRelayingAllowed()) { http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandler.java index 47c7b1d..2b1e915 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandler.java @@ -24,6 +24,7 @@ package org.apache.james.protocols.smtp.core.fastfail; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPRetCode; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.dsn.DSNStatus; @@ -56,7 +57,7 @@ public class MaxRcptHandler implements RcptHook { } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if ((session.getRcptCount() + 1) > maxRcpt) { LOGGER.info("Maximum recipients of {} reached", maxRcpt); http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandler.java index 65c95e5..5dd741c 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandler.java @@ -25,6 +25,7 @@ import java.net.UnknownHostException; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.api.ProtocolSession.State; import org.apache.james.protocols.smtp.SMTPRetCode; import org.apache.james.protocols.smtp.SMTPSession; @@ -93,7 +94,7 @@ public class ResolvableEhloHeloHandler implements RcptHook, HeloHook { } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (check(session,rcpt)) { return HookResult.builder() .hookReturnCode(HookReturnCode.deny()) http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandler.java index 77324ce..7591928 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandler.java @@ -29,6 +29,7 @@ import java.util.Map; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.hook.HookResult; import org.apache.james.protocols.smtp.hook.RcptHook; @@ -69,7 +70,7 @@ public class SpamTrapHandler implements RcptHook { } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { String address = session.getRemoteAddress().getAddress().getHostAddress(); if (isBlocked(address, session)) { return HookResult.DENY; http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SupressDuplicateRcptHandler.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SupressDuplicateRcptHandler.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SupressDuplicateRcptHandler.java index 7c5e293..0a1b997 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SupressDuplicateRcptHandler.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/core/fastfail/SupressDuplicateRcptHandler.java @@ -24,6 +24,7 @@ import java.util.Collection; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.api.ProtocolSession.State; import org.apache.james.protocols.smtp.SMTPRetCode; import org.apache.james.protocols.smtp.SMTPSession; @@ -52,7 +53,7 @@ public class SupressDuplicateRcptHandler implements RcptHook { @Override @SuppressWarnings("unchecked") - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { Collection<MailAddress> rcptList = (Collection<MailAddress>) session.getAttachment(SMTPSession.RCPT_LIST, State.Transaction); // Check if the recipient is already in the rcpt list http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/hook/SimpleHook.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/hook/SimpleHook.java b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/hook/SimpleHook.java index f226e17..69d1b0f 100644 --- a/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/hook/SimpleHook.java +++ b/protocols/smtp/src/main/java/org/apache/james/protocols/smtp/hook/SimpleHook.java @@ -57,7 +57,7 @@ public class SimpleHook implements HeloHook, MailHook, RcptHook, MessageHook { * Return {@link HookResult} with {@link HookReturnCode#DECLINED} */ @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { return HookResult.DECLINED; } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/AbstractSMTPServerTest.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/AbstractSMTPServerTest.java b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/AbstractSMTPServerTest.java index 7bcb07f..bf3f756 100644 --- a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/AbstractSMTPServerTest.java +++ b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/AbstractSMTPServerTest.java @@ -695,7 +695,7 @@ public abstract class AbstractSMTPServerTest { } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (RCPT1.equals(rcpt.toString())) { return HookResult.DENY; } else { @@ -759,7 +759,7 @@ public abstract class AbstractSMTPServerTest { } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (RCPT1.equals(rcpt.toString())) { return HookResult.DENYSOFT; } else { http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandlerTest.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandlerTest.java b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandlerTest.java index 1b96bdb..87c30c4 100644 --- a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandlerTest.java +++ b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/DNSRBLHandlerTest.java @@ -31,6 +31,7 @@ import java.util.List; import java.util.Map; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.api.ProtocolSession.State; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.utils.BaseFakeSMTPSession; @@ -183,7 +184,7 @@ public class DNSRBLHandlerTest { rbl.setBlacklist(new String[] { "bl.spamcop.net." }); rbl.setGetDetail(true); - rbl.doRcpt(mockedSMTPSession, null, new MailAddress("test@localhost")); + rbl.doRcpt(mockedSMTPSession, MaybeSender.nullSender(), new MailAddress("test@localhost")); assertThat(mockedSMTPSession.getAttachment(RBL_DETAIL_MAIL_ATTRIBUTE_NAME, State.Connection)).describedAs("Details").isEqualTo("Blocked - see http://www.spamcop.net/bl.shtml?127.0.0.2"); assertThat(mockedSMTPSession.getAttachment(RBL_BLOCKLISTED_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("Blocked").isNotNull(); } @@ -196,7 +197,7 @@ public class DNSRBLHandlerTest { rbl.setBlacklist(new String[] { "bl.spamcop.net." }); rbl.setGetDetail(false); - rbl.doRcpt(mockedSMTPSession, null, new MailAddress("test@localhost")); + rbl.doRcpt(mockedSMTPSession, MaybeSender.nullSender(), new MailAddress("test@localhost")); assertThat(mockedSMTPSession.getAttachment(RBL_DETAIL_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("No details").isNull(); assertThat(mockedSMTPSession.getAttachment(RBL_BLOCKLISTED_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("Blocked").isNotNull(); } @@ -210,7 +211,7 @@ public class DNSRBLHandlerTest { rbl.setBlacklist(new String[] { "bl.spamcop.net." }); rbl.setGetDetail(true); - rbl.doRcpt(mockedSMTPSession, null, new MailAddress("test@localhost")); + rbl.doRcpt(mockedSMTPSession, MaybeSender.nullSender(), new MailAddress("test@localhost")); assertThat(mockedSMTPSession.getAttachment(RBL_DETAIL_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("No details").isNull(); assertThat(mockedSMTPSession.getAttachment(RBL_BLOCKLISTED_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("Not blocked").isNull(); } @@ -225,7 +226,7 @@ public class DNSRBLHandlerTest { rbl.setBlacklist(new String[] { "bl.spamcop.net." }); rbl.setGetDetail(true); - rbl.doRcpt(mockedSMTPSession, null, new MailAddress("test@localhost")); + rbl.doRcpt(mockedSMTPSession, MaybeSender.nullSender(), new MailAddress("test@localhost")); assertThat(mockedSMTPSession.getAttachment(RBL_DETAIL_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("No details").isNull(); assertThat(mockedSMTPSession.getAttachment(RBL_BLOCKLISTED_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("Not blocked").isNull(); } @@ -240,7 +241,7 @@ public class DNSRBLHandlerTest { rbl.setBlacklist(new String[] { "bl.spamcop.net." }); rbl.setGetDetail(true); - rbl.doRcpt(mockedSMTPSession, null, new MailAddress("test@localhost")); + rbl.doRcpt(mockedSMTPSession, MaybeSender.nullSender(), new MailAddress("test@localhost")); assertThat(mockedSMTPSession.getAttachment(RBL_DETAIL_MAIL_ATTRIBUTE_NAME, Connection)).isNull(); assertThat(mockedSMTPSession.getAttachment(RBL_BLOCKLISTED_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("Blocked").isNotNull(); } @@ -255,7 +256,7 @@ public class DNSRBLHandlerTest { rbl.setWhitelist(new String[] { "bl.spamcop.net." }); rbl.setGetDetail(true); - rbl.doRcpt(mockedSMTPSession, null, new MailAddress("test@localhost")); + rbl.doRcpt(mockedSMTPSession, MaybeSender.nullSender(), new MailAddress("test@localhost")); assertThat(mockedSMTPSession.getAttachment(RBL_DETAIL_MAIL_ATTRIBUTE_NAME, Connection)).isNull(); assertThat(mockedSMTPSession.getAttachment(RBL_BLOCKLISTED_MAIL_ATTRIBUTE_NAME, Connection)).withFailMessage("Not blocked").isNull(); } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandlerTest.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandlerTest.java b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandlerTest.java index 0466456..0164520 100644 --- a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandlerTest.java +++ b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/MaxRcptHandlerTest.java @@ -60,7 +60,7 @@ public class MaxRcptHandlerTest { MaxRcptHandler handler = new MaxRcptHandler(); handler.setMaxRcpt(2); - HookReturnCode resp = handler.doRcpt(session,null,new MailAddress("test@test")).getResult(); + HookReturnCode resp = handler.doRcpt(session, MailAddress.nullSender(), new MailAddress("test@test")).getResult(); assertThat(HookReturnCode.deny()).describedAs("Rejected.. To many recipients").isEqualTo(resp); } @@ -72,7 +72,7 @@ public class MaxRcptHandlerTest { MaxRcptHandler handler = new MaxRcptHandler(); handler.setMaxRcpt(4); - HookReturnCode resp = handler.doRcpt(session,null,new MailAddress("test@test")).getResult(); + HookReturnCode resp = handler.doRcpt(session, MailAddress.nullSender(), new MailAddress("test@test")).getResult(); assertThat(HookReturnCode.declined()).describedAs("Not Rejected..").isEqualTo(resp); } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandlerTest.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandlerTest.java b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandlerTest.java index 468e0d3..df2d274 100644 --- a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandlerTest.java +++ b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/ResolvableEhloHeloHandlerTest.java @@ -29,6 +29,7 @@ import java.util.HashMap; import java.util.Map; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.hook.HookReturnCode; import org.apache.james.protocols.smtp.utils.BaseFakeSMTPSession; @@ -126,7 +127,7 @@ public class ResolvableEhloHeloHandlerTest { handler.doHelo(session, INVALID_HOST); assertThat(session.getAttachment(BAD_EHLO_HELO, Transaction)).withFailMessage("Invalid HELO").isNotNull(); - HookReturnCode result = handler.doRcpt(session,null, mailAddress).getResult(); + HookReturnCode result = handler.doRcpt(session, MaybeSender.nullSender(), mailAddress).getResult(); assertThat(HookReturnCode.deny()).describedAs("Reject").isEqualTo(result); } @@ -140,7 +141,7 @@ public class ResolvableEhloHeloHandlerTest { handler.doHelo(session, VALID_HOST); assertThat(session.getAttachment(BAD_EHLO_HELO, Transaction)).withFailMessage("Valid HELO").isNull(); - HookReturnCode result = handler.doRcpt(session,null, mailAddress).getResult(); + HookReturnCode result = handler.doRcpt(session, MaybeSender.nullSender(), mailAddress).getResult(); assertThat(HookReturnCode.declined()).describedAs("Not reject").isEqualTo(result); } @@ -155,7 +156,7 @@ public class ResolvableEhloHeloHandlerTest { assertThat(session.getAttachment(BAD_EHLO_HELO, Transaction)).withFailMessage("Value stored").isNotNull(); - HookReturnCode result = handler.doRcpt(session,null, mailAddress).getResult(); + HookReturnCode result = handler.doRcpt(session, MaybeSender.nullSender(), mailAddress).getResult(); assertThat(HookReturnCode.deny()).describedAs("Reject").isEqualTo(result); } @@ -171,7 +172,7 @@ public class ResolvableEhloHeloHandlerTest { assertThat(session.getAttachment(BAD_EHLO_HELO, Transaction)).withFailMessage("Value stored").isNotNull(); - HookReturnCode result = handler.doRcpt(session,null, mailAddress).getResult(); + HookReturnCode result = handler.doRcpt(session, MaybeSender.nullSender(), mailAddress).getResult(); assertThat(HookReturnCode.deny()).describedAs("Reject").isEqualTo(result); } } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandlerTest.java ---------------------------------------------------------------------- diff --git a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandlerTest.java b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandlerTest.java index ead4197..3e7a528 100644 --- a/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandlerTest.java +++ b/protocols/smtp/src/test/java/org/apache/james/protocols/smtp/core/fastfail/SpamTrapHandlerTest.java @@ -26,6 +26,7 @@ import java.net.InetSocketAddress; import java.util.ArrayList; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.protocols.smtp.SMTPSession; import org.apache.james.protocols.smtp.hook.HookReturnCode; import org.apache.james.protocols.smtp.utils.BaseFakeSMTPSession; @@ -63,17 +64,17 @@ public class SpamTrapHandlerTest { handler.setBlockTime(blockTime); handler.setSpamTrapRecipients(rcpts); - HookReturnCode result = handler.doRcpt(setUpSMTPSession(ip),null,new MailAddress(SPAM_TRAP_RECIP1)).getResult(); + HookReturnCode result = handler.doRcpt(setUpSMTPSession(ip), MaybeSender.nullSender(), new MailAddress(SPAM_TRAP_RECIP1)).getResult(); assertThat(result).describedAs("Blocked on first connect").isEqualTo(HookReturnCode.deny()); - result = handler.doRcpt(setUpSMTPSession(ip),null,new MailAddress(RECIP1)).getResult(); + result = handler.doRcpt(setUpSMTPSession(ip), MaybeSender.nullSender(), new MailAddress(RECIP1)).getResult(); assertThat(result).describedAs("Blocked on second connect").isEqualTo(HookReturnCode.deny()); - result = handler.doRcpt(setUpSMTPSession(ip2),null,new MailAddress(RECIP1)).getResult(); + result = handler.doRcpt(setUpSMTPSession(ip2), MaybeSender.nullSender(), new MailAddress(RECIP1)).getResult(); assertThat(result).describedAs("Not Blocked").isEqualTo(HookReturnCode.declined()); @@ -84,7 +85,7 @@ public class SpamTrapHandlerTest { fail("Failed to sleep for " + blockTime + " ms"); } - result = handler.doRcpt(setUpSMTPSession(ip),null,new MailAddress(RECIP1)).getResult(); + result = handler.doRcpt(setUpSMTPSession(ip), MaybeSender.nullSender(), new MailAddress(RECIP1)).getResult(); assertThat(result).describedAs("Not blocked. BlockTime exceeded").isEqualTo(HookReturnCode.declined()); } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SenderAuthIdentifyVerificationRcptHook.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SenderAuthIdentifyVerificationRcptHook.java b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SenderAuthIdentifyVerificationRcptHook.java index d496c4d..578d50a 100644 --- a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SenderAuthIdentifyVerificationRcptHook.java +++ b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SenderAuthIdentifyVerificationRcptHook.java @@ -24,6 +24,7 @@ import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.Domain; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.domainlist.api.DomainList; import org.apache.james.domainlist.api.DomainListException; import org.apache.james.protocols.smtp.SMTPSession; @@ -61,7 +62,7 @@ public class SenderAuthIdentifyVerificationRcptHook extends AbstractSenderAuthId } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { ExtendedSMTPSession nSession = (ExtendedSMTPSession) session; if (nSession.verifyIdentity()) { return super.doRcpt(session, sender, rcpt); http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/JDBCGreylistHandler.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/JDBCGreylistHandler.java b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/JDBCGreylistHandler.java index 37c8252..a1587e8 100644 --- a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/JDBCGreylistHandler.java +++ b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/JDBCGreylistHandler.java @@ -38,6 +38,7 @@ import javax.sql.DataSource; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.dnsservice.api.DNSService; import org.apache.james.dnsservice.library.netmatcher.NetMatcher; import org.apache.james.filesystem.api.FileSystem; @@ -353,7 +354,7 @@ public class JDBCGreylistHandler extends AbstractGreylistHandler implements Prot } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if ((wNetworks == null) || (!wNetworks.matchInetNetwork(session.getRemoteAddress().getAddress().getHostAddress()))) { return super.doRcpt(session, sender, rcpt); } else { http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/SPFHandler.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/SPFHandler.java b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/SPFHandler.java index 2c86b5f..1d136ab 100644 --- a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/SPFHandler.java +++ b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/SPFHandler.java @@ -149,7 +149,7 @@ public class SPFHandler implements JamesMessageHook, MailHook, RcptHook, Protoco } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { if (!session.isRelayingAllowed()) { // Check if session is blocklisted if (session.getAttachment(SPF_BLOCKLISTED, State.Transaction) != null) { http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidRcptMX.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidRcptMX.java b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidRcptMX.java index 13c234b..5165f12 100644 --- a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidRcptMX.java +++ b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidRcptMX.java @@ -29,6 +29,7 @@ import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; import org.apache.james.core.Domain; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.dnsservice.api.DNSService; import org.apache.james.dnsservice.api.TemporaryResolutionException; import org.apache.james.dnsservice.library.netmatcher.NetMatcher; @@ -87,7 +88,7 @@ public class ValidRcptMX implements RcptHook, ProtocolHandler { } @Override - public HookResult doRcpt(SMTPSession session, MailAddress sender, MailAddress rcpt) { + public HookResult doRcpt(SMTPSession session, MaybeSender sender, MailAddress rcpt) { Domain domain = rcpt.getDomain(); http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SPFHandlerTest.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SPFHandlerTest.java b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SPFHandlerTest.java index d7221ff..2183816 100644 --- a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SPFHandlerTest.java +++ b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SPFHandlerTest.java @@ -178,7 +178,7 @@ public class SPFHandlerTest { spf.setDNSService(mockedDnsService); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); } @Test @@ -191,7 +191,7 @@ public class SPFHandlerTest { spf.setDNSService(mockedDnsService); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("fail").isEqualTo(HookReturnCode.deny()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("fail").isEqualTo(HookReturnCode.deny()); } @Test @@ -204,7 +204,7 @@ public class SPFHandlerTest { spf.setDNSService(mockedDnsService); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("softfail declined").isEqualTo(HookReturnCode.declined()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("softfail declined").isEqualTo(HookReturnCode.declined()); } @Test @@ -220,7 +220,7 @@ public class SPFHandlerTest { spf.setBlockSoftFail(true); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("softfail reject").isEqualTo(HookReturnCode.deny()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("softfail reject").isEqualTo(HookReturnCode.deny()); } @Test @@ -236,7 +236,7 @@ public class SPFHandlerTest { spf.setBlockSoftFail(true); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("permerror reject").isEqualTo(HookReturnCode.deny()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("permerror reject").isEqualTo(HookReturnCode.deny()); } @Test @@ -251,7 +251,7 @@ public class SPFHandlerTest { spf.setDNSService(mockedDnsService); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("temperror denysoft").isEqualTo(HookReturnCode.denySoft()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("temperror denysoft").isEqualTo(HookReturnCode.denySoft()); } @Test @@ -265,7 +265,7 @@ public class SPFHandlerTest { spf.setDNSService(mockedDnsService); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); } @Test @@ -280,6 +280,6 @@ public class SPFHandlerTest { spf.setBlockPermError(false); assertThat(spf.doMail(mockedSMTPSession, sender).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); - assertThat(spf.doRcpt(mockedSMTPSession, sender.get(), rcpt).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); + assertThat(spf.doRcpt(mockedSMTPSession, sender, rcpt).getResult()).describedAs("declined").isEqualTo(HookReturnCode.declined()); } } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java index a6eed9a..03d68f8 100644 --- a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java +++ b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptHandlerTest.java @@ -26,6 +26,7 @@ import java.util.HashMap; import org.apache.james.core.Domain; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.dnsservice.api.DNSService; import org.apache.james.domainlist.lib.DomainListConfiguration; import org.apache.james.domainlist.memory.MemoryDomainList; @@ -47,6 +48,7 @@ public class ValidRcptHandlerTest { private static final String USER2 = "user2"; private static final String PASSWORD = "xxx"; private static final boolean RELAYING_ALLOWED = true; + private static final MaybeSender MAYBE_SENDER = MaybeSender.of(SENDER); private ValidRcptHandler handler; private MemoryRecipientRewriteTable memoryRecipientRewriteTable; @@ -115,7 +117,7 @@ public class ValidRcptHandlerTest { public void doRcptShouldRejectNotExistingLocalUsersWhenNoRelay() { SMTPSession session = setupMockedSMTPSession(!RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, invalidUserEmail).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, invalidUserEmail).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.deny()); } @@ -124,7 +126,7 @@ public class ValidRcptHandlerTest { public void doRcptShouldDenyNotExistingLocalUsersWhenRelay() { SMTPSession session = setupMockedSMTPSession(RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, invalidUserEmail).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, invalidUserEmail).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.deny()); } @@ -134,7 +136,7 @@ public class ValidRcptHandlerTest { MailAddress mailAddress = new MailAddress(INVALID_USER + "@otherdomain"); SMTPSession session = setupMockedSMTPSession(RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, mailAddress).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, mailAddress).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.declined()); } @@ -144,7 +146,7 @@ public class ValidRcptHandlerTest { MailAddress mailAddress = new MailAddress(INVALID_USER + "@otherdomain"); SMTPSession session = setupMockedSMTPSession(!RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, mailAddress).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, mailAddress).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.declined()); } @@ -153,7 +155,7 @@ public class ValidRcptHandlerTest { public void doRcptShouldDeclineValidUsersWhenNoRelay() throws Exception { SMTPSession session = setupMockedSMTPSession(!RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, validUserEmail).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, validUserEmail).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.declined()); } @@ -162,7 +164,7 @@ public class ValidRcptHandlerTest { public void doRcptShouldDeclineValidUsersWhenRelay() throws Exception { SMTPSession session = setupMockedSMTPSession(RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, validUserEmail).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, validUserEmail).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.declined()); } @@ -173,7 +175,7 @@ public class ValidRcptHandlerTest { SMTPSession session = setupMockedSMTPSession(!RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, validUserEmail).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, validUserEmail).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.declined()); } @@ -185,7 +187,7 @@ public class ValidRcptHandlerTest { SMTPSession session = setupMockedSMTPSession(!RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, user1mail).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, user1mail).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.declined()); } @@ -196,7 +198,7 @@ public class ValidRcptHandlerTest { SMTPSession session = setupMockedSMTPSession(!RELAYING_ALLOWED); - HookReturnCode rCode = handler.doRcpt(session, SENDER, user1mail).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MAYBE_SENDER, user1mail).getResult(); assertThat(rCode).isEqualTo(HookReturnCode.declined()); } http://git-wip-us.apache.org/repos/asf/james-project/blob/3f68078d/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptMXTest.java ---------------------------------------------------------------------- diff --git a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptMXTest.java b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptMXTest.java index 730460f..c7db08d 100644 --- a/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptMXTest.java +++ b/server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/ValidRcptMXTest.java @@ -23,6 +23,7 @@ import static org.assertj.core.api.Assertions.assertThat; import java.util.HashMap; import org.apache.james.core.MailAddress; +import org.apache.james.core.MaybeSender; import org.apache.james.dnsservice.api.DNSService; import org.apache.james.dnsservice.api.InMemoryDNSService; import org.apache.james.protocols.smtp.SMTPSession; @@ -83,7 +84,7 @@ public class ValidRcptMXTest { ValidRcptMX handler = new ValidRcptMX(); handler.setDNSService(dns); handler.setBannedNetworks(ImmutableList.of(bannedAddress), dns); - HookReturnCode rCode = handler.doRcpt(session, null, mailAddress).getResult(); + HookReturnCode rCode = handler.doRcpt(session, MaybeSender.nullSender(), mailAddress).getResult(); assertThat(HookReturnCode.deny()).describedAs("Reject").isEqualTo(rCode); } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org