diff options
Diffstat (limited to 'media-sound/milkytracker/files')
5 files changed, 0 insertions, 335 deletions
diff --git a/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2019-14464.patch b/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2019-14464.patch deleted file mode 100644 index d59522d6d1d0..000000000000 --- a/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2019-14464.patch +++ /dev/null @@ -1,26 +0,0 @@ -This patch is from upstream: -https://github.com/milkytracker/MilkyTracker/commit/fd607a3439fcdd0992e5efded3c16fc79c804e34 - -commit fd607a3439fcdd0992e5efded3c16fc79c804e34 -Author: Christopher O'Neill <code@chrisoneill.co.uk> -Date: Tue Jul 30 19:11:58 2019 +0100 - - Fix #184: Heap overflow in S3M loader - -diff --git a/src/milkyplay/LoaderS3M.cpp b/src/milkyplay/LoaderS3M.cpp -index 5abf211..edf0fd5 100644 ---- a/src/milkyplay/LoaderS3M.cpp -+++ b/src/milkyplay/LoaderS3M.cpp -@@ -340,7 +340,11 @@ mp_sint32 LoaderS3M::load(XMFileBase& f, XModule* module) - return MP_OUT_OF_MEMORY; - - header->insnum = f.readWord(); // number of instruments -- header->patnum = f.readWord(); // number of patterns -+ if (header->insnum > MP_MAXINS) -+ return MP_LOADER_FAILED; -+ header->patnum = f.readWord(); // number of patterns -+ if (header->patnum > 256) -+ return MP_LOADER_FAILED; - - mp_sint32 flags = f.readWord(); // st3 flags - diff --git a/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2019-1449x.patch b/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2019-1449x.patch deleted file mode 100644 index 0560cd2b825b..000000000000 --- a/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2019-1449x.patch +++ /dev/null @@ -1,104 +0,0 @@ -This patch is from upstream: -https://github.com/milkytracker/MilkyTracker/commit/ea7772a3fae0a9dd0a322e8fec441d15843703b7 - -commit ea7772a3fae0a9dd0a322e8fec441d15843703b7 -Author: Christopher O'Neill <code@chrisoneill.co.uk> -Date: Tue Jul 30 18:40:03 2019 +0100 - - Fixes for buffer overflow issues #182 & #183 - -diff --git a/src/milkyplay/LoaderXM.cpp b/src/milkyplay/LoaderXM.cpp -index 108d915..f87f5c1 100644 ---- a/src/milkyplay/LoaderXM.cpp -+++ b/src/milkyplay/LoaderXM.cpp -@@ -63,8 +63,8 @@ const char* LoaderXM::identifyModule(const mp_ubyte* buffer) - mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - { - mp_ubyte insData[230]; -- mp_sint32 smpReloc[96]; -- mp_ubyte nbu[96]; -+ mp_sint32 smpReloc[MP_MAXINSSAMPS]; -+ mp_ubyte nbu[MP_MAXINSSAMPS]; - mp_uint32 fileSize = 0; - - module->cleanUp(); -@@ -117,6 +117,8 @@ mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - memcpy(header->ord, hdrBuff+16, 256); - if(header->ordnum > MP_MAXORDERS) - header->ordnum = MP_MAXORDERS; -+ if(header->insnum > MP_MAXINS) -+ return MP_LOADER_FAILED; - - delete[] hdrBuff; - -@@ -143,7 +145,7 @@ mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - f.read(&instr[y].type,1,1); - mp_uword numSamples = 0; - f.readWords(&numSamples,1); -- if(numSamples > 96) -+ if(numSamples > MP_MAXINSSAMPS) - return MP_LOADER_FAILED; - instr[y].samp = numSamples; - -@@ -169,8 +171,8 @@ mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - if (instr[y].samp) { - mp_ubyte* insDataPtr = insData; - -- memcpy(nbu, insDataPtr, 96); -- insDataPtr+=96; -+ memcpy(nbu, insDataPtr, MP_MAXINSSAMPS); -+ insDataPtr+=MP_MAXINSSAMPS; - - TEnvelope venv; - TEnvelope penv; -@@ -285,7 +287,7 @@ mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - - instr[y].samp = g; - -- for (sc = 0; sc < 96; sc++) { -+ for (sc = 0; sc < MP_MAXINSSAMPS; sc++) { - if (smpReloc[nbu[sc]] == -1) - instr[y].snum[sc] = -1; - else -@@ -491,6 +493,8 @@ mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - f.read(&instr[y].type,1,1); - f.readWords(&instr[y].samp,1); - } -+ if (instr[y].samp > MP_MAXINSSAMPS) -+ return MP_LOADER_FAILED; - - //printf("%i, %i\n", instr[y].size, instr[y].samp); - -@@ -532,8 +536,8 @@ mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - - //f.read(&nbu,1,96); - -- memcpy(nbu, insDataPtr, 96); -- insDataPtr+=96; -+ memcpy(nbu, insDataPtr, MP_MAXINSSAMPS); -+ insDataPtr+=MP_MAXINSSAMPS; - - TEnvelope venv; - TEnvelope penv; -@@ -650,7 +654,7 @@ mp_sint32 LoaderXM::load(XMFileBase& f, XModule* module) - - instr[y].samp = g; - -- for (sc = 0; sc < 96; sc++) { -+ for (sc = 0; sc < MP_MAXINSSAMPS; sc++) { - if (smpReloc[nbu[sc]] == -1) - instr[y].snum[sc] = -1; - else -diff --git a/src/milkyplay/XModule.h b/src/milkyplay/XModule.h -index f42d04b..4f04a2d 100644 ---- a/src/milkyplay/XModule.h -+++ b/src/milkyplay/XModule.h -@@ -40,6 +40,8 @@ - - #define MP_MAXTEXT 32 - #define MP_MAXORDERS 256 -+#define MP_MAXINS 255 -+#define MP_MAXINSSAMPS 96 - - struct TXMHeader - { diff --git a/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2020-15569.patch b/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2020-15569.patch deleted file mode 100644 index 59c2f9942ae6..000000000000 --- a/media-sound/milkytracker/files/milkytracker-1.02.00-CVE-2020-15569.patch +++ /dev/null @@ -1,35 +0,0 @@ -Fix is from upstream: -https://github.com/milkytracker/MilkyTracker/commit/7afd55c42ad80d01a339197a2d8b5461d214edaf - -Gentoo Bug: https://bugs.gentoo.org/711280 - -commit 7afd55c42ad80d01a339197a2d8b5461d214edaf -Author: Jeremy Clarke <geckojsc@gmail.com> -Date: Mon Apr 13 23:53:51 2020 +0100 - - Fix use-after-free in PlayerGeneric destructor - -diff --git a/src/milkyplay/PlayerGeneric.cpp b/src/milkyplay/PlayerGeneric.cpp -index 8df2c13..59f7cba 100644 ---- a/src/milkyplay/PlayerGeneric.cpp -+++ b/src/milkyplay/PlayerGeneric.cpp -@@ -202,15 +202,16 @@ PlayerGeneric::PlayerGeneric(mp_sint32 frequency, AudioDriverInterface* audioDri - - PlayerGeneric::~PlayerGeneric() - { -- if (mixer) -- delete mixer; - - if (player) - { -- if (mixer->isActive() && !mixer->isDeviceRemoved(player)) -+ if (mixer && mixer->isActive() && !mixer->isDeviceRemoved(player)) - mixer->removeDevice(player); - delete player; - } -+ -+ if (mixer) -+ delete mixer; - - delete[] audioDriverName; - diff --git a/media-sound/milkytracker/files/milkytracker-1.02.00-clang.patch b/media-sound/milkytracker/files/milkytracker-1.02.00-clang.patch deleted file mode 100644 index 48e6dc39cb5a..000000000000 --- a/media-sound/milkytracker/files/milkytracker-1.02.00-clang.patch +++ /dev/null @@ -1,85 +0,0 @@ -diff --git a/src/tracker/EQConstants.cpp b/src/tracker/EQConstants.cpp -index ffbf6ea..fa6fdce 100644 ---- a/src/tracker/EQConstants.cpp -+++ b/src/tracker/EQConstants.cpp -@@ -27,9 +27,9 @@ - - const float EQConstants::EQ3bands[3] = - { -- p(5), // 32 Hz -- p(9), // 522 Hz -- p(12), // 4181.5 Hz -+ (float) p(5), // 32 Hz -+ (float) p(9), // 522 Hz -+ (float) p(12), // 4181.5 Hz - }; - - const float EQConstants::EQ3bandwidths[3] = -@@ -41,28 +41,28 @@ const float EQConstants::EQ3bandwidths[3] = - - const float EQConstants::EQ10bands[10] = - { -- p(3), // 8 Hz -- p(4), // 16 Hz -- p(5), // 32 Hz -- p(6), // 65 Hz -- p(7), // 130 Hz -- p(8), // 261 Hz -- p(9), // 522 Hz -- p(10), // 1 kHz -- p(11), // 2 kHz -- p(12), // 4181.5 Hz -+ (float) p(3), // 8 Hz -+ (float) p(4), // 16 Hz -+ (float) p(5), // 32 Hz -+ (float) p(6), // 65 Hz -+ (float) p(7), // 130 Hz -+ (float) p(8), // 261 Hz -+ (float) p(9), // 522 Hz -+ (float) p(10), // 1 kHz -+ (float) p(11), // 2 kHz -+ (float) p(12), // 4181.5 Hz - }; - - const float EQConstants::EQ10bandwidths[10] = - { - 16, -- p(3)*1.5f, -- p(4)*1.5f, -- p(5)*1.5f, -- p(6)*1.5f, -- p(7)*1.5f, -- p(8)*1.0f, -- p(9)*1.0f, -+ (float) p(3)*1.5f, -+ (float) p(4)*1.5f, -+ (float) p(5)*1.5f, -+ (float) p(6)*1.5f, -+ (float) p(7)*1.5f, -+ (float) p(8)*1.0f, -+ (float) p(9)*1.0f, - 600.0f, - 800.0f - }; -diff --git a/src/tracker/sdl/SDL_Main.cpp b/src/tracker/sdl/SDL_Main.cpp -index 420b4d9..d404f08 100644 ---- a/src/tracker/sdl/SDL_Main.cpp -+++ b/src/tracker/sdl/SDL_Main.cpp -@@ -609,7 +609,7 @@ void translateKeyDownEvent(const SDL_Event& event) - printf ("DEBUG: Key pressed: VK: %d, SC: %d, Scancode: %d\n", toVK(keysym), toSC(keysym), keysym.sym); - #endif - -- pp_uint16 chr[3] = {toVK(keysym), toSC(keysym), keysym.sym}; -+ pp_uint16 chr[3] = {(pp_uint16) toVK(keysym), (pp_uint16) toSC(keysym), (pp_uint16) keysym.sym}; - - PPEvent myEvent(eKeyDown, &chr, sizeof(chr)); - RaiseEventSerialized(&myEvent); -@@ -621,7 +621,7 @@ void translateKeyUpEvent(const SDL_Event& event) - - preTranslateKey(keysym); - -- pp_uint16 chr[3] = {toVK(keysym), toSC(keysym), keysym.sym}; -+ pp_uint16 chr[3] = {(pp_uint16) toVK(keysym), (pp_uint16) toSC(keysym), (pp_uint16) keysym.sym}; - - PPEvent myEvent(eKeyUp, &chr, sizeof(chr)); - RaiseEventSerialized(&myEvent); diff --git a/media-sound/milkytracker/files/milkytracker-1.02.00-fix-hard-dependency-on-rtmidi.patch b/media-sound/milkytracker/files/milkytracker-1.02.00-fix-hard-dependency-on-rtmidi.patch deleted file mode 100644 index 090e433b5fdc..000000000000 --- a/media-sound/milkytracker/files/milkytracker-1.02.00-fix-hard-dependency-on-rtmidi.patch +++ /dev/null @@ -1,85 +0,0 @@ -From f85f5336df72dc44e407ae756ed20a8f8422cb76 Mon Sep 17 00:00:00 2001 -From: Dale Whinham <daleyo@gmail.com> -Date: Sat, 11 Apr 2020 16:51:31 +0100 -Subject: [PATCH] Fix hard dependency on RtMidi - -It is perfectly reasonable for libasound to be installed, but not -librtmidi, and so we should only enable the MIDI code if both are -present. - -Fixes #207. ---- - src/tracker/CMakeLists.txt | 1 + - src/tracker/sdl/SDL_Main.cpp | 12 ++++++------ - 2 files changed, 7 insertions(+), 6 deletions(-) - -diff --git a/src/tracker/CMakeLists.txt b/src/tracker/CMakeLists.txt -index 0a935330..f4243a0f 100644 ---- a/src/tracker/CMakeLists.txt -+++ b/src/tracker/CMakeLists.txt -@@ -348,6 +348,7 @@ elseif(WIN32) - target_link_libraries(tracker midi) - else() - if(ALSA_FOUND AND RTMIDI_FOUND) -+ target_compile_definitions(tracker PRIVATE -DHAVE_LIBRTMIDI) - target_link_libraries(tracker midi) - endif() - endif() -diff --git a/src/tracker/sdl/SDL_Main.cpp b/src/tracker/sdl/SDL_Main.cpp -index 1a49fc12..75ffa1df 100644 ---- a/src/tracker/sdl/SDL_Main.cpp -+++ b/src/tracker/sdl/SDL_Main.cpp -@@ -78,7 +78,7 @@ - #include "PPSystem_POSIX.h" - #include "PPPath_POSIX.h" - --#ifdef HAVE_LIBASOUND -+#ifdef HAVE_LIBRTMIDI - #include "../midi/posix/MidiReceiver_pthread.h" - #endif - // -------------------------------------------------------------------------- -@@ -89,7 +89,7 @@ static SDL_TimerID timer; - static PPScreen* myTrackerScreen = NULL; - static Tracker* myTracker = NULL; - static PPDisplayDevice* myDisplayDevice = NULL; --#ifdef HAVE_LIBASOUND -+#ifdef HAVE_LIBRTMIDI - static MidiReceiver* myMidiReceiver = NULL; - #endif - -@@ -223,7 +223,7 @@ static Uint32 SDLCALL timerCallback(Uint32 interval, void* param) - return interval; - } - --#ifdef HAVE_LIBASOUND -+#ifdef HAVE_LIBRTMIDI - class MidiEventHandler : public MidiReceiver::MidiEventHandler - { - public: -@@ -829,7 +829,7 @@ myDisplayDevice = new PPDisplayDeviceFB(windowSize.width, windowSize.height, sca - // Startup procedure - myTracker->startUp(noSplash); - --#ifdef HAVE_LIBASOUND -+#ifdef HAVE_LIBRTMIDI - InitMidi(); - #endif - -@@ -962,7 +962,7 @@ int main(int argc, char *argv[]) - initTracker(defaultBPP, orientation, swapRedBlue, noSplash); - globalMutex->unlock(); - --#ifdef HAVE_LIBASOUND -+#ifdef HAVE_LIBRTMIDI - if (myMidiReceiver && recVelocity) - { - myMidiReceiver->setRecordVelocity(true); -@@ -1036,7 +1036,7 @@ int main(int argc, char *argv[]) - SDL_RemoveTimer(timer); - - globalMutex->lock(); --#ifdef HAVE_LIBASOUND -+#ifdef HAVE_LIBRTMIDI - delete myMidiReceiver; - #endif - delete myTracker; |