Adjusted behavior of -as mkisofs option -D

This commit is contained in:
Thomas Schmitt 2012-03-14 15:23:53 +00:00
parent ea3ae8d436
commit a0b8588598
5 changed files with 103 additions and 96 deletions

View File

@ -951,7 +951,7 @@ int Xorriso_genisofs(struct XorrisO *xorriso, char *whom,
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, allow_dir_id_ext= 1;
int root_seen= 0, do_md5_mem;
int root_seen= 0, do_md5_mem, option_d= 0;
mode_t mode_and, mode_or;
int with_boot_image= 0, with_cat_path= 0, with_emul_toc= 0;
int old_root_md5= 1, old_root_dev= 0, old_root_ino= 1;
@ -1633,9 +1633,7 @@ not_enough_args:;
} else if(strcmp(argpt, "-D") == 0 ||
strcmp(argpt, "-disable-deep-relocation") == 0) {
ret= Xorriso_option_compliance(xorriso, "deep_paths", 0);
if(ret <= 0)
goto problem_handler_2;
option_d= 1;
} else if(strcmp(argpt, "-hide-rr-moved") == 0) {
rr_reloc_dir_pt= ".rr_moved";
@ -1656,7 +1654,8 @@ rr_reloc_dir:;
ret= Xorriso_option_rr_reloc_dir(xorriso, rr_reloc_dir_pt, 0);
if(ret <= 0)
goto problem_handler_2;
ret= Xorriso_option_compliance(xorriso, "deep_paths_off", 0);
ret= Xorriso_option_compliance(xorriso, "deep_paths_off:long_paths_off",
0);
if(ret <= 0)
goto problem_handler_2;
@ -1832,6 +1831,9 @@ problem_handler_2:;
goto ex;
}
if(option_d)
Xorriso_option_compliance(xorriso, "deep_paths:long_paths", 0);
/* After all pathspecs are added: perform boot related options */
for(j= 0; j < delay_opt_count; j++) {
i= delay_opt_list[j] & ~(1 << 31);

View File

@ -1 +1 @@
#define Xorriso_timestamP "2012.03.13.102621"
#define Xorriso_timestamP "2012.03.14.152414"

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 "Version 1.2.1, Mar 12, 2012"
.TH XORRISOFS 1 "Version 1.2.1, Mar 14, 2012"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
@ -494,26 +494,26 @@ Alias of \-r.
.TP
\fB\-D\fR
The standard ECMA\-119 demands that no path in the image shall have more
than 8 name components. Therefore it would be necessary to move deeper
directory trees to a higher directory. Rock Ridge offers an opportunity to
let these relocated directories appear at their orginal deep position, but
this feature might not be implemented properly by operating systems which
mount the image.
than 8 name components or 255 characters. Therefore it would be necessary
to move deeper directory trees to a higher directory. Rock Ridge offers an
opportunity to let these relocated directories appear at their orginal
deep position, but this feature might not be implemented properly by
operating systems which mount the image.
.br
Option \-D disables this deep directory relocation, and thus violates
ISO 9660 specs.
.br
xorrisofs has \-D set by default. It may get overridden by option \-rr_reloc_dir
or by option \-hide\-rr\-moved, and it may override said options. The last one
in the option list wins.
xorrisofs has \-D set by default. If given explicitely then it overrides
the options \-rr_reloc_dir and \-hide\-rr\-moved.
.TP
\fB\-disable-deep-relocation\fR
Alias of \-D.
.TP
\fB\-rr_reloc_dir\fR name
Enable the relocation of deep directories and thus avoid ECMA\-119 file paths
of more than 8 name components. Directories of depth 8 will get moved to a
directory in the root directory of the image. Its name gets set by this option.
of more than 8 name components or 255 characters. Directories which lead to
such file paths will get moved to a directory in the root directory of the
image. Its name gets set by this option.
It is permissible to use the root directory itself.
.br
The overall directory tree will appear originally deep when interpreted as
@ -527,6 +527,8 @@ mounted Rock Ridge images.
.br
The name must not contain a '/' character after its first character and it
must not be longer than 255 bytes.
.br
This option has no effect if option \-D is present.
.TP
\fB\-hide-rr-moved\fR
Alias of \-rr_reloc_dir "/.rr_moved"

View File

@ -508,26 +508,26 @@ File: xorrisofs.info, Node: SetExtras, Next: SetHide, Prev: SetCompl, Up: Op
-D
The standard ECMA-119 demands that no path in the image shall have
more than 8 name components. Therefore it would be necessary to
move deeper directory trees to a higher directory. Rock Ridge
offers an opportunity to let these relocated directories appear at
their orginal deep position, but this feature might not be
implemented properly by operating systems which mount the image.
more than 8 name components or 255 characters. Therefore it would
be necessary to move deeper directory trees to a higher directory.
Rock Ridge offers an opportunity to let these relocated
directories appear at their orginal deep position, but this
feature might not be implemented properly by operating systems
which mount the image.
Option -D disables this deep directory relocation, and thus
violates ISO 9660 specs.
xorrisofs has -D set by default. It may get overridden by option
-rr_reloc_dir or by option -hide-rr-moved, and it may override
said options. The last one in the option list wins.
xorrisofs has -D set by default. If given explicitely then it
overrides the options -rr_reloc_dir and -hide-rr-moved.
-disable-deep-relocation
Alias of -D.
-rr_reloc_dir name
Enable the relocation of deep directories and thus avoid ECMA-119
file paths of more than 8 name components. Directories of depth 8
will get moved to a directory in the root directory of the image.
Its name gets set by this option. It is permissible to use the
root directory itself.
file paths of more than 8 name components or 255 characters.
Directories which lead to such file paths will get moved to a
directory in the root directory of the image. Its name gets set by
this option. It is permissible to use the root directory itself.
The overall directory tree will appear originally deep when
interpreted as Rock Ridge tree. It will appear as re-arranged if
only ECMA-119 information is considered.
@ -537,6 +537,7 @@ File: xorrisofs.info, Node: SetExtras, Next: SetHide, Prev: SetCompl, Up: Op
will not be displayed in mounted Rock Ridge images.
The name must not contain a '/' character after its first
character and it must not be longer than 255 bytes.
This option has no effect if option -D is present.
-hide-rr-moved
Alias of -rr_reloc_dir "/.rr_moved"
@ -1534,15 +1535,15 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T
[index]
* Menu:
* --acl Recording of ACLs: SetExtras. (line 63)
* --acl Recording of ACLs: SetExtras. (line 64)
* --boot-catalog-hide Hide El Torito boot catalog: Bootable.
(line 95)
* --efi-boot El Torito EFI boot image: Bootable. (line 58)
* --embedded-boot Fill System Area e.g. by MBR: SystemArea. (line 27)
* --emul-toc enable table-of-content emulation: SetProduct. (line 35)
* --for_backup Enable backup fidelity: SetExtras. (line 59)
* --hardlinks Recording of hardlink relations: SetExtras. (line 84)
* --md5 Recording of MD5 checksums: SetExtras. (line 76)
* --for_backup Enable backup fidelity: SetExtras. (line 60)
* --hardlinks Recording of hardlink relations: SetExtras. (line 85)
* --md5 Recording of MD5 checksums: SetExtras. (line 77)
* --modification-date set ISO image timestamps: ImageId. (line 82)
* --no-emul-toc no table-of-content emulation: SetProduct. (line 44)
* --no_rc do not execute startup files: Miscellaneous. (line 16)
@ -1557,11 +1558,11 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T
(line 41)
* --quoted_path_list read pathspecs from disk file: SetInsert.
(line 13)
* --scdbackup_tag Recording of MD5 checksum: SetExtras. (line 93)
* --scdbackup_tag Recording of MD5 checksum: SetExtras. (line 94)
* --sort-weight set output file address: SetProduct. (line 49)
* --stdio_sync control forced output to disk files: SetProduct.
(line 25)
* --xattr Recording of xattr: SetExtras. (line 69)
* --xattr Recording of xattr: SetExtras. (line 70)
* -A set Application Id: ImageId. (line 38)
* -abstract set Abstract File path: ImageId. (line 66)
* -allow-lowercase lowercase in ISO file names: SetCompl. (line 46)
@ -1615,13 +1616,13 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T
* -hide-list keep matching files invisible in ISO tree: SetHide.
(line 16)
* -hide-rr-moved set deep directory relocation target: SetExtras.
(line 56)
(line 57)
* -input-charset set character set of disk file names: Charset.
(line 17)
* -iso-level define ISO 9660 limitations: SetCompl. (line 7)
* -isohybrid-mbr Install ISOLINUX isohybrid MBR: SystemArea.
(line 30)
* -J enable production of Joliet directory tree: SetExtras. (line 102)
* -J enable production of Joliet directory tree: SetExtras. (line 103)
* -jigdo-exclude add exclusion pattern for .md5: Jigdo. (line 59)
* -jigdo-force-md5 add check pattern for .md5: Jigdo. (line 52)
* -jigdo-jigdo set name of .jigdo file: Jigdo. (line 38)
@ -1631,8 +1632,8 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T
* -jigdo-template-compress choose compression algorithm: Jigdo.
(line 76)
* -joliet enable production of Joliet directory tree: SetExtras.
(line 106)
* -joliet-long allow longer Joliet names: SetExtras. (line 109)
(line 107)
* -joliet-long allow longer Joliet names: SetExtras. (line 110)
* -l allow 37 characters in ISO file names: SetCompl. (line 57)
* -m exclude disk files from inserting: SetInsert. (line 35)
* -M set path for loading existing ISO image: Loading. (line 11)
@ -1707,9 +1708,9 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Menu:
* Abstract File, set path, -abstract: ImageId. (line 66)
* ACL, record and load, --acl: SetExtras. (line 63)
* ACL, record and load, --acl: SetExtras. (line 64)
* Application Id, set, -A, -appid: ImageId. (line 38)
* Backup, enable fidelity, --for_backup: SetExtras. (line 59)
* Backup, enable fidelity, --for_backup: SetExtras. (line 60)
* Biblio File, set path, -biblio: ImageId. (line 72)
* Block address, set sort weight, --sort-weight: SetProduct. (line 49)
* Bootability, boot catalog hidden, --boot-catalog-hide: Bootable.
@ -1748,15 +1749,15 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Deep directories, allow, -D, -disable-deep-relocation: SetExtras.
(line 24)
* Deep directories, relocation target, -hide-rr-moved: SetExtras.
(line 56)
(line 57)
* Deep directories, relocation target, -rr_reloc_dir: SetExtras.
(line 40)
* Disk files, exclude, -hide-list: SetInsert. (line 51)
* Disk files, exclude, -m, -exclude, -x, -old-exclude: SetInsert.
(line 35)
* disk_path, _definition: Insert. (line 8)
* ECMA-119, _definiton: Standards. (line 6)
* El Torito, _definiton: Bootable. (line 13)
* ECMA-119, _definition: Standards. (line 6)
* El Torito, _definition: Bootable. (line 13)
* Examples: Examples. (line 6)
* Forced output, control, --stdio_sync: SetProduct. (line 25)
* Hiding, from ISO and Rock Ridge, -hide: SetHide. (line 8)
@ -1771,8 +1772,8 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Incremental insertion, enable disk devno, --old-root-devno: SetInsert.
(line 97)
* Incremental insertion, enable, -old-root: SetInsert. (line 70)
* ISO 9660, _definiton: Standards. (line 6)
* ISO 9660:1999, _definiton: Standards. (line 26)
* ISO 9660, _definition: Standards. (line 6)
* ISO 9660:1999, _definition: Standards. (line 26)
* ISO file names, allow 37 characters, -l, -full-iso9660-filenames, -max-iso9660-filenames: SetCompl.
(line 57)
* ISO file names, allow lowercase, -allow-lowercase: SetCompl.
@ -1804,15 +1805,15 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Jigdo Template Extraction, -jigdo-template-compress: Jigdo. (line 76)
* Jigdo Template Extraction, -md5-list: Jigdo. (line 73)
* Jigdo Template Extraction, _definition: Jigdo. (line 6)
* Joliet, _definiton: Standards. (line 21)
* Joliet, allows longer names, -joliet-long: SetExtras. (line 109)
* Joliet, enable, -J, -joliet: SetExtras. (line 102)
* Joliet, _definition: Standards. (line 21)
* Joliet, allows longer names, -joliet-long: SetExtras. (line 110)
* Joliet, enable, -J, -joliet: SetExtras. (line 103)
* Links, follow on disk, -f, -follow-links: SetInsert. (line 24)
* Links, record and load hard links, --hardlinks: SetExtras. (line 84)
* MBR, _definiton: SystemArea. (line 10)
* Links, record and load hard links, --hardlinks: SetExtras. (line 85)
* MBR, _definition: SystemArea. (line 10)
* MBR, append partition, -append_partition: SystemArea. (line 86)
* MBR, sectors per head, -partition_sec_hd: SystemArea. (line 58)
* MD5, record and load, --md5: SetExtras. (line 76)
* MD5, record and load, --md5: SetExtras. (line 77)
* Message output, suppress, -quiet: Miscellaneous. (line 24)
* Mountability, by non-trivial partition 1, -partition_offset: SystemArea.
(line 46)
@ -1832,22 +1833,22 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Program version, report, -version: Miscellaneous. (line 34)
* Publisher Id, set, -p, -publisher: ImageId. (line 30)
* Rock Ridge, (always enabled), -R, -rock: SetExtras. (line 8)
* Rock Ridge, _definiton: Standards. (line 14)
* Rock Ridge, _definition: Standards. (line 14)
* Rock Ridge, altered owner and permission, -r, -rational-rock: SetExtras.
(line 15)
* scdbackup, record checksum tag, --scdbackup_tag: SetExtras. (line 93)
* scdbackup, record checksum tag, --scdbackup_tag: SetExtras. (line 94)
* Session, select path, -M, -prev-session, -dev: Loading. (line 11)
* Session, set load and write address, -C, -cdrecord-params: Loading.
(line 28)
* Startup files, suppress, --no_rc: Miscellaneous. (line 16)
* System Area, _definiton: SystemArea. (line 6)
* System Area, _definition: SystemArea. (line 6)
* System Id, set, -sysid: ImageId. (line 49)
* Table-of-content, emulation off, --no-emul-toc: SetProduct. (line 44)
* Table-of-content, emulation, --emul-toc: SetProduct. (line 35)
* Verbosity, high, -v, -verbose: Miscellaneous. (line 28)
* Volume Id, set, -V, -volid: ImageId. (line 13)
* Volume Set Id, set, -volset: ImageId. (line 26)
* xattr, record and load, --xattr: SetExtras. (line 69)
* xattr, record and load, --xattr: SetExtras. (line 70)
* xorriso, mkisofs emulation: Xorriso. (line 6)
* xorriso, options: Options. (line 6)
* zisofs file, enable recognition, -z, -transparent-compression: SetInsert.
@ -1867,26 +1868,26 @@ Node: SetInsert9142
Node: SetProduct13558
Node: SetCompl17265
Node: SetExtras19584
Node: SetHide24267
Node: ImageId25266
Node: Bootable28771
Node: SystemArea32836
Node: Charset39170
Node: Jigdo40196
Node: Miscellaneous44463
Node: Examples45627
Node: ExSimple46113
Node: ExGraft46592
Node: ExMkisofs47839
Node: ExGrowisofs49092
Node: ExIncBackup50264
Node: ExIncBckAcc53372
Node: ExBootable55048
Node: Files57140
Node: Seealso58214
Node: Bugreport58870
Node: Legal59451
Node: CommandIdx60266
Node: ConceptIdx72099
Node: SetHide24316
Node: ImageId25315
Node: Bootable28820
Node: SystemArea32885
Node: Charset39219
Node: Jigdo40245
Node: Miscellaneous44512
Node: Examples45676
Node: ExSimple46162
Node: ExGraft46641
Node: ExMkisofs47888
Node: ExGrowisofs49141
Node: ExIncBackup50313
Node: ExIncBckAcc53421
Node: ExBootable55097
Node: Files57189
Node: Seealso58263
Node: Bugreport58919
Node: Legal59500
Node: CommandIdx60315
Node: ConceptIdx72148

End Tag Table

View File

@ -50,7 +50,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 "Version 1.2.1, Mar 12, 2012"
@c man .TH XORRISOFS 1 "Version 1.2.1, Mar 14, 2012"
@c man .\" Please adjust this date whenever revising the manpage.
@c man .\"
@c man .\" Some roff macros, for reference:
@ -128,8 +128,8 @@ code with cdrtools.
@chapter ISO 9660, Rock Ridge, Joliet
@c man \fBISO 9660, Rock Ridge, Joliet:\fR
@c man .br
@cindex ISO 9660, _definiton
@cindex ECMA-119, _definiton
@cindex ISO 9660, _definition
@cindex ECMA-119, _definition
@strong{ISO 9660}
(aka @strong{ECMA-119}) is a read-only filesystem that is mainly used for
optical media CD, DVD, BD, but may also reside on other storage devices like
@ -140,7 +140,7 @@ ISO 9660 describes directories and data files by
very restricted filenames with no distinction of upper case and lower case.
Its metadata do not comply to fundamental POSIX specifications.
@*
@cindex Rock Ridge, _definiton
@cindex Rock Ridge, _definition
@strong{Rock Ridge}
is the name of a set of additional information which enhance
an ISO 9660 filesystem so that it can represent a POSIX compliant filesystem
@ -151,7 +151,7 @@ Rock Ridge allows filenames of up to 255 bytes and paths of up to
Rock Ridge information is produced unconditionally with any @command{xorrisofs}
image.
@*
@cindex Joliet, _definiton
@cindex Joliet, _definition
@strong{Joliet}
is the name of an additional directory tree which provides
filenames up to 64 characters encoded as UTF-16.
@ -159,7 +159,7 @@ A Joliet tree is mainly interesting for reading the ISO image by
operating systems of Microsoft Corporation.
Production of this directory tree may be enabled by option -J.
@*
@cindex ISO 9660:1999, _definiton
@cindex ISO 9660:1999, _definition
@strong{ISO 9660:1999}
is the name of an additional directory tree which provides longer
filenames. It allows single file names to have up to 207 characters.
@ -727,18 +727,17 @@ Alias of -r.
@kindex -D allow deep directory hierachies
@cindex Deep directories, allow, -D, -disable-deep-relocation
The standard ECMA-119 demands that no path in the image shall have more
than 8 name components. Therefore it would be necessary to move deeper
directory trees to a higher directory. Rock Ridge offers an opportunity to
let these relocated directories appear at their orginal deep position, but
this feature might not be implemented properly by operating systems which
mount the image.
than 8 name components or 255 characters. Therefore it would be necessary
to move deeper directory trees to a higher directory. Rock Ridge offers an
opportunity to let these relocated directories appear at their orginal
deep position, but this feature might not be implemented properly by
operating systems which mount the image.
@*
Option -D disables this deep directory relocation, and thus violates
ISO 9660 specs.
@*
xorrisofs has -D set by default. It may get overridden by option -rr_reloc_dir
or by option -hide-rr-moved, and it may override said options. The last one
in the option list wins.
xorrisofs has -D set by default. If given explicitely then it overrides
the options -rr_reloc_dir and -hide-rr-moved.
@c man .TP
@item -disable-deep-relocation
@kindex -disable-deep-relocation allow deep directory hierachies
@ -748,8 +747,9 @@ Alias of -D.
@kindex -rr_reloc_dir set deep directory relocation target
@cindex Deep directories, relocation target, -rr_reloc_dir
Enable the relocation of deep directories and thus avoid ECMA-119 file paths
of more than 8 name components. Directories of depth 8 will get moved to a
directory in the root directory of the image. Its name gets set by this option.
of more than 8 name components or 255 characters. Directories which lead to
such file paths will get moved to a directory in the root directory of the
image. Its name gets set by this option.
It is permissible to use the root directory itself.
@*
The overall directory tree will appear originally deep when interpreted as
@ -763,6 +763,8 @@ mounted Rock Ridge images.
@*
The name must not contain a '/' character after its first character and it
must not be longer than 255 bytes.
@*
This option has no effect if option -D is present.
@c man .TP
@item -hide-rr-moved
@kindex -hide-rr-moved set deep directory relocation target
@ -1026,7 +1028,7 @@ boot facility.
@*
@c man .PP
@sp 1
@cindex El Torito, _definiton
@cindex El Torito, _definition
An @strong{El Torito}
boot record points the bootstrapping facility to a boot catalog
with one or more boot images, which are binary program files stored in
@ -1147,13 +1149,13 @@ in the directory trees of the image.
@node SystemArea, Charset, Bootable, Options
@section System Area, MBR, other boot blocks
@c man .PP
@cindex System Area, _definiton
@cindex System Area, _definition
The first 16 blocks of an ISO image are the System Area.
It is reserved for system dependent boot software. This may be the
CD boot facilities of exotic hardware architectures or it may be
a MBR for booting via PC-BIOS from USB stick or hard disk.
@*
@cindex MBR, _definiton
@cindex MBR, _definition
A @strong{MBR} (Master Boot Record) contains boot code and a partition table.
It does not hamper El Torito booting from CDROM.
@*