This is an automated email from the ASF dual-hosted git repository.

btellier pushed a commit to branch enhancement-size-audit-log
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 5da8048831292ec91dfbb373609a85486de6501f
Author: Benoit TELLIER <btell...@linagora.com>
AuthorDate: Thu Nov 28 16:43:42 2024 +0100

    [ENHANCEMENT] Log size in the AuditTrail when sending an email
    
    This could be useful for audit purposes
    as well as extracting trends / finding
    offenders.
---
 .../scala/org/apache/james/jmap/method/EmailSubmissionSetMethod.scala   | 2 ++
 .../src/main/java/org/apache/james/smtpserver/SendMailHandler.java      | 2 ++
 2 files changed, 4 insertions(+)

diff --git 
a/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailSubmissionSetMethod.scala
 
b/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailSubmissionSetMethod.scala
index 9d5eb438bb..95fa095a44 100644
--- 
a/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailSubmissionSetMethod.scala
+++ 
b/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailSubmissionSetMethod.scala
@@ -308,6 +308,7 @@ class EmailSubmissionSetMethod @Inject()(serializer: 
EmailSubmissionSetSerialize
               .getOrElse(""),
             "sender", mail.getMaybeSender.asString,
             "recipients", StringUtils.join(mail.getRecipients),
+            "size", mail.getMessageSize.toString,
             "loggedInUser", mailboxSession.getLoggedInUser.toScala
               .map(_.asString())
               .getOrElse("")))
@@ -321,6 +322,7 @@ class EmailSubmissionSetMethod @Inject()(serializer: 
EmailSubmissionSetSerialize
             "mimeMessageId", Option(mail.getMessage)
               .flatMap(message => Option(message.getMessageID))
               .getOrElse(""),
+            "size", mail.getMessageSize.toString,
             "sender", mail.getMaybeSender.asString,
             "recipients", StringUtils.join(mail.getRecipients),
             "holdFor", delay.toString,
diff --git 
a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java
 
b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java
index ffa564c50f..061c3b76ae 100644
--- 
a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java
+++ 
b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java
@@ -108,6 +108,7 @@ public class SendMailHandler implements JamesMessageHook {
                                 
.map(Throwing.function(MimeMessage::getMessageID))
                                 .orElse(""),
                             "sender", mail.getMaybeSender().asString(),
+                            "size", Long.toString(mail.getMessageSize()),
                             "recipients", 
StringUtils.join(mail.getRecipients()),
                             "holdFor", holdFor.value().toString())))
                         .log("SMTP mail spooled.");
@@ -133,6 +134,7 @@ public class SendMailHandler implements JamesMessageHook {
                                 
.map(Throwing.function(MimeMessage::getMessageID))
                                 .orElse(""),
                             "sender", mail.getMaybeSender().asString(),
+                            "size", Long.toString(mail.getMessageSize()),
                             "recipients", 
StringUtils.join(mail.getRecipients()))))
                         .log("SMTP mail spooled.");
                 }));


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@james.apache.org
For additional commands, e-mail: notifications-h...@james.apache.org

Reply via email to