Add gnutls_enable_pkcs11 option.
authorPhil Pennock <pdp@exim.org>
Sun, 24 Jun 2012 09:55:29 +0000 (02:55 -0700)
committerPhil Pennock <pdp@exim.org>
Sun, 24 Jun 2012 09:55:29 +0000 (02:55 -0700)
commita5f239e4959d4df6a4a341d8855e14d17399d671
treeb146fc0467aa091e862fea4cbb038aaf3318aaa3
parent585121e2682545b7afa599e039a7a1e2b1804570
Add gnutls_enable_pkcs11 option.

GnuTLS 2.12.0 adds PKCS11 support using p11-kit and by default will
autoload modules, which interoperates badly with GNOME keyring
integration, configured via paths in environment variables, and Exim
invoked by the user (eg, mailq) will then try to load the modules, fail
and spew warnings from the module for a library loaded by a library.

http://www.gnu.org/software/gnutls/manual/gnutls.html#Smart-cards-and-HSMs
documents that to prevent this, explicitly init PKCS11 before calling
gnutls_global_init().  So we do so, unless the admin sets the new
option.

Reported by Andreas Metzler, who confirmed that the added calls fixed
the problem for him.
doc/doc-docbook/spec.xfpt
doc/doc-txt/ChangeLog
doc/doc-txt/NewStuff
doc/doc-txt/OptionLists.txt
src/README.UPDATING
src/src/globals.c
src/src/globals.h
src/src/readconf.c
src/src/tls-gnu.c