rpm -qv guam
guam-0.7.1-3.2.el7.kolab_16.x86_64
/var/log/guam/console.log:
gen_fsm <0.14289.0> in state passthrough terminated with reason: buf_error in zlib:call/3 CRASH REPORT Process <0.14289.0> with 0 neighbours exited with reason: buf_error in zlib:call/3 in gen_fsm:terminate/7 line 611
/var/log/guam/crash.log
=CRASH REPORT==== crasher: initial call: eimap:init/1 pid: <0.14275.0> registered_name: [] exception exit: {{buf_error,[{zlib,call,3,[]},{zlib,deflate,3,[]},{eimap,deflated,2,[{file,"src/eimap.erl"},{line,483}]},{eimap,passthrough,2,[{file,"src/eimap.erl"},{line,174}]},{gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,503}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]},[{gen_fsm,terminate,7,[{file,"gen_fsm.erl"},{line,611}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]} ancestors: [<0.14151.0>,<0.91.0>,kolab_guam_sup,<0.86.0>] messages: [] links: [#Port<0.11484>,<0.14151.0>,#Port<0.11483>] dictionary: [] trap_exit: false status: running heap_size: 1598 stack_size: 27 reductions: 2858 neighbours: 2016-02-26 12:34:11 =ERROR REPORT==== ** State machine <0.14283.0> terminating ** Last event in was {passthrough,<<>>} (for all states) ** When State == passthrough ** Data == {state,"127.0.0.1",9993,true,true,{sslsocket,{gen_tcp,#Port<0.11492>,tls_connection,undefined},<0.14284.0>},<<"post.woelkchen.xyz Cyrus IMAP 2.5.7-Kolab-2.5.7-1.2.el7.kolab_16 server ready">>,2,{[],[]},{command,<<"EG0001">>,undefined,<<"COMPRESS DEFLATE">>,<0.14283.0>,compress,#Fun<eimap_command_compress.parse.2>},undefined,none,true,<0.14166.0>,<<>>,#Port<0.11495>,#Port<0.11496>} ** Reason for termination = ** {buf_error,[{zlib,call,3,[]},{zlib,deflate,3,[]},{eimap,deflated,2,[{file,"src/eimap.erl"},{line,483}]},{eimap,passthrough,2,[{file,"src/eimap.erl"},{line,174}]},{gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,503}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]}
I exchanged a few lines with kanarip about the issue yesterday and it seems to be SSL related.
the corresponding snippet from /etc/guam/sys.config
tls_config, [ { certfile, "/etc/letsencrypt/live/post.woelkchen.xyz/cert.pem" }, { cacertfile, "/etc/letsencrypt/live/post.woelkchen.xyz/chain.pem" }, { keyfile, "/etc/letsencrypt/live/post.woelkchen.xyz/privkey.pem" }
Initially I tried to concatenate my entire Certificate Chain into a single file (Key+Cert+Intermediate CA, in that order) but guam only delivered my cert and not the CA. This behaviour seems to be intentional, see: http://erlang.org/pipermail/erlang-questions/2014-August/080512.html
With my current configuration I do have a working chain that is accepted by my client, but it crashes constantly...