From d253fdeecfadc6aa5d68c9be86c632c851c3bee3 Mon Sep 17 00:00:00 2001 From: Sam Ottenhoff Date: Tue, 9 Jul 2024 11:12:09 -0400 Subject: [PATCH 1/5] SAK-50284 Message-ID must contain angle brackets --- .../email/impl/BasicEmailService.java | 27 ++++++++----------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java index 8478612fa14c..efe67c58002a 100644 --- a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java +++ b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java @@ -1343,7 +1343,7 @@ protected void sendMessageAndLog(InternetAddress[] to, long start, MimeMessage m buf.append(" with ").append(parts.getCount() - 1).append(" attachments"); } } - catch (IOException ioe) {} + catch (IOException ignored) {} if (log.isDebugEnabled()) { @@ -1608,9 +1608,9 @@ else if (canUseCharset(message, CharacterSet.WINDOWS_1252) && canUseCharset(getS /** * Override MimeMessage Message-ID to use Sakai serverId instead of hostname * https://javaee.github.io/javamail/FAQ#msgid - * @throws MessagingException - */ - protected void updateMessageID() throws MessagingException + */ + @Override + protected void updateMessageID() throws MessagingException { StringBuilder s = new StringBuilder(); // Unique string is .. @@ -1621,10 +1621,11 @@ protected void updateMessageID() throws MessagingException append(System.currentTimeMillis()). append('@'). append(serverConfigurationService.getServerName()); - setHeader("Message-ID", s.toString()); + setHeader("Message-ID", "<" + s + ">"); } - protected void updateHeaders() throws MessagingException + @Override + protected void updateHeaders() throws MessagingException { super.updateHeaders(); if (m_id != null) @@ -1672,17 +1673,12 @@ private void addEncodedHeader(String header, String name) throws MessagingExcept } } } - catch (MessagingException e) - { - log.error("Email.MyMessage: exception: " + e, e); - addHeaderLine(header); - } - catch (UnsupportedEncodingException e) + catch (MessagingException | UnsupportedEncodingException e) { - log.error("Email.MyMessage: exception: " + e, e); + log.error("Email.MyMessage: exception: {}", e, e); addHeaderLine(header); } - } + } } public String propName(String propNameTemplate) @@ -1692,7 +1688,6 @@ public String propName(String propNameTemplate) public String propName(String propNameTemplate, String protocol) { - String formattedName = String.format(propNameTemplate, protocol); - return formattedName; + return String.format(propNameTemplate, protocol); } } From c975092bf9f60f9f33d4052d59adc9d05aa78eb3 Mon Sep 17 00:00:00 2001 From: Earle Nietzel Date: Thu, 18 Jul 2024 10:25:30 -0400 Subject: [PATCH 2/5] add debug log to ignored exception --- .../java/org/sakaiproject/email/impl/BasicEmailService.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java index efe67c58002a..4229c1257da7 100644 --- a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java +++ b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java @@ -1343,7 +1343,9 @@ protected void sendMessageAndLog(InternetAddress[] to, long start, MimeMessage m buf.append(" with ").append(parts.getCount() - 1).append(" attachments"); } } - catch (IOException ignored) {} + catch (IOException ioe) { + log.debug("could not read message contents, {}", ioe); + } if (log.isDebugEnabled()) { From 7db8857a46dd3bb632ff272512b7b7c29fb17e7e Mon Sep 17 00:00:00 2001 From: Sam Ottenhoff Date: Thu, 18 Jul 2024 17:20:58 -0400 Subject: [PATCH 3/5] Update BasicEmailService.java --- .../org/sakaiproject/email/impl/BasicEmailService.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java index 4229c1257da7..08163b7d315e 100644 --- a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java +++ b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java @@ -1610,9 +1610,9 @@ else if (canUseCharset(message, CharacterSet.WINDOWS_1252) && canUseCharset(getS /** * Override MimeMessage Message-ID to use Sakai serverId instead of hostname * https://javaee.github.io/javamail/FAQ#msgid - */ + */ @Override - protected void updateMessageID() throws MessagingException + protected void updateMessageID() throws MessagingException { StringBuilder s = new StringBuilder(); // Unique string is .. @@ -1627,7 +1627,7 @@ protected void updateMessageID() throws MessagingException } @Override - protected void updateHeaders() throws MessagingException + protected void updateHeaders() throws MessagingException { super.updateHeaders(); if (m_id != null) @@ -1677,7 +1677,7 @@ private void addEncodedHeader(String header, String name) throws MessagingExcept } catch (MessagingException | UnsupportedEncodingException e) { - log.error("Email.MyMessage: exception: {}", e, e); + log.error("Email.MyMessage: exception: {}", e, e); addHeaderLine(header); } } @@ -1690,6 +1690,6 @@ public String propName(String propNameTemplate) public String propName(String propNameTemplate, String protocol) { - return String.format(propNameTemplate, protocol); + return String.format(propNameTemplate, protocol); } } From b03ae6b21625a37287058b4590f58014b05abeb0 Mon Sep 17 00:00:00 2001 From: Adrian Fish Date: Fri, 19 Jul 2024 11:56:17 +0100 Subject: [PATCH 4/5] Update kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java --- .../java/org/sakaiproject/email/impl/BasicEmailService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java index 08163b7d315e..6e3c0cf925d5 100644 --- a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java +++ b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java @@ -1612,7 +1612,7 @@ else if (canUseCharset(message, CharacterSet.WINDOWS_1252) && canUseCharset(getS * https://javaee.github.io/javamail/FAQ#msgid */ @Override - protected void updateMessageID() throws MessagingException + protected void updateMessageID() throws MessagingException { StringBuilder s = new StringBuilder(); // Unique string is .. From 73bca70526d0ca6a28da8d5577ca134dc5ff429e Mon Sep 17 00:00:00 2001 From: Adrian Fish Date: Fri, 19 Jul 2024 11:56:26 +0100 Subject: [PATCH 5/5] Update kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java --- .../java/org/sakaiproject/email/impl/BasicEmailService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java index 6e3c0cf925d5..d0245e6222fc 100644 --- a/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java +++ b/kernel/kernel-impl/src/main/java/org/sakaiproject/email/impl/BasicEmailService.java @@ -1627,7 +1627,7 @@ protected void updateMessageID() throws MessagingException } @Override - protected void updateHeaders() throws MessagingException + protected void updateHeaders() throws MessagingException { super.updateHeaders(); if (m_id != null)