New -compliance option joliet_long_names

This commit is contained in:
Thomas Schmitt 2011-03-26 14:45:24 +00:00
parent 6a74af8fa5
commit 826e2fb316
8 changed files with 126 additions and 112 deletions

View File

@ -1238,7 +1238,8 @@ illegal_c:;
} else if(strcmp(argv[i], "-J")==0 || strcmp(argv[i], "-joliet")==0) {
xorriso->do_joliet= 1;
} else if(strcmp(argv[i], "-joliet-long")==0) {
ret= Xorriso_option_compliance(xorriso, "joliet_long_paths", 0);
ret= Xorriso_option_compliance(xorriso,
"joliet_long_paths:joliet_long_names", 0);
if(ret<=0)
goto problem_handler_2;
} else if(strcmp(argv[i], "-graft-points")==0) {

View File

@ -1961,6 +1961,12 @@ int Xorriso_relax_compliance(struct XorrisO *xorriso, char *mode,
} else if(l == 21 && strncmp(cpt, "joliet_long_paths_off", l) == 0) {
xorriso->relax_compliance&= ~isoburn_igopt_joliet_longer_paths;
} else if((l == 17 && strncmp(cpt, "joliet_long_names", l) == 0) ||
(l == 20 && strncmp(cpt, "joliet_long_names_on", l) == 0)) {
xorriso->relax_compliance|= isoburn_igopt_joliet_long_names;
} else if(l == 21 && strncmp(cpt, "joliet_long_names_off", l) == 0) {
xorriso->relax_compliance&= ~isoburn_igopt_joliet_long_names;
} else if((l == 10 && strncmp(cpt, "always_gmt", l) == 0) ||
(l == 13 && strncmp(cpt, "always_gmt_on", l) == 0)) {
xorriso->relax_compliance|= isoburn_igopt_always_gmt;
@ -2095,6 +2101,8 @@ int Xorriso_get_relax_text(struct XorrisO *xorriso, char mode[1024],
strcat(mode, ":full_ascii");
if(r & isoburn_igopt_joliet_longer_paths)
strcat(mode, ":joliet_long_paths");
if(r & isoburn_igopt_joliet_long_names)
strcat(mode, ":joliet_long_names");
if(r & isoburn_igopt_always_gmt)
strcat(mode, ":always_gmt");
if(r & isoburn_igopt_dir_rec_mtime)

View File

@ -1884,6 +1884,8 @@ will be written according to the setting of option -acl.
smaller limit for the length of file names. 0 disables this
feature, -1 chooses maximum length limit, numbers larger than 0
give the desired length limit.
"joliet_long_names" allows Joliet leaf names up to 103 characters
rather than 64.
"joliet_long_paths" allows Joliet paths longer than 240 characters.
"always_gmt" stores timestamps in GMT representation with timezone
0.
@ -4093,7 +4095,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* # starts a comment line: Scripting. (line 128)
* -abort_on controls abort on error: Exception. (line 27)
* -abstract_file sets abstract file name: SetWrite. (line 158)
* -abstract_file sets abstract file name: SetWrite. (line 160)
* -acl controls handling of ACLs: Loading. (line 142)
* -add inserts one or more paths: Insert. (line 42)
* -add_plainly inserts one or more paths: Insert. (line 61)
@ -4101,13 +4103,13 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -alter_date_r sets timestamps in ISO image: Manip. (line 166)
* -append_partition adds arbitrary file after image end: Bootable.
(line 202)
* -application_id sets application id: SetWrite. (line 117)
* -application_id sets application id: SetWrite. (line 119)
* -as emulates mkisofs or cdrecord: Emulation. (line 13)
* -assert_volid rejects undesired images: Loading. (line 84)
* -auto_charset learns character set from image: Loading. (line 99)
* -backslash_codes enables backslash conversion: Scripting. (line 45)
* -ban_stdio_write demands real drive: Loading. (line 246)
* -biblio_file sets biblio file name: SetWrite. (line 165)
* -biblio_file sets biblio file name: SetWrite. (line 167)
* -blank erases media: Writing. (line 45)
* -boot_image controls bootability: Bootable. (line 26)
* -calm_drive reduces drive activity: Loading. (line 235)
@ -4125,7 +4127,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -chown sets ownership in ISO image: Manip. (line 42)
* -chown_r sets ownership in ISO image: Manip. (line 47)
* -clone copies ISO directory tree: Insert. (line 171)
* -close controls media closing: SetWrite. (line 260)
* -close controls media closing: SetWrite. (line 262)
* -close_filter_list bans filter registration: Filter. (line 52)
* -commit writes pending ISO image: Writing. (line 13)
* -commit_eject writes and ejects: Writing. (line 40)
@ -4133,7 +4135,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -compare_l reports ISO/disk differences: Navigate. (line 157)
* -compare_r reports ISO/disk differences: Navigate. (line 152)
* -compliance controls standard compliance: SetWrite. (line 14)
* -copyright_file sets copyright file name: SetWrite. (line 152)
* -copyright_file sets copyright file name: SetWrite. (line 154)
* -cp_clone copies ISO directory tree: Insert. (line 182)
* -cp_rx copies file trees to disk: Restore. (line 104)
* -cpax copies files to disk: Restore. (line 100)
@ -4149,11 +4151,11 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
(line 35)
* -drive_class controls drive accessability: Loading. (line 54)
* -du show directory size in ISO image: Navigate. (line 88)
* -dummy controls write simulation: SetWrite. (line 249)
* -dummy controls write simulation: SetWrite. (line 251)
* -dus show directory size in ISO image: Navigate. (line 92)
* -dusx show directory size on disk: Navigate. (line 101)
* -dux show directory size on disk: Navigate. (line 96)
* -dvd_obs set write block size: SetWrite. (line 236)
* -dvd_obs set write block size: SetWrite. (line 238)
* -early_stdio_test classifies stdio drives: Loading. (line 251)
* -eject ejects drive tray: Writing. (line 36)
* -end writes pending session and ends program: Scripting. (line 122)
@ -4171,12 +4173,12 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -follow softlinks and mount points: SetInsert. (line 76)
* -for_backup -acl,-xattr,-hardlinks,-md5: Loading. (line 184)
* -format formats media: Writing. (line 69)
* -fs sets size of fifo: SetWrite. (line 253)
* -fs sets size of fifo: SetWrite. (line 255)
* -getfacl shows ACL in ISO image: Navigate. (line 69)
* -getfacl_r shows ACL in ISO image: Navigate. (line 76)
* -getfattr shows xattr in ISO image: Navigate. (line 80)
* -getfattr_r shows xattr in ISO image: Navigate. (line 84)
* -gid sets global ownership: SetWrite. (line 193)
* -gid sets global ownership: SetWrite. (line 195)
* -grow_blindly overides next writeable address: AqDrive. (line 44)
* -hardlinks controls handling of hard links: Loading. (line 110)
* -help prints help text: Scripting. (line 16)
@ -4218,23 +4220,23 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -not_paths sets absolute exclusion paths: SetInsert. (line 55)
* -options_from_file reads commands from file: Scripting. (line 12)
* -osirrox enables ISO-to-disk copying: Restore. (line 18)
* -out_charset sets output character set: SetWrite. (line 183)
* -out_charset sets output character set: SetWrite. (line 185)
* -outdev aquires a drive for output: AqDrive. (line 29)
* -overwrite enables overwriting in ISO: SetInsert. (line 127)
* -pacifier controls pacifier text form: Emulation. (line 158)
* -padding sets amount or mode of image padding: SetWrite. (line 266)
* -padding sets amount or mode of image padding: SetWrite. (line 268)
* -page set terminal geometry: DialogCtl. (line 19)
* -paste_in copies file into disk file: Restore. (line 117)
* -path_list inserts paths from disk file: Insert. (line 75)
* -pathspecs sets meaning of = with -add: SetInsert. (line 118)
* -pkt_output consolidates text output: Frontend. (line 7)
* -preparer_id sets preparer id: SetWrite. (line 171)
* -preparer_id sets preparer id: SetWrite. (line 173)
* -print prints text line: Scripting. (line 77)
* -print_size predicts image size: Inquiry. (line 69)
* -prog sets program name: Frontend. (line 30)
* -prog_help prints help text: Frontend. (line 33)
* -prompt prompts for enter key: Scripting. (line 80)
* -publisher sets publisher id: SetWrite. (line 111)
* -publisher sets publisher id: SetWrite. (line 113)
* -pvd_info shows image id strings: Inquiry. (line 82)
* -pwd tells working directory in ISO: Navigate. (line 20)
* -pwdx tells working directory on disk: Navigate. (line 23)
@ -4265,27 +4267,27 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -setfattr_r sets xattr in ISO image: Manip. (line 123)
* -show_stream shows data source and filters: Navigate. (line 162)
* -show_stream_r shows data source and filters: Navigate. (line 177)
* -speed set write speed: SetWrite. (line 209)
* -speed set write speed: SetWrite. (line 211)
* -split_size enables large file splitting: SetInsert. (line 140)
* -status shows current settings: Scripting. (line 25)
* -status_history_max curbs -status history: Scripting. (line 34)
* -stdio_sync controls stdio buffer: SetWrite. (line 243)
* -stream_recording controls defect management: SetWrite. (line 224)
* -system_id sets system id: SetWrite. (line 126)
* -stdio_sync controls stdio buffer: SetWrite. (line 245)
* -stream_recording controls defect management: SetWrite. (line 226)
* -system_id sets system id: SetWrite. (line 128)
* -tell_media_space reports free space: Inquiry. (line 78)
* -temp_mem_limit curbs memory consumption: Scripting. (line 70)
* -toc shows list of sessions: Inquiry. (line 18)
* -uid sets global ownership: SetWrite. (line 189)
* -uid sets global ownership: SetWrite. (line 191)
* -update inserts path if different: Insert. (line 99)
* -update_l inserts paths if different: Insert. (line 121)
* -update_r inserts paths if different: Insert. (line 110)
* -use_readline enables readline for dialog: DialogCtl. (line 28)
* -version prints help text: Scripting. (line 19)
* -volid sets volume id: SetWrite. (line 87)
* -volset_id sets volume set id: SetWrite. (line 106)
* -volume_date sets volume timestamp: SetWrite. (line 133)
* -volid sets volume id: SetWrite. (line 89)
* -volset_id sets volume set id: SetWrite. (line 108)
* -volume_date sets volume timestamp: SetWrite. (line 135)
* -xattr controls handling of xattr (EA): Loading. (line 150)
* -zisofs controls zisofs production: SetWrite. (line 197)
* -zisofs controls zisofs production: SetWrite. (line 199)

File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
@ -4316,7 +4318,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Character Set, _definition: Charset. (line 6)
* Character Set, for input, -in_charset: Loading. (line 92)
* Character Set, for input/output, -charset: Charset. (line 43)
* Character Set, for output, -out_charset: SetWrite. (line 183)
* Character Set, for output, -out_charset: SetWrite. (line 185)
* Character set, learn from image, -auto_charset: Loading. (line 99)
* Character Set, of terminal, -local_charset: Charset. (line 47)
* Closed media, _definition: Media. (line 43)
@ -4365,8 +4367,8 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Filter, show chain, -show_stream: Navigate. (line 162)
* Filter, show chains of tree, -show_stream_r: Navigate. (line 177)
* Filter, unregister, -unregister_filter: Filter. (line 48)
* Filter, zisofs parameters, -zisofs: SetWrite. (line 197)
* Group, global in ISO image, -gid: SetWrite. (line 193)
* Filter, zisofs parameters, -zisofs: SetWrite. (line 199)
* Group, global in ISO image, -gid: SetWrite. (line 195)
* Group, in ISO image, -chgrp: Manip. (line 50)
* Group, in ISO image, -chgrp_r: Manip. (line 55)
* Growing, _definition: Methods. (line 19)
@ -4375,16 +4377,16 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Image, _definition: Model. (line 9)
* Image, demand volume id, -assert_volid: Loading. (line 84)
* Image, discard pending changes, -rollback: Writing. (line 9)
* Image, set abstract file name, -abstract_file: SetWrite. (line 158)
* Image, set application id, -application_id: SetWrite. (line 117)
* Image, set biblio file name, -biblio_file: SetWrite. (line 165)
* Image, set copyright file name, -copyright_file: SetWrite. (line 152)
* Image, set preparer id, -preparer_id: SetWrite. (line 171)
* Image, set publisher id, -publisher: SetWrite. (line 111)
* Image, set system id, -system_id: SetWrite. (line 126)
* Image, set volume id, -volid: SetWrite. (line 87)
* Image, set volume set id, -volset_id: SetWrite. (line 106)
* Image, set volume timestamp, -volume_date: SetWrite. (line 133)
* Image, set abstract file name, -abstract_file: SetWrite. (line 160)
* Image, set application id, -application_id: SetWrite. (line 119)
* Image, set biblio file name, -biblio_file: SetWrite. (line 167)
* Image, set copyright file name, -copyright_file: SetWrite. (line 154)
* Image, set preparer id, -preparer_id: SetWrite. (line 173)
* Image, set publisher id, -publisher: SetWrite. (line 113)
* Image, set system id, -system_id: SetWrite. (line 128)
* Image, set volume id, -volid: SetWrite. (line 89)
* Image, set volume set id, -volset_id: SetWrite. (line 108)
* Image, set volume timestamp, -volume_date: SetWrite. (line 135)
* Image, show id strings, -pvd_info: Inquiry. (line 82)
* Insert, enable overwriting, -overwrite: SetInsert. (line 127)
* Insert, file exclusion absolute, -not_paths: SetInsert. (line 55)
@ -4441,7 +4443,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Navigate, tell ISO working directory, -pwd: Navigate. (line 20)
* Next writeable address, -grow_blindly: AqDrive. (line 44)
* Overwriteable media, _definition: Media. (line 14)
* Ownership, global in ISO image, -uid: SetWrite. (line 189)
* Ownership, global in ISO image, -uid: SetWrite. (line 191)
* Ownership, in ISO image, -chown: Manip. (line 42)
* Ownership, in ISO image, -chown_r: Manip. (line 47)
* Partition offset, _definiton: Bootable. (line 148)
@ -4513,22 +4515,22 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Verify, file checksum, -check_md5: Verify. (line 146)
* Verify, file tree checksums, -check_md5_r: Verify. (line 162)
* Verify, preset -check_media, -check_media_defaults: Verify. (line 40)
* Write, block size, -dvd_obs: SetWrite. (line 236)
* Write, block size, -dvd_obs: SetWrite. (line 238)
* Write, bootability, -boot_image: Bootable. (line 26)
* Write, buffer syncing, -stdio_sync: SetWrite. (line 243)
* Write, close media, -close: SetWrite. (line 260)
* Write, buffer syncing, -stdio_sync: SetWrite. (line 245)
* Write, close media, -close: SetWrite. (line 262)
* Write, compliance to specs, -compliance: SetWrite. (line 14)
* Write, defect management, -stream_recording: SetWrite. (line 224)
* Write, defect management, -stream_recording: SetWrite. (line 226)
* Write, enable Joliet, -joliet: SetWrite. (line 10)
* Write, fifo size, -fs: SetWrite. (line 253)
* Write, fifo size, -fs: SetWrite. (line 255)
* Write, free space, -tell_media_space: Inquiry. (line 78)
* 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 266)
* Write, padding image, -padding: SetWrite. (line 268)
* Write, pending ISO image, -commit: Writing. (line 13)
* Write, predict image size, -print_size: Inquiry. (line 69)
* Write, set speed, -speed: SetWrite. (line 209)
* Write, simulation, -dummy: SetWrite. (line 249)
* Write, set speed, -speed: SetWrite. (line 211)
* Write, simulation, -dummy: SetWrite. (line 251)
* xattr, _definiton: Extras. (line 52)
* xattr, control handling, -xattr: Loading. (line 150)
* xattr, set in ISO image, -setfattr: Manip. (line 110)
@ -4559,39 +4561,39 @@ Node: CmdFind68927
Node: Filter80227
Node: Writing84576
Node: SetWrite90865
Node: Bootable104806
Node: Jigdo118124
Node: Charset122382
Node: Exception125133
Node: DialogCtl129644
Node: Inquiry132231
Node: Navigate136608
Node: Verify144548
Node: Restore153137
Node: Emulation159793
Node: Scripting169629
Node: Frontend175191
Node: Examples176486
Node: ExDevices177655
Node: ExCreate178289
Node: ExDialog179563
Node: ExGrowing180825
Node: ExModifying181627
Node: ExBootable182128
Node: ExCharset182675
Node: ExPseudo183503
Node: ExCdrecord184397
Node: ExMkisofs184712
Node: ExGrowisofs186048
Node: ExException187172
Node: ExTime187626
Node: ExIncBackup188085
Node: ExRestore192006
Node: ExRecovery192975
Node: Files193541
Node: Seealso194769
Node: Legal195349
Node: CommandIdx196271
Node: ConceptIdx210651
Node: Bootable104898
Node: Jigdo118216
Node: Charset122474
Node: Exception125225
Node: DialogCtl129736
Node: Inquiry132323
Node: Navigate136700
Node: Verify144640
Node: Restore153229
Node: Emulation159885
Node: Scripting169721
Node: Frontend175283
Node: Examples176578
Node: ExDevices177747
Node: ExCreate178381
Node: ExDialog179655
Node: ExGrowing180917
Node: ExModifying181719
Node: ExBootable182220
Node: ExCharset182767
Node: ExPseudo183595
Node: ExCdrecord184489
Node: ExMkisofs184804
Node: ExGrowisofs186140
Node: ExException187264
Node: ExTime187718
Node: ExIncBackup188177
Node: ExRestore192098
Node: ExRecovery193067
Node: Files193633
Node: Seealso194861
Node: Legal195441
Node: CommandIdx196363
Node: ConceptIdx210743

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 "Mar 21, 2011"
@c man .TH XORRISO 1 "Mar 26, 2011"
@c man .\" Please adjust this date whenever revising the manpage.
@c man .\"
@c man .\" Some roff macros, for reference:
@ -2512,6 +2512,9 @@ fail deliberately.
for the length of file names. 0 disables this feature, -1 chooses maximum
length limit, numbers larger than 0 give the desired length limit.
@*
"joliet_long_names" allows Joliet leaf names up to 103 characters rather
than 64.
@*
"joliet_long_paths" allows Joliet paths longer than 240 characters.
@*
"always_gmt" stores timestamps in GMT representation with timezone 0.

View File

@ -1 +1 @@
#define Xorriso_timestamP "2011.03.26.144233"
#define Xorriso_timestamP "2011.03.26.144541"

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 XORRISOFS 1 "Mar 09, 2011"
.TH XORRISOFS 1 "Mar 26, 2011"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
@ -539,9 +539,9 @@ with the ISO 9660 Rock Ridge tree.
Alias of -J.
.TP
\fB\-joliet-long\fR
Currently this option is insufficiently implemented.
It should allow 103 characters in Joliet file names but
yet only 64 are possible.
Allow 103 characters in Joliet file names rather than 64 as is prescribed
by the specification. Allow Joliet paths longer than the prescribed limit of
240 characters.
.TP
.B Settings for file hiding:
.TP

View File

@ -549,9 +549,9 @@ File: xorrisofs.info, Node: SetExtras, Next: SetHide, Prev: SetCompl, Up: Op
Alias of -J.
-joliet-long
Currently this option is insufficiently implemented. It should
allow 103 characters in Joliet file names but yet only 64 are
possible.
Allow 103 characters in Joliet file names rather than 64 as is
prescribed by the specification. Allow Joliet paths longer than
the prescribed limit of 240 characters.

File: xorrisofs.info, Node: SetHide, Next: ImageId, Prev: SetExtras, Up: Options
@ -1785,25 +1785,25 @@ Node: SetInsert8731
Node: SetProduct13133
Node: SetCompl16840
Node: SetExtras19159
Node: SetHide21887
Node: ImageId22895
Node: Bootable26399
Node: SystemArea30479
Node: Charset36839
Node: Jigdo37864
Node: Miscellaneous42145
Node: Examples43318
Node: ExSimple43804
Node: ExGraft44283
Node: ExMkisofs45530
Node: ExGrowisofs46781
Node: ExIncBackup47953
Node: ExIncBckAcc51002
Node: ExBootable52677
Node: Files54776
Node: Seealso55846
Node: Legal56361
Node: CommandIdx57157
Node: ConceptIdx68490
Node: SetHide21918
Node: ImageId22926
Node: Bootable26430
Node: SystemArea30510
Node: Charset36870
Node: Jigdo37895
Node: Miscellaneous42176
Node: Examples43349
Node: ExSimple43835
Node: ExGraft44314
Node: ExMkisofs45561
Node: ExGrowisofs46812
Node: ExIncBackup47984
Node: ExIncBckAcc51033
Node: ExBootable52708
Node: Files54807
Node: Seealso55877
Node: Legal56392
Node: CommandIdx57188
Node: ConceptIdx68521

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 XORRISOFS 1 "Mar 09, 2011"
@c man .TH XORRISOFS 1 "Mar 26, 2011"
@c man .\" Please adjust this date whenever revising the manpage.
@c man .\"
@c man .\" Some roff macros, for reference:
@ -780,9 +780,9 @@ Alias of -J.
@item -joliet-long
@kindex -joliet-long allow longer Joliet names
@cindex Joliet, allows longer names, -joliet-long
Currently this option is insufficiently implemented.
It should allow 103 characters in Joliet file names but
yet only 64 are possible.
Allow 103 characters in Joliet file names rather than 64 as is prescribed
by the specification. Allow Joliet paths longer than the prescribed limit of
240 characters.
@end table
@c man .TP
@c man .B Settings for file hiding: