75 lines
2.1 KiB
Diff
75 lines
2.1 KiB
Diff
|
diff --git a/libclamav/crypto.c b/libclamav/crypto.c
|
||
|
index c62c65a6b..4be900f38 100644
|
||
|
--- a/libclamav/crypto.c
|
||
|
+++ b/libclamav/crypto.c
|
||
|
@@ -1096,7 +1096,6 @@ X509_CRL *cl_load_crl(const char *file)
|
||
|
{
|
||
|
X509_CRL *x=NULL;
|
||
|
FILE *fp;
|
||
|
- struct tm *tm;
|
||
|
|
||
|
if (!(file))
|
||
|
return NULL;
|
||
|
@@ -1110,21 +1109,13 @@ X509_CRL *cl_load_crl(const char *file)
|
||
|
fclose(fp);
|
||
|
|
||
|
if ((x)) {
|
||
|
- tm = cl_ASN1_GetTimeT(x->crl->nextUpdate);
|
||
|
- if (!(tm)) {
|
||
|
- X509_CRL_free(x);
|
||
|
- return NULL;
|
||
|
- }
|
||
|
-
|
||
|
-#if !defined(_WIN32)
|
||
|
- if (timegm(tm) < time(NULL)) {
|
||
|
- X509_CRL_free(x);
|
||
|
- free(tm);
|
||
|
- return NULL;
|
||
|
- }
|
||
|
-#endif
|
||
|
+ ASN1_TIME *tme;
|
||
|
|
||
|
- free(tm);
|
||
|
+ tme = X509_CRL_get_nextUpdate(x);
|
||
|
+ if (!tme || X509_cmp_current_time(tme) < 0) {
|
||
|
+ X509_CRL_free(x);
|
||
|
+ return NULL;
|
||
|
+ }
|
||
|
}
|
||
|
|
||
|
return x;
|
||
|
diff --git a/m4/reorganization/libs/openssl.m4 b/m4/reorganization/libs/openssl.m4
|
||
|
index 78e2c2343..45ee02df9 100644
|
||
|
--- a/m4/reorganization/libs/openssl.m4
|
||
|
+++ b/m4/reorganization/libs/openssl.m4
|
||
|
@@ -26,12 +26,13 @@ save_LDFLAGS="$LDFLAGS"
|
||
|
save_CFLAGS="$CFLAGS"
|
||
|
save_LIBS="$LIBS"
|
||
|
|
||
|
-SSL_LIBS="-lssl -lcrypto -lz"
|
||
|
+SSL_LIBS="$LIBS -lssl -lcrypto -lz"
|
||
|
+LIBS="$LIBS $SSL_LIBS"
|
||
|
|
||
|
if test "$LIBSSL_HOME" != "/usr"; then
|
||
|
SSL_LDFLAGS="-L$LIBSSL_HOME/lib"
|
||
|
SSL_CPPFLAGS="-I$LIBSSL_HOME/include"
|
||
|
- LDFLAGS="-L$LIBSSL_HOME/lib $SSL_LIBS"
|
||
|
+ LDFLAGS="-L$LIBSSL_HOME/lib"
|
||
|
CFLAGS="$SSL_CPPFLAGS"
|
||
|
else
|
||
|
SSL_LDFLAGS=""
|
||
|
@@ -41,7 +42,12 @@ fi
|
||
|
have_ssl="no"
|
||
|
have_crypto="no"
|
||
|
|
||
|
-AC_CHECK_LIB([ssl], [SSL_library_init], [have_ssl="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz])
|
||
|
+AC_LINK_IFELSE(
|
||
|
+ [AC_LANG_PROGRAM([[#include <openssl/ssl.h>]],
|
||
|
+ [[SSL_library_init();]])],
|
||
|
+ [have_ssl="yes";],
|
||
|
+ [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])])
|
||
|
+
|
||
|
|
||
|
AC_CHECK_LIB([crypto], [EVP_EncryptInit], [have_crypto="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz])
|
||
|
|