Initialize new callbacks and make sure hent is always initialized.
diff --git a/crypto/x509/by_dir.c b/crypto/x509/by_dir.c
index 098e868..b0a4afa 100644
--- a/crypto/x509/by_dir.c
+++ b/crypto/x509/by_dir.c
@@ -352,7 +352,10 @@
 			CRYPTO_r_unlock(CRYPTO_LOCK_X509_STORE);
 			}
 		else
+			{
 			k = 0;
+			hent = NULL;
+			}
 		for (;;)
 			{
 			char c = '/';
diff --git a/crypto/x509/x509_lu.c b/crypto/x509/x509_lu.c
index ead1e0b..e29c35c 100644
--- a/crypto/x509/x509_lu.c
+++ b/crypto/x509/x509_lu.c
@@ -196,6 +196,8 @@
 	ret->get_crl = 0;
 	ret->check_crl = 0;
 	ret->cert_crl = 0;
+	ret->lookup_certs = 0;
+	ret->lookup_crls = 0;
 	ret->cleanup = 0;
 
 	CRYPTO_new_ex_data(CRYPTO_EX_INDEX_X509_STORE, ret, &ret->ex_data);