Adjusted behavior of -as mkisofs option -D
This commit is contained in:
parent
ea3ae8d436
commit
a0b8588598
@ -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 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 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 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;
|
mode_t mode_and, mode_or;
|
||||||
int with_boot_image= 0, with_cat_path= 0, with_emul_toc= 0;
|
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;
|
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 ||
|
} else if(strcmp(argpt, "-D") == 0 ||
|
||||||
strcmp(argpt, "-disable-deep-relocation") == 0) {
|
strcmp(argpt, "-disable-deep-relocation") == 0) {
|
||||||
ret= Xorriso_option_compliance(xorriso, "deep_paths", 0);
|
option_d= 1;
|
||||||
if(ret <= 0)
|
|
||||||
goto problem_handler_2;
|
|
||||||
|
|
||||||
} else if(strcmp(argpt, "-hide-rr-moved") == 0) {
|
} else if(strcmp(argpt, "-hide-rr-moved") == 0) {
|
||||||
rr_reloc_dir_pt= ".rr_moved";
|
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);
|
ret= Xorriso_option_rr_reloc_dir(xorriso, rr_reloc_dir_pt, 0);
|
||||||
if(ret <= 0)
|
if(ret <= 0)
|
||||||
goto problem_handler_2;
|
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)
|
if(ret <= 0)
|
||||||
goto problem_handler_2;
|
goto problem_handler_2;
|
||||||
|
|
||||||
@ -1832,6 +1831,9 @@ problem_handler_2:;
|
|||||||
goto ex;
|
goto ex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(option_d)
|
||||||
|
Xorriso_option_compliance(xorriso, "deep_paths:long_paths", 0);
|
||||||
|
|
||||||
/* After all pathspecs are added: perform boot related options */
|
/* After all pathspecs are added: perform boot related options */
|
||||||
for(j= 0; j < delay_opt_count; j++) {
|
for(j= 0; j < delay_opt_count; j++) {
|
||||||
i= delay_opt_list[j] & ~(1 << 31);
|
i= delay_opt_list[j] & ~(1 << 31);
|
||||||
|
@ -1 +1 @@
|
|||||||
#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
|
.\" First parameter, NAME, should be all caps
|
||||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||||
.\" other parameters are allowed: see man(7), man(1)
|
.\" 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.
|
.\" Please adjust this date whenever revising the manpage.
|
||||||
.\"
|
.\"
|
||||||
.\" Some roff macros, for reference:
|
.\" Some roff macros, for reference:
|
||||||
@ -494,26 +494,26 @@ Alias of \-r.
|
|||||||
.TP
|
.TP
|
||||||
\fB\-D\fR
|
\fB\-D\fR
|
||||||
The standard ECMA\-119 demands that no path in the image shall have more
|
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
|
than 8 name components or 255 characters. Therefore it would be necessary
|
||||||
directory trees to a higher directory. Rock Ridge offers an opportunity to
|
to move deeper directory trees to a higher directory. Rock Ridge offers an
|
||||||
let these relocated directories appear at their orginal deep position, but
|
opportunity to let these relocated directories appear at their orginal
|
||||||
this feature might not be implemented properly by operating systems which
|
deep position, but this feature might not be implemented properly by
|
||||||
mount the image.
|
operating systems which mount the image.
|
||||||
.br
|
.br
|
||||||
Option \-D disables this deep directory relocation, and thus violates
|
Option \-D disables this deep directory relocation, and thus violates
|
||||||
ISO 9660 specs.
|
ISO 9660 specs.
|
||||||
.br
|
.br
|
||||||
xorrisofs has \-D set by default. It may get overridden by option \-rr_reloc_dir
|
xorrisofs has \-D set by default. If given explicitely then it overrides
|
||||||
or by option \-hide\-rr\-moved, and it may override said options. The last one
|
the options \-rr_reloc_dir and \-hide\-rr\-moved.
|
||||||
in the option list wins.
|
|
||||||
.TP
|
.TP
|
||||||
\fB\-disable-deep-relocation\fR
|
\fB\-disable-deep-relocation\fR
|
||||||
Alias of \-D.
|
Alias of \-D.
|
||||||
.TP
|
.TP
|
||||||
\fB\-rr_reloc_dir\fR name
|
\fB\-rr_reloc_dir\fR name
|
||||||
Enable the relocation of deep directories and thus avoid ECMA\-119 file paths
|
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
|
of more than 8 name components or 255 characters. Directories which lead to
|
||||||
directory in the root directory of the image. Its name gets set by this option.
|
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.
|
It is permissible to use the root directory itself.
|
||||||
.br
|
.br
|
||||||
The overall directory tree will appear originally deep when interpreted as
|
The overall directory tree will appear originally deep when interpreted as
|
||||||
@ -527,6 +527,8 @@ mounted Rock Ridge images.
|
|||||||
.br
|
.br
|
||||||
The name must not contain a '/' character after its first character and it
|
The name must not contain a '/' character after its first character and it
|
||||||
must not be longer than 255 bytes.
|
must not be longer than 255 bytes.
|
||||||
|
.br
|
||||||
|
This option has no effect if option \-D is present.
|
||||||
.TP
|
.TP
|
||||||
\fB\-hide-rr-moved\fR
|
\fB\-hide-rr-moved\fR
|
||||||
Alias of \-rr_reloc_dir "/.rr_moved"
|
Alias of \-rr_reloc_dir "/.rr_moved"
|
||||||
|
@ -508,26 +508,26 @@ File: xorrisofs.info, Node: SetExtras, Next: SetHide, Prev: SetCompl, Up: Op
|
|||||||
|
|
||||||
-D
|
-D
|
||||||
The standard ECMA-119 demands that no path in the image shall have
|
The standard ECMA-119 demands that no path in the image shall have
|
||||||
more than 8 name components. Therefore it would be necessary to
|
more than 8 name components or 255 characters. Therefore it would
|
||||||
move deeper directory trees to a higher directory. Rock Ridge
|
be necessary to move deeper directory trees to a higher directory.
|
||||||
offers an opportunity to let these relocated directories appear at
|
Rock Ridge offers an opportunity to let these relocated
|
||||||
their orginal deep position, but this feature might not be
|
directories appear at their orginal deep position, but this
|
||||||
implemented properly by operating systems which mount the image.
|
feature might not be implemented properly by operating systems
|
||||||
|
which mount the image.
|
||||||
Option -D disables this deep directory relocation, and thus
|
Option -D disables this deep directory relocation, and thus
|
||||||
violates ISO 9660 specs.
|
violates ISO 9660 specs.
|
||||||
xorrisofs has -D set by default. It may get overridden by option
|
xorrisofs has -D set by default. If given explicitely then it
|
||||||
-rr_reloc_dir or by option -hide-rr-moved, and it may override
|
overrides the options -rr_reloc_dir and -hide-rr-moved.
|
||||||
said options. The last one in the option list wins.
|
|
||||||
|
|
||||||
-disable-deep-relocation
|
-disable-deep-relocation
|
||||||
Alias of -D.
|
Alias of -D.
|
||||||
|
|
||||||
-rr_reloc_dir name
|
-rr_reloc_dir name
|
||||||
Enable the relocation of deep directories and thus avoid ECMA-119
|
Enable the relocation of deep directories and thus avoid ECMA-119
|
||||||
file paths of more than 8 name components. Directories of depth 8
|
file paths of more than 8 name components or 255 characters.
|
||||||
will get moved to a directory in the root directory of the image.
|
Directories which lead to such file paths will get moved to a
|
||||||
Its name gets set by this option. It is permissible to use the
|
directory in the root directory of the image. Its name gets set by
|
||||||
root directory itself.
|
this option. It is permissible to use the root directory itself.
|
||||||
The overall directory tree will appear originally deep when
|
The overall directory tree will appear originally deep when
|
||||||
interpreted as Rock Ridge tree. It will appear as re-arranged if
|
interpreted as Rock Ridge tree. It will appear as re-arranged if
|
||||||
only ECMA-119 information is considered.
|
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.
|
will not be displayed in mounted Rock Ridge images.
|
||||||
The name must not contain a '/' character after its first
|
The name must not contain a '/' character after its first
|
||||||
character and it must not be longer than 255 bytes.
|
character and it must not be longer than 255 bytes.
|
||||||
|
This option has no effect if option -D is present.
|
||||||
|
|
||||||
-hide-rr-moved
|
-hide-rr-moved
|
||||||
Alias of -rr_reloc_dir "/.rr_moved"
|
Alias of -rr_reloc_dir "/.rr_moved"
|
||||||
@ -1534,15 +1535,15 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T
|
|||||||
|