Re: [Dovecot] MANAGESIEVE patch v4 for dovecot 1.0.rc28
Stephan Bosch wrote: Hello dovecot users, I have updated the MANAGESIEVE patch to fix the currently known small problems with the protocol implementation. It is designed for rc28, but also compiles cleanly with the current cvs branch_1_0. Have fun testing the patch. Notify me when there are problems. Regards, -- Stephan Bosch [EMAIL PROTECTED] IRC: Freenode, #dovecot, S[r]us There is problem; after patch dovecot segfaults if you try to dump settings. file: ./src/master/master-stettings.c in void master_setting_dump ... const void *sets [4] const char *set_names[4] must be changed to: const void *sets [5] const char *set_names[5] after you added managesieve settings here, settings max count must be increased too:) patch --- # diff -r -u -N master-settings.c master-settings.c.new --- master-settings.c 2007-04-17 07:48:04.0 +0200 +++ master-settings.c.new 2007-04-19 18:33:02.0 +0200 @@ -1584,8 +1584,8 @@ void master_settings_dump(struct server_settings *set, bool nondefaults) { - const void *sets[4]; - const char *set_names[4]; + const void *sets[5]; + const char *set_names[5]; unsigned int count; sets[0] = default_settings; - Uldis
Re: [Dovecot] MANAGESIEVE patch v4 for dovecot 1.0.rc28 / problems
Stephan Bosch wrote: This script states: require []; This is not valid sieve to my knowledge and it doesn't serve any useful purpose: there is no empty sieve extension, so this seems to be a bug in avelsieve. Lib-CMUSieve correctly reports an error. Btw, I tested avelsieve myself as well (to test yet another sieve client), but it also caused a syntax error: NO line 6: syntax error, unexpected ']', expecting STRING I don't yet know what caused this, but I intend to find out as soon as I get to sniff the TCP communication properly. Found it. Avelsieve incorrectly assumes the SIEVE capabilities to be listed in lowercase. Dovecot-managesieve lists them in uppercase. I have written a small patch to avelsieve 1.9.7 (devel branch): http://sinas.rename-it.nl/~sirius/avelsieve-1.9.7-SIEVECASE.patch Just apply in the avelsieve directory with -p1. Keep in mind that this only fixes the managesieve.lib.php backend. If you use the PEAR version, I don't know whether this bug exists at all. This bug also exists in avelsieve 1.0.1, but I didn't take time to fix it. Regards, -- Stephan Bosch [EMAIL PROTECTED] IRC: Freenode, #dovecot, S[r]us
Re: [Dovecot] MANAGESIEVE patch v4 for dovecot 1.0.rc28 / problems
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Stephan Bosch schrieb: Stephan Bosch schreef: Stephan Bosch wrote: This script states: require []; This is not valid sieve to my knowledge and it doesn't serve any useful purpose: there is no empty sieve extension, so this seems to be a bug in avelsieve. Lib-CMUSieve correctly reports an error. Btw, I tested avelsieve myself as well (to test yet another sieve client), but it also caused a syntax error: NO line 6: syntax error, unexpected ']', expecting STRING I don't yet know what caused this, but I intend to find out as soon as I get to sniff the TCP communication properly. Found it. Avelsieve incorrectly assumes the SIEVE capabilities to be listed in lowercase. Dovecot-managesieve lists them in uppercase. Just to be sure I reread the MANAGESIEVE (v07) draft specification. It gives an example of the SIEVE capability response in UPPER CASE (it says nothing explicitly), but it also refers to the SIEVE specification, which says: Any extensions to this language MUST define a capability string that uniquely identifies that extension. Capability string are case- sensitive; for example, foo and FOO are different capabilities. If a new version of an extension changes the functionality of a previously defined extension, it MUST use a different name. Extensions may register a set of related capabilities by registering just a unique prefix for them. The comparator- prefix is an example of this. The prefix MUST end with a - and MUST NOT overlap any existing registrations. So, I seems that I am pretty much wrong in this case. I'll change the code and notify the maintainer of the managesieve specification. Until I publish a new patch, the patch to avelsieve will work however. Regards, Ok Stephan, i understand, i will test your avelsieve patch, and your new release if you got it coded - -- Mit freundlichen Gruessen Best Regards Robert Schetterer https://www.schetterer.org Munich/Bavaria/Germany -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iD8DBQFGGTzdfGH2AvR16oERAtyoAJ0Ra243Hx4Lh7XJUFBATXvAHDY0QACfbsHk UUwtcErvZReuldpN0GGDQ40= =M8C4 -END PGP SIGNATURE-
Re: [Dovecot] MANAGESIEVE patch v4 for dovecot 1.0.rc28
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Stephan Bosch schrieb: Hello dovecot users, I have updated the MANAGESIEVE patch to fix the currently known small problems with the protocol implementation. It is designed for rc28, but also compiles cleanly with the current cvs branch_1_0. Change Log V4 - - Added managesieve_implementation_string setting to the managesieve configuration. This can be used to customize the default IMPLEMENTATION capability response (as requested by John Peacock). - Denied ANONYMOUS login until proper support is implemented - Fixed problem with authenticate command regarding continued responses. In V3 only initial response would work. Problem was caused by rc2 - rc28 upgrade. One of the clear reasons why code duplication is a very bad idea. - Fixed readlink bug as indicated by Timo: return value of readlink can also be -1. - Fixed bug in the regular file rescue code, as introduced in the previous version. Used stat instead of lstat. This caused the symlink to be rescued subsequently in the next activation, thus still overwriting the initially rescued script. This patch still includes (yet another) instance of the CMU Sieve source, as explained in one of my previous e-mails (http://dovecot.org/list/dovecot/2006-July/015016.html). It can be downloaded at: http://sinas.rename-it.nl/~sirius/dovecot-1.0.rc28-MANAGESIEVE-v4.diff.gz A design related README is located at src/managesieve after applying the patch. Have fun testing the patch. Notify me when there are problems. Regards, -- Stephan Bosch [EMAIL PROTECTED] IRC: Freenode, #dovecot, S[r]us Hi Stephan, i have success with patch dovecot with your patch but having problems in understanding how to configure the sieve server in dovecot.conf , do you have some small faqs for me, the readme wasnt enough for me to do this - -- Mit freundlichen Gruessen Best Regards Robert Schetterer https://www.schetterer.org Munich/Bavaria/Germany -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iD8DBQFGF4BdfGH2AvR16oERAoAEAJ40YWzPARtH9SJA+fksKk5PKX2cDACffURP zMBDPCYmlGS6os33C23r/Gc= =I0O5 -END PGP SIGNATURE-
Re: [Dovecot] MANAGESIEVE patch v4 for dovecot 1.0.rc28
Andraž 'ruskie' Levstik schrieb: On 13:28:29 2007-04-07 Robert Schetterer [EMAIL PROTECTED] wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Stephan Bosch schrieb: Hello dovecot users, I have updated the MANAGESIEVE patch to fix the currently known small problems with the protocol implementation. It is designed for rc28, but also compiles cleanly with the current cvs branch_1_0. Hi Stephan, i have success with patch dovecot with your patch but having problems in understanding how to configure the sieve server in dovecot.conf , do you have some small faqs for me, the readme wasnt enough for me to do this I needed to do the following: to my protocols line added managesieve protocols = imap managesieve Then added a protocol managesieve with: protocol managesieve { listen = *:2000 login_executable = /usr/libexec/dovecot/managesieve-login mail_executable = /usr/libexec/dovecot/managesieve } That's what was needde to gt it working here... -- Andraž ruskie Levstik Source Mage GNU/Linux Games grimoire guru Geek/Hacker/Tinker Hacker FAQ: http://www.plethora.net/%7eseebs/faqs/hacker.html Be sure brain is in gear before engaging mouth. Key id = F4C1F89C Key fingerprint = 6FF2 8F20 4C9D DB36 B5B6 F134 884D 72CC F4C1 F89C Hi Andraž thx i will try that -- Mit freundlichen Gruessen Best Regards Robert Schetterer https://www.schetterer.org Munich/Bavaria/Germany
Re: [Dovecot] MANAGESIEVE patch v4 for dovecot 1.0.rc28 / problems
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Robert Schetterer schrieb: Andraž 'ruskie' Levstik schrieb: On 13:28:29 2007-04-07 Robert Schetterer [EMAIL PROTECTED] wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Stephan Bosch schrieb: Hello dovecot users, I have updated the MANAGESIEVE patch to fix the currently known small problems with the protocol implementation. It is designed for rc28, but also compiles cleanly with the current cvs branch_1_0. Hi Stephan, i have success with patch dovecot with your patch but having problems in understanding how to configure the sieve server in dovecot.conf , do you have some small faqs for me, the readme wasnt enough for me to do this I needed to do the following: to my protocols line added managesieve protocols = imap managesieve Then added a protocol managesieve with: protocol managesieve { listen = *:2000 login_executable = /usr/libexec/dovecot/managesieve-login mail_executable = /usr/libexec/dovecot/managesieve } That's what was needde to gt it working here... -- Andraž ruskie Levstik Source Mage GNU/Linux Games grimoire guru Geek/Hacker/Tinker Hacker FAQ: http://www.plethora.net/%7eseebs/faqs/hacker.html Be sure brain is in gear before engaging mouth. Key id = F4C1F89C Key fingerprint = 6FF2 8F20 4C9D DB36 B5B6 F134 884D 72CC F4C1 F89C Hi Andraž thx i will try that Hi,ok setui above works using avelsieve squirrelmail plugin with managesieve dovecot latest (perhaps i shouldnt use 1.30 rc) as well there may be other problems between suse and quotawarn patches ) please see this just as info to help coders to debug following problems in logs appear /var/log/messages 9 04:51:41 suse10-2-vmware kernel: managesieve-log[2326]: segfault at rip rsp 7fff8995b938 error 14 i have no idea where this comes from /var/log/dovcot.info dovecot: Apr 09 04:55:00 Info: IMAP([EMAIL PROTECTED]): Disconnected: Logged out dovecot: Apr 09 04:55:08 Info: managesieve-login: Login: user=[EMAIL PROTECTED], method=PLAIN, rip=127.0.0.1, lip=127.0.0.1, TLS dovecot: Apr 09 04:55:08 Info: MANAGESIEVE([EMAIL PROTECTED]): Effective uid=1001, gid=1001 dovecot: Apr 09 04:55:08 Info: MANAGESIEVE([EMAIL PROTECTED]): sieve storage: Using active sieve script path: /usr/local/virtual/[EMAIL PROTECTED]//.dovecot.sieve ( this line looks strange to me, but it musnt be false ) dovecot: Apr 09 04:55:08 Info: MANAGESIEVE([EMAIL PROTECTED]): sieve storage: Using mail-data: maildir:/usr/local/virtual/[EMAIL PROTECTED]/ dovecot: Apr 09 04:55:08 Info: MANAGESIEVE([EMAIL PROTECTED]): sieve storage: Using sieve script storage path: /usr/local/virtual/[EMAIL PROTECTED]/ dovecot: Apr 09 04:55:08 Info: MANAGESIEVE([EMAIL PROTECTED]): sieve storage: Relative path to sieve storage in active link: dovecot: Apr 09 04:55:08 Info: MANAGESIEVE([EMAIL PROTECTED]): Disconnected in squirrlemail avelsieve C: IMPLEMENTATION dovecot\r\n C: SASL PLAIN\r\n C: SIEVE FILEINTO REJECT ENVELOPE VACATION IMAPFLAGS NOTIFY SUBADDRESS RELATIONAL COMPARATOR-I;ASCII-NUMERIC\r\n C: STARTTLS\r\n C: OK Welcome\r\n S: STARTTLS\r\n C: OK Begin TLS negotiation now.\r\n S: CAPABILITY\r\n C: IMPLEMENTATION dovecot\r\n C: SASL PLAIN\r\n C: SIEVE FILEINTO REJECT ENVELOPE VACATION IMAPFLAGS NOTIFY SUBADDRESS RELATIONAL COMPARATOR-I;ASCII-NUMERIC\r\n C: OK TLS negotiation successful.\r\n S: AUTHENTICATE PLAIN {72+}\r\n S: dGVzdGVyQGRhcmtjaGF0cm9vbS5kZQB0ZXN0ZXJAZGFya2NoYXRyb29tLmRlAHRlc3Rlcg==\r\n C: IMPLEMENTATION dovecot\r\n C: SASL PLAIN\r\n C: SIEVE FILEINTO REJECT ENVELOPE VACATION IMAPFLAGS NOTIFY SUBADDRESS RELATIONAL COMPARATOR-I;ASCII-NUMERIC\r\n C: OK Capability completed.\r\n S: CAPABILITY\r\n C: OK Logged in.\r\n S: PUTSCRIPT phpscript {777+}\r\n# This script has been automatically generated by avelsieve\n# (Sieve Mail Filters Plugin for Squirrelmail)\n# Warning: If you edit this manually, then the changes will not \n# be reflected in the users' front-end\!\n#AVELSIEVE_VERSIONYTo0OntzOjU6Im1ham9yIjtpOjE7czo1OiJtaW5vciI7aTo5O3M6NzoicmVsZWFzZSI7aTo3O3M6Njoic3RyaW5nIjtzOjU6IjEuOS43Ijt9\n#AVELSIEVE_CREATED1176087308\n#AVELSIEVE_MODIFIED1176087308\nrequire [];\nif\n#START_SIEVE_RULEYTo0OntzOjQ6ImNvbmQiO2E6MTp7aTowO2E6NDp7czo0OiJ0eXBlIjtzOjY6ImhlYWRlciI7czo2OiJoZWFkZXIiO3M6NjoidG9vcmNjIjtzOjk6Im1hdGNodHlwZSI7czo4OiJjb250YWlucyI7czoxMToiaGVhZGVybWF0Y2giO3M6MzoiKioqIjt9fXM6NDoidHlwZSI7czoxOiIxIjtzOjk6ImNvbmRpdGlvbiI7czozOiJhbmQiO3M6NjoiYWN0aW9uIjtzOjE6IjIiO30%3DEND_SIEVE_RULE\nheader :contains [to, cc] ***\n{\ndiscard;\n}\r\n C: IMPLEMENTATION dovecot\r\n C: SIEVE FILEINTO REJECT ENVELOPE VACATION IMAPFLAGS NOTIFY SUBADDRESS RELATIONAL COMPARATOR-I;ASCII-NUMERIC\r\n C: OK Capability completed.\r\n S: SETACTIVE phpscript\r\n C: NO line 8: Unsupported features in require line\r\n - -- Mit freundlichen Gruessen Best Regards Robert Schetterer https://www.schetterer.org Munich/Bavaria/Germany -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5