Dovecot 2.3.3

Erulezz

Verified User
Joined
Sep 14, 2015
Messages
905
Location
🇳🇱
https://www.dovecot.org/list/dovecot-news/2018-October/000389.html

* doveconf hides more secrets now in the default output.
* ssl_dh setting is no longer enforced at startup. If it's not set and
non-ECC DH key exchange happens, error is logged and client is
disconnected.

+ Added log_debug=<filter> setting.
+ Added log_core_filter=<log filter> setting.
+ quota-clone: Write to dict asynchronously
+ --enable-hardening attempts to use retpoline Spectre 2 mitigations
+ lmtp proxy: Support source_ip passdb extra field.
+ doveadm stats dump: Support more fields and output stddev by default.
+ push-notification: Add SSL support for OX backend.
- NUL bytes in mail headers can cause truncated replies when fetched.
- director: Conflicting host up/down state changes may in some rare
situations ended up in a loop of two directors constantly overwriting
each others' changes.
- director: Fix hang/crash when multiple doveadm commands are being
handled concurrently.
- director: Fix assert-crash if doveadm disconnects too early
- virtual plugin: Some searches used 100% CPU for many seconds
- dsync assert-crashed with acl plugin in some situations.
- mail_attachment_detection_options=add-flags-on-save assert-crashed
with some specific Sieve scripts.
- Mail snippet generation crashed with mails containing invalid
Content-Type:multipart header.
- Log prefix ordering was different for some log lines.
- quota: With noenforcing option current quota usage wasn't updated.
- auth: Kerberos authentication against Samba assert-crashed.
- stats clients were unnecessarily chatty with the stats server.
- imapc: Fixed various assert-crashes when reconnecting to server.
- lmtp, submission: Fix potential crash if client disconnects while
handling a command.
- quota: Fixed compiling with glibc-2.26 / support libtirpc.
- fts-solr: Empty search values resulted in 400 Bad Request errors
- fts-solr: default_ns parameter couldn't be used
- submission server crashed if relay server returned over 7 lines in
a reply (e.g. to EHLO)
 
Added to files1.

If you're running Sieve/PigeonHole, be sure to recompile it afterwards, eg:
Code:
./build update
./build dovecot
./build pigeonhole
John
 
Here is what I get as an error on FreeBSD 11:

libtool: link: ( cd ".libs" && rm -f "libcharset.la" && ln -s "../libcharset.la" "libcharset.la" )
/bin/sh ../../libtool --tag=CC --mode=link clang -std=gnu99 -g -O2 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wno-duplicate-decl-specifier -Wstrict-aliasing=2 -I/usr/local/include -no-undefined -Wl,--as-needed -o test-charset test-charset.o libcharset.la ../lib-test/libtest.la ../lib/liblib.la
libtool: link: clang -std=gnu99 -g -O2 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wno-duplicate-decl-specifier -Wstrict-aliasing=2 -I/usr/local/include -Wl,--as-needed -o test-charset test-charset.o ./.libs/libcharset.a ../lib-test/.libs/libtest.a ../lib/.libs/liblib.a
./.libs/libcharset.a(charset-iconv.o): In function `iconv_charset_to_utf8_begin':
/usr/local/directadmin/custombuild/dovecot-2.3.3/src/lib-charset/charset-iconv.c:29: undefined reference to `libiconv_open'
./.libs/libcharset.a(charset-iconv.o): In function `iconv_charset_to_utf8_end':
/usr/local/directadmin/custombuild/dovecot-2.3.3/src/lib-charset/charset-iconv.c:44: undefined reference to `libiconv_close'
./.libs/libcharset.a(charset-iconv.o): In function `iconv_charset_to_utf8_reset':
/usr/local/directadmin/custombuild/dovecot-2.3.3/src/lib-charset/charset-iconv.c:51: undefined reference to `libiconv'
./.libs/libcharset.a(charset-iconv.o): In function `charset_to_utf8_try':
/usr/local/directadmin/custombuild/dovecot-2.3.3/src/lib-charset/charset-iconv.c:74: undefined reference to `libiconv'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[3]: *** [Makefile:555: test-charset] Error 1
gmake[3]: Leaving directory '/usr/local/directadmin/custombuild/dovecot-2.3.3/src/lib-charset'
gmake[2]: *** [Makefile:565: all-recursive] Error 1
gmake[2]: Leaving directory '/usr/local/directadmin/custombuild/dovecot-2.3.3/src'
gmake[1]: *** [Makefile:683: all-recursive] Error 1
gmake[1]: Leaving directory '/usr/local/directadmin/custombuild/dovecot-2.3.3'
gmake: *** [Makefile:527: all] Error 2

I did make ./build iconv (successful reinstall) and it did not help.
 
I found this thread, same error:
http://forum.directadmin.com/showthread.php?t=54461

Perhaps follow up there. I would recommend trying this in the configure/dovecot/configure.dovecot:
Code:
--without-libiconv-prefix
But reply #8 might be a solution as well with
Code:
LDFLAGS="-L/usr/lib/dovecot -L/usr/local/lib"export LDFLAGS=${LDFLAGS}
added to the configure.dovecot file, before the ./configure call and after the #!/bin/sh line.

If it works, please also follow up, and we can test it out in more detail.

Our FreeBSD 11 box isn't duplicating the error, hence I'm hesitant to make the change permanent for all until we know more.
But as mentioned, as it's the exact same error as t=54461, I would recommend following up there with success so we keep things as unified as possible :)

If anyone else is getting the same error for FreeBSD 11, please do chime in so we get a better gauge of all affected.

Thanks,
John
 
--without-libiconv-prefix

did NOT fix the issue. Making...

# pkg query %ro libiconv >ports_to_update
# pkg delete -f libiconv
# cat ports_to_update | xargs portmaster

did NOT help. Adding...

LDFLAGS="-L/usr/lib/dovecot -L/usr/local/lib"
export LDFLAGS=${LDFLAGS}

to the configuration file FIXED the issue!
 
Last edited:
Great, thanks for the feedback.
I've tested the setting on various different operating systems and versions, and none failed with the setting.
I'll discuss with Martynas to look into making it present by default.

John
 
I am more curious what triggered the issue. Before 2.3.3 I had no issues compiling dovecot. From the other thread I see that it appeared for other people on older versions.

My guess is that it could be related to a conflict between libiconv in ports and iconv in custombuild. But recompilling both did not help.
 
The configure.dovecot has not been touched for 1530 days, 14 hours.. according to SVN ;)
So not too sure.. probably some change in the ./configure or code.. no idea.
Martynas has added this, just for the FreeBSD case:
Code:
[TABLE="class: diff, width: 1111"]
[TR]
[TD]    if [ "${OS}" = "FreeBSD" ]; then[/TD]
[/TR]
[TR]
[TD="class: diffadded, bgcolor: #DDFFDD"]                export LDFLAGS="-L/usr/lib/dovecot -L/usr/local/lib"[/TD]
[/TR]
[/TABLE]
I did test it on various boxes, so if anyone actually hits that error, let us know and we can move it outside of the "if FreeBSD" condition to make it global.. but for now, it's just there for FreeBSD, before the automake+make (after the ./configure call).

Let us know if you still have issues with it.
It's on files1, ./build version rev 1925.

John
 
The configure.dovecot has not been touched for 1530 days, 14 hours.. according to SVN ;)
So not too sure.. probably some change in the ./configure or code.. no idea.
Martynas has added this, just for the FreeBSD case:
Code:
[TABLE="class: diff, width: 1111"]
[TR]
[TD]    if [ "${OS}" = "FreeBSD" ]; then[/TD]
[/TR]
[TR]
[TD="class: diffadded, bgcolor: #DDFFDD"]                export LDFLAGS="-L/usr/lib/dovecot -L/usr/local/lib"[/TD]
[/TR]
[/TABLE]
I did test it on various boxes, so if anyone actually hits that error, let us know and we can move it outside of the "if FreeBSD" condition to make it global.. but for now, it's just there for FreeBSD, before the automake+make (after the ./configure call).

Let us know if you still have issues with it.
It's on files1, ./build version rev 1925.

John

It's happening again with dovecot 2.3.4, and this time the fix is not working in configure.dovecot.
 
Back
Top