New -as mkisofs options -hfsplus-block-size and -apm-block-size

This commit is contained in:
2012-06-27 19:20:52 +00:00
parent a3927053c2
commit 7f7f932c0f
5 changed files with 135 additions and 41 deletions

View File

@ -611,6 +611,7 @@ int Xorriso_genisofs_count_args(struct XorrisO *xorriso, int argc, char **argv,
"-isohybrid-mbr", "-e", "-partition_offset", "-partition_hd_cyl",
"-partition_sec_hd", "-partition_cyl_align", "-untranslated_name_len",
"-rr_reloc_dir", "-hfsplus-serial-no", "-prep-boot-part", "-efi-boot-part",
"-hfsplus-block-size", "-apm-block-size",
""
};
static char arg2_options[][41]= {
@ -730,6 +731,8 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag)
" Bless ISO_RR_PATH by BLESS_TYPE {p,i,s,9,x}",
" -hfsplus-serial-no HEXSTRING",
" HFS serial number: 16 characters [0-9a-fA-F]",
" -hfsplus-block-size NUMBER Set HFS+ block size",
" -apm-block-size NUMBER Set Apple Partition Map block size",
" -hide GLOBFILE Hide ISO9660/RR file",
" -hide-list FILE File with list of ISO9660/RR files to hide",
" -hide-joliet GLOBFILE Hide Joliet file",
@ -1543,6 +1546,21 @@ illegal_c:;
ret= Xorriso_option_boot_image(xorriso, "any", pathspec, 0);
if(ret <= 0)
goto problem_handler_2;
} else if(strcmp(argpt, "-hfsplus-block-size") == 0 ||
strcmp(argpt, "-apm-block-size") == 0) {
if(i+1>=argc)
goto not_enough_args;
i++;
ret= -1;
sscanf(argv[i], "%d", &ret);
if(argpt[1] == 'h')
sprintf(sfe, "hfsplus_block_size=%d", ret);
else
sprintf(sfe, "apm_block_size=%d", ret);
ret= Xorriso_option_boot_image(xorriso, "any", sfe, 0);
if(ret <= 0)
goto problem_handler_2;
} else if(strcmp(argpt, "-graft-points")==0) {
xorriso->allow_graft_points= 1;
} else if(strcmp(argpt, "-path-list")==0 ||