[imp] error searching body of emails

Ralf Lang lang at b1-systems.de
Mon Nov 16 06:45:55 UTC 2020


Hi,

Am 16.11.2020 um 06:02 schrieb Mike Egglestone:
> Quoting Jan Schneider <jan at horde.org>:
>
>>
>> Please also check the logs of your IMAP server, and if possible,
>> configure IMP to produce an IMAP log itself, in
>> config/backends.local.php.
>>
>> -- 
>
> This is some output from my /var/log/syslog file where my imap dovecot
> service logs to.
>
> Nov 15 20:56:25 intel dovecot:
> imap(mike)<18762><CYkgMzK0DpwAAAAAAAAAAAAAAAAAAAAB>: Panic: file
> message-parser.c: line 174 (message_part_finish): assertion failed:
> (ctx->nested_parts_count > 0)
> Nov 15 20:56:25 intel dovecot:
> imap(mike)<18762><CYkgMzK0DpwAAAAAAAAAAAAAAAAAAAAB>: Error: Raw
> backtrace: /usr/lib/dovecot/libdovecot.so.0(+0xdb62b) [0x7f972923d62b]
> -> /usr/lib/dovecot/libdovecot.so.0(+0xdb6c1) [0x7f972923d6c1] ->
> /usr/lib/dovecot/libdovecot.so.0(+0x4a149) [0x7f97291ac149] ->
> /usr/lib/dovecot/libdovecot.so.0(+0x474ac) [0x7f97291a94ac] ->
> /usr/lib/dovecot/libdovecot.so.0(message_parser_parse_next_block+0x104)
> [0x7f9729225844] ->
> /usr/lib/dovecot/libdovecot.so.0(message_search_msg+0xa8)
> [0x7f9729227df8] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xcf89e)
> [0x7f97293c089e] ->
> /usr/lib/dovecot/libdovecot-storage.so.0(mail_search_args_foreach+0x45)
> [0x7f9729342445] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xd0774)
> [0x7f97293c1774] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xd1a68)
> [0x7f97293c2a68] ->
> /usr/lib/dovecot/libdovecot-storage.so.0(index_storage_search_next_nonblock+0x61)
> [0x7f97293c30e1] ->
> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_search_next_nonblock+0x28)
> [0x7f972934be58] -> dovecot/imap(+0x2691f) [0x55ef1fd2d91f] ->
> dovecot/imap(command_exec+0x70) [0x55ef1fd26d80] ->
> dovecot/imap(+0x25ed2) [0x55ef1fd2ced2] ->
> /usr/lib/dovecot/libdovecot.so.0(io_loop_handle_timeouts+0x111)
> [0x7f97292538f1] ->
> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xd0)
> [0x7f9729255070] ->
> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x4c)
> [0x7f9729253b7c] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x40)
> [0x7f9729253ce0] ->
> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13)
> [0x7f97291d40d3] -> dovecot/imap(main+0x325) [0x55ef1fd17bf5] ->
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)
> [0x7f9728fb209b] -> dovecot/imap(_start+0x2a) [0x55ef1fd17d8a]
> Nov 15 20:56:25 intel dovecot:
> imap(mike)<18762><CYkgMzK0DpwAAAAAAAAAAAAAAAAAAAAB>: Fatal: master:
> service(imap): child 18762 killed with signal 6 (core dumps disabled -
> https://dovecot.org/bugreport.html#coredumps)
>
> Message from syslogd at intel at Nov 15 20:56:25 ...
>  HORDE: [imp] Call to a member function write() on null [pid 18571 on
> line 4436 of "/usr/share/php/Horde/Imap/Client/Socket.php"]
>
> Broadcast message from systemd-journald at intel.estone.ca (Sun
> 2020-11-15 20:56:25 PST):
>
> HORDE[18571]: [imp] Call to a member function write() on null [pid
> 18571 on line 4436 of "/usr/share/php/Horde/Imap/Client/Socket.php"]
>
> Nov 15 20:56:25 intel HORDE: [imp] Call to a member function write()
> on null [pid 18571 on line 4436 of
> "/usr/share/php/Horde/Imap/Client/Socket.php"]
>
>
> I tried to enable debug in backends.local.php with this, but the
> imp_imap.log file doesn't show anything.
>
> // IMAP server
> $servers['imap'] = array(
>     // ENABLED by default; will connect to IMAP port on local server
>     'disabled' => false,
>     'name' => 'IMAP Server',
>     'hostspec' => 'localhost',
>     'hordeauth' => false,
>     'protocol' => 'imap',
>     'port' => 143,
>     'debug_raw' => 'true',
>     'debug' => '/tmp/imp_imap.log',
>     // Plaintext logins are disabled by default on IMAP servers (see
> RFC 3501
>     // [6.2.3]), so TLS is the only guaranteed authentication
> available by
>     // default.
>     'secure' => 'tls',
> );
>
> ~Mike

Make sure /tmp/imp_imap.log is writeable by horde.


In case of apache with mod_php
Make sure /tmp/imp_imap.log is writeable by the wwwrun (SUSE) or
www-data (debian, ubuntu) user. Best create the file by hand using TOUCH
and fixup owner

touch /tmp/imp_imap.log

chown wwwrun:www /tmp/imp_imap.log

chmod 660 /tmp/imp_imap.log

write test:

|sudo -S -u wwwrun /bin/bash -l -c 'echo "TEST" > /tmp/imp_imap.log'|


In case of debian/ubuntu, use www-data rather than wwwrun. In case of
php-fpm, use the FPM daemon's user rather than the web server user.


||||

-- 
Ralf Lang
Linux Consultant / Developer
Tel.: +49-170-6381563
Mail: lang at b1-systems.de
B1 Systems GmbH
Osterfeldstraße 7 / 85088 Vohburg / http://www.b1-systems.de
GF: Ralph Dehner / Unternehmenssitz: Vohburg / AG: Ingolstadt,HRB 3537



More information about the imp mailing list