Compare commits

..

No commits in common. "rawhide" and "f28" have entirely different histories.

5 changed files with 100 additions and 95 deletions

7
.gitignore vendored
View file

@ -1,3 +1,4 @@
/adplug-*.tar.gz adplug-2.1.tar.bz2
/adplug-*.tar.bz2 adplugdb-2006-07-07.tar.gz
/adplugdb-*.tar.gz /adplug-2.2.1.tar.gz
/adplug-2.2.1.tar.bz2

View file

@ -0,0 +1,24 @@
diff -ur adplug-2.2.1-orig/src/s3m.cpp adplug-2.2.1/src/s3m.cpp
--- adplug-2.2.1-orig/src/s3m.cpp 2016-06-12 17:19:33.369934280 +0200
+++ adplug-2.2.1/src/s3m.cpp 2016-06-12 17:32:36.190932642 +0200
@@ -25,7 +25,7 @@
#include <cstring>
#include "s3m.h"
-const char Cs3mPlayer::chnresolv[] = // S3M -> adlib channel conversion
+const signed char Cs3mPlayer::chnresolv[] = // S3M -> adlib channel conversion
{-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1};
const unsigned short Cs3mPlayer::notetable[12] = // S3M adlib note table
diff -ur adplug-2.2.1-orig/src/s3m.h adplug-2.2.1/src/s3m.h
--- adplug-2.2.1-orig/src/s3m.h 2016-06-12 17:19:33.367934293 +0200
+++ adplug-2.2.1/src/s3m.h 2016-06-12 17:37:14.538154102 +0200
@@ -90,7 +90,7 @@
unsigned char crow,ord,speed,tempo,del,songend,loopstart,loopcnt;
private:
- static const char chnresolv[];
+ static const signed char chnresolv[];
static const unsigned short notetable[12];
static const unsigned char vibratotab[32];

View file

@ -0,0 +1,25 @@
From 19ebb61bf92262dc1868de10ba5a211db249ce76 Mon Sep 17 00:00:00 2001
From: Stas'M <x86corez@gmail.com>
Date: Thu, 4 Oct 2018 00:18:32 +0300
Subject: [PATCH] FMOPL: Avoid double-free by checking OPL pointer (fix #67)
Fixes CVE-2018-17825.
---
src/fmopl.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/fmopl.c b/src/fmopl.c
index 0cd1d69..1c4485e 100644
--- a/src/fmopl.c
+++ b/src/fmopl.c
@@ -1269,6 +1269,10 @@ FM_OPL *OPLCreate(int type, int clock, int rate)
/* ---------- Destroy one of vietual YM3812 ---------- */
void OPLDestroy(FM_OPL *OPL)
{
+ if(!OPL)
+ {
+ return;
+ }
#ifdef OPL_OUTPUT_LOG
if(opl_dbg_fp)
{

View file

@ -2,19 +2,24 @@
# RPM repository. # RPM repository.
%define adplugdbver 2006-07-07 %define adplugdbver 2006-07-07
Name: adplug Name: adplug
Version: 2.3.3 Version: 2.2.1
Release: 14%{?dist} Release: 7%{?dist}
Summary: Software library for AdLib (OPL2/3) emulation Summary: A software library for AdLib (OPL2) emulation
URL: https://adplug.github.io/ URL: http://adplug.github.io/
Source0: https://github.com/adplug/adplug/releases/download/%{name}-%{version}/%{name}-%{version}.tar.bz2 Group: Applications/Multimedia
Source1: https://download.sourceforge.net/%{name}/adplugdb-%{adplugdbver}.tar.gz Source0: http://download.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2
License: LGPL-2.1-or-later AND GFDL-1.1-or-later Source1: http://download.sourceforge.net/%{name}/adplugdb-%{adplugdbver}.tar.gz
Patch0: adplug-2.2.1-signed-char.patch
Patch1: adplug-2.3.1-cve-2018-17825.patch
License: LGPLv2+
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: make BuildRequires: libbinio-devel >= 1.4
BuildRequires: libbinio-devel >= 1.4 BuildRequires: pkgconfig
BuildRequires: pkgconfig BuildRequires: texinfo
BuildRequires: texinfo BuildRequires: libtool
BuildRequires: autoconf
BuildRequires: automake
# This is to resolve the endless disputes of the shared data for this # This is to resolve the endless disputes of the shared data for this
# package. Whenever _sharedstatedir contains something acceptable to # package. Whenever _sharedstatedir contains something acceptable to
# Fedora that can be used instead. # Fedora that can be used instead.
@ -22,38 +27,51 @@ BuildRequires: texinfo
%description %description
AdPlug is a free software, cross-platform, hardware independent AdLib AdPlug is a free software, cross-platform, hardware independent AdLib
sound player library, mainly written in C++. AdPlug plays sound data, sound player library, mainly written in C++ and released under the
originally created for the AdLib (OPL2/3) audio board, directly from LGPL. AdPlug plays sound data, originally created for the AdLib (OPL2)
its original format on top of an OPL2/3 emulator or by using the real audio board, directly from its original format on top of an OPL2
hardware. No OPL2/3 chips are required for playback. emulator or by using the real hardware. No OPL chip is required for
playback. It supports various audio formats from MS-DOS AdLib trackers.
%package devel %package devel
Summary: Development files for AdPlug Summary: Development files for AdPlug
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: libbinio-devel Requires: libbinio-devel
%description devel %description devel
This package contains development files for the AdPlug AdLib (OPL2/3) This package contains development files for the AdPlug AdLib
emulator. (OPL2) emulator.
%prep %prep
%setup -q %setup -q
%patch0 -p1
%patch1 -p1
tar xvfz %{SOURCE1} tar xvfz %{SOURCE1}
# Include these by different name # Include these by different name
mv %{adplugdbver}/README README.adplugdb mv %{adplugdbver}/README README.adplugdb
mv %{adplugdbver}/NEWS NEWS.adplugdb mv %{adplugdbver}/NEWS NEWS.adplugdb
%build %build
%configure --disable-static --sharedstatedir=%{shareddata} rm -f ltmain.sh config.guess config.sub
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool libtoolize --copy --force || fail
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool rm -f aclocal.m4
%make_build aclocal $ACLOCAL_FLAGS || fail
rm -f depcomp install-sh missing
touch config.rpath
automake --add-missing --gnu || fail
rm -f configure
autoconf
%configure --disable-static --sharedstatedir=%{shareddata} --disable-rpath
make %{?_smp_mflags}
%install %install
%make_install rm -rf $RPM_BUILD_ROOT
make DESTDIR=$RPM_BUILD_ROOT install
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -f $RPM_BUILD_ROOT%{_infodir}/dir rm -f $RPM_BUILD_ROOT%{_infodir}/dir
install -D -p -m 644 %{adplugdbver}/adplug.db $RPM_BUILD_ROOT%{shareddata}/%{name}/adplug.db mkdir -p $RPM_BUILD_ROOT%{shareddata}/%{name}
install -p -m 644 %{adplugdbver}/adplug.db $RPM_BUILD_ROOT%{shareddata}/%{name}
%ldconfig_scriptlets %ldconfig_scriptlets
@ -63,8 +81,7 @@ install -D -p -m 644 %{adplugdbver}/adplug.db $RPM_BUILD_ROOT%{shareddata}/%{nam
%config(noreplace) %{shareddata}/%{name}/adplug.db %config(noreplace) %{shareddata}/%{name}/adplug.db
%{_bindir}/adplugdb %{_bindir}/adplugdb
%{_mandir}/man1/adplugdb.1* %{_mandir}/man1/adplugdb.1*
%license COPYING %doc AUTHORS BUGS ChangeLog COPYING INSTALL NEWS README TODO
%doc AUTHORS BUGS ChangeLog NEWS README
%doc NEWS.adplugdb README.adplugdb %doc NEWS.adplugdb README.adplugdb
%files devel %files devel
@ -72,71 +89,9 @@ install -D -p -m 644 %{adplugdbver}/adplug.db $RPM_BUILD_ROOT%{shareddata}/%{nam
%{_libdir}/pkgconfig/*.pc %{_libdir}/pkgconfig/*.pc
%dir %{_includedir}/%{name} %dir %{_includedir}/%{name}
%{_includedir}/%{name}/*.h %{_includedir}/%{name}/*.h
%{_infodir}/libadplug.info* %{_infodir}/*.gz
%changelog %changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Aug 28 2024 Miroslav Suchý <msuchy@redhat.com> - 2.3.3-11
- convert license to SPDX
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jan 05 2021 Robert Scheck <robert@fedoraproject.org> - 2.3.3-1
- Upgrade to 2.3.3 (#1743108, #1770224, #1770243, #1770257,
#1778710, #1778716, #1778720)
* Fri Jul 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.1-13
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.1-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.1-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed Apr 24 2019 Björn Esser <besser82@fedoraproject.org> - 2.2.1-9
- Remove hardcoded gzip suffix from GNU info pages
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Dec 15 2018 Robert Scheck <robert@fedoraproject.org> - 2.2.1-7 * Sat Dec 15 2018 Robert Scheck <robert@fedoraproject.org> - 2.2.1-7
- Fix double-free in CEmuopl::~CEmuopl() (#1635881, CVE-2018-17825) - Fix double-free in CEmuopl::~CEmuopl() (#1635881, CVE-2018-17825)

View file

@ -1,2 +1,2 @@
SHA512 (adplug-2.3.3.tar.bz2) = 08647c746df69aa0a3941ee64d3adecd11a46febf51fe1bb9fe16ff01a6fef56321b18618f5ecb66309b8cdac8493a067707759fbdf0e91d556677c6b4c57a44 8f815fd5d254de0fe5df818df9d1d8af adplug-2.2.1.tar.bz2
SHA512 (adplugdb-2006-07-07.tar.gz) = c3391ac83b8433a94f036affd8618f1202499890056b9799854f66806b76a4ededc61b41ea7548bbe50e545fc5c7e33754c4e15bb940d34b7135cc9b5f129501 40a1cc1222c7318172ee3740c4269df3 adplugdb-2006-07-07.tar.gz