diff --git a/libisofs/fs_image.c b/libisofs/fs_image.c index b3b74f7..a2c781b 100644 --- a/libisofs/fs_image.c +++ b/libisofs/fs_image.c @@ -5191,7 +5191,7 @@ int iso_eltorito_report(IsoImage *image, struct iso_impsysa_result *target, } if (bootcat->num_bootimages > 0) { sprintf(msg, -"El Torito images : N Pltf B Emul Ld_seg Hdpt Ldsiz THG LBA"); +"El Torito images : N Pltf B Emul Ld_seg Hdpt Ldsiz LBA"); iso_impsysa_line(target, msg); LIBISO_ALLOC_MEM(lba_mem, uint32_t, bootcat->num_bootimages); } @@ -5216,18 +5216,32 @@ int iso_eltorito_report(IsoImage *image, struct iso_impsysa_result *target, if (sections != NULL) free(sections); sprintf(msg, - "El Torito boot img : %3d %4s %c %5s 0x%4.4x 0x%2.2x %5u %c%c%c %10u", + "El Torito boot img : %3d %4s %c %5s 0x%4.4x 0x%2.2x %5u %10u", i + 1, pltf, img->bootable ? 'y' : 'n', emul_code, (unsigned int) img->load_seg, (unsigned int) img->partition_type, (unsigned int) img->load_size, - img->seems_boot_info_table ? 't' : '-', - img->seems_isohybrid_capable ? 'h' : '-', - img->seems_grub2_boot_info ? 'g' : '-', (unsigned int) lba); iso_impsysa_line(target, msg); } for (i= 0; i < bootcat->num_bootimages; i++) { img = bootcat->bootimages[i]; + sprintf(msg, "El Torito img opts : %3d ", i + 1); + if (img->seems_boot_info_table) + strcat(msg, "boot-info-table "); + if (img->seems_isohybrid_capable) + strcat(msg, "isohybrid-suitable "); + if (img->seems_grub2_boot_info) + strcat(msg, "grub2-boot-info "); + if (strlen(msg) > 27) { + msg[strlen(msg) - 1] = 0; + iso_impsysa_line(target, msg); + } +/* + } + + for (i= 0; i < bootcat->num_bootimages; i++) { + img = bootcat->bootimages[i]; +*/ for (j = 0; j < (int) sizeof(img->id_string); j++) if (img->id_string[j]) break; @@ -5244,8 +5258,10 @@ int iso_eltorito_report(IsoImage *image, struct iso_impsysa_result *target, iso_util_bin_to_hex(msg + strlen(msg), img->selection_crit, 20, 0); } +/* } for (i= 0; i < bootcat->num_bootimages; i++) { +*/ if (lba_mem[i] == 0xffffffff) continue; img = bootcat->bootimages[i]; diff --git a/libisofs/libisofs.h b/libisofs/libisofs.h index 3af31ee..43389f9 100644 --- a/libisofs/libisofs.h +++ b/libisofs/libisofs.h @@ -3943,9 +3943,9 @@ int iso_image_report_system_area(IsoImage *image, "Else there will be at least these three lines", \ " El Torito catalog : decimal decimal", \ " tells the block address and number of 2048-blocks of the boot catalog.", \ -" El Torito images : N Pltf B Emul Ld_seg Hdpt Ldsiz THG LBA", \ +" El Torito images : N Pltf B Emul Ld_seg Hdpt Ldsiz LBA", \ " is the headline of the boot image list.", \ -" El Torito boot img : X word char word hex hex decimal word decimal", \ +" El Torito boot img : X word char word hex hex decimal decimal", \ " tells about boot image number X:", \ " - Platform Id: \"BIOS\", \"PPC\", \"Mac\", \"UEFI\" or a hex number.", \ " - Bootability: either \"y\" or \"n\".", \ @@ -3954,9 +3954,6 @@ int iso_image_report_system_area(IsoImage *image, " - Load Segment: start offset in boot image. 0x0000 means 0x07c0.", \ " - Hard disk emulation partition type: MBR partition type code.", \ " - Load size: number of 512-blocks to load with emulation mode \"none\".", \ -" - THG: word of three characters tells the presence of extra features:", \ -" \"t\"=boot info table, \"h\"=suitable for isohybrid,", \ -" \"g\"=GRUB2 boot info, \"-\"=feature not present", \ " - LBA: start block number in ISO filesystem (2048-block).", \ "", \ "The following lines appear conditionally:", \ @@ -3964,6 +3961,12 @@ int iso_image_report_system_area(IsoImage *image, " tells the path to the data file in the ISO image which belongs to", \ " the block address where the boot catalog starts.", \ " (This line is not reported if no path points to that block.)", \ +" El Torito img opts : X word ... word", \ +" tells the presence of extra features:", \ +" \"boot-info-table\" image got boot info table patching.", \ +" \"isohybrid-suitable\" image is suitable for ISOLINUX isohybrid MBR.", \ +" \"grub2-boot-info\" image got GRUB2 boot info patching.", \ +" (This line is not reported if no such options were detected.)", \ " El Torito id string: X hex_digits", \ " tells the id string of the catalog section which hosts boot image X.", \ " (This line is not reported if the id string is all zero.)", \ @@ -3977,6 +3980,7 @@ int iso_image_report_system_area(IsoImage *image, " El Torito img blks : X decimal", \ " gives an upper limit of the number of blocks in the boot image", \ " if it is not accessible via a path in the ISO directory tree.", \ +" (This line is not reported if a path points to the image start.)", \ "" /**