From kmail-devel Tue Feb 28 23:32:46 2006 From: Aaron Stone Date: Tue, 28 Feb 2006 23:32:46 +0000 To: kmail-devel Subject: [Bug 122870] New: Bug in parsing of ManageSieve protocol for Sieve Message-Id: <20060301003245.122870.aaron () serendipity ! cx> X-MARC-Message: https://marc.info/?l=kmail-devel&m=114119265031360 ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. 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. ;; <> is defined in ACAP. So uh, I think my server does the right thing and your client does the wrong thing :-P _______________________________________________ KMail developers mailing list KMail-devel@kde.org https://mail.kde.org/mailman/listinfo/kmail-devel