New options -osirrox and -cpx

Thomas Schmitt 15 years ago
parent c410093711
commit 69fd5ff008

@ -1589,6 +1589,26 @@ Like -compare but working recursively. I.e. all file objects below both
addresses get compared whether they have counterparts below the other address
and whether both counterparts match.
.B osirrox restore options:
Normally xorriso only writes to disk files which were given as stdio:
pseudo-drives or as log files.
But its alter ego, osirrox, is able to extract file objects
from ISO images and to create, overwrite, or delete file objects on disk.
\fB\-osirrox\fR "on"|"off"
Setting "off" disables disk filesystem manipulations. This is the default
unless the program was started with leafname "osirrox". Elsewise
the capability to restore files can be enabled explicitly by -osirrox "on".
\fB\-cpx\fR iso_rr_path [***] disk_path
Extract regular files from the ISO image and store them under the address given
by disk_path. If more then one iso_rr_path is given then disk_path must be
a directory or non-existent. In the latter case it gets created and the
extracted files get installed in it with the same leafnames.
Missing directory components in disk_path will get created, if possible.
.B Command compatibility emulations:
Writing of ISO 9660 on CD is traditionally done by program mkisofs

@ -8647,7 +8647,7 @@ int Xorriso_option_cpx(struct XorrisO *xorriso, int argc, char **argv,
ret= Sfile_add_to_path(eff_dest, leafname, 0);
if(ret<=0) {
sprintf(xorriso->info_text, "Effective path gets much too long (%d)",
(int) (strlen(eff_dest)+strlen(leafname)+1i));
(int) (strlen(eff_dest)+strlen(leafname)+1));
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0);
goto problem_handler;
@ -9588,6 +9588,14 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag)
" -compare_r disk_path iso_rr_path ",
" Like -compare but affecting all files below directories.",
"Restore options (copying file objects from ISO image to disk filesystem):",
" -osirrox \"on\"|\"off\"",
" By default \"off\" the inverse operation of xorriso from ISO",
" image to disk filesystem is disabled. \"on\" allows xorriso",
" to create, overwrite, delete files in the disk filesystem.",
" -cpx iso_rr_path [***] disk_path",
" Copy regular files from ISO image to disk filesystem.",
"Compatibility emulation (argument list may be ended by --):",
" -as mkisofs [-help|-o|-R|-J|-V|-P|-f|-graft-points|-path-list|pathspecs]",
" Perform some mkisofs gestures, understand pathspecs as mkisofs",

@ -1 +1 @@
#define Xorriso_timestamP "2008.05.22.192737"
#define Xorriso_timestamP "2008.05.22.210835"

@ -2445,7 +2445,7 @@ int Xorriso_restore_implict_properties(struct XorrisO *xorriso, IsoDir *dir,
int Xorriso_tree_restore_node(struct XorrisO *xorriso, IsoNode *node,
char *img_path, char *disk_path, int flag)
int ret, write_fd= -1, wanted, wret;
int ret= 0, write_fd= -1, wanted, wret;
char *what= "[unknown filetype]", sfe[5*SfileadrL], buf[32*1024];
off_t todo, size;
void *stream2= NULL;