diff --git a/syslinux-3.36.patch b/syslinux-3.36.patch new file mode 100644 index 0000000..e135324 --- /dev/null +++ b/syslinux-3.36.patch @@ -0,0 +1,37 @@ +From: H. Peter Anvin +Date: Mon, 19 Feb 2007 23:54:58 +0000 (-0800) +Subject: Comboot function READ DISK corrupts its arguments; fix. +X-Git-Tag: syslinux-3.40-pre10^0~13^2 +X-Git-Url: http://www.jur-linux.org/git/?p=syslinux.git;a=commitdiff_plain;h=c7c51cdcd0a094c2588f8a816542bc57bb4efb34 + +Comboot function READ DISK corrupts its arguments; fix. +--- + +diff --git a/comboot.doc b/comboot.doc +index 8aaa0e7..0d70b48 100644 +--- a/comboot.doc ++++ b/comboot.doc +@@ -723,7 +723,7 @@ AX=0018h [3.30] Query custom font + been loaded, AL contains zero. + + +-AX=0019h [3.35] Read disk [SYSLINUX, ISOLINUX, EXTLINUX] ++AX=0019h [3.xx] Read disk [SYSLINUX, ISOLINUX, EXTLINUX] + Input: AX 0019h + EDX Sector number + ESI Reserved - MUST BE ZERO +diff --git a/comboot.inc b/comboot.inc +index 0f544c2..5df900f 100644 +--- a/comboot.inc ++++ b/comboot.inc +@@ -780,9 +780,9 @@ comapi_readdisk: + or esi,P_EDI ; are reserved for future expansion + jnz .err + mov eax,P_EDX +- mov bp,P_CX + mov es,P_ES + mov bx,P_BX ++ mov bp,P_CX ; WE CANNOT use P_* after touching bp! + call getlinsec + clc + ret diff --git a/syslinux.spec b/syslinux.spec index d42db00..e3d039f 100644 --- a/syslinux.spec +++ b/syslinux.spec @@ -2,12 +2,13 @@ Summary: Simple kernel loader which boots from a FAT filesystem Name: syslinux Version: 3.36 %define tarball_version 3.36 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: Applications/System Source0: ftp://ftp.kernel.org/pub/linux/utils/boot/syslinux/%{name}-%{tarball_version}.tar.bz2 Patch0: syslinux-2.08-x86_64.patch Patch2: syslinux-3.31-time.patch +Patch3: syslinux-3.36.patch ExclusiveArch: i386 x86_64 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: nasm >= 0.98.38-1, perl, netpbm-progs @@ -36,6 +37,7 @@ MEMDISK, which loads legacy operating systems from these media. %setup -q -n syslinux-%{tarball_version} %patch0 -p1 -b .x86_64 %patch2 -p1 -b .time +%patch3 -p1 %build CFLAGS="-Werror -Wno-unused -finline-limit=2000"