New -as mkisofs option -disallow_dir_id_ext, allow_dir_id_ext is default

This commit is contained in:
Thomas Schmitt 2010-12-25 09:43:15 +00:00
parent 77ff5f5cb9
commit 0b641cf425
5 changed files with 77 additions and 38 deletions

View File

@ -533,6 +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",
""
};
static char arg1_options[][41]= {
@ -683,6 +684,7 @@ int Xorriso_genisofs_help(struct XorrisO *xorriso, int flag)
" -input-charset CHARSET Local input charset for file name conversion",
" -output-charset CHARSET Output charset for file name conversion",
" -iso-level LEVEL Set ISO9660 conformance level (1..3) or 4 for ISO9660 version 2",
" -disallow_dir_id_ext Do not allow dot in ISO directory names",
" -J, -joliet Generate Joliet directory information",
" -joliet-long Allow Joliet file names to be 103 Unicode characters",
" -U, -untranslated-filenames Allow Untranslated filenames (for HPUX & AIX - violates ISO9660).",
@ -876,9 +878,9 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
int argc, char **argv, int flag)
{
int ret, i, j, was_path= 0, was_other_option= 0, mem_graft_points, mem;
int do_print_size= 0, fd, idx, iso_level= 0, emul_boot= 2;
int do_print_size= 0, fd, idx, iso_level= 1, emul_boot= 2;
int option_b= 0, was_failure= 0, fret, lower_r= 0, zero= 0;
int dir_mode= -1, file_mode= -1, count, partition_number;
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 *weight_list= NULL, weight_count= 0;
@ -971,7 +973,6 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
if(iso_level == 4)
xorriso->do_iso1999= 1;
else {
xorriso->file_size_limit= 0;
sprintf(sfe, "iso_9660_level=%s", argv[i]);
ret= Xorriso_relax_compliance(xorriso, sfe, 0);
if(ret <= 0)
@ -1047,6 +1048,8 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
goto not_enough_args;
i++;
Xorriso_option_stdio_sync(xorriso, argv[i], 0);
} else if(strcmp(argv[i], "-disallow_dir_id_ext")==0) {
allow_dir_id_ext= 0;
} else
was_other_option= 1;
ret= Xorriso_genisofs_count_args(xorriso, argc - i, argv + i, &count, 0);
@ -1176,10 +1179,12 @@ not_enough_args:;
} else if(strcmp(argv[i], "-o")==0) {
i++;
/* was already handled in first argument scan */;
} else if(strcmp(argv[i], "-M")==0 || strcmp(argv[i], "-dev")==0) {
} else if(strcmp(argv[i], "-M")==0 || strcmp(argv[i], "-dev")==0 ||
strcmp(argv[i], "-prev-session")==0) {
i++;
/* was already handled in first argument scan */;
} else if(strcmp(argv[i], "-C")==0) {
} else if(strcmp(argv[i], "-C")==0 ||
strcmp(argv[i], "-cdrecord-params")==0) {
i++;
/* was already handled in first argument scan */;
} else if(strcmp(argv[i], "-help")==0) {
@ -1434,6 +1439,14 @@ not_enough_args:;
strncpy(xorriso->ascii_disc_label, argv[i], Xorriso_disc_label_sizE - 1);
xorriso->ascii_disc_label[Xorriso_disc_label_sizE - 1] = 0;
} else if(strcmp(argv[i], "--stdio_sync")==0) {
if(i+1>=argc)
goto not_enough_args;
i++;
/* was already handled in first argument scan */;
} else if(strcmp(argv[i], "-disallow_dir_id_ext")==0) {
/* was already handled in first argument scan */;
} else if(argv[i][0]=='-' && argv[i][1]!=0) {
ret= Xorriso_genisofs_count_args(xorriso, argc - i, argv + i, &count, 1);
if(ret > 0) {
@ -1478,7 +1491,18 @@ is_pathspec_2:;
if(ret<=0)
goto problem_handler_2;
was_path= 1;
/* Enforce odd mkisofs defaults on first pathspec */
xorriso->pacifier_style= 1;
if(allow_dir_id_ext == 1) {
Xorriso_relax_compliance(xorriso, "allow_dir_id_ext", 0);
allow_dir_id_ext= 2;
}
if(iso_level >= 1 && iso_level <= 3) {
sprintf(sfe, "iso_9660_level=%d", iso_level);
Xorriso_relax_compliance(xorriso, sfe, 0);
iso_level= 0;
}
}
continue; /* regular bottom of loop */
problem_handler_2:;

View File

@ -3509,6 +3509,11 @@ standard output.
-print-size inhibits automatic image production at program end. This ban is
lifted only if the pending image changes get discarded.
.br
If no -iso-level is given, then level 1 is chosen when the first file or
directory is added to the image. At the same occasion directory names get
allowed to violate the standard by -compliance option allow_dir_id_ext.
This may be avoided by option -disallow_dir_id_ext.
.br
Not original mkisofs options are --quoted_path_list ,
--hardlinks , --acl ,
--xattr , --md5 , --stdio_sync .

View File

@ -3129,6 +3129,11 @@ programs trigger comparable actions.
drive to standard output.
-print-size inhibits automatic image production at program end.
This ban is lifted only if the pending image changes get discarded.
If no -iso-level is given, then level 1 is chosen when the first
file or directory is added to the image. At the same occasion
directory names get allowed to violate the standard by -compliance
option allow_dir_id_ext. This may be avoided by option
-disallow_dir_id_ext.
Not original mkisofs options are --quoted_path_list , --hardlinks
, --acl , --xattr , --md5 , --stdio_sync . They work like the
xorriso options with the same name and hardcoded argument "on",
@ -4087,7 +4092,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 134)
* -pacifier controls pacifier text form: Emulation. (line 139)
* -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)
@ -4107,7 +4112,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -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 122)
(line 127)
* -reassure enables confirmation question: DialogCtl. (line 28)
* -report_about controls verbosity: Exception. (line 55)
* -return_with controls exit value: Exception. (line 39)
@ -4117,7 +4122,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 144)
* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 149)
* -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)
@ -4174,11 +4179,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 144)
* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 149)
* Blank media, _definition: Media. (line 29)
* Blind growing, _definition: Methods. (line 40)
* Bootability, control, -boot_image: Bootable. (line 26)
* cdrecord, Emulation: Emulation. (line 89)
* cdrecord, Emulation: Emulation. (line 94)
* Character Set, _definition: Charset. (line 6)
* Character Set, for input, -in_charset: Loading. (line 92)
* Character Set, for input/output, -charset: Charset. (line 43)
@ -4213,10 +4218,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 122)
* Emulation, cdrecord, -as: Emulation. (line 89)
* Emulation, .mkisofsrc, -read_mkisofsrc: Emulation. (line 127)
* Emulation, cdrecord, -as: Emulation. (line 94)
* Emulation, mkisofs, -as: Emulation. (line 16)
* Emulation, pacifier form, -pacifier: Emulation. (line 134)
* Emulation, pacifier form, -pacifier: Emulation. (line 139)
* Examples: Examples. (line 6)
* Filter, _definition: Filter. (line 6)
* Filter, apply to file tree, -set_filter_r: Filter. (line 84)
@ -4430,29 +4435,29 @@ Node: Navigate131260
Node: Verify139155
Node: Restore147744
Node: Emulation154400
Node: Scripting162774
Node: Frontend168336
Node: Examples169631
Node: ExDevices170800
Node: ExCreate171434
Node: ExDialog172708
Node: ExGrowing173970
Node: ExModifying174772
Node: ExBootable175273
Node: ExCharset175820
Node: ExPseudo176648
Node: ExCdrecord177542
Node: ExMkisofs177857
Node: ExGrowisofs178860
Node: ExException179984
Node: ExTime180438
Node: ExIncBackup180897
Node: ExRestore184369
Node: ExRecovery185338
Node: Files185904
Node: Seealso187132
Node: Legal187656
Node: CommandIdx188578
Node: ConceptIdx202804
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

End Tag Table

View File

@ -4160,6 +4160,11 @@ standard output.
-print-size inhibits automatic image production at program end. This ban is
lifted only if the pending image changes get discarded.
@*
If no -iso-level is given, then level 1 is chosen when the first file or
directory is added to the image. At the same occasion directory names get
allowed to violate the standard by -compliance option allow_dir_id_ext.
This may be avoided by option -disallow_dir_id_ext.
@*
Not original mkisofs options are @minus{}@minus{}quoted_path_list ,
@minus{}@minus{}hardlinks , @minus{}@minus{}acl ,
@minus{}@minus{}xattr , @minus{}@minus{}md5 , @minus{}@minus{}stdio_sync .

View File

@ -1 +1 @@
#define Xorriso_timestamP "2010.12.25.092828"
#define Xorriso_timestamP "2010.12.25.094309"