You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by bt...@apache.org on 2023/01/31 00:12:59 UTC

[james-project] 02/04: [FIX] ImapResponseComposerImpl: continuation should match Cyrus syntax

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

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

commit 92a2eb6909875991a0d72df264ad43da39d0e6dd
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Fri Jan 27 22:43:25 2023 +0700

    [FIX] ImapResponseComposerImpl: continuation should match Cyrus syntax
    
    Some clients fails to parse continuation beyond '+'
---
 .../org/apache/james/imap/encode/AuthenticateResponseEncoder.java  | 2 +-
 .../java/org/apache/james/imap/encode/ImapResponseComposer.java    | 2 ++
 .../apache/james/imap/encode/base/ImapResponseComposerImpl.java    | 7 +++++++
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/protocols/imap/src/main/java/org/apache/james/imap/encode/AuthenticateResponseEncoder.java b/protocols/imap/src/main/java/org/apache/james/imap/encode/AuthenticateResponseEncoder.java
index b787a92888..a4dab679c8 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/encode/AuthenticateResponseEncoder.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/encode/AuthenticateResponseEncoder.java
@@ -30,6 +30,6 @@ public class AuthenticateResponseEncoder implements ImapResponseEncoder<Authenti
 
     @Override
     public void encode(AuthenticateResponse message, ImapResponseComposer composer) throws IOException {
-        composer.continuationResponse("Ok");
+        composer.continuationResponse();
     }
 }
diff --git a/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java b/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java
index d6b10adecb..376a5d05d1 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java
@@ -200,6 +200,8 @@ public interface ImapResponseComposer {
      */
     ImapResponseComposer continuationResponse(String message) throws IOException;
 
+    ImapResponseComposer continuationResponse() throws IOException;
+
     /**
      * Write a '}'
      * 
diff --git a/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java b/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java
index 6a8a8db8da..06dcf22ad9 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java
@@ -88,6 +88,13 @@ public class ImapResponseComposerImpl implements ImapConstants, ImapResponseComp
         return this;
     }
 
+    @Override
+    public ImapResponseComposer continuationResponse() throws IOException {
+        buffer.write(CONTINUATION);
+        end();
+        return this;
+    }
+
     @Override
     public ImapResponseComposer untaggedResponse(String message) throws IOException {
         untagged();


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