On Fri, 19 Jun 2009, 23:20 +0200, Stephan Bosch wrote:
John Marshall schreef:
Symptoms were that managesieve login was OK but instead of displaying my sieve script, the script editing window was empty. After 30 seconds the client gave me a timeout message. If I entered a small script in the empty client edit window and saved it, the new, small script was saved to the server and became active. I could then successfully retrieve and edit that small script.
I cannot reproduce your problem at my end with the given information. A 14 kb script is no problem here (tried with large comment and repetitive if statements). I am using the same client you have.
Thank you Stephen for looking at this. I have just uninstalled Dovecot 1.1.15 and re-built and installed Dovecot 1.1.16 and the problem is back.
- What is your exact config (i.e. dovecot -n)
# 1.1.16: /usr/local/etc/dovecot.conf
# OS: FreeBSD 7.2-RELEASE i386
protocols: imap imaps pop3 pop3s managesieve
listen: 192.0.2.1
ssl_listen: 192.0.2.1
ssl_ca_file: /usr/local/openssl/certs/example.CACERT.pem
ssl_cert_file: /usr/local/openssl/certs/mail.example.com.CERT.pem
ssl_key_file: /usr/local/openssl/private/mail.example.com.KEY.pem
login_dir: /var/run/dovecot/login
login_executable(default): /usr/local/libexec/dovecot/imap-login
login_executable(imap): /usr/local/libexec/dovecot/imap-login
login_executable(pop3): /usr/local/libexec/dovecot/pop3-login
login_executable(managesieve): /usr/local/libexec/dovecot/managesieve-login
verbose_proctitle: yes
first_valid_uid: 1234
last_valid_uid: 1234
first_valid_gid: 1234
last_valid_gid: 1234
mail_privileged_group: mail
mail_location: maildir:%h/Maildir
mail_debug(default): no
mail_debug(imap): no
mail_debug(pop3): no
mail_debug(managesieve): yes
maildir_copy_preserve_filename: yes
mail_executable(default): /usr/local/libexec/dovecot/imap
mail_executable(imap): /usr/local/libexec/dovecot/imap
mail_executable(pop3): /usr/local/libexec/dovecot/pop3
mail_executable(managesieve): /usr/local/libexec/dovecot/managesieve
mail_plugin_dir(default): /usr/local/lib/dovecot/imap
mail_plugin_dir(imap): /usr/local/lib/dovecot/imap
mail_plugin_dir(pop3): /usr/local/lib/dovecot/pop3
mail_plugin_dir(managesieve): /usr/local/lib/dovecot/managesieve
imap_client_workarounds(default): delay-newmail netscape-eoh tb-extra-mailbox-sep
imap_client_workarounds(imap): delay-newmail netscape-eoh tb-extra-mailbox-sep
imap_client_workarounds(pop3):
imap_client_workarounds(managesieve):
pop3_client_workarounds(default):
pop3_client_workarounds(imap):
pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh
pop3_client_workarounds(managesieve):
sieve_storage(default):
sieve_storage(imap):
sieve_storage(pop3):
sieve_storage(managesieve): %h/sieve
sieve(default):
sieve(imap):
sieve(pop3):
sieve(managesieve): %h/.dovecot.sieve
auth default:
mechanisms: gssapi gss-spnego plain
gssapi_hostname: mail.example.com
passdb:
driver: passwd-file
args: /path/to/password-file
userdb:
driver: static
args: uid=1234 gid=1234 home=/path/to/maildirs/%d/%n
socket:
type: listen
client:
path: /var/run/dovecot/auth-client
mode: 432
master:
path: /var/run/dovecot/auth-master
mode: 384
user: maildirs_owner
group: maildirs_group
plugin:
sieve: %h/.dovecot.sieve
- Do the logs say anything? Segfault perhaps (signal 11) ?
The logs show successful managesieve-login and then nothing.
- Could you provide (an anonymized version of) the script you are trying to upload? (Make sure the version you send me is problematic as well)
The problem is not uploading. The problem is downloading. If I copy my sieve script to my client (by other means) I can upload it fine. The problem is that the client cannot retrieve it from the server for editing if it is bigger than 8kB. Here is a sample "problem" script:
# This is a sieve script file full of comments <--- snip (above line repeated 200 times) ---> keep;
If I lose 26 of those 200 comment lines then I can download as well as upload the script.
If it truly does hang at some point, you could use the strace tool to get an idea what it the managesieve daemon doing at that time. If you are not using TLS, you can use the ngrep tool to capture the TCP traffic between client and server. That may also prove useful.
It doesn't "hang". The script edit window pops up empty and 30 seconds later I see pop-up dialogue box: window title is "Alert"; Text is "A Timeout occured". I click OK to acknowledge the timeout and then I can enter/upload a large or small script or import/edit/upload a large or small script.
I don't have ngrep but if you can suggest a useful incantation for tcpdump I can provide that for you.
I reverted to 1.1.15 and everything worked again; I upgraded to 1.1.16 and the problem returned - all without touching the config or sieve script or client. The Thunderbird/Sieve client, by the way, is on FreeBSD not Microsoft.
-- John Marshall