Patch for CVE-2024-24258 and CVE-2024-24259
This commit is contained in:
parent
1e87231d11
commit
e9097f2b3a
49
155.patch
Normal file
49
155.patch
Normal file
@ -0,0 +1,49 @@
|
||||
From a3810f4e9540286e2d4b8cc97c82ec484de45b9e Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Rasmussen <sebras@gmail.com>
|
||||
Date: Mon, 12 Feb 2024 14:46:22 +0800
|
||||
Subject: [PATCH] Plug memory leak that happens upon error.
|
||||
|
||||
If fgStructure.CurrentMenu is set when glutAddMenuEntry() or
|
||||
glutAddSubMenu() is called the allocated menuEntry variable will
|
||||
leak. This commit postpones allocating menuEntry until after the
|
||||
error checks, thereby plugging the memory leak.
|
||||
|
||||
This fixes CVE-2024-24258 and CVE-2024-24259.
|
||||
---
|
||||
src/fg_menu.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/fg_menu.c b/src/fg_menu.c
|
||||
index 53112dc21..0da88901d 100644
|
||||
--- a/src/fg_menu.c
|
||||
+++ b/src/fg_menu.c
|
||||
@@ -864,12 +864,12 @@ void FGAPIENTRY glutAddMenuEntry( const char* label, int value )
|
||||
{
|
||||
SFG_MenuEntry* menuEntry;
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutAddMenuEntry" );
|
||||
- menuEntry = (SFG_MenuEntry *)calloc( sizeof(SFG_MenuEntry), 1 );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
if (fgState.ActiveMenus)
|
||||
fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
+ menuEntry = (SFG_MenuEntry *)calloc( sizeof(SFG_MenuEntry), 1 );
|
||||
menuEntry->Text = strdup( label );
|
||||
menuEntry->ID = value;
|
||||
|
||||
@@ -888,7 +888,6 @@ void FGAPIENTRY glutAddSubMenu( const char *label, int subMenuID )
|
||||
SFG_Menu *subMenu;
|
||||
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutAddSubMenu" );
|
||||
- menuEntry = ( SFG_MenuEntry * )calloc( sizeof( SFG_MenuEntry ), 1 );
|
||||
subMenu = fgMenuByID( subMenuID );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
@@ -897,6 +896,7 @@ void FGAPIENTRY glutAddSubMenu( const char *label, int subMenuID )
|
||||
|
||||
freeglut_return_if_fail( subMenu );
|
||||
|
||||
+ menuEntry = ( SFG_MenuEntry * )calloc( sizeof( SFG_MenuEntry ), 1 );
|
||||
menuEntry->Text = strdup( label );
|
||||
menuEntry->SubMenu = subMenu;
|
||||
menuEntry->ID = -1;
|
@ -2,12 +2,14 @@
|
||||
Summary: A freely licensed alternative to the GLUT library
|
||||
Name: freeglut
|
||||
Version: 3.4.0
|
||||
Release: 6%{?dist}
|
||||
Release: 7%{?dist}
|
||||
URL: http://freeglut.sourceforge.net
|
||||
Source0: https://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
|
||||
# For the manpages
|
||||
Source1: https://downloads.sourceforge.net/openglut/openglut-0.6.3-doc.tar.gz
|
||||
Patch0: common.patch
|
||||
# Patch for CVE-2024-24258 and CVE-2024-24259
|
||||
Patch1: 155.patch
|
||||
License: MIT
|
||||
|
||||
BuildRequires: gcc
|
||||
@ -52,7 +54,8 @@ license.
|
||||
|
||||
%prep
|
||||
%setup -q -a 1
|
||||
%patch0 -p0
|
||||
%patch -P 0 -p0
|
||||
%patch -P 1 -p1
|
||||
|
||||
%build
|
||||
%{cmake} -DFREEGLUT_BUILD_STATIC_LIBS=OFF .
|
||||
@ -84,6 +87,9 @@ install -p -m 644 doc/man/*.3 $RPM_BUILD_ROOT/%{_mandir}/man3
|
||||
%{_libdir}/cmake/FreeGLUT/*
|
||||
|
||||
%changelog
|
||||
* Mon Feb 12 2024 Gwyn Ciesla <gwync@protonmail.com> - 3.4.0-7
|
||||
- Patch for CVE-2024-24258 and CVE-2024-24259
|
||||
|
||||
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user