|
|
|
@ -1584,6 +1584,8 @@ static int Xorriso_scan_report_lines(struct XorrisO *xorriso,
|
|
|
|
|
uint32_t img_blocks= 0;
|
|
|
|
|
struct FindjoB *job= NULL;
|
|
|
|
|
struct stat dir_stbuf;
|
|
|
|
|
IsoImage *image;
|
|
|
|
|
char *volid, *crt, *mdt, *ext, *eft, uuid[17];
|
|
|
|
|
|
|
|
|
|
struct mbr_par {
|
|
|
|
|
uint8_t ptype;
|
|
|
|
@ -1686,6 +1688,29 @@ static int Xorriso_scan_report_lines(struct XorrisO *xorriso,
|
|
|
|
|
ptable_killer= (mbr_count > 0) | ((gpt_count > 0) << 1) |
|
|
|
|
|
((apm_count > 0) << 2);
|
|
|
|
|
|
|
|
|
|
/* Report volume id and GRUB2 modification date */;
|
|
|
|
|
ret= Xorriso_get_volume(xorriso, &image, 0);
|
|
|
|
|
if(ret <= 0)
|
|
|
|
|
goto ex;
|
|
|
|
|
if(mkisofs)
|
|
|
|
|
sprintf(buf, "-V ");
|
|
|
|
|
else
|
|
|
|
|
sprintf(buf, "-volid ");
|
|
|
|
|
volid= (char *) un0(iso_image_get_volume_id(image));
|
|
|
|
|
Text_shellsafe(volid, buf, 1);
|
|
|
|
|
Xorriso_record_cmd_linE
|
|
|
|
|
ret= iso_image_get_pvd_times(image, &crt, &mdt, &ext, &eft);
|
|
|
|
|
if(ret == ISO_SUCCESS) {
|
|
|
|
|
if(mkisofs)
|
|
|
|
|
sprintf(buf, "--modification-date=");
|
|
|
|
|
else
|
|
|
|
|
sprintf(buf, "-volume_date uuid ");
|
|
|
|
|
strncpy(uuid, crt, 16);
|
|
|
|
|
uuid[16]= 0;
|
|
|
|
|
Text_shellsafe(uuid, buf, 1);
|
|
|
|
|
}
|
|
|
|
|
Xorriso_record_cmd_linE
|
|
|
|
|
|
|
|
|
|
/* First pass: set up objects, record El Torito and info needed in 2nd pass */
|
|
|
|
|
for(i= 0; i < line_count; i++) {
|
|
|
|
|
buf[0]= 0;
|
|
|
|
|