Source: freetds Severity: normal Version: 0.91-5 Tags: patch User: ametz...@debian.org Usertags: gnutls3
Dear Maintainer, Please consider switching to gnutls28 to use more up to date implementation. Previous licensing concerns (GPLv2-only incompatibility) of gnutls28 have now been resolved. Also using and linking with gcrypt is no longer necessary as gnutls 2.12 uses locking by default. [1] Please consider applying following patch:
reverted: --- freetds-0.91/configure.ac +++ freetds-0.91.orig/configure.ac @@ -694,11 +694,11 @@ if test "$with_gnutls" = "yes"; then AC_DEFINE(HAVE_GNUTLS, 1, [Define to 1 if you have GNU tls.]) if test "$PKG_CONFIG" != "" && "$PKG_CONFIG" --libs gnutls > /dev/null 2>&1; then + CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags gnutls`" + NETWORK_LIBS="$NETWORK_LIBS `$PKG_CONFIG --libs gnutls`" - CPPFLAGS="$CPPFLAGS `libgcrypt-config --cflags` `$PKG_CONFIG --cflags gnutls`" - NETWORK_LIBS="$NETWORK_LIBS `libgcrypt-config --libs` `$PKG_CONFIG --libs gnutls`" else + CPPFLAGS="$CPPFLAGS `libgnutls-config --cflags`" + NETWORK_LIBS="$NETWORK_LIBS `libgnutls-config --libs`" - CPPFLAGS="$CPPFLAGS `libgcrypt-config --cflags` `libgnutls-config --cflags`" - NETWORK_LIBS="$NETWORK_LIBS `libgcrypt-config --libs` `libgnutls-config --libs`" fi OLDLIBS="$LIBS" LIBS="$LIBS $NETWORK_LIBS" diff -u freetds-0.91/debian/changelog freetds-0.91/debian/changelog --- freetds-0.91/debian/changelog +++ freetds-0.91/debian/changelog @@ -1,3 +1,12 @@ +freetds (0.91-5.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Build against gnutls28-dev. + * Drop libgcrypt-dev dependency. + * Do not check for libgcrypt-dev in configure scripts. + + -- Dimitri John Ledkov <x...@ubuntu.com> Thu, 08 May 2014 21:34:31 +0100 + freetds (0.91-5) unstable; urgency=low * Add Kerberos support. LP: #1223567. diff -u freetds-0.91/debian/control freetds-0.91/debian/control --- freetds-0.91/debian/control +++ freetds-0.91/debian/control @@ -11,9 +11,8 @@ autotools-dev, unixodbc-dev (>= 2.2.11-10), libglib2.0-dev | libglib-dev, - libgnutls-dev, + libgnutls28-dev, libreadline-dev, - libgcrypt-dev, libkrb5-dev, dh-autoreconf only in patch2: unchanged: --- freetds-0.91.orig/src/tds/net.c +++ freetds-0.91/src/tds/net.c @@ -94,11 +94,13 @@ #include <assert.h> #ifdef HAVE_GNUTLS +#include <gnutls/gnutls.h> #if defined(_THREAD_SAFE) && defined(TDS_HAVE_PTHREAD_MUTEX) #include "tdsthread.h" +#if GNUTLS_VERSION_NUMBER <= 0x020b00 #include <gcrypt.h> #endif -#include <gnutls/gnutls.h> +#endif #elif defined(HAVE_OPENSSL) #include <openssl/ssl.h> #endif @@ -1268,7 +1270,7 @@ } #endif -#if defined(_THREAD_SAFE) && defined(TDS_HAVE_PTHREAD_MUTEX) +#if defined(_THREAD_SAFE) && defined(TDS_HAVE_PTHREAD_MUTEX) && GNUTLS_VERSION_NUMBER <= 0x020b00 GCRY_THREAD_OPTION_PTHREAD_IMPL; #define tds_gcry_init() gcry_control(GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread) #else
Regards, Dimitri. [1] gnutls 2.12 release announcement: ** libgnutls: Added gnutls_global_set_mutex() to allow setting alternative locking procedures. By default the system available locking is used. In *NIX pthreads are used and in windows the critical section API. This follows a different approach than the previous versions that depended on libgcrypt initialization. The locks are now set by default in systems that support it. Programs that used gcry_control() to set thread locks should insert it into a block of #if GNUTLS_VERSION_NUMBER <= 0x020b00 gcry_control(...) #endif