Add error checking to avoid crashing when zlib cannot be loaded.
authorDr. Stephen Henson <steve@openssl.org>
Fri, 2 Dec 2005 13:27:19 +0000 (13:27 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Fri, 2 Dec 2005 13:27:19 +0000 (13:27 +0000)
crypto/comp/c_zlib.c

index 8263f7315d567bf11e0c61de6581908d8ddc7cf8..e077aa5b9142de0227afce23400ae4f9962e7159 100644 (file)
@@ -397,13 +397,18 @@ COMP_METHOD *COMP_zlib(void)
                        p_deflateInit_
                                = (deflateInit__ft) DSO_bind_func(zlib_dso,
                                        "deflateInit_");
-                       zlib_loaded++;
+
+                       if (p_compress && p_inflateEnd && p_inflate
+                               && p_inflateInit_ && p_deflateEnd
+                               && p_deflate && p_deflateInit_)
+                               zlib_loaded++;
                        }
                }
 
 #endif
 #if defined(ZLIB) || defined(ZLIB_SHARED)
-       meth = &zlib_stateful_method;
+       if (zlib_loaded)
+               meth = &zlib_stateful_method;
 #endif
 
        return(meth);