[syslinux] [PATCH] isohybrid: fix overflow on 32 bit system

Thomas Schmitt scdbackup at gmx.net
Sun May 11 23:38:51 PDT 2014


Hi,

hpa:
> The right thing to do is compile it with #define _FILE_OFFSET_BITS 64
> and change fseek to fseeko with the appropriate type being off_t.

And for GPT names it should really use 16-bit UTF-16LE characters
and not 8-bit characters padded up by the same number of
random bytes from the program memory.
See e.g.:
  http://git.kernel.org/cgit/boot/syslinux/syslinux.git/tree/utils/isohybrid.c#n795
This problem and more are reported in
  http://www.syslinux.org/archives/2012-May/017843.html
  http://www.syslinux.org/archives/2012-May/017871.html

Fedora image (by isohybrid.c):
  GPT partition name :   1  49534f4879627269642049534f0049534f487962726964004170706c
Archlinux (by libisofs):
  GPT partition name :   1  490053004f00480079006200720069006400
  GPT partname local :   1  ISOHybrid
(Lines from the upcomming boot equipment inspector of libisofs. See
  http://libburnia-project.org/wiki/ReportSystemArea
)


To Kai Kang:

I am willing to help with isohybrid.c but do not want to
become its maintainer. I have my own implementation of isohybrid
functionality in libisofs, and deem it better if both stay
code-wise independent.


Have a nice day :)

Thomas



More information about the Syslinux mailing list