Get original from for some forwarders

pull/214/head
M66B 12 months ago
parent dd9ced7c05
commit 9061f345a6

@ -3427,7 +3427,7 @@ class Core {
message.dmarc = MessageHelper.getAuthentication("dmarc", authentication);
message.smtp_from = helper.getMailFrom(authentication);
message.return_path = helper.getReturnPath();
message.submitter = helper.getSender();
message.submitter = helper.getSubmitter();
message.from = helper.getFrom();
message.to = helper.getTo();
message.cc = helper.getCc();
@ -4575,7 +4575,7 @@ class Core {
message.dmarc = MessageHelper.getAuthentication("dmarc", authentication);
message.smtp_from = helper.getMailFrom(authentication);
message.return_path = helper.getReturnPath();
message.submitter = helper.getSender();
message.submitter = helper.getSubmitter();
message.from = helper.getFrom();
message.to = helper.getTo();
message.cc = helper.getCc();

@ -2646,11 +2646,24 @@ public class MessageHelper {
return result.toArray(new Address[0]);
}
Address[] getSender() throws MessagingException {
Address[] getSubmitter() throws MessagingException {
Address[] sender = getAddressHeader("X-Google-Original-From");
if (sender == null)
sender = getAddressHeader("Duck-Original-From");
if (sender == null)
sender = getAddressHeader("X-SimpleLogin-Original-From");
if (sender == null)
sender = getAddressHeader("X-AnonAddy-Original-From-Header");
if (sender == null)
sender = getAddressHeader("Sender");
if (sender == null) {
Address[] from = getAddressHeader("From");
if (from != null && from.length == 1) {
String email = ((InternetAddress) from[0]).getAddress();
if (email != null && email.endsWith("@mozmail.com"))
sender = getAddressHeader("Resent-From");
}
}
return sender;
}

Loading…
Cancel
Save