From 49643d2175e4a1d0ac3c8d8a109deef5cbfd82b1 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Mon, 22 Sep 2008 22:13:19 +0200 Subject: secur32: Require gnutls for schannel --- configure.ac | 16 ++++++++++++++++ dlls/secur32/Makefile.in | 1 + dlls/secur32/schannel.c | 11 +++++++++++ 3 files changed, 28 insertions(+), 0 deletions(-) diff --git a/configure.ac b/configure.ac index cda7f47..bce9247 100644 --- a/configure.ac +++ b/configure.ac @@ -38,6 +38,7 @@ AC_ARG_WITH(freetype, AS_HELP_STRING([--without-freetype],[do not use the FreeT AC_ARG_WITH(gphoto, AS_HELP_STRING([--without-gphoto],[do not use gphoto (Digital Camera support)])) AC_ARG_WITH(glu, AS_HELP_STRING([--without-glu],[do not use the GLU library]), [if test "x$withval" = "xno"; then ac_cv_header_GL_glu_h=no; fi]) +AC_ARG_WITH(gnutls, AS_HELP_STRING([--without-gnutls],[do not use GnuTLS (schannel support)])) AC_ARG_WITH(hal, AS_HELP_STRING([--without-hal],[do not use HAL (dynamic device support)])) AC_ARG_WITH(jack, AS_HELP_STRING([--without-jack],[do not use the Jack sound support]), [if test "x$withval" = "xno"; then ac_cv_header_jack_jack_h=no; fi]) @@ -907,6 +908,21 @@ fi WINE_NOTICE_WITH(hal,[test "x$ac_cv_lib_soname_hal" = "x"], [libhal development files not found, no dynamic device support.]) +dnl **** Check for libgnutls **** +if test "x$with_gnutls" != "xno" -a "$PKG_CONFIG" != "false" +then + ac_save_CPPFLAGS="$CPPFLAGS" + ac_gnutls_libs="`$PKG_CONFIG --libs gnutls 2>/dev/null`" + ac_gnutls_cflags="`$PKG_CONFIG --cflags gnutls 2>/dev/null`" + CPPFLAGS="$CPPFLAGS $ac_gnutls_cflags" + AC_CHECK_HEADER(gnutls/gnutls.h, + [WINE_CHECK_SONAME(gnutls,gnutls_global_init, + [AC_SUBST(GNUTLSINCL,"$ac_gnutls_cflags")],,[$ac_gnutls_libs])]) + CPPFLAGS="$ac_save_CPPFLAGS" +fi +WINE_NOTICE_WITH(gnutls,[test "x$ac_cv_lib_soname_gnutls" = "x"], + [libgnutls development files not found, no schannel support.]) + dnl **** Check which curses lib to use *** CURSESLIBS="" if test "$ac_cv_header_ncurses_h" = "yes" diff --git a/dlls/secur32/Makefile.in b/dlls/secur32/Makefile.in index df9695a..788f4de 100644 --- a/dlls/secur32/Makefile.in +++ b/dlls/secur32/Makefile.in @@ -6,6 +6,7 @@ MODULE = secur32.dll IMPORTLIB = secur32 IMPORTS = netapi32 advapi32 kernel32 ntdll DELAYIMPORTS = crypt32 +EXTRAINCL = @GNUTLSINCL@ C_SRCS = \ base64_codec.c \ diff --git a/dlls/secur32/schannel.c b/dlls/secur32/schannel.c index 43b0f26..9660220 100644 --- a/dlls/secur32/schannel.c +++ b/dlls/secur32/schannel.c @@ -18,6 +18,8 @@ * FIXME: It should be rather obvious that this file is empty of any * implementation. */ +#include "config.h" + #include #include "windef.h" #include "winbase.h" @@ -28,6 +30,8 @@ WINE_DEFAULT_DEBUG_CHANNEL(secur32); +#ifdef SONAME_LIBGNUTLS + static SECURITY_STATUS schan_QueryCredentialsAttributes( PCredHandle phCredential, ULONG ulAttribute, const VOID *pBuffer) { @@ -395,3 +399,10 @@ void SECUR32_initSchannelSP(void) info); } } + +#else /* SONAME_LIBGNUTLS */ + +void SECUR32_initSchannelSP(void) {} + +#endif /* SONAME_LIBGNUTLS */ + -- 1.5.6.4