JAMES-2352 Accessing fields in "<>" mail address should not be allowed
The best option would have been to change the mailet API to allow handling sender as optional. But this is a major change in one of our core APIs, would impact custom mailet/matchers, as well as require major code base changes. Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/3306f185 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/3306f185 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/3306f185 Branch: refs/heads/master Commit: 3306f1850433976fa346578ba20d9d2cb13a7418 Parents: 1b5bfe8 Author: benwa <btell...@linagora.com> Authored: Wed Mar 21 10:42:04 2018 +0700 Committer: benwa <btell...@linagora.com> Committed: Tue Mar 27 15:14:04 2018 +0700 ---------------------------------------------------------------------- core/src/main/java/org/apache/james/core/Domain.java | 1 - core/src/main/java/org/apache/james/core/MailAddress.java | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/3306f185/core/src/main/java/org/apache/james/core/Domain.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/james/core/Domain.java b/core/src/main/java/org/apache/james/core/Domain.java index 22b48a0..808de41 100644 --- a/core/src/main/java/org/apache/james/core/Domain.java +++ b/core/src/main/java/org/apache/james/core/Domain.java @@ -28,7 +28,6 @@ import com.google.common.base.Preconditions; public class Domain implements Serializable { public static final Domain LOCALHOST = Domain.of("localhost"); - public static final Domain NULL = new Domain(""); private static String removeBrackets(String domainName) { if (!(domainName.startsWith("[") && domainName.endsWith("]"))) { http://git-wip-us.apache.org/repos/asf/james-project/blob/3306f185/core/src/main/java/org/apache/james/core/MailAddress.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/james/core/MailAddress.java b/core/src/main/java/org/apache/james/core/MailAddress.java index 0dafb85..aaf2abb 100644 --- a/core/src/main/java/org/apache/james/core/MailAddress.java +++ b/core/src/main/java/org/apache/james/core/MailAddress.java @@ -76,12 +76,12 @@ public class MailAddress implements java.io.Serializable { @Override public Domain getDomain() { - return Domain.NULL; + throw new IllegalStateException("NULL sender '<>' do not have domain part"); } @Override public String getLocalPart() { - return ""; + throw new IllegalStateException("NULL sender '<>' do not have local part"); } @Override --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org