[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-bugs-dist
Subject: [Bug 122870] New: Bug in parsing of ManageSieve protocol for Sieve
From: Aaron Stone <aaron () serendipity ! cx>
Date: 2006-02-28 23:32:46
Message-ID: 20060301003245.122870.aaron () serendipity ! cx
[Download RAW message or body]
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
http://bugs.kde.org/show_bug.cgi?id=122870
Summary: Bug in parsing of ManageSieve protocol for Sieve scripts
Product: kmail
Version: unspecified
Platform: unspecified
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: NOR
Component: general
AssignedTo: kmail-devel kde org
ReportedBy: aaron serendipity cx
Version: (using KDE KDE 3.5.1)
Installed from: I Don't Know
I wrote the ManageSieve implementation for the DBMail mail system, and one of users of our \
latest development releases has not been able to use KMail to manage his Sieve scripts. The \
problem was traced down to this:
Oleg Lapshin wrote:
Solution is very simple :)
I wrote simple perl script, that emulate dbmail-timsieved and done some experiments
Now dbmail-timsieved do this:
C: GETSCRIPT "main"
S: {size+}
S: ...script....
S: OK
But, it must replay so:
C: GETSCRIPT "main"
S: {size}
S: ...script....
S: OK
without "+" (plus) in script size...
When I changed line 673 of timsieve.c from:
"{%u+}\r\n",
to
"{%u}\r\n",
kmail can get script to change it!!!
That's cool, but that + is stipulated by the draft RFC:
http://www.ietf.org/internet-drafts/draft-martin-managesieve-06.txt
See section 2.9, GETSCRIPT:
2.9. GETSCRIPT Command
Arguments:
String - Script name
This command gets the contents of the specified script.
If the script does not exist the server MUST reply with
a NO response. Upon success a string with the contents
of the script is returned followed by a OK response.
Example:
C: Getscript "myscript"
S: {48+}
S: #this is my wonderful script
S: reject "I reject all";
S:
S: OK
The encoding for a literal string is this:
literal = "{" number "+}" CRLF *OCTET
;; The number represents the number of octets.
;; Sieve scripts MUST be sent as literal-utf8.
;; <<literal-utf8>> is defined in ACAP.
So uh, I think my server does the right thing and your client does the wrong thing :-P
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic