RFC 3501 COPY command issue

Use this forum if you want to discuss a problem or ask a question related to a hMailServer beta release.
Post Reply
evb
New user
New user
Posts: 13
Joined: 2008-11-05 09:33
Location: Belgium

RFC 3501 COPY command issue

Post by evb » 2013-01-09 00:02

Hi,

I'm using the Horde Webmail 5.0.2 version to connect to the hmailserver.
Horde fails every month when it tries to copy all my mails from the INBOX.Sent folder to a new folder for example INBOX.Sent-jan-2013.
It fails at the creation of this new folder.
I was in contact with one of the devs of horde about this problem.
He stated that my IMAP server does not follow the standard RFC 3501.
Your IMAP server is broken. IMP is issuing:
10 UID COPY 1:50 "INBOX.Sent-jan-2012"

Your server is responding with
10 BAD The folder could not be found.

This is incorrect. If INBOX.Sent-jan-2012 can be created, the response MUST be:
10 NO [TRYCREATE] The folder could not be found.

Your server is 1) incorrectly returning BAD and 2) not returning the
TRYCREATE response code.

From RFC 3501 [6.4.7]:

Unless it is certain that the destination mailbox can not be created, the
server MUST send the response code "[TRYCREATE]" as the prefix of
the text of the tagged NO response. This gives a hint to the
client that it can attempt a CREATE command and retry the COPY if
the CREATE is successful.
Is his statement correct?
hmailserver 5.3.3-B1879
MySQL server Ver 5.5, for Win32

evb
New user
New user
Posts: 13
Joined: 2008-11-05 09:33
Location: Belgium

Re: RFC 3501 COPY command issue

Post by evb » 2013-01-11 00:30

I searched in the code:
http://hmailserver.com:60951/svn/hms/tr ... ndCopy.cpp
// We should check if the folder exists. If not, notify user with trycreate
shared_ptr<IMAPFolder> pFolder = pConnection->GetFolderByFullPath(sFolderName);

if (!pFolder)
{
// Nope, doesn't exist.
return IMAPResult(IMAPResult::ResultNo, "Can't find mailbox with that name.\r\n");
}
==> the comment speaks about notifying the user with a trycreate, so I suppose that the IMAPResult::ResultNo constant is returning the "NO [TRYCREATE] The folder could not be found."

Can one of the devs confirm that this code is used in the latest version 5.4?
If yes, then version 5.4 will correct my problem.
I'm using today the latest production version 5.3.3, but I can upgrade to the 5.4 version. It's still beta, but I read comments that this version is very stable.
hmailserver 5.3.3-B1879
MySQL server Ver 5.5, for Win32

Bill48105
Developer
Developer
Posts: 6192
Joined: 2010-04-24 23:16
Location: Michigan, USA

Re: RFC 3501 COPY command issue

Post by Bill48105 » 2013-01-11 07:59

evb wrote:Can one of the devs confirm that this code is used in the latest version 5.4?
If yes, then version 5.4 will correct my problem.
I'm using today the latest production version 5.3.3, but I can upgrade to the 5.4 version. It's still beta, but I read comments that this version is very stable.
Howdy. Not sure on your question. You linked to the live SVN of 5.4 source so yes what you see is what is in 5.4 builds.

In terms of 5.4 being stable, yes it's quite stable & many of us use it on production servers. As a matter of fact so many known issues in earlier versions have been resolved it's recommended most everyone use 5.4. The exception would be someone who's using an earlier version without problems, isn't affected by the known problems or has a particular reason to not upgrade (such as compatibility with something).
Bill
hMailServer build LIVE on my servers: 5.4-B2014050402
#hmailserver on FreeNode IRC https://webchat.freenode.net/?channels=#hmailserver
*** ABSENT FROM hMail! Those in IRC know how to find me if urgent. ***

Post Reply