File openssl.patch of Package dpkg

Index: dpkg-1.22.5/configure.ac
===================================================================
--- dpkg-1.22.5.orig/configure.ac
+++ dpkg-1.22.5/configure.ac
@@ -111,6 +111,13 @@ AC_SYS_LARGEFILE
 # Checks for libraries.
 DPKG_LIB_RT
 DPKG_LIB_MD
+AS_IF([test "x$have_libmd" = "xno"], [
+  DPKG_LIB_OPENSSL
+  AS_IF([test "x$have_libcrypto" = "xno"], [
+    AC_MSG_FAILURE([md5 digest functions not found in libmd or openssl])
+  ])
+])
+
 DPKG_LIB_Z
 DPKG_LIB_BZ2
 DPKG_LIB_LZMA
@@ -335,6 +342,7 @@ Configuration:
     libkvm  . . . . . . . . . . . : ${have_libkvm:-no}
     libselinux  . . . . . . . . . : $have_libselinux
     libmd . . . . . . . . . . . . : $have_libmd
+    libcryto  . . . . . . . . . . : $have_libcrypto
     libz  . . . . . . . . . . . . : $have_libz_impl
     liblzma . . . . . . . . . . . : $have_liblzma
     libzstd . . . . . . . . . . . : $have_libzstd
Index: dpkg-1.22.5/lib/dpkg/buffer.c
===================================================================
--- dpkg-1.22.5.orig/lib/dpkg/buffer.c
+++ dpkg-1.22.5/lib/dpkg/buffer.c
@@ -23,10 +23,18 @@
 #include <config.h>
 #include <compat.h>
 
+#ifdef HAVE_MD5_H
+#include <md5.h>
+#elif HAVE_OPENSSL_MD5_H
+#include <openssl/md5.h>
+#define MD5Init MD5_Init
+#define MD5Update MD5_Update
+#define MD5Final MD5_Final
+#endif
+
 #include <sys/types.h>
 
 #include <errno.h>
-#include <md5.h>
 #include <string.h>
 #include <unistd.h>
 #include <stdlib.h>
Index: dpkg-1.22.5/m4/dpkg-libs.m4
===================================================================
--- dpkg-1.22.5.orig/m4/dpkg-libs.m4
+++ dpkg-1.22.5/m4/dpkg-libs.m4
@@ -20,11 +20,26 @@ AC_DEFUN([DPKG_LIB_MD], [
       MD_LIBS="$ac_cv_search_MD5Init"
     ])
   ])
-  AS_IF([test "x$have_libmd" = "xno"], [
-    AC_MSG_FAILURE([md5 digest functions not found])
-  ])
 ])# DPKG_LIB_MD
 
+# DPKG_LIB_OPENSSL
+# -----------
+# Check for the digests support in openssl library.
+AC_DEFUN([DPKG_LIB_OPENSSL], [
+  AC_ARG_VAR([OPENSSL_LIBS], [linker flags for openssl library])
+  have_libcryto="no"
+  AC_CHECK_HEADERS([openssl/md5.h], [
+    dpkg_save_libcrypto_LIBS=$LIBS
+    AC_SEARCH_LIBS([MD5_Init], [crypto])
+    LIBS=$dpkg_save_libcrypto_LIBS
+    AS_IF([test "x$ac_cv_search_MD5_Init" != "xno"], [
+      have_libcrypto="yes"
+      OPENSSL_LIBS="$ac_cv_search_MD5_Init"
+    ])
+  ])
+])# DPKG_LIB_OPENSSL
+
+
 # DPKG_WITH_COMPRESS_LIB(NAME, HEADER, FUNC)
 # -------------------------------------------------
 # Check for availability of a compression library.
Index: dpkg-1.22.5/lib/dpkg/Makefile.am
===================================================================
--- dpkg-1.22.5.orig/lib/dpkg/Makefile.am
+++ dpkg-1.22.5/lib/dpkg/Makefile.am
@@ -53,6 +53,7 @@ libdpkg_la_LIBADD = \
 	$(ZSTD_LIBS) \
 	$(BZ2_LIBS) \
 	$(MD_LIBS) \
+	$(OPENSSL_LIBS) \
 	$(LIBINTL) \
 	../compat/libcompat.la \
 	# EOL
openSUSE Build Service is sponsored by