> I switched from running my extprograms execute script directly > to running with dovecot socket. Log shows only this > > dovecot: lmtp(t...@example.com): Debug: wdi0Tb5VPlGfPnEAM/SpMA: sieve: action > execute: running program: test > dovecot: lmtp(t...@example.com): Debug: Namespace : Using permissions from > /vmail/example.com/test: mode=0770 gid=default > dovecot: script: Fatal: recv(MSG_PEEK) failed: disconnected > > For testing I opened up the script and socket with > permissions 777 but the error seems to indicate > less about permissions more about some kind of > protocol problem i guessing.
No one can help? Is anybody using the Sieve extprograms execute via Dovecot socket service? I think my config is vanilla, no? All other Dovecot and Sieve things (including quota service scripts configured very similarly) work fine. Taking a look at the code, the error seems to indicate that no input is available on the socket when Dovecot checks. Does my script need to behave differently? What exactly to do? Should I just go back to direct execute? What's the difference anyway beside the user/permissions will be different? Stephan? Anyone? > Sieve script calls using this: > > execute "test"; > > Plugin config: > > plugin { > sieve_plugins = sieve_extprograms > sieve_global_extensions = +vnd.dovecot.execute > sieve_execute_socket_dir = sieve-execute > sieve_before = /usr/local/etc/dovecot/sieve > } > service test { > executable = script /usr/local/etc/dovecot/sieve_globals/test.sh > unix_listener sieve-execute/test { > mode = 0660 > group = vmail > } > } > > FYI I have quota-warning sockets configured > identical to this and they work good. > > Dovecot 2.2.16 > Pigeonhole 0.4.7 > > Help appreciate a lot.