syslinux: fix isohybird overflows on 32 bit system

When call isohybrid with option '-u', it overflows on a 32 bits host. It
seeks to 512 bytes before the end of the image to install gpt header. If
the size of image is larger than LONG_MAX, it overflows fseek() and
cause error:

isohybrid: wrlinux-image-x86-64-20140505110100.iso: seek error - 8: Invalid argument

Replace fseek with fseeko to fix this issue.

(From OE-Core rev: 41bd9dbf6f3e0add6a9e2cb20cfcbff44d785ea4)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Kai Kang
2014-06-20 14:06:30 +08:00
committed by Richard Purdie
parent cc480eafe5
commit 3c7b5ec1ca
2 changed files with 43 additions and 1 deletions

View File

@@ -13,7 +13,9 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/boot/syslinux/6.xx/syslinux-${PV}.tar
file://0002-memscan-build-a-linked-list-of-memory-scanners.patch \
file://0003-PXELINUX-Add-bios-memscan-function.patch \
file://0004-pxe-use-bios_fbm-and-real_base_mem-to-calculate-free.patch \
file://syslinux-fix-parallel-building-issue.patch"
file://syslinux-fix-parallel-building-issue.patch \
file://isohybrid-fix-overflow-on-32-bit-system.patch \
"
SRC_URI[md5sum] = "6945ee89e29119d459baed4937bbc534"
SRC_URI[sha256sum] = "83a04cf81e6a46b80ee5a321926eea095af3498b04317e3674b46c125c7a5b43"