summaryrefslogtreecommitdiff
path: root/macros
diff options
context:
space:
mode:
authorjoe <joe@61a7d7f5-40b7-0310-9c16-bb0ea8cb1845>2008-02-06 21:31:30 +0000
committerjoe <joe@61a7d7f5-40b7-0310-9c16-bb0ea8cb1845>2008-02-06 21:31:30 +0000
commit6128883f676a8ecf9aa918eb8d3523a895bed6a8 (patch)
treece0ef015db165af94c85ddc8658632686f524854 /macros
parentf4a8bb343cad90605e113abb7d8778cca1d7c1bc (diff)
downloadneon-6128883f676a8ecf9aa918eb8d3523a895bed6a8.tar.gz
Initial support for PKCS#11, based on the pakchois PKCS#11 library:
* src/ne_pkcs11.c, src/ne_pkcs11: New files. * src/ne_gnutls.c (struct ne_ssl_client_cert_s): Add keyless flag. (dup_client_cert): Support keyless clicerts. (ne__ssl_clicert_exkey_import): New function. (provide_client_cert): Use proper GnuTLS error codes in failure cases. * src/ne_privssl.h (ne__ssl_clicert_exkey_import) [HAVE_GNUTLS]: Add prototype. * src/ne_private.h: Include ne_pkcs11.h. (struct ne_session_s): Add pin callback and userdata. * src/ne_session.c (ne_ssl_set_pkcs11_pin): New function. * src/Makefile.in, neon.mak: Build ne_pkcs11.c. * macros/neon.m4 (NEON_SSL): Check for pakchois. git-svn-id: http://svn.webdav.org/repos/projects/neon/trunk@1329 61a7d7f5-40b7-0310-9c16-bb0ea8cb1845
Diffstat (limited to 'macros')
-rw-r--r--macros/neon.m411
1 files changed, 11 insertions, 0 deletions
diff --git a/macros/neon.m4 b/macros/neon.m4
index 6b476e6..9b3abbd 100644
--- a/macros/neon.m4
+++ b/macros/neon.m4
@@ -967,6 +967,17 @@ gnutls)
if test ${ac_cv_func_gnutls_x509_dn_get_rdn_ava}X${ac_cv_header_iconv_h} = yesXyes; then
AC_CHECK_FUNCS(iconv)
fi
+
+ if test x${ac_cv_func_gnutls_sign_callback_set} = xyes; then
+ # PKCS#11... ho!
+ NE_PKG_CONFIG(NE_PK11, pakchois,
+ [AC_MSG_NOTICE(using pakchois for PKCS11 support)
+ AC_DEFINE(HAVE_PAKCHOIS, 1, [Define if pakchois library supported])
+ CPPFLAGS="$CPPFLAGS ${NE_PK11_CFLAGS}"
+ NEON_LIBS="${NEON_LIBS} ${NE_PK11_LIBS}"],
+ [AC_MSG_NOTICE(pakchois library not found; no PKCS11 support)])
+ fi
+
;;
*) # Default to off; only create crypto-enabled binaries if requested.
NE_DISABLE_SUPPORT(SSL, [SSL support is not enabled])