Fix compilation with old NSS (no GetVersion).
authorMilan Broz <gmazyland@gmail.com>
Sun, 27 May 2012 20:35:14 +0000 (22:35 +0200)
committerMilan Broz <gmazyland@gmail.com>
Sun, 27 May 2012 20:35:14 +0000 (22:35 +0200)
configure.in
lib/crypto_backend/crypto_nss.c

index f6ceb86..7bda32b 100644 (file)
@@ -140,6 +140,12 @@ AC_DEFUN([CONFIGURE_NSS], [
 
        PKG_CHECK_MODULES([NSS], [nss],,
                AC_MSG_ERROR([You need nss library.]))
+
+       saved_CFLAGS=$CFLAGS
+       CFLAGS="$CFLAGS $NSS_CFLAGS"
+       AC_CHECK_DECLS([NSS_GetVersion], [], [], [#include <nss.h>])
+       CFLAGS=$saved_CFLAGS
+
        CRYPTO_CFLAGS=$NSS_CFLAGS
        CRYPTO_LIBS=$NSS_LIBS
        NO_FIPS([])
index bc81973..a4a5b08 100644 (file)
@@ -76,7 +76,11 @@ int crypt_backend_init(struct crypt_device *ctx)
        if (NSS_NoDB_Init(".") != SECSuccess)
                return -EINVAL;
 
+#if HAVE_DECL_NSS_GETVERSION
        snprintf(version, 64, "NSS %s", NSS_GetVersion());
+#else
+       snprintf(version, 64, "NSS");
+#endif
        crypto_backend_initialised = 1;
        return 0;
 }