Disabled TOC emulation with -as mkisofs. May be re-enabled by --emul-toc.

This commit is contained in:
Thomas Schmitt 2010-12-28 12:33:52 +00:00
parent 3f3aa05f64
commit d83fc6cfec
5 changed files with 77 additions and 51 deletions

View File

@ -533,7 +533,7 @@ int Xorriso_genisofs_count_args(struct XorrisO *xorriso, int argc, char **argv,
"-no-mac-files", "-chrp-boot",
"--hardlinks", "--acl", "--xattr", "--md5", "--for_backup",
"--protective-msdos-label", "--boot-catalog-hide", "--no-emul-toc",
"-disallow_dir_id_ext",
"--emul-toc", "-disallow_dir_id_ext",
""
};
static char arg1_options[][41]= {
@ -772,6 +772,7 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag)
" --sort-weight NUMBER FILE Set LBA weight number to file or file tree",
" --stdio_sync on|off|number Control forced output to disk files",
" --no-emul-toc Save 64 kB size on random access output files",
" --emul-toc Multi-session history on such output files",
" -z, -transparent-compression",
" Enable transparent compression of files",
" -v, -verbose Verbose",
@ -882,7 +883,7 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
int option_b= 0, was_failure= 0, fret, lower_r= 0, zero= 0;
int dir_mode= -1, file_mode= -1, count, partition_number, allow_dir_id_ext= 1;
mode_t mode_and, mode_or;
int with_boot_image= 0, with_cat_path= 0;
int with_boot_image= 0, with_cat_path= 0, with_emul_toc= 0;
int *weight_list= NULL, weight_count= 0;
int *delay_opt_list= NULL, delay_opt_count= 0;
char sfe[5*SfileadrL], adr[SfileadrL+8], ra_text[80], pathspec[2*SfileadrL];
@ -1050,6 +1051,12 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
Xorriso_option_stdio_sync(xorriso, argv[i], 0);
} else if(strcmp(argv[i], "-disallow_dir_id_ext")==0) {
allow_dir_id_ext= 0;
} else if(strcmp(argv[i], "--emul-toc")==0) {
with_emul_toc= 1;
xorriso->no_emul_toc&= ~1;
} else if(strcmp(argv[i], "--no-emul-toc")==0) {
with_emul_toc= 0;
xorriso->no_emul_toc|= 1;
} else
was_other_option= 1;
ret= Xorriso_genisofs_count_args(xorriso, argc - i, argv + i, &count, 0);
@ -1313,8 +1320,6 @@ not_enough_args:;
} else if(strcmp(argv[i], "-z")==0 ||
strcmp(argv[i], "-transparent-compression")==0) {
/* was already handled in first argument scan */;
} else if(strcmp(argv[i], "--no-emul-toc")==0) {
xorriso->no_emul_toc|= 1;
} else if(strcmp(argv[i], "-U") == 0 ||
strcmp(argv[i], "-untranslated-filenames") == 0) {
Xorriso_relax_compliance(xorriso,
@ -1444,6 +1449,11 @@ not_enough_args:;
goto not_enough_args;
i++;
/* was already handled in first argument scan */;
} else if(strcmp(argv[i], "--emul-toc")==0 ||
strcmp(argv[i], "--no-emul-toc")==0) {
/* was already handled in first argument scan */;
} else if(strcmp(argv[i], "-disallow_dir_id_ext")==0) {
/* was already handled in first argument scan */;
@ -1503,6 +1513,10 @@ is_pathspec_2:;
Xorriso_relax_compliance(xorriso, sfe, 0);
iso_level= 0;
}
/* For the sake of compatibility give up emulated multi-session by default
*/
if(with_emul_toc == 0)
xorriso->no_emul_toc|= 1;
}
continue; /* regular bottom of loop */
problem_handler_2:;

View File

@ -9,7 +9,7 @@
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
.TH XORRISO 1 "Dec 25, 2010"
.TH XORRISO 1 "Dec 28, 2010"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
@ -2940,6 +2940,7 @@ session number, resp. volume id of the depicted session.
Print the foreseeable consumption of 2048 byte blocks
by next -commit. This can last a while as a -commit gets
prepared and only in last moment is revoked by this option.
The result depends on several settings and also on the kind of output device.
.TP
\fB\-tell_media_space\fR
Print available space on output media and the free space after
@ -3521,7 +3522,10 @@ They work like the xorriso options with the
same name and hardcoded argument "on", e.g. -acl "on".
Explicit arguments are expected by --stdio_sync
and --scdbackup_tag.
--no-emul-toc is -compliance no_emul_toc.
.br
The capability to preserve multi-session history on overwriteable media
gets disabled by default. It can be enabled by using --emul-toc
with the first session. See -compliance no_emul_toc.
.br
--sort-weight gets as arguments a number and an iso_rr_path.
The number becomes the LBA sorting weight of regular file iso_rr_path or

View File

@ -2596,7 +2596,8 @@ File: xorriso.info, Node: Inquiry, Next: Navigate, Prev: DialogCtl, Up: Opti
-print_size
Print the foreseeable consumption of 2048 byte blocks by next
-commit. This can last a while as a -commit gets prepared and only
in last moment is revoked by this option.
in last moment is revoked by this option. The result depends on
several settings and also on the kind of output device.
-tell_media_space
Print available space on output media and the free space after
@ -3138,7 +3139,10 @@ programs trigger comparable actions.
, --acl , --xattr , --md5 , --stdio_sync . They work like the
xorriso options with the same name and hardcoded argument "on",
e.g. -acl "on". Explicit arguments are expected by --stdio_sync
and --scdbackup_tag. --no-emul-toc is -compliance no_emul_toc.
and --scdbackup_tag.
The capability to preserve multi-session history on overwriteable
media gets disabled by default. It can be enabled by using
--emul-toc with the first session. See -compliance no_emul_toc.
--sort-weight gets as arguments a number and an iso_rr_path. The
number becomes the LBA sorting weight of regular file iso_rr_path
or of all regular files underneath directory iso_rr_path. (See
@ -4092,7 +4096,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -out_charset sets output character set: SetWrite. (line 180)
* -outdev aquires a drive for output: AqDrive. (line 29)
* -overwrite enables overwriting in ISO: SetInsert. (line 127)
* -pacifier controls pacifier text form: Emulation. (line 139)
* -pacifier controls pacifier text form: Emulation. (line 142)
* -padding sets amount of image padding: SetWrite. (line 263)
* -page set terminal geometry: DialogCtl. (line 15)
* -paste_in copies file into disk file: Restore. (line 117)
@ -4106,13 +4110,13 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -prog_help prints help text: Frontend. (line 33)
* -prompt prompts for enter key: Scripting. (line 80)
* -publisher sets publisher id: SetWrite. (line 108)
* -pvd_info shows image id strings: Inquiry. (line 78)
* -pvd_info shows image id strings: Inquiry. (line 79)
* -pwd tells working directory in ISO: Navigate. (line 20)
* -pwdx tells working directory on disk: Navigate. (line 23)
* -quoted_not_list sets exclusions: SetInsert. (line 72)
* -quoted_path_list inserts paths from disk file: Insert. (line 80)
* -read_mkisofsrc searches and reads .mkisofsrc file: Emulation.
(line 127)
(line 130)
* -reassure enables confirmation question: DialogCtl. (line 28)
* -report_about controls verbosity: Exception. (line 55)
* -return_with controls exit value: Exception. (line 39)
@ -4122,7 +4126,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -rollback discards pending changes: Writing. (line 9)
* -rollback_end ends program without writing: Scripting. (line 125)
* -rom_toc_scan searches for sessions: Loading. (line 203)
* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 149)
* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 152)
* -scsi_log reports SCSI commands: Scripting. (line 113)
* -session_log logs written sessions: Scripting. (line 104)
* -session_string composes session info line: Inquiry. (line 56)
@ -4143,7 +4147,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -stdio_sync controls stdio buffer: SetWrite. (line 240)
* -stream_recording controls defect management: SetWrite. (line 221)
* -system_id sets system id: SetWrite. (line 123)
* -tell_media_space reports free space: Inquiry. (line 74)
* -tell_media_space reports free space: Inquiry. (line 75)
* -temp_mem_limit curbs memory consumption: Scripting. (line 70)
* -toc shows list of sessions: Inquiry. (line 18)
* -uid sets global ownership: SetWrite. (line 186)
@ -4179,11 +4183,11 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Backslash Interpretation, _definition: Processing. (line 49)
* Backup, enable fast incremental, -disk_dev_ino: Loading. (line 182)
* Backup, enable features, -for_backup: Loading. (line 177)
* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 149)
* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 152)
* Blank media, _definition: Media. (line 29)
* Blind growing, _definition: Methods. (line 40)
* Bootability, control, -boot_image: Bootable. (line 26)
* cdrecord, Emulation: Emulation. (line 94)
* cdrecord, Emulation: Emulation. (line 97)
* Character Set, _definition: Charset. (line 6)
* Character Set, for input, -in_charset: Loading. (line 92)
* Character Set, for input/output, -charset: Charset. (line 43)
@ -4218,10 +4222,10 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Drive, write and eject, -commit_eject: Writing. (line 40)
* El Torito, _definiton: Extras. (line 19)
* Emulation, -as: Emulation. (line 13)
* Emulation, .mkisofsrc, -read_mkisofsrc: Emulation. (line 127)
* Emulation, cdrecord, -as: Emulation. (line 94)
* Emulation, .mkisofsrc, -read_mkisofsrc: Emulation. (line 130)
* Emulation, cdrecord, -as: Emulation. (line 97)
* Emulation, mkisofs, -as: Emulation. (line 16)
* Emulation, pacifier form, -pacifier: Emulation. (line 139)
* Emulation, pacifier form, -pacifier: Emulation. (line 142)
* Examples: Examples. (line 6)
* Filter, _definition: Filter. (line 6)
* Filter, apply to file tree, -set_filter_r: Filter. (line 84)
@ -4251,7 +4255,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Image, set volume id, -volid: SetWrite. (line 84)
* Image, set volume set id, -volset_id: SetWrite. (line 103)
* Image, set volume timestamp, -volume_date: SetWrite. (line 130)
* Image, show id strings, -pvd_info: Inquiry. (line 78)
* Image, show id strings, -pvd_info: Inquiry. (line 79)
* Insert, enable overwriting, -overwrite: SetInsert. (line 127)
* Insert, file exclusion absolute, -not_paths: SetInsert. (line 55)
* Insert, file exclusion from file, -not_list: SetInsert. (line 67)
@ -4387,7 +4391,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Write, defect management, -stream_recording: SetWrite. (line 221)
* Write, enable Joliet, -joliet: SetWrite. (line 10)
* Write, fifo size, -fs: SetWrite. (line 250)
* Write, free space, -tell_media_space: Inquiry. (line 74)
* Write, free space, -tell_media_space: Inquiry. (line 75)
* Write, log problematic disk files, -errfile_log: Scripting. (line 84)
* Write, log written sessions, -session_log: Scripting. (line 104)
* Write, padding image, -padding: SetWrite. (line 263)
@ -4431,33 +4435,33 @@ Node: Charset117519
Node: Exception120270
Node: DialogCtl124785
Node: Inquiry127130
Node: Navigate131260
Node: Verify139155
Node: Restore147744
Node: Emulation154400
Node: Scripting163071
Node: Frontend168633
Node: Examples169928
Node: ExDevices171097
Node: ExCreate171731
Node: ExDialog173005
Node: ExGrowing174267
Node: ExModifying175069
Node: ExBootable175570
Node: ExCharset176117
Node: ExPseudo176945
Node: ExCdrecord177839
Node: ExMkisofs178154
Node: ExGrowisofs179157
Node: ExException180281
Node: ExTime180735
Node: ExIncBackup181194
Node: ExRestore184666
Node: ExRecovery185635
Node: Files186201
Node: Seealso187429
Node: Legal187953
Node: CommandIdx188875
Node: ConceptIdx203101
Node: Navigate131344
Node: Verify139239
Node: Restore147828
Node: Emulation154484
Node: Scripting163316
Node: Frontend168878
Node: Examples170173
Node: ExDevices171342
Node: ExCreate171976
Node: ExDialog173250
Node: ExGrowing174512
Node: ExModifying175314
Node: ExBootable175815
Node: ExCharset176362
Node: ExPseudo177190
Node: ExCdrecord178084
Node: ExMkisofs178399
Node: ExGrowisofs179402
Node: ExException180526
Node: ExTime180980
Node: ExIncBackup181439
Node: ExRestore184911
Node: ExRecovery185880
Node: Files186446
Node: Seealso187674
Node: Legal188198
Node: CommandIdx189120
Node: ConceptIdx203346

End Tag Table

View File

@ -44,7 +44,7 @@
@c man .\" First parameter, NAME, should be all caps
@c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
@c man .\" other parameters are allowed: see man(7), man(1)
@c man .TH XORRISO 1 "Dec 25, 2010"
@c man .TH XORRISO 1 "Dec 28, 2010"
@c man .\" Please adjust this date whenever revising the manpage.
@c man .\"
@c man .\" Some roff macros, for reference:
@ -3474,6 +3474,7 @@ session number, resp. volume id of the depicted session.
Print the foreseeable consumption of 2048 byte blocks
by next -commit. This can last a while as a -commit gets
prepared and only in last moment is revoked by this option.
The result depends on several settings and also on the kind of output device.
@c man .TP
@item -tell_media_space
@kindex -tell_media_space reports free space
@ -4172,7 +4173,10 @@ They work like the xorriso options with the
same name and hardcoded argument "on", e.g. -acl "on".
Explicit arguments are expected by @minus{}@minus{}stdio_sync
and @minus{}@minus{}scdbackup_tag.
@minus{}@minus{}no-emul-toc is -compliance no_emul_toc.
@*
The capability to preserve multi-session history on overwriteable media
gets disabled by default. It can be enabled by using @minus{}@minus{}emul-toc
with the first session. See -compliance no_emul_toc.
@*
@minus{}@minus{}sort-weight gets as arguments a number and an iso_rr_path.
The number becomes the LBA sorting weight of regular file iso_rr_path or

View File

@ -1 +1 @@
#define Xorriso_timestamP "2010.12.28.093144"
#define Xorriso_timestamP "2010.12.28.123348"