Summary: the Postfix SMTP server crashes with signal 11 on FreeBSD
10.1-RELEASE when some library (below, the MySQL client) links zlib
at build time, and OpenSSL from ports tries to load zlib lazily at
runtime (zlib-dynamic is enabled by default).
To reproduce: see the thread "Postfix / OpenSSL signal 11 on delivery
from ebay" on the postfix-users mailing list.
The following matrix summarizes different Postfix and OpenSSL build
options, and their effect on this crash.
smtpd Postfix ------OpenSSL------
crash mysql+zlib zlib zlib-dynamic
============================================================
y y y y
n y y n <- see patch below
n y n n <- workaround (safe)
n n y y <- workaround (bad)
Conclusion: building OpenSSL with zlib and no-zlib-dynamic may solve
the problem without losing the benefits of zlib compression.
Is this a problem with OpenSSL, or is this a problem with the FreeBSD
dynamic linker? Unfortunately, I have no more time to investigate
this.
Wietse
Patch for FreeBSD 10.1-RELEASE port security/openssl
--- Makefile- 2014-11-11 15:05:57.000000000 -0500
+++ Makefile 2015-03-22 09:19:02.000000000 -0400
@@ -128,7 +128,7 @@
.endif
.if ${PORT_OPTIONS:MZLIB}
-EXTRACONFIGURE+= zlib zlib-dynamic
+EXTRACONFIGURE+= zlib no-zlib-dynamic
.else
EXTRACONFIGURE+= no-zlib no-zlib-dynamic
.endif