Accepting request 1099739 from system:packagemanager

- openssl.patch: use openssl library for MD5 calculation instead
  of relying on libmd. libmd is not in Ring0
- require Perl 5.28.1 or later

- version update to 1.21.22
  https://git.dpkg.org/cgit/dpkg/dpkg.git/tree/debian/changelog

- openssl.patch: use openssl library for MD5 calculation instead
  of relying on libmd. libmd is not in Ring0
- require Perl 5.28.1 or later

OBS-URL: https://build.opensuse.org/request/show/1099739
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/dpkg?expand=0&rev=37
This commit is contained in:
Ana Guerrero 2023-07-24 16:11:40 +00:00 committed by Git OBS Bridge
commit 36ab704265
7 changed files with 132 additions and 10 deletions

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Thu Jul 20 11:25:20 UTC 2023 - Adam Majer <adam.majer@suse.de>
- openssl.patch: use openssl library for MD5 calculation instead
of relying on libmd. libmd is not in Ring0
- require Perl 5.28.1 or later
-------------------------------------------------------------------
Wed Jun 7 11:15:53 UTC 2023 - pgajdos@suse.com
- version update to 1.21.22
https://git.dpkg.org/cgit/dpkg/dpkg.git/tree/debian/changelog
-------------------------------------------------------------------
Thu May 4 14:28:36 UTC 2023 - Frederic Crozat <fcrozat@suse.com>

View File

@ -17,7 +17,7 @@
Name: dpkg
Version: 1.21.8
Version: 1.21.22
Release: 0
Summary: Debian package management system
License: GPL-2.0-or-later
@ -30,15 +30,17 @@ Patch1: update-alternatives-suse.patch
# PATCH-FIX-SUSE: tar of Leap 42.{2,3} does not recognize --sort=name, --clamp-mtime options
Patch2: drop-tar-option.patch
Patch3: ncurses-fix.patch
Patch4: openssl.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc-c++
BuildRequires: gpg2
BuildRequires: libbz2-devel
BuildRequires: libmd-devel
BuildRequires: libselinux-devel
BuildRequires: libtool
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: perl >= 5.28.1
BuildRequires: po4a >= 0.59
BuildRequires: update-alternatives
BuildRequires: xz-devel
@ -89,6 +91,7 @@ Libraries and header files for dpkg.
%patch2 -p1
%endif
%patch3 -p1
%patch4 -p1
%build
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
@ -98,7 +101,8 @@ export CFLAGS="%{?build_cflags:%build_cflags}%{?!build_cflags:%optflags}"
--disable-silent-rules \
--with-libselinux \
--localstatedir=%{_localstatedir}/lib \
--with-admindir=%{_localstatedir}/lib/dpkg
--with-admindir=%{_localstatedir}/lib/dpkg \
--docdir=%{_docdir}/%{name}
# configure somehow does not detect architecture correctly in OBS (bnc#469337), so
# let's do an awful hack and fix it in config.h
@ -157,11 +161,9 @@ exit 0
%files
%license COPYING
%doc ABOUT-NLS AUTHORS doc/triggers.txt NEWS README* THANKS TODO debian/changelog
%{_docdir}/%{name}
%{_mandir}/man*/*
%exclude %{_mandir}/man*/update-alternatives*
%exclude %{_datadir}/doc/dpkg/*.txt
%exclude %{_datadir}/doc/dpkg/README*
%dir %{_sysconfdir}/dpkg
%config(noreplace) %{_sysconfdir}/dpkg/*
%{_bindir}/*

3
dpkg_1.21.22.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5a1d15481bba79d7a4899fd55b4b6b18a987ca8d56ee8c43e9cab63b8a0a3545
size 5419900

BIN
dpkg_1.21.8.tar.xz (Stored with Git LFS)

Binary file not shown.

97
openssl.patch Normal file
View File

@ -0,0 +1,97 @@
Index: dpkg-1.21.22/configure.ac
===================================================================
--- dpkg-1.21.22.orig/configure.ac
+++ dpkg-1.21.22/configure.ac
@@ -94,6 +94,13 @@ AC_SYS_LARGEFILE
# Checks for libraries.
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
@@ -286,6 +293,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.21.22/lib/dpkg/Makefile.am
===================================================================
--- dpkg-1.21.22.orig/lib/dpkg/Makefile.am
+++ dpkg-1.21.22/lib/dpkg/Makefile.am
@@ -36,7 +36,7 @@ libdpkg_la_LDFLAGS += \
-Wl,--version-script=$(srcdir)/libdpkg.map \
# EOL
endif
-libdpkg_la_LDFLAGS += $(MD_LIBS)
+libdpkg_la_LDFLAGS += $(MD_LIBS) $(OPENSSL_LIBS)
libdpkg_la_LIBADD = \
../compat/libcompat.la \
# EOL
Index: dpkg-1.21.22/lib/dpkg/buffer.c
===================================================================
--- dpkg-1.21.22.orig/lib/dpkg/buffer.c
+++ dpkg-1.21.22/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.21.22/m4/dpkg-libs.m4
===================================================================
--- dpkg-1.21.22.orig/m4/dpkg-libs.m4
+++ dpkg-1.21.22/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.

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Thu Jul 20 11:25:20 UTC 2023 - Adam Majer <adam.majer@suse.de>
- openssl.patch: use openssl library for MD5 calculation instead
of relying on libmd. libmd is not in Ring0
- require Perl 5.28.1 or later
-------------------------------------------------------------------
Thu May 4 14:28:36 UTC 2023 - Frederic Crozat <fcrozat@suse.com>

View File

@ -17,7 +17,7 @@
Name: update-alternatives
Version: 1.21.8
Version: 1.21.22
Release: 0
Summary: Maintain symbolic links determining default commands
License: GPL-2.0-or-later
@ -27,10 +27,13 @@ Source0: https://ftp.debian.org/debian/pool/main/d/dpkg/dpkg_%{version}.t
Source3: sensible-editor
Patch0: update-alternatives-suse.patch
Patch1: update-alternatives-slavetomaster.patch
Patch2: openssl.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: perl >= 5.28.1
BuildRequires: pkgconfig
Provides: alternatives = %{version}