search for: read_catalogue

Displaying 4 results from an estimated 4 matches for "read_catalogue".

2017 Apr 17
0
Patch: Fix isohybrid.c tool under Windows platforms
...r (value 10 = 0x0a). So for example the block address bytes 0d 0a 00 00 (= 2573 decimal) of the BIOS boot image in the default entry of the boot catalog would be crippled during fread() in http://git.zytor.com/syslinux/syslinux.git/tree/utils/isohybrid.c#n997 and then misinterpreted in function read_catalogue() when variable de_lba gets set: http://git.zytor.com/syslinux/syslinux.git/tree/utils/isohybrid.c#n519 de_lba is the value which gets written to byte 432 ff. in the isohybrid MBR. During boot the MBR would hopefully see a wrong signature and refuse with "isolinux.bin missing or corrupt.\...
2017 Apr 17
2
Patch: Fix isohybrid.c tool under Windows platforms
> Hi, > > Colin Finck wrote: > > Precisely, if isohybrid currently finds a 0x0A (LF) byte in the MBR code > > (which exists in the strings), it adds a 0x0D (CR) before, thereby > > shifting the MBR bytes to the right and making it invalid. > > This can be fixed by opening the file in binary mode with the "b" flag. > > This is a very reasonable
2016 Dec 21
2
syslinux mkisofs hard-disk-boot isohybrid
> Hi, > > Pascal wrote: > > mkisofs -o core.iso -b boot/core.img -c boot/boot.cat -hard-disk-boot core/ > > my iso image is ok with qemu on bios and uefi, > > Astounding. As CD-ROM this is not supposed to work with UEFI unless the > firmware emulates BIOS. What particular UEFI firmware did you use ? > > > and with qemu as hard disk on uefi but not on
2011 Aug 05
3
isolinux: Generate GPT and Mac bootable images
...; 0x00FF000000000000) >> 40 + | (s & 0x0000000000FF0000) << 24 | (s & 0x0000FF0000000000) >> 24 + | (s & 0x00000000FF000000) << 8 | (s & 0x000000FF00000000) >> 8; + + return r; +} + int check_banner(const uint8_t *buf) @@ -314,6 +514,43 @@ read_catalogue(const uint8_t *buf) } +int +read_efi_section(const uint8_t *buf) +{ + unsigned char header_indicator; + unsigned char platform_id; + short count; + + memcpy(&header_indicator, buf++, 1); + memcpy(&platform_id, buf++, 1); + + memcpy(&count, buf, 2); + count = lendian_short(count); +...