Browse Source

Changed report format of detected El Torito boot image options

release-1.5.4.branch
Thomas Schmitt 7 years ago
parent
commit
0bce145343
  1. 26
      libisofs/fs_image.c
  2. 14
      libisofs/libisofs.h

26
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];

14
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.)", \
""
/**

Loading…
Cancel
Save