New -as mkisofs option --zisofs-version-2

This commit is contained in:
2020-10-14 23:02:59 +02:00
parent dcb13954bd
commit 8286468948
5 changed files with 83 additions and 41 deletions

View File

@ -1,7 +1,7 @@
/* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images.
Copyright 2007-2019 Thomas Schmitt, <scdbackup@gmx.net>
Copyright 2007-2020 Thomas Schmitt, <scdbackup@gmx.net>
Provided under GPL version 2 or later.
@ -636,7 +636,7 @@ int Xorriso_genisofs_count_args(struct XorrisO *xorriso, int argc, char **argv,
"-isohybrid-gpt-basdat", "-isohybrid-gpt-hfsplus",
"-isohybrid-apm-hfsplus", "--grub2-boot-info", "-joliet-utf16",
"-appended_part_as_gpt", "-appended_part_as_apm", "--mbr-force-bootable",
"-part_like_isohybrid",
"-part_like_isohybrid", "--zisofs-version-2",
""
};
static char arg1_options[][41]= {
@ -948,6 +948,7 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag)
" --old-empty Use old style block addresses for empty files",
" -z, -transparent-compression",
" Enable transparent compression of files",
" --zisofs-version-2 Enable processing of zisofs version 2 files",
" -root DIR Set root directory for all new files and directories",
" -old-root DIR Set root directory in previous session that is searched for files",
" --old-root-no-md5 Do not record and use MD5 with -old-root",
@ -1605,6 +1606,10 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
if(ret <= 0)
goto problem_handler_1;
Xorriso_option_zisofs(xorriso, "by_magic=on", 0);
} else if(strcmp(argpt, "--zisofs-version-2") == 0) {
ret= Xorriso_option_zisofs(xorriso, "version_2=as_needed", 0);
if(ret <= 0)
goto problem_handler_1;
} else if(strcmp(argpt, "--stdio_sync")==0) {
if(i+1>=argc)
goto not_enough_args;
@ -2037,7 +2042,8 @@ not_enough_args:;
sort_file_pattern= (strcmp(argpt, "--sort-weight-patterns") == 0);
} else if(strcmp(argpt, "-z")==0 ||
strcmp(argpt, "-transparent-compression")==0) {
strcmp(argpt, "-transparent-compression")==0 ||
strcmp(argpt, "--zisofs-version-2") == 0) {
/* was already handled in first argument scan */;
} else if(strcmp(argpt, "-U") == 0 ||
strcmp(argpt, "-untranslated-filenames") == 0) {