From 9ed23753cc0ac7109965cdae2d5793a7baa85728 Mon Sep 17 00:00:00 2001 From: Dejan Strbac Date: Mon, 9 Jun 2025 17:02:53 +0200 Subject: [PATCH 1/2] imapserver: include CHILDREN capability --- imapserver/capability.go | 1 + 1 file changed, 1 insertion(+) diff --git a/imapserver/capability.go b/imapserver/capability.go index b3e7c99b..8c469622 100644 --- a/imapserver/capability.go +++ b/imapserver/capability.go @@ -81,6 +81,7 @@ func (c *Conn) availableCaps() []imap.Cap { imap.CapCreateSpecialUse, imap.CapLiteralPlus, imap.CapUnauthenticate, + imap.CapChildren, }) } return caps From 83d67df4be08240b2bbc8539a126860f90fdad8b Mon Sep 17 00:00:00 2001 From: Dejan Strbac Date: Wed, 11 Jun 2025 21:30:16 +0200 Subject: [PATCH 2/2] CapChildren should be folded in rev2 --- capability.go | 3 ++- imapserver/capability.go | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/capability.go b/capability.go index f123a1bd..8249a80e 100644 --- a/capability.go +++ b/capability.go @@ -34,12 +34,12 @@ const ( CapMove Cap = "MOVE" // RFC 6851 CapLiteralMinus Cap = "LITERAL-" // RFC 7888 CapStatusSize Cap = "STATUS=SIZE" // RFC 8438 + CapChildren Cap = "CHILDREN" // RFC 3348 CapACL Cap = "ACL" // RFC 4314 CapAppendLimit Cap = "APPENDLIMIT" // RFC 7889 CapBinary Cap = "BINARY" // RFC 3516 CapCatenate Cap = "CATENATE" // RFC 4469 - CapChildren Cap = "CHILDREN" // RFC 3348 CapCondStore Cap = "CONDSTORE" // RFC 7162 CapConvert Cap = "CONVERT" // RFC 5259 CapCreateSpecialUse Cap = "CREATE-SPECIAL-USE" // RFC 6154 @@ -92,6 +92,7 @@ var imap4rev2Caps = CapSet{ CapMove: {}, CapLiteralMinus: {}, CapStatusSize: {}, + CapChildren: {}, } // AuthCap returns the capability name for an SASL authentication mechanism. diff --git a/imapserver/capability.go b/imapserver/capability.go index 1e54dac9..2c48a97b 100644 --- a/imapserver/capability.go +++ b/imapserver/capability.go @@ -80,6 +80,7 @@ func (c *Conn) availableCaps() []imap.Cap { imap.CapMove, imap.CapStatusSize, imap.CapBinary, + imap.CapChildren, }) } @@ -89,7 +90,6 @@ func (c *Conn) availableCaps() []imap.Cap { imap.CapCreateSpecialUse, imap.CapLiteralPlus, imap.CapUnauthenticate, - imap.CapChildren, }) } return caps