Commit ba571848 authored by Thomas Schmitt's avatar Thomas Schmitt

Adjusted behavior of -as mkisofs option -D

parent 3af66f3c
......@@ -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);
......
#define Xorriso_timestamP "2012.03.13.102621"
#define Xorriso_timestamP "2012.03.14.152414"
......@@ -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"
......
This diff is collapsed.
......@@ -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.
@*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment