New -find test -bad_outname, new -find action print_outname
This commit is contained in:
parent
61244da0bf
commit
784f8f7689
@ -864,8 +864,8 @@ int Findjob_set_damage_filter(struct FindjoB *o, int value, int flag)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int Findjob_set_lba_range(struct FindjoB *o, int start_lba, int count,
|
int Findjob_set_num_filter(struct FindjoB *o, int test_type,
|
||||||
int flag)
|
int num1, int num2, int flag)
|
||||||
{
|
{
|
||||||
struct ExprtesT *t;
|
struct ExprtesT *t;
|
||||||
int ret;
|
int ret;
|
||||||
@ -875,20 +875,31 @@ int Findjob_set_lba_range(struct FindjoB *o, int start_lba, int count,
|
|||||||
return(ret);
|
return(ret);
|
||||||
|
|
||||||
t= o->cursor->test;
|
t= o->cursor->test;
|
||||||
t->test_type= 4;
|
t->test_type= test_type;
|
||||||
t->arg1= calloc(sizeof(int), 1);
|
t->arg1= calloc(sizeof(int), 1);
|
||||||
t->arg2= calloc(sizeof(int), 1);
|
t->arg2= calloc(sizeof(int), 1);
|
||||||
if(t->arg1 == NULL || t->arg2 == NULL)
|
if(t->arg1 == NULL || t->arg2 == NULL)
|
||||||
return(-1);
|
return(-1);
|
||||||
*((int *) t->arg1)= start_lba;
|
*((int *) t->arg1)= num1;
|
||||||
if(start_lba > 0)
|
*((int *) t->arg2)= num2;
|
||||||
*((int *) t->arg2)= start_lba + count - 1;
|
|
||||||
else
|
|
||||||
*((int *) t->arg2)= start_lba - count + 1;
|
|
||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int Findjob_set_lba_range(struct FindjoB *o, int start_lba, int count,
|
||||||
|
int flag)
|
||||||
|
{
|
||||||
|
int ret, end_lba;
|
||||||
|
|
||||||
|
if(start_lba > 0)
|
||||||
|
end_lba= start_lba + count - 1;
|
||||||
|
else
|
||||||
|
end_lba= start_lba - count + 1;
|
||||||
|
ret= Findjob_set_num_filter(o, 4, start_lba, end_lba, 0);
|
||||||
|
return(ret);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int Findjob_set_test_hidden(struct FindjoB *o, int mode, int flag)
|
int Findjob_set_test_hidden(struct FindjoB *o, int mode, int flag)
|
||||||
{
|
{
|
||||||
struct ExprtesT *t;
|
struct ExprtesT *t;
|
||||||
|
@ -49,6 +49,7 @@ struct ExprtesT {
|
|||||||
18= -has_hfs_crtp char *creator char *type
|
18= -has_hfs_crtp char *creator char *type
|
||||||
19= -has_hfs_bless int bless_index
|
19= -has_hfs_bless int bless_index
|
||||||
20= -disk_path char *arg1
|
20= -disk_path char *arg1
|
||||||
|
21= -bad_outname int namespace
|
||||||
*/
|
*/
|
||||||
int test_type;
|
int test_type;
|
||||||
|
|
||||||
@ -167,6 +168,7 @@ struct FindjoB {
|
|||||||
47= set_hfs_bless blessing
|
47= set_hfs_bless blessing
|
||||||
48= get_hfs_bless
|
48= get_hfs_bless
|
||||||
49= internal: update creator, type, and blessings from persistent isofs.*
|
49= internal: update creator, type, and blessings from persistent isofs.*
|
||||||
|
50= print_outname namespace
|
||||||
*/
|
*/
|
||||||
int action;
|
int action;
|
||||||
int prune;
|
int prune;
|
||||||
@ -218,6 +220,9 @@ int Findjob_get_start_path(struct FindjoB *o, char **start_path, int flag);
|
|||||||
|
|
||||||
int Findjob_set_commit_filter_2(struct FindjoB *o, int flag);
|
int Findjob_set_commit_filter_2(struct FindjoB *o, int flag);
|
||||||
|
|
||||||
|
int Findjob_set_num_filter(struct FindjoB *o, int test_type,
|
||||||
|
int num1, int num2, int flag);
|
||||||
|
|
||||||
int Findjob_set_lba_range(struct FindjoB *o, int start_lba, int count,
|
int Findjob_set_lba_range(struct FindjoB *o, int start_lba, int count,
|
||||||
int flag);
|
int flag);
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
#include "iso_manip.h"
|
#include "iso_manip.h"
|
||||||
#include "sort_cmp.h"
|
#include "sort_cmp.h"
|
||||||
#include "parse_exec.h"
|
#include "parse_exec.h"
|
||||||
|
#include "write_run.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -2309,6 +2310,91 @@ int Xorriso_estimate_file_size(struct XorrisO *xorriso, struct FindjoB *job,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* @param flag bit0= do not compare but print input and back converted name
|
||||||
|
*/
|
||||||
|
int Xorriso_test_outchar(struct XorrisO *xorriso, void *node_pt,
|
||||||
|
int name_space, int flag)
|
||||||
|
{
|
||||||
|
IsoNode *node;
|
||||||
|
char *result= NULL, *name, *back= NULL;
|
||||||
|
int ret, relax_mem;
|
||||||
|
size_t result_len, back_len, i;
|
||||||
|
struct isoburn_imgen_opts *sopts= NULL;
|
||||||
|
|
||||||
|
relax_mem= xorriso->relax_compliance;
|
||||||
|
|
||||||
|
node= (IsoNode *) node_pt;
|
||||||
|
ret= isoburn_igopt_new(&sopts, 0);
|
||||||
|
if(ret<=0) {
|
||||||
|
Xorriso_process_msg_queues(xorriso, 0);
|
||||||
|
ret= -1; goto ex;
|
||||||
|
}
|
||||||
|
if(!(flag & 1))
|
||||||
|
xorriso->relax_compliance|= isoburn_igopt_omit_version_numbers;
|
||||||
|
ret= Xorriso_make_iso_write_opts(xorriso, NULL, sopts, 0);
|
||||||
|
if(ret <= 0) {
|
||||||
|
ret= -1; goto ex;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(iso_node_get_type(node) == LIBISO_DIR)
|
||||||
|
name_space |= 256;
|
||||||
|
name_space|= 512; /* no error messages */
|
||||||
|
|
||||||
|
name= (char *) iso_node_get_name(node);
|
||||||
|
if(name == NULL) {
|
||||||
|
ret= 1; goto ex;
|
||||||
|
}
|
||||||
|
ret= isoburn_conv_name_chars(sopts, name, strlen(name), &result, &result_len,
|
||||||
|
name_space);
|
||||||
|
if(ret <= 0) {
|
||||||
|
Xorriso_process_msg_queues(xorriso, 0);
|
||||||
|
if(flag & 1)
|
||||||
|
goto print_outname;
|
||||||
|
ret= 0; goto ex;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Convert back and compare with original */
|
||||||
|
ret= isoburn_conv_name_chars(sopts, result, result_len, &back, &back_len,
|
||||||
|
name_space | (1 << 15));
|
||||||
|
if(ret <= 0) {
|
||||||
|
Xorriso_process_msg_queues(xorriso, 0);
|
||||||
|
if(flag & 1)
|
||||||
|
goto print_outname;
|
||||||
|
ret= 0; goto ex;
|
||||||
|
}
|
||||||
|
if(flag & 1) {
|
||||||
|
print_outname:;
|
||||||
|
Text_shellsafe(name, xorriso->result_line, 0);
|
||||||
|
strcat(xorriso->result_line, "\n");
|
||||||
|
Xorriso_result(xorriso, 0);
|
||||||
|
if(back == NULL)
|
||||||
|
strcpy(xorriso->result_line, "(file name conversion error)");
|
||||||
|
else
|
||||||
|
Text_shellsafe(back, xorriso->result_line, 0);
|
||||||
|
strcat(xorriso->result_line, "\n");
|
||||||
|
Xorriso_result(xorriso, 0);
|
||||||
|
strcpy(xorriso->result_line, "--\n");
|
||||||
|
Xorriso_result(xorriso, 0);
|
||||||
|
} else {
|
||||||
|
for(i= 0; i < back_len; i++)
|
||||||
|
if(name[i] != back[i])
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
if(name[i] != 0)
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
}
|
||||||
|
|
||||||
|
ret= 1;
|
||||||
|
ex:;
|
||||||
|
isoburn_igopt_destroy(&sopts, 0);
|
||||||
|
if(result != NULL)
|
||||||
|
free(result);
|
||||||
|
if(back != NULL)
|
||||||
|
free(back);
|
||||||
|
xorriso->relax_compliance= relax_mem;
|
||||||
|
return(ret);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int Xorriso_cannot_create_iter(struct XorrisO *xorriso, int iso_error,int flag)
|
int Xorriso_cannot_create_iter(struct XorrisO *xorriso, int iso_error,int flag)
|
||||||
{
|
{
|
||||||
Xorriso_process_msg_queues(xorriso,0);
|
Xorriso_process_msg_queues(xorriso,0);
|
||||||
@ -2676,6 +2762,11 @@ int Xorriso_findi_action(struct XorrisO *xorriso, struct FindjoB *job,
|
|||||||
}
|
}
|
||||||
ret= 1;
|
ret= 1;
|
||||||
|
|
||||||
|
} else if(action == 50) {
|
||||||
|
ret= Xorriso_test_outchar(xorriso, (void *) node, type, 1);
|
||||||
|
if(ret <= 0)
|
||||||
|
return(ret);
|
||||||
|
|
||||||
} else { /* includes : 15 in_iso */
|
} else { /* includes : 15 in_iso */
|
||||||
Xorriso_esc_filepath(xorriso, show_path, xorriso->result_line, 0);
|
Xorriso_esc_filepath(xorriso, show_path, xorriso->result_line, 0);
|
||||||
strcat(xorriso->result_line, "\n");
|
strcat(xorriso->result_line, "\n");
|
||||||
@ -2956,6 +3047,14 @@ return:
|
|||||||
break; case 20: /* -disk_path */
|
break; case 20: /* -disk_path */
|
||||||
value= !! Exprtest_match_disk_name(xorriso, ftest, node, 1);
|
value= !! Exprtest_match_disk_name(xorriso, ftest, node, 1);
|
||||||
|
|
||||||
|
break; case 21: /* -bad_outname */
|
||||||
|
ret= Xorriso_test_outchar(xorriso, node, *((int *) arg1), 0);
|
||||||
|
if(ret < 0) {
|
||||||
|
value= -1;
|
||||||
|
goto ex;
|
||||||
|
}
|
||||||
|
value= !ret; /* Xorriso_test_outchar() returns 1 for good and 0 for bad */
|
||||||
|
|
||||||
break; default:
|
break; default:
|
||||||
|
|
||||||
/* >>> complain about unknown test type */;
|
/* >>> complain about unknown test type */;
|
||||||
|
@ -660,6 +660,23 @@ ex:;
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static int Xorriso_determine_name_space(struct XorrisO *xorriso,
|
||||||
|
char *space_name, int flag)
|
||||||
|
{
|
||||||
|
if(strcmp(space_name, "rockridge") == 0)
|
||||||
|
return(1);
|
||||||
|
else if(strcmp(space_name, "joliet") == 0)
|
||||||
|
return(2);
|
||||||
|
else if(strcmp(space_name, "ecma119") == 0 ||
|
||||||
|
strcmp(space_name, "iso9660") == 0)
|
||||||
|
return(3);
|
||||||
|
else if(strcmp(space_name, "hfsplus") == 0)
|
||||||
|
return(4);
|
||||||
|
sprintf(xorriso->info_text, "-find: Unknown output namespace identifier");
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Option -find alias -findi, and -findx */
|
/* Option -find alias -findi, and -findx */
|
||||||
/* @param flag bit0= -findx rather than -findi
|
/* @param flag bit0= -findx rather than -findi
|
||||||
bit1= do not reset pacifier, no final pacifier message
|
bit1= do not reset pacifier, no final pacifier message
|
||||||
@ -673,7 +690,7 @@ int Xorriso_option_find(struct XorrisO *xorriso, int argc, char **argv,
|
|||||||
int *idx, int flag)
|
int *idx, int flag)
|
||||||
{
|
{
|
||||||
int ret, i, end_idx, type= 0, action, deleter= 0, start_lba, count;
|
int ret, i, end_idx, type= 0, action, deleter= 0, start_lba, count;
|
||||||
int list_extattr_head= 0, bsl_mem, disk_path;
|
int list_extattr_head= 0, bsl_mem, disk_path, name_space;
|
||||||
struct FindjoB *job, *first_job= NULL, *new_job;
|
struct FindjoB *job, *first_job= NULL, *new_job;
|
||||||
char *start_path, *path= NULL, *cpt, *other_path_start= NULL, *cd_pt;
|
char *start_path, *path= NULL, *cpt, *other_path_start= NULL, *cd_pt;
|
||||||
char *access_acl_text= NULL, *default_acl_text= NULL, *list_extattr_mode;
|
char *access_acl_text= NULL, *default_acl_text= NULL, *list_extattr_mode;
|
||||||
@ -831,6 +848,19 @@ not_enough_arguments:;
|
|||||||
sprintf(xorriso->info_text, "-findi: cannot setup -has_hfs_bless test");
|
sprintf(xorriso->info_text, "-findi: cannot setup -has_hfs_bless test");
|
||||||
goto sorry_ex;
|
goto sorry_ex;
|
||||||
}
|
}
|
||||||
|
} else if(strcmp(argv[i], "-bad_outname")==0) {
|
||||||
|
if(i + 1 >= end_idx)
|
||||||
|
goto not_enough_arguments;
|
||||||
|
i+= 1;
|
||||||
|
name_space= Xorriso_determine_name_space(xorriso, argv[i], 0);
|
||||||
|
if(name_space < 0) {
|
||||||
|
ret= 0; goto sorry_ex;
|
||||||
|
}
|
||||||
|
ret= Findjob_set_num_filter(job, 21, name_space, 0, 0);
|
||||||
|
if(ret <= 0) {
|
||||||
|
sprintf(xorriso->info_text, "-findi: cannot setup -bad_outname test");
|
||||||
|
goto sorry_ex;
|
||||||
|
}
|
||||||
} else if(strcmp(argv[i], "-true") == 0) {
|
} else if(strcmp(argv[i], "-true") == 0) {
|
||||||
ret= Findjob_set_false(job, -1, 0);
|
ret= Findjob_set_false(job, -1, 0);
|
||||||
} else if(strcmp(argv[i], "-false") == 0) {
|
} else if(strcmp(argv[i], "-false") == 0) {
|
||||||
@ -1139,6 +1169,16 @@ not_enough_exec_arguments:;
|
|||||||
Findjob_set_action_target(job, 47, argv[i], 0);
|
Findjob_set_action_target(job, 47, argv[i], 0);
|
||||||
} else if(strcmp(cpt, "get_hfs_bless")==0) {
|
} else if(strcmp(cpt, "get_hfs_bless")==0) {
|
||||||
Findjob_set_action_target(job, 48, NULL, 0);
|
Findjob_set_action_target(job, 48, NULL, 0);
|
||||||
|
} else if(strcmp(cpt, "print_outname")==0) {
|
||||||
|
if(i+1>=end_idx)
|
||||||
|
goto not_enough_exec_arguments;
|
||||||
|
i++;
|
||||||
|
name_space= Xorriso_determine_name_space(xorriso, argv[i], 0);
|
||||||
|
if(name_space < 0) {
|
||||||
|
ret= 0; goto sorry_ex;
|
||||||
|
}
|
||||||
|
Findjob_set_action_type(job, 50, name_space, 0);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
sprintf(xorriso->info_text, "-find -exec: unknown action ");
|
sprintf(xorriso->info_text, "-find -exec: unknown action ");
|
||||||
Text_shellsafe(argv[i], xorriso->info_text, 1);
|
Text_shellsafe(argv[i], xorriso->info_text, 1);
|
||||||
@ -1802,7 +1842,7 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag)
|
|||||||
" -type b|c|d|p|f|l|s|e, -pending_data, -hidden,",
|
" -type b|c|d|p|f|l|s|e, -pending_data, -hidden,",
|
||||||
" -lba_range start count, -damaged, -has_acl, -has_xattr,",
|
" -lba_range start count, -damaged, -has_acl, -has_xattr,",
|
||||||
" -has_aaip, -has_filter, -has_md5, -has_any_xattr,",
|
" -has_aaip, -has_filter, -has_md5, -has_any_xattr,",
|
||||||
" -has_hfs_crtp, -has_hfs_bless,",
|
" -has_hfs_crtp, -has_hfs_bless, -bad_outname,",
|
||||||
" -prune, -decision yes|no, -true, -false",
|
" -prune, -decision yes|no, -true, -false",
|
||||||
" Operators: -not, -or, -and, -sub, (, -subend, ),",
|
" Operators: -not, -or, -and, -sub, (, -subend, ),",
|
||||||
" -if, -then, -elseif, -else, -endif",
|
" -if, -then, -elseif, -else, -endif",
|
||||||
@ -1812,7 +1852,8 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag)
|
|||||||
" getfacl, setfacl, getfattr, setfattr, get_any_xattr,",
|
" getfacl, setfacl, getfattr, setfattr, get_any_xattr,",
|
||||||
" list_extattr, get_md5, check_md5, make_md5,",
|
" list_extattr, get_md5, check_md5, make_md5,",
|
||||||
" set_hfs_crtp, get_hfs_crtp, set_hfs_bless, get_hfs_bless,",
|
" set_hfs_crtp, get_hfs_crtp, set_hfs_bless, get_hfs_bless,",
|
||||||
" set_filter, show_stream, mkisofs_r, hide, find.",
|
" set_filter, show_stream, mkisofs_r, hide, print_outname,",
|
||||||
|
" estimate_size, find",
|
||||||
" params are their parameters except iso_rr_path.",
|
" params are their parameters except iso_rr_path.",
|
||||||
" -mkdir iso_rr_path [...]",
|
" -mkdir iso_rr_path [...]",
|
||||||
" Create empty directories if they do not exist yet.",
|
" Create empty directories if they do not exist yet.",
|
||||||
|
@ -741,15 +741,171 @@ int Xorriso_retry_write_session(struct XorrisO *xorriso, int flag)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int Xorriso_make_iso_write_opts(struct XorrisO *xorriso, IsoImage *image,
|
||||||
|
struct isoburn_imgen_opts *sopts, int flag)
|
||||||
|
{
|
||||||
|
int ext, i, ret, pad_by_libisofs= 0, is_bootable= 0, relax;
|
||||||
|
char *out_cs, *part_image;
|
||||||
|
IsoNode *root_node;
|
||||||
|
uint32_t padding;
|
||||||
|
|
||||||
|
relax= xorriso->relax_compliance;
|
||||||
|
if(image != NULL)
|
||||||
|
is_bootable= iso_image_get_boot_image(image, NULL, NULL, NULL);
|
||||||
|
if(xorriso->patch_isolinux_image & 1) {
|
||||||
|
if(is_bootable == 1)
|
||||||
|
relax|= isoburn_igopt_allow_full_ascii;
|
||||||
|
else if(xorriso->keep_boot_image && is_bootable == 1)
|
||||||
|
relax|= isoburn_igopt_allow_full_ascii;
|
||||||
|
}
|
||||||
|
|
||||||
|
out_cs= xorriso->out_charset;
|
||||||
|
if(out_cs == NULL)
|
||||||
|
Xorriso_get_local_charset(xorriso, &out_cs, 0);
|
||||||
|
|
||||||
|
isoburn_igopt_set_level(sopts, xorriso->iso_level);
|
||||||
|
ext= ((!!xorriso->do_rockridge) * isoburn_igopt_rockridge) |
|
||||||
|
((!!xorriso->do_joliet) * isoburn_igopt_joliet) |
|
||||||
|
((!!xorriso->do_hfsplus) * isoburn_igopt_hfsplus) |
|
||||||
|
((!!xorriso->do_fat) * isoburn_igopt_fat) |
|
||||||
|
((!!xorriso->do_iso1999) * isoburn_igopt_iso1999) |
|
||||||
|
(( !(xorriso->ino_behavior & 2)) * isoburn_igopt_hardlinks) |
|
||||||
|
(( (!(xorriso->ino_behavior & 2)) ||
|
||||||
|
(xorriso->do_aaip & (2 | 8 | 16 | 256)) ||
|
||||||
|
(xorriso->do_md5 & (2 | 4)) ||
|
||||||
|
xorriso->do_hfsplus
|
||||||
|
) * isoburn_igopt_aaip) |
|
||||||
|
((!!(xorriso->do_md5 & 2)) * isoburn_igopt_session_md5) |
|
||||||
|
((!!(xorriso->do_md5 & 4)) * isoburn_igopt_file_md5) |
|
||||||
|
((!!(xorriso->do_md5 & 8)) * isoburn_igopt_file_stability) |
|
||||||
|
((!!xorriso->do_old_empty) * isoburn_igopt_old_empty) |
|
||||||
|
((flag & 1) * isoburn_igopt_will_cancel);
|
||||||
|
if(xorriso->no_emul_toc & 1)
|
||||||
|
ext|= isoburn_igopt_no_emul_toc;
|
||||||
|
isoburn_igopt_set_extensions(sopts, ext);
|
||||||
|
isoburn_igopt_set_relaxed(sopts, relax);
|
||||||
|
ret = isoburn_igopt_set_rr_reloc(sopts, xorriso->rr_reloc_dir,
|
||||||
|
xorriso->rr_reloc_flags);
|
||||||
|
if(ret <= 0)
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
ret= isoburn_igopt_set_untranslated_name_len(sopts,
|
||||||
|
xorriso->untranslated_name_len);
|
||||||
|
if(ret <= 0)
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
isoburn_igopt_set_sort_files(sopts, 1);
|
||||||
|
isoburn_igopt_set_over_mode(sopts, 0, 0, (mode_t) 0, (mode_t) 0);
|
||||||
|
isoburn_igopt_set_over_ugid(sopts, 2 * !!xorriso->do_global_uid,
|
||||||
|
2 * !!xorriso->do_global_gid,
|
||||||
|
(uid_t) xorriso->global_uid,
|
||||||
|
(gid_t) xorriso->global_gid);
|
||||||
|
isoburn_igopt_set_out_charset(sopts, out_cs);
|
||||||
|
isoburn_igopt_set_fifo_size(sopts, xorriso->fs * 2048);
|
||||||
|
Ftimetxt(time(NULL), xorriso->scdbackup_tag_time, 8);
|
||||||
|
isoburn_igopt_set_scdbackup_tag(sopts, xorriso->scdbackup_tag_name,
|
||||||
|
xorriso->scdbackup_tag_time,
|
||||||
|
xorriso->scdbackup_tag_written);
|
||||||
|
if(xorriso->prep_partition[0]) {
|
||||||
|
ret= isoburn_igopt_set_prep_partition(sopts, xorriso->prep_partition, 0);
|
||||||
|
if(ret <= 0)
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
}
|
||||||
|
if(xorriso->efi_boot_partition[0]) {
|
||||||
|
ret= isoburn_igopt_set_efi_bootp(sopts, xorriso->efi_boot_partition, 0);
|
||||||
|
if(ret <= 0)
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
}
|
||||||
|
for(i= 0; i < Xorriso_max_appended_partitionS; i++) {
|
||||||
|
if(xorriso->appended_partitions[i] == NULL)
|
||||||
|
continue;
|
||||||
|
if(xorriso->appended_partitions[i][0] == 0)
|
||||||
|
continue;
|
||||||
|
if(strcmp(xorriso->appended_partitions[i], ".") == 0)
|
||||||
|
part_image= "";
|
||||||
|
else
|
||||||
|
part_image= xorriso->appended_partitions[i];
|
||||||
|
isoburn_igopt_set_partition_img(sopts, i + 1,
|
||||||
|
xorriso->appended_part_types[i], part_image);
|
||||||
|
}
|
||||||
|
isoburn_igopt_set_disc_label(sopts, xorriso->ascii_disc_label);
|
||||||
|
isoburn_igopt_set_hfsp_serial_number(sopts, xorriso->hfsp_serial_number);
|
||||||
|
isoburn_igopt_set_hfsp_block_size(sopts, xorriso->hfsp_block_size,
|
||||||
|
xorriso->apm_block_size);
|
||||||
|
isoburn_igopt_set_pvd_times(sopts,
|
||||||
|
xorriso->vol_creation_time, xorriso->vol_modification_time,
|
||||||
|
xorriso->vol_expiration_time, xorriso->vol_effective_time,
|
||||||
|
xorriso->vol_uuid);
|
||||||
|
|
||||||
|
#ifdef Xorriso_with_libjtE
|
||||||
|
if(xorriso->libjte_handle && (xorriso->libjte_params_given & (4 | 8))) {
|
||||||
|
|
||||||
|
/* >>> Check whether the mandatory parameters are set */;
|
||||||
|
|
||||||
|
ret= libjte_set_outfile(xorriso->libjte_handle, xorriso->outdev);
|
||||||
|
Xorriso_process_msg_queues(xorriso, 0);
|
||||||
|
if(ret <= 0)
|
||||||
|
goto ex;
|
||||||
|
isoburn_igopt_attach_jte(sopts, xorriso->libjte_handle);
|
||||||
|
pad_by_libisofs= 1;
|
||||||
|
}
|
||||||
|
#endif /* Xorriso_with_libjtE */
|
||||||
|
|
||||||
|
if(xorriso->do_padding_by_libisofs || pad_by_libisofs) {
|
||||||
|
/* Padding to be done by libisofs, not by libburn.
|
||||||
|
*/
|
||||||
|
padding= xorriso->padding / 2048;
|
||||||
|
if((uint32_t) xorriso->padding > padding * 2048)
|
||||||
|
padding++;
|
||||||
|
/*
|
||||||
|
fprintf(stderr, "XORRISO_DEBUG: isoburn_igopt_set_tail_blocks(%d)\n",
|
||||||
|
(int) padding);
|
||||||
|
*/
|
||||||
|
isoburn_igopt_set_tail_blocks(sopts, padding);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Make final abort check before starting expensive activities */
|
||||||
|
ret= Xorriso_eval_problem_status(xorriso, 1, 0);
|
||||||
|
if(ret<0)
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
|
||||||
|
if(xorriso->zisofs_by_magic && image != NULL) {
|
||||||
|
sprintf(xorriso->info_text,
|
||||||
|
"Checking disk file content for zisofs compression headers.");
|
||||||
|
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "UPDATE", 0);
|
||||||
|
root_node= (IsoNode *) iso_image_get_root(image);
|
||||||
|
ret= iso_node_zf_by_magic(root_node,
|
||||||
|
(xorriso->out_drive_handle == xorriso->in_drive_handle) | 2 | 16);
|
||||||
|
if(ret<0) {
|
||||||
|
Xorriso_report_iso_error(xorriso, "", ret,
|
||||||
|
"Error when examining file content for zisofs headers",
|
||||||
|
0, "FAILURE", 1);
|
||||||
|
}
|
||||||
|
ret= Xorriso_eval_problem_status(xorriso, 1, 0);
|
||||||
|
if(ret<0)
|
||||||
|
{ret= 0; goto ex;}
|
||||||
|
sprintf(xorriso->info_text,
|
||||||
|
"Check for zisofs compression headers done.");
|
||||||
|
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "UPDATE", 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = isoburn_igopt_set_write_type(sopts, xorriso->do_tao);
|
||||||
|
if(ret <= 0)
|
||||||
|
goto ex;
|
||||||
|
|
||||||
|
ret= 1;
|
||||||
|
ex:;
|
||||||
|
return(ret);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* @param flag bit0= do not write but only prepare and return size in sectors
|
/* @param flag bit0= do not write but only prepare and return size in sectors
|
||||||
@return <=0 error , 1= success
|
@return <=0 error , 1= success
|
||||||
2= failure with DVD-RW, please call Xorriso_retry_write_session()
|
2= failure with DVD-RW, please call Xorriso_retry_write_session()
|
||||||
*/
|
*/
|
||||||
int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
||||||
{
|
{
|
||||||
int ret, relax= 0, i, pacifier_speed= 0, data_lba, ext, is_bootable= 0;
|
int ret, i, pacifier_speed= 0, data_lba, is_bootable= 0;
|
||||||
int freshly_bootable= 0, hide_attr, pad_by_libisofs= 0, signal_mode, role;
|
int freshly_bootable= 0, hide_attr, signal_mode, role;
|
||||||
char *xorriso_id= NULL, *img_id, *sfe= NULL, *out_cs, *part_image;
|
char *xorriso_id= NULL, *img_id, *sfe= NULL, *out_cs;
|
||||||
struct isoburn_imgen_opts *sopts= NULL;
|
struct isoburn_imgen_opts *sopts= NULL;
|
||||||
struct burn_drive_info *dinfo, *source_dinfo;
|
struct burn_drive_info *dinfo, *source_dinfo;
|
||||||
struct burn_drive *drive, *source_drive;
|
struct burn_drive *drive, *source_drive;
|
||||||
@ -762,11 +918,9 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
|||||||
enum burn_disc_status s;
|
enum burn_disc_status s;
|
||||||
struct burn_multi_caps *caps= NULL;
|
struct burn_multi_caps *caps= NULL;
|
||||||
IsoImage *image= NULL;
|
IsoImage *image= NULL;
|
||||||
IsoNode *root_node;
|
|
||||||
int profile_number;
|
int profile_number;
|
||||||
char *profile_name= NULL, *reasons= NULL;
|
char *profile_name= NULL, *reasons= NULL;
|
||||||
IsoBoot *bootcat_node;
|
IsoBoot *bootcat_node;
|
||||||
uint32_t padding;
|
|
||||||
|
|
||||||
Xorriso_alloc_meM(sfe, char, 5 * SfileadrL);
|
Xorriso_alloc_meM(sfe, char, 5 * SfileadrL);
|
||||||
Xorriso_alloc_meM(xorriso_id, char, 256);
|
Xorriso_alloc_meM(xorriso_id, char, 256);
|
||||||
@ -849,7 +1003,6 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
|||||||
Xorriso_process_msg_queues(xorriso, 0);
|
Xorriso_process_msg_queues(xorriso, 0);
|
||||||
goto ex;
|
goto ex;
|
||||||
}
|
}
|
||||||
relax= xorriso->relax_compliance;
|
|
||||||
|
|
||||||
xorriso->alignment= 0;
|
xorriso->alignment= 0;
|
||||||
image= isoburn_get_attached_image(source_drive);
|
image= isoburn_get_attached_image(source_drive);
|
||||||
@ -876,6 +1029,19 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
|||||||
goto ex;
|
goto ex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(image!=NULL && 12+strlen(Xorriso_timestamP)<80) {
|
||||||
|
strcpy(xorriso_id, xorriso->preparer_id);
|
||||||
|
img_id= (char *) iso_image_get_data_preparer_id(image);
|
||||||
|
if(img_id!=NULL) {
|
||||||
|
for(i= strlen(img_id)-1; i>=0 && img_id[i]==' '; i--);
|
||||||
|
if(i>0) {
|
||||||
|
sprintf(xorriso->info_text, "Overwrote previous preparer id '%s'",
|
||||||
|
img_id);
|
||||||
|
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
iso_image_set_data_preparer_id(image, xorriso_id);
|
||||||
|
}
|
||||||
ret= Xorriso_set_system_area(xorriso, source_drive, image, sopts, 0);
|
ret= Xorriso_set_system_area(xorriso, source_drive, image, sopts, 0);
|
||||||
if(ret <= 0)
|
if(ret <= 0)
|
||||||
goto ex;
|
goto ex;
|
||||||
@ -914,7 +1080,7 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
|||||||
iso_image_set_boot_catalog_hidden(image, hide_attr);
|
iso_image_set_boot_catalog_hidden(image, hide_attr);
|
||||||
} else if(xorriso->patch_isolinux_image & 1) {
|
} else if(xorriso->patch_isolinux_image & 1) {
|
||||||
if(is_bootable == 1) {
|
if(is_bootable == 1) {
|
||||||
relax|= isoburn_igopt_allow_full_ascii;
|
/* will imply isoburn_igopt_allow_full_ascii */
|
||||||
sprintf(xorriso->info_text, "Patching boot info table");
|
sprintf(xorriso->info_text, "Patching boot info table");
|
||||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
|
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
|
||||||
|
|
||||||
@ -943,7 +1109,7 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
|||||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "WARNING", 0);
|
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "WARNING", 0);
|
||||||
}
|
}
|
||||||
} else if(xorriso->keep_boot_image && is_bootable == 1) {
|
} else if(xorriso->keep_boot_image && is_bootable == 1) {
|
||||||
relax|= isoburn_igopt_allow_full_ascii;
|
/* will imply isoburn_igopt_allow_full_ascii */
|
||||||
sprintf(xorriso->info_text, "Keeping boot image unchanged");
|
sprintf(xorriso->info_text, "Keeping boot image unchanged");
|
||||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
|
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0);
|
||||||
} else if(is_bootable == 1) {
|
} else if(is_bootable == 1) {
|
||||||
@ -965,143 +1131,9 @@ int Xorriso_write_session(struct XorrisO *xorriso, int flag)
|
|||||||
&value_length, &value, 2 | 8);
|
&value_length, &value, 2 | 8);
|
||||||
}
|
}
|
||||||
|
|
||||||
isoburn_igopt_set_level(sopts, xorriso->iso_level);
|
ret= Xorriso_make_iso_write_opts(xorriso, image, sopts, 0);
|
||||||
ext= ((!!xorriso->do_rockridge) * isoburn_igopt_rockridge) |
|
|
||||||
((!!xorriso->do_joliet) * isoburn_igopt_joliet) |
|
|
||||||
((!!xorriso->do_hfsplus) * isoburn_igopt_hfsplus) |
|
|
||||||
((!!xorriso->do_fat) * isoburn_igopt_fat) |
|
|
||||||
((!!xorriso->do_iso1999) * isoburn_igopt_iso1999) |
|
|
||||||
(( !(xorriso->ino_behavior & 2)) * isoburn_igopt_hardlinks) |
|
|
||||||
(( (!(xorriso->ino_behavior & 2)) ||
|
|
||||||
(xorriso->do_aaip & (2 | 8 | 16 | 256)) ||
|
|
||||||
(xorriso->do_md5 & (2 | 4)) ||
|
|
||||||
xorriso->do_hfsplus
|
|
||||||
) * isoburn_igopt_aaip) |
|
|
||||||
((!!(xorriso->do_md5 & 2)) * isoburn_igopt_session_md5) |
|
|
||||||
((!!(xorriso->do_md5 & 4)) * isoburn_igopt_file_md5) |
|
|
||||||
((!!(xorriso->do_md5 & 8)) * isoburn_igopt_file_stability) |
|
|
||||||
((!!xorriso->do_old_empty) * isoburn_igopt_old_empty) |
|
|
||||||
((flag & 1) * isoburn_igopt_will_cancel);
|
|
||||||
if(xorriso->no_emul_toc & 1)
|
|
||||||
ext|= isoburn_igopt_no_emul_toc;
|
|
||||||
isoburn_igopt_set_extensions(sopts, ext);
|
|
||||||
isoburn_igopt_set_relaxed(sopts, relax);
|
|
||||||
ret = isoburn_igopt_set_rr_reloc(sopts, xorriso->rr_reloc_dir,
|
|
||||||
xorriso->rr_reloc_flags);
|
|
||||||
if(ret <= 0)
|
if(ret <= 0)
|
||||||
{ret= 0; goto ex;}
|
goto ex;
|
||||||
ret= isoburn_igopt_set_untranslated_name_len(sopts,
|
|
||||||
xorriso->untranslated_name_len);
|
|
||||||
if(ret <= 0)
|
|
||||||
{ret= 0; goto ex;}
|
|
||||||
isoburn_igopt_set_sort_files(sopts, 1);
|
|
||||||
isoburn_igopt_set_over_mode(sopts, 0, 0, (mode_t) 0, (mode_t) 0);
|
|
||||||
isoburn_igopt_set_over_ugid(sopts, 2 * !!xorriso->do_global_uid,
|
|
||||||
2 * !!xorriso->do_global_gid,
|
|
||||||
(uid_t) xorriso->global_uid,
|
|
||||||
(gid_t) xorriso->global_gid);
|
|
||||||
isoburn_igopt_set_out_charset(sopts, out_cs);
|
|
||||||
isoburn_igopt_set_fifo_size(sopts, xorriso->fs * 2048);
|
|
||||||
Ftimetxt(time(NULL), xorriso->scdbackup_tag_time, 8);
|
|
||||||
isoburn_igopt_set_scdbackup_tag(sopts, xorriso->scdbackup_tag_name,
|
|
||||||
xorriso->scdbackup_tag_time,
|
|
||||||
xorriso->scdbackup_tag_written);
|
|
||||||
if(xorriso->prep_partition[0]) {
|
|
||||||
ret= isoburn_igopt_set_prep_partition(sopts, xorriso->prep_partition, 0);
|
|
||||||
if(ret <= 0)
|
|
||||||
{ret= 0; goto ex;}
|
|
||||||
}
|
|
||||||
if(xorriso->efi_boot_partition[0]) {
|
|
||||||
ret= isoburn_igopt_set_efi_bootp(sopts, xorriso->efi_boot_partition, 0);
|
|
||||||
if(ret <= 0)
|
|
||||||
{ret= 0; goto ex;}
|
|
||||||
}
|
|
||||||
for(i= 0; i < Xorriso_max_appended_partitionS; i++) {
|
|
||||||
if(xorriso->appended_partitions[i] == NULL)
|
|
||||||
continue;
|
|
||||||
if(xorriso->appended_partitions[i][0] == 0)
|
|
||||||
continue;
|
|
||||||
if(strcmp(xorriso->appended_partitions[i], ".") == 0)
|
|
||||||
part_image= "";
|
|
||||||
else
|
|
||||||
part_image= xorriso->appended_partitions[i];
|
|
||||||
isoburn_igopt_set_partition_img(sopts, i + 1,
|
|
||||||
xorriso->appended_part_types[i], part_image);
|
|
||||||
}
|
|
||||||
isoburn_igopt_set_disc_label(sopts, xorriso->ascii_disc_label);
|
|
||||||
isoburn_igopt_set_hfsp_serial_number(sopts, xorriso->hfsp_serial_number);
|
|
||||||
isoburn_igopt_set_hfsp_block_size(sopts, xorriso->hfsp_block_size,
|
|
||||||
xorriso->apm_block_size);
|
|
||||||
|
|
||||||
if(image!=NULL && 12+strlen(Xorriso_timestamP)<80) {
|
|
||||||
strcpy(xorriso_id, xorriso->preparer_id);
|
|
||||||
img_id= (char *) iso_image_get_data_preparer_id(image);
|
|
||||||
if(img_id!=NULL) {
|
|
||||||
for(i= strlen(img_id)-1; i>=0 && img_id[i]==' '; i--);
|
|
||||||
if(i>0) {
|
|
||||||
sprintf(xorriso->info_text, "Overwrote previous preparer id '%s'",
|
|
||||||
img_id);
|
|
||||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
iso_image_set_data_preparer_id(image, xorriso_id);
|
|
||||||
}
|
|
||||||
isoburn_igopt_set_pvd_times(sopts,
|
|
||||||
xorriso->vol_creation_time, xorriso->vol_modification_time,
|
|
||||||
xorriso->vol_expiration_time, xorriso->vol_effective_time,
|
|
||||||
xorriso->vol_uuid);
|
|
||||||
|
|
||||||
#ifdef Xorriso_with_libjtE
|
|
||||||
if(xorriso->libjte_handle && (xorriso->libjte_params_given & (4 | 8))) {
|
|
||||||
|
|
||||||
/* >>> Check whether the mandatory parameters are set */;
|
|
||||||
|
|
||||||
ret= libjte_set_outfile(xorriso->libjte_handle, xorriso->outdev);
|
|
||||||
Xorriso_process_msg_queues(xorriso, 0);
|
|
||||||
if(ret <= 0)
|
|
||||||
goto ex;
|
|
||||||
isoburn_igopt_attach_jte(sopts, xorriso->libjte_handle);
|
|
||||||
pad_by_libisofs= 1;
|
|
||||||
}
|
|
||||||
#endif /* Xorriso_with_libjtE */
|
|
||||||
|
|
||||||
if(xorriso->do_padding_by_libisofs || pad_by_libisofs) {
|
|
||||||
/* Padding to be done by libisofs, not by libburn.
|
|
||||||
*/
|
|
||||||
padding= xorriso->padding / 2048;
|
|
||||||
if((uint32_t) xorriso->padding > padding * 2048)
|
|
||||||
padding++;
|
|
||||||
/*
|
|
||||||
fprintf(stderr, "XORRISO_DEBUG: isoburn_igopt_set_tail_blocks(%d)\n",
|
|
||||||
(int) padding);
|
|
||||||
*/
|
|
||||||
isoburn_igopt_set_tail_blocks(sopts, padding);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Make final abort check before starting expensive activities */
|
|
||||||
ret= Xorriso_eval_problem_status(xorriso, 1, 0);
|
|
||||||
if(ret<0)
|
|
||||||
{ret= 0; goto ex;}
|
|
||||||
|
|
||||||
if(xorriso->zisofs_by_magic) {
|
|
||||||
sprintf(xorriso->info_text,
|
|
||||||
"Checking disk file content for zisofs compression headers.");
|
|
||||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "UPDATE", 0);
|
|
||||||
root_node= (IsoNode *) iso_image_get_root(image);
|
|
||||||
ret= iso_node_zf_by_magic(root_node,
|
|
||||||
(xorriso->out_drive_handle == xorriso->in_drive_handle) | 2 | 16);
|
|
||||||
if(ret<0) {
|
|
||||||
Xorriso_report_iso_error(xorriso, "", ret,
|
|
||||||
"Error when examining file content for zisofs headers",
|
|
||||||
0, "FAILURE", 1);
|
|
||||||
}
|
|
||||||
ret= Xorriso_eval_problem_status(xorriso, 1, 0);
|
|
||||||
if(ret<0)
|
|
||||||
{ret= 0; goto ex;}
|
|
||||||
sprintf(xorriso->info_text,
|
|
||||||
"Check for zisofs compression headers done.");
|
|
||||||
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "UPDATE", 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* >>> omit iso_image_update_sizes if the image was filled up very quickly */;
|
/* >>> omit iso_image_update_sizes if the image was filled up very quickly */;
|
||||||
|
|
||||||
@ -1118,10 +1150,6 @@ fprintf(stderr, "XORRISO_DEBUG: isoburn_igopt_set_tail_blocks(%d)\n",
|
|||||||
{ret= 0; goto ex;}
|
{ret= 0; goto ex;}
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = isoburn_igopt_set_write_type(sopts, xorriso->do_tao);
|
|
||||||
if(ret <= 0)
|
|
||||||
goto ex;
|
|
||||||
|
|
||||||
Xorriso_set_abort_severity(xorriso, 1);
|
Xorriso_set_abort_severity(xorriso, 1);
|
||||||
if (xorriso->grow_blindly_msc2 >= 0 &&
|
if (xorriso->grow_blindly_msc2 >= 0 &&
|
||||||
xorriso->out_drive_handle != xorriso->in_drive_handle) {
|
xorriso->out_drive_handle != xorriso->in_drive_handle) {
|
||||||
|
@ -48,6 +48,9 @@ int Xorriso_pacifier_loop(struct XorrisO *xorriso, struct burn_drive *drive,
|
|||||||
int Xorriso_set_isolinux_options(struct XorrisO *xorriso,
|
int Xorriso_set_isolinux_options(struct XorrisO *xorriso,
|
||||||
IsoImage *image, int flag);
|
IsoImage *image, int flag);
|
||||||
|
|
||||||
|
int Xorriso_make_iso_write_opts(struct XorrisO *xorriso, IsoImage *image,
|
||||||
|
struct isoburn_imgen_opts *sopts, int flag);
|
||||||
|
|
||||||
|
|
||||||
#endif /* ! Xorriso_pvt_write_run_includeD */
|
#endif /* ! Xorriso_pvt_write_run_includeD */
|
||||||
|
|
||||||
|
@ -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 XORRISO 1 "Version 1.3.5, Dec 16, 2013"
|
.TH XORRISO 1 "Version 1.3.5, Dec 28, 2013"
|
||||||
.\" 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:
|
||||||
@ -1039,7 +1039,7 @@ is the Rock Ridge name of a file object in the ISO image.
|
|||||||
If no Rock Ridge information is recorded in the loaded ISO image, then you
|
If no Rock Ridge information is recorded in the loaded ISO image, then you
|
||||||
will see ISO 9660 names which are of limited length and character set.
|
will see ISO 9660 names which are of limited length and character set.
|
||||||
If no Rock Ridge information shall be stored in an emerging ISO image, then
|
If no Rock Ridge information shall be stored in an emerging ISO image, then
|
||||||
their names will get mapped to such restricted ISO 9660 names.
|
their names will get mapped to such restricted ISO 9660 (aka ECMA\-119) names.
|
||||||
.PP
|
.PP
|
||||||
Note that in the ISO image you are as powerful as the superuser. Access
|
Note that in the ISO image you are as powerful as the superuser. Access
|
||||||
permissions of the existing files in the image do not apply to your write
|
permissions of the existing files in the image do not apply to your write
|
||||||
@ -1793,6 +1793,22 @@ in "hfsplus" tree, in all trees ("on"), or not hidden in any tree ("off").
|
|||||||
.br
|
.br
|
||||||
Those which are hidden in some tree match \-not \-hidden "off".
|
Those which are hidden in some tree match \-not \-hidden "off".
|
||||||
.br
|
.br
|
||||||
|
\fB\-bad_outname\fR namespace :
|
||||||
|
Matches files with names which change when converted forth and back
|
||||||
|
between the local character set and one of the namespaces "rockridge",
|
||||||
|
"joliet", "ecma119", "hfsplus".
|
||||||
|
.br
|
||||||
|
All applicable \-compliance rules are taken into respect.
|
||||||
|
Rule "omit_version" is always enabled, because else
|
||||||
|
namespaces "joliet" and "ecma119" would cause changes with every
|
||||||
|
non\-directory name.
|
||||||
|
Consider to also enable rules "no_force_dots" resp. "no_j_force_dots".
|
||||||
|
.br
|
||||||
|
The namespaces use different character sets and apply further restrictions
|
||||||
|
to name length, permissible characters, and mandatory name components.
|
||||||
|
"rockridge" uses the character set defined by \-out_charset,
|
||||||
|
"joliet" uses UCS\-2BE, "ecma119" uses ASCII, "hfsplus" uses UTF\-16BE.
|
||||||
|
.br
|
||||||
\fB\-prune\fR :
|
\fB\-prune\fR :
|
||||||
If this test is reached and the tested file is a directory then \-find will not
|
If this test is reached and the tested file is a directory then \-find will not
|
||||||
dive into that directory. This test itself does always match.
|
dive into that directory. This test itself does always match.
|
||||||
@ -2056,6 +2072,20 @@ E.g.:
|
|||||||
.br
|
.br
|
||||||
\-find / \-disk_name *_secret \-exec hide on
|
\-find / \-disk_name *_secret \-exec hide on
|
||||||
.br
|
.br
|
||||||
|
\fBprint_outname\fR
|
||||||
|
prints in the first line the filename as registered by the program model,
|
||||||
|
and in the second line the filename after conversion forth and back between
|
||||||
|
local character set and one of the namespaces "rockridge", "joliet", "ecma119",
|
||||||
|
or "hfsplus". The third output line is "\-\-" .
|
||||||
|
.br
|
||||||
|
The name conversion does not take into respect the possibility of name
|
||||||
|
collisions in the target namespace. Such collisions are most likely in "joliet"
|
||||||
|
and "ecma119", where they get resolved by automatic file name changes.
|
||||||
|
.br
|
||||||
|
E.g.:
|
||||||
|
.br
|
||||||
|
\-find / \-bad_outname joliet \-exec print_outname joliet
|
||||||
|
.br
|
||||||
\fBestimate_size\fR
|
\fBestimate_size\fR
|
||||||
prints a lower and an upper estimation of the number of blocks which the
|
prints a lower and an upper estimation of the number of blocks which the
|
||||||
found files together will occupy in the emerging ISO image.
|
found files together will occupy in the emerging ISO image.
|
||||||
|
@ -960,7 +960,8 @@ the Rock Ridge name of a file object in the ISO image. If no Rock
|
|||||||
Ridge information is recorded in the loaded ISO image, then you will
|
Ridge information is recorded in the loaded ISO image, then you will
|
||||||
see ISO 9660 names which are of limited length and character set. If
|
see ISO 9660 names which are of limited length and character set. If
|
||||||
no Rock Ridge information shall be stored in an emerging ISO image, then
|
no Rock Ridge information shall be stored in an emerging ISO image, then
|
||||||
their names will get mapped to such restricted ISO 9660 names.
|
their names will get mapped to such restricted ISO 9660 (aka ECMA-119)
|
||||||
|
names.
|
||||||
|
|
||||||
Note that in the ISO image you are as powerful as the superuser.
|
Note that in the ISO image you are as powerful as the superuser.
|
||||||
Access permissions of the existing files in the image do not apply to
|
Access permissions of the existing files in the image do not apply to
|
||||||
@ -1608,6 +1609,20 @@ File: xorriso.info, Node: CmdFind, Next: Filter, Prev: Manip, Up: Commands
|
|||||||
tree, in "hfsplus" tree, in all trees ("on"), or not hidden
|
tree, in "hfsplus" tree, in all trees ("on"), or not hidden
|
||||||
in any tree ("off").
|
in any tree ("off").
|
||||||
Those which are hidden in some tree match -not -hidden "off".
|
Those which are hidden in some tree match -not -hidden "off".
|
||||||
|
-bad_outname namespace :
|
||||||
|
Matches files with names which change when converted forth
|
||||||
|
and back between the local character set and one of the
|
||||||
|
namespaces "rockridge", "joliet", "ecma119", "hfsplus".
|
||||||
|
All applicable -compliance rules are taken into respect.
|
||||||
|
Rule "omit_version" is always enabled, because else
|
||||||
|
namespaces "joliet" and "ecma119" would cause changes with
|
||||||
|
every non-directory name. Consider to also enable rules
|
||||||
|
"no_force_dots" resp. "no_j_force_dots".
|
||||||
|
The namespaces use different character sets and apply further
|
||||||
|
restrictions to name length, permissible characters, and
|
||||||
|
mandatory name components. "rockridge" uses the character
|
||||||
|
set defined by -out_charset, "joliet" uses UCS-2BE, "ecma119"
|
||||||
|
uses ASCII, "hfsplus" uses UTF-16BE.
|
||||||
-prune :
|
-prune :
|
||||||
If this test is reached and the tested file is a directory
|
If this test is reached and the tested file is a directory
|
||||||
then -find will not dive into that directory. This test
|
then -find will not dive into that directory. This test
|
||||||
@ -1816,6 +1831,18 @@ File: xorriso.info, Node: CmdFind, Next: Filter, Prev: Manip, Up: Commands
|
|||||||
joliet:hfsplus
|
joliet:hfsplus
|
||||||
E.g.:
|
E.g.:
|
||||||
-find / -disk_name *_secret -exec hide on
|
-find / -disk_name *_secret -exec hide on
|
||||||
|
print_outname
|
||||||
|
prints in the first line the filename as registered by the
|
||||||
|
program model, and in the second line the filename after
|
||||||
|
conversion forth and back between local character set and one
|
||||||
|
of the namespaces "rockridge", "joliet", "ecma119", or
|
||||||
|
"hfsplus". The third output line is "-" .
|
||||||
|
The name conversion does not take into respect the
|
||||||
|
possibility of name collisions in the target namespace. Such
|
||||||
|
collisions are most likely in "joliet" and "ecma119", where
|
||||||
|
they get resolved by automatic file name changes.
|
||||||
|
E.g.:
|
||||||
|
-find / -bad_outname joliet -exec print_outname joliet
|
||||||
estimate_size
|
estimate_size
|
||||||
prints a lower and an upper estimation of the number of
|
prints a lower and an upper estimation of the number of
|
||||||
blocks which the found files together will occupy in the
|
blocks which the found files together will occupy in the
|
||||||
@ -4855,8 +4882,8 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -abort_on controls abort on error: Exception. (line 27)
|
* -abort_on controls abort on error: Exception. (line 27)
|
||||||
* -abstract_file sets abstract file name: SetWrite. (line 237)
|
* -abstract_file sets abstract file name: SetWrite. (line 237)
|
||||||
* -acl controls handling of ACLs: Loading. (line 170)
|
* -acl controls handling of ACLs: Loading. (line 170)
|
||||||
* -add inserts one or more paths: Insert. (line 46)
|
* -add inserts one or more paths: Insert. (line 47)
|
||||||
* -add_plainly inserts one or more paths: Insert. (line 65)
|
* -add_plainly inserts one or more paths: Insert. (line 66)
|
||||||
* -alter_date sets timestamps in ISO image: Manip. (line 154)
|
* -alter_date sets timestamps in ISO image: Manip. (line 154)
|
||||||
* -alter_date_r sets timestamps in ISO image: Manip. (line 187)
|
* -alter_date_r sets timestamps in ISO image: Manip. (line 187)
|
||||||
* -append_partition adds arbitrary file after image end: Bootable.
|
* -append_partition adds arbitrary file after image end: Bootable.
|
||||||
@ -4886,7 +4913,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -chmod_r sets permissions in ISO image: Manip. (line 77)
|
* -chmod_r sets permissions in ISO image: Manip. (line 77)
|
||||||
* -chown sets ownership in ISO image: Manip. (line 49)
|
* -chown sets ownership in ISO image: Manip. (line 49)
|
||||||
* -chown_r sets ownership in ISO image: Manip. (line 54)
|
* -chown_r sets ownership in ISO image: Manip. (line 54)
|
||||||
* -clone copies ISO directory tree: Insert. (line 180)
|
* -clone copies ISO directory tree: Insert. (line 181)
|
||||||
* -close controls media closing: SetWrite. (line 357)
|
* -close controls media closing: SetWrite. (line 357)
|
||||||
* -close_damaged closes damaged track and session: Writing. (line 170)
|
* -close_damaged closes damaged track and session: Writing. (line 170)
|
||||||
* -close_filter_list bans filter registration: Filter. (line 52)
|
* -close_filter_list bans filter registration: Filter. (line 52)
|
||||||
@ -4897,19 +4924,19 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -compare_r reports ISO/disk differences: Navigate. (line 159)
|
* -compare_r reports ISO/disk differences: Navigate. (line 159)
|
||||||
* -compliance controls standard compliance: SetWrite. (line 58)
|
* -compliance controls standard compliance: SetWrite. (line 58)
|
||||||
* -copyright_file sets copyright file name: SetWrite. (line 231)
|
* -copyright_file sets copyright file name: SetWrite. (line 231)
|
||||||
* -cp_clone copies ISO directory tree: Insert. (line 192)
|
* -cp_clone copies ISO directory tree: Insert. (line 193)
|
||||||
* -cp_rx copies file trees to disk: Restore. (line 111)
|
* -cp_rx copies file trees to disk: Restore. (line 111)
|
||||||
* -cpax copies files to disk: Restore. (line 107)
|
* -cpax copies files to disk: Restore. (line 107)
|
||||||
* -cpr inserts like with cp -r: Insert. (line 156)
|
* -cpr inserts like with cp -r: Insert. (line 157)
|
||||||
* -cpx copies files to disk: Restore. (line 95)
|
* -cpx copies files to disk: Restore. (line 95)
|
||||||
* -cut_out inserts piece of data file: Insert. (line 130)
|
* -cut_out inserts piece of data file: Insert. (line 131)
|
||||||
* -data_cache_size adjusts read cache size: Loading. (line 296)
|
* -data_cache_size adjusts read cache size: Loading. (line 296)
|
||||||
* -dev acquires one drive for input and output: AqDrive. (line 12)
|
* -dev acquires one drive for input and output: AqDrive. (line 12)
|
||||||
* -device_links gets list of drives: Inquiry. (line 18)
|
* -device_links gets list of drives: Inquiry. (line 18)
|
||||||
* -devices gets list of drives: Inquiry. (line 7)
|
* -devices gets list of drives: Inquiry. (line 7)
|
||||||
* -dialog enables dialog mode: DialogCtl. (line 7)
|
* -dialog enables dialog mode: DialogCtl. (line 7)
|
||||||
* -disk_dev_ino fast incremental backup: Loading. (line 217)
|
* -disk_dev_ino fast incremental backup: Loading. (line 217)
|
||||||
* -disk_pattern controls pattern expansion: Insert. (line 35)
|
* -disk_pattern controls pattern expansion: Insert. (line 36)
|
||||||
* -displacement compensate altered image start address: Loading.
|
* -displacement compensate altered image start address: Loading.
|
||||||
(line 60)
|
(line 60)
|
||||||
* -drive_class controls drive accessability: Loading. (line 78)
|
* -drive_class controls drive accessability: Loading. (line 78)
|
||||||
@ -4962,7 +4989,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -list_formats lists available formats: Writing. (line 134)
|
* -list_formats lists available formats: Writing. (line 134)
|
||||||
* -list_profiles lists supported media: Writing. (line 184)
|
* -list_profiles lists supported media: Writing. (line 184)
|
||||||
* -list_speeds lists available write speeds: Writing. (line 146)
|
* -list_speeds lists available write speeds: Writing. (line 146)
|
||||||
* -lns creates ISO symbolic link: Insert. (line 175)
|
* -lns creates ISO symbolic link: Insert. (line 176)
|
||||||
* -load addresses a particular session as input: Loading. (line 35)
|
* -load addresses a particular session as input: Loading. (line 35)
|
||||||
* -local_charset sets terminal character set: Charset. (line 47)
|
* -local_charset sets terminal character set: Charset. (line 47)
|
||||||
* -logfile logs output channels to file: Frontend. (line 20)
|
* -logfile logs output channels to file: Frontend. (line 20)
|
||||||
@ -4974,12 +5001,12 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -lsl lists files in ISO image: Navigate. (line 38)
|
* -lsl lists files in ISO image: Navigate. (line 38)
|
||||||
* -lslx lists files on disk: Navigate. (line 62)
|
* -lslx lists files on disk: Navigate. (line 62)
|
||||||
* -lsx lists files on disk: Navigate. (line 51)
|
* -lsx lists files on disk: Navigate. (line 51)
|
||||||
* -map inserts path: Insert. (line 89)
|
* -map inserts path: Insert. (line 90)
|
||||||
* -map_l inserts paths from disk file: Insert. (line 98)
|
* -map_l inserts paths from disk file: Insert. (line 99)
|
||||||
* -map_single inserts path: Insert. (line 94)
|
* -map_single inserts path: Insert. (line 95)
|
||||||
* -mark sets synchronizing message: Frontend. (line 25)
|
* -mark sets synchronizing message: Frontend. (line 25)
|
||||||
* -md5 controls handling of MD5 sums: Loading. (line 183)
|
* -md5 controls handling of MD5 sums: Loading. (line 183)
|
||||||
* -mkdir creates ISO directory: Insert. (line 170)
|
* -mkdir creates ISO directory: Insert. (line 171)
|
||||||
* -mount issues mount command for ISO session: Restore. (line 129)
|
* -mount issues mount command for ISO session: Restore. (line 129)
|
||||||
* -mount_cmd composes mount command line: Inquiry. (line 52)
|
* -mount_cmd composes mount command line: Inquiry. (line 52)
|
||||||
* -mount_cmd controls mount command: Inquiry. (line 68)
|
* -mount_cmd controls mount command: Inquiry. (line 68)
|
||||||
@ -5001,7 +5028,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -padding sets amount or mode of image padding: SetWrite. (line 382)
|
* -padding sets amount or mode of image padding: SetWrite. (line 382)
|
||||||
* -page set terminal geometry: DialogCtl. (line 19)
|
* -page set terminal geometry: DialogCtl. (line 19)
|
||||||
* -paste_in copies file into disk file: Restore. (line 124)
|
* -paste_in copies file into disk file: Restore. (line 124)
|
||||||
* -path_list inserts paths from disk file: Insert. (line 79)
|
* -path_list inserts paths from disk file: Insert. (line 80)
|
||||||
* -pathspecs sets meaning of = with -add: SetInsert. (line 118)
|
* -pathspecs sets meaning of = with -add: SetInsert. (line 118)
|
||||||
* -pkt_output consolidates text output: Frontend. (line 7)
|
* -pkt_output consolidates text output: Frontend. (line 7)
|
||||||
* -preparer_id sets preparer id: SetWrite. (line 250)
|
* -preparer_id sets preparer id: SetWrite. (line 250)
|
||||||
@ -5017,7 +5044,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -pwd tells working directory in ISO: Navigate. (line 20)
|
* -pwd tells working directory in ISO: Navigate. (line 20)
|
||||||
* -pwdx tells working directory on disk: Navigate. (line 23)
|
* -pwdx tells working directory on disk: Navigate. (line 23)
|
||||||
* -quoted_not_list sets exclusions: SetInsert. (line 72)
|
* -quoted_not_list sets exclusions: SetInsert. (line 72)
|
||||||
* -quoted_path_list inserts paths from disk file: Insert. (line 84)
|
* -quoted_path_list inserts paths from disk file: Insert. (line 85)
|
||||||
* -read_mkisofsrc searches and reads .mkisofsrc file: Emulation.
|
* -read_mkisofsrc searches and reads .mkisofsrc file: Emulation.
|
||||||
(line 151)
|
(line 151)
|
||||||
* -read_speed set read speed: Loading. (line 11)
|
* -read_speed set read speed: Loading. (line 11)
|
||||||
@ -5065,9 +5092,9 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
|
|||||||
* -toc shows list of sessions: Inquiry. (line 28)
|
* -toc shows list of sessions: Inquiry. (line 28)
|
||||||
* -toc_of shows list of sessions: Inquiry. (line 43)
|
* -toc_of shows list of sessions: Inquiry. (line 43)
|
||||||
* -uid sets global ownership: SetWrite. (line 282)
|
* -uid sets global ownership: SetWrite. (line 282)
|
||||||
* -update inserts path if different: Insert. (line 103)
|
* -update inserts path if different: Insert. (line 104)
|
||||||
* -update_l inserts paths if different: Insert. (line 125)
|
* -update_l inserts paths if different: Insert. (line 126)
|
||||||
* -update_r inserts paths if different: Insert. (line 114)
|
* -update_r inserts paths if different: Insert. (line 115)
|
||||||
* -use_readline enables readline for dialog: DialogCtl. (line 28)
|
* -use_readline enables readline for dialog: DialogCtl. (line 28)
|
||||||
* -version prints help text: Scripting. (line 23)
|
* -version prints help text: Scripting. (line 23)
|
||||||
* -volid sets volume id: SetWrite. (line 164)
|
* -volid sets volume id: SetWrite. (line 164)
|
||||||
@ -5132,9 +5159,9 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
|
|||||||
* Dialog, EOF resistant, -named_pipe_loop: Frontend. (line 123)
|
* Dialog, EOF resistant, -named_pipe_loop: Frontend. (line 123)
|
||||||
* Dialog, line editing, -use_readline: DialogCtl. (line 28)
|
* Dialog, line editing, -use_readline: DialogCtl. (line 28)
|
||||||
* Dialog, terminal geometry, -page: DialogCtl. (line 19)
|
* Dialog, terminal geometry, -page: DialogCtl. (line 19)
|
||||||
* Directories, copy, -cp_clone: Insert. (line 192)
|
* Directories, copy, -cp_clone: Insert. (line 193)
|
||||||
* Directory, copy, -clone: Insert. (line 180)
|
* Directory, copy, -clone: Insert. (line 181)
|
||||||
* Directory, create, -mkdir: Insert. (line 170)
|
* Directory, create, -mkdir: Insert. (line 171)
|
||||||
* Directory, delete, -rmdir: Manip. (line 32)
|
* Directory, delete, -rmdir: Manip. (line 32)
|
||||||
* disk_path, _definition: Insert. (line 6)
|
* disk_path, _definition: Insert. (line 6)
|
||||||
* Drive, _definition: Drives. (line 6)
|
* Drive, _definition: Drives. (line 6)
|
||||||
@ -5206,22 +5233,22 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
|
|||||||
* Insert, file exclusion pattern, -not_leaf: SetInsert. (line 62)
|
* Insert, file exclusion pattern, -not_leaf: SetInsert. (line 62)
|
||||||
* Insert, file exclusion, -not_mgt: SetInsert. (line 23)
|
* Insert, file exclusion, -not_mgt: SetInsert. (line 23)
|
||||||
* Insert, file exclusion, -quoted_not_list: SetInsert. (line 72)
|
* Insert, file exclusion, -quoted_not_list: SetInsert. (line 72)
|
||||||
* Insert, if different, -update: Insert. (line 103)
|
* Insert, if different, -update: Insert. (line 104)
|
||||||
* Insert, if different, -update_l: Insert. (line 125)
|
* Insert, if different, -update_l: Insert. (line 126)
|
||||||
* Insert, if different, -update_r: Insert. (line 114)
|
* Insert, if different, -update_r: Insert. (line 115)
|
||||||
* Insert, large file splitting, -split_size: SetInsert. (line 140)
|
* Insert, large file splitting, -split_size: SetInsert. (line 140)
|
||||||
* Insert, limit data file size, -file_size_limit: SetInsert. (line 7)
|
* Insert, limit data file size, -file_size_limit: SetInsert. (line 7)
|
||||||
* Insert, links or mount points, -follow: SetInsert. (line 76)
|
* Insert, links or mount points, -follow: SetInsert. (line 76)
|
||||||
* Insert, meaning of = with -add, -pathspecs: SetInsert. (line 118)
|
* Insert, meaning of = with -add, -pathspecs: SetInsert. (line 118)
|
||||||
* Insert, non-dashed arguments, -add_plainly: Insert. (line 65)
|
* Insert, non-dashed arguments, -add_plainly: Insert. (line 66)
|
||||||
* Insert, path, -map: Insert. (line 89)
|
* Insert, path, -map: Insert. (line 90)
|
||||||
* Insert, path, -map_single: Insert. (line 94)
|
* Insert, path, -map_single: Insert. (line 95)
|
||||||
* Insert, paths from disk file, -map_l: Insert. (line 98)
|
* Insert, paths from disk file, -map_l: Insert. (line 99)
|
||||||
* Insert, paths from disk file, -path_list: Insert. (line 79)
|
* Insert, paths from disk file, -path_list: Insert. (line 80)
|
||||||
* Insert, paths from disk file, -quoted_path_list: Insert. (line 84)
|
* Insert, paths from disk file, -quoted_path_list: Insert. (line 85)
|
||||||
* Insert, paths, -cpr: Insert. (line 156)
|
* Insert, paths, -cpr: Insert. (line 157)
|
||||||
* Insert, pathspecs, -add: Insert. (line 46)
|
* Insert, pathspecs, -add: Insert. (line 47)
|
||||||
* Insert, piece of data file, -cut_out: Insert. (line 130)
|
* Insert, piece of data file, -cut_out: Insert. (line 131)
|
||||||
* ISO 9660, _definition: Model. (line 6)
|
* ISO 9660, _definition: Model. (line 6)
|
||||||
* iso_rr_path, _definition: Insert. (line 7)
|
* iso_rr_path, _definition: Insert. (line 7)
|
||||||
* Jigdo Template Extraction, -jigdo: Jigdo. (line 33)
|
* Jigdo Template Extraction, -jigdo: Jigdo. (line 33)
|
||||||
@ -5265,7 +5292,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
|
|||||||
* Partition table, _definition: Bootable. (line 138)
|
* Partition table, _definition: Bootable. (line 138)
|
||||||
* Pathspec, _definition: SetInsert. (line 120)
|
* Pathspec, _definition: SetInsert. (line 120)
|
||||||
* Pattern expansion, _definition: Processing. (line 24)
|
* Pattern expansion, _definition: Processing. (line 24)
|
||||||
* Pattern expansion, for disk paths, -disk_pattern: Insert. (line 35)
|
* Pattern expansion, for disk paths, -disk_pattern: Insert. (line 36)
|
||||||
* Pattern expansion, for ISO paths, -iso_rr_pattern: Manip. (line 10)
|
* Pattern expansion, for ISO paths, -iso_rr_pattern: Manip. (line 10)
|
||||||
* Permissions, in ISO image, -chmod: Manip. (line 65)
|
* Permissions, in ISO image, -chmod: Manip. (line 65)
|
||||||
* Permissions, in ISO image, -chmod_r: Manip. (line 77)
|
* Permissions, in ISO image, -chmod_r: Manip. (line 77)
|
||||||
@ -5330,7 +5357,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
|
|||||||
* Sorting order, for -x, -list_arg_sorting: ArgSort. (line 27)
|
* Sorting order, for -x, -list_arg_sorting: ArgSort. (line 27)
|
||||||
* SUN Disk Label, production: Bootable. (line 220)
|
* SUN Disk Label, production: Bootable. (line 220)
|
||||||
* SUN SPARC boot images, activation: Bootable. (line 270)
|
* SUN SPARC boot images, activation: Bootable. (line 270)
|
||||||
* Symbolic link, create, -lns: Insert. (line 175)
|
* Symbolic link, create, -lns: Insert. (line 176)
|
||||||
* System area, _definition: Bootable. (line 126)
|
* System area, _definition: Bootable. (line 126)
|
||||||
* Table-of-content, search sessions, -rom_toc_scan: Loading. (line 238)
|
* Table-of-content, search sessions, -rom_toc_scan: Loading. (line 238)
|
||||||
* Table-of-content, show, -toc: Inquiry. (line 28)
|
* Table-of-content, show, -toc: Inquiry. (line 28)
|
||||||
@ -5390,46 +5417,46 @@ Node: ArgSort26499
|
|||||||
Node: AqDrive27991
|
Node: AqDrive27991
|
||||||
Node: Loading31036
|
Node: Loading31036
|
||||||
Node: Insert47965
|
Node: Insert47965
|
||||||
Node: SetInsert58164
|
Node: SetInsert58179
|
||||||
Node: Manip66741
|
Node: Manip66756
|
||||||
Node: CmdFind76521
|
Node: CmdFind76536
|
||||||
Node: Filter91563
|
Node: Filter93137
|
||||||
Node: Writing96119
|
Node: Writing97693
|
||||||
Node: SetWrite106250
|
Node: SetWrite107824
|
||||||
Node: Bootable126835
|
Node: Bootable128409
|
||||||
Node: Jigdo143225
|
Node: Jigdo144799
|
||||||
Node: Charset147472
|
Node: Charset149046
|
||||||
Node: Exception150234
|
Node: Exception151808
|
||||||
Node: DialogCtl156354
|
Node: DialogCtl157928
|
||||||
Node: Inquiry158952
|
Node: Inquiry160526
|
||||||
Node: Navigate165269
|
Node: Navigate166843
|
||||||
Node: Verify173567
|
Node: Verify175141
|
||||||
Node: Restore182599
|
Node: Restore184173
|
||||||
Node: Emulation189686
|
Node: Emulation191260
|
||||||
Node: Scripting199988
|
Node: Scripting201562
|
||||||
Node: Frontend207759
|
Node: Frontend209333
|
||||||
Node: Examples217366
|
Node: Examples218940
|
||||||
Node: ExDevices218544
|
Node: ExDevices220118
|
||||||
Node: ExCreate219203
|
Node: ExCreate220777
|
||||||
Node: ExDialog220488
|
Node: ExDialog222062
|
||||||
Node: ExGrowing221753
|
Node: ExGrowing223327
|
||||||
Node: ExModifying222558
|
Node: ExModifying224132
|
||||||
Node: ExBootable223062
|
Node: ExBootable224636
|
||||||
Node: ExCharset223614
|
Node: ExCharset225188
|
||||||
Node: ExPseudo224506
|
Node: ExPseudo226080
|
||||||
Node: ExCdrecord225404
|
Node: ExCdrecord226978
|
||||||
Node: ExMkisofs225721
|
Node: ExMkisofs227295
|
||||||
Node: ExGrowisofs227061
|
Node: ExGrowisofs228635
|
||||||
Node: ExException228196
|
Node: ExException229770
|
||||||
Node: ExTime228650
|
Node: ExTime230224
|
||||||
Node: ExIncBackup229109
|
Node: ExIncBackup230683
|
||||||
Node: ExRestore233089
|
Node: ExRestore234663
|
||||||
Node: ExRecovery234022
|
Node: ExRecovery235596
|
||||||
Node: Files234592
|
Node: Files236166
|
||||||
Node: Seealso235891
|
Node: Seealso237465
|
||||||
Node: Bugreport236614
|
Node: Bugreport238188
|
||||||
Node: Legal237195
|
Node: Legal238769
|
||||||
Node: CommandIdx238206
|
Node: CommandIdx239780
|
||||||
Node: ConceptIdx254868
|
Node: ConceptIdx256442
|
||||||
|
|
||||||
End Tag Table
|
End Tag Table
|
||||||
|
@ -50,7 +50,7 @@
|
|||||||
@c man .\" First parameter, NAME, should be all caps
|
@c man .\" First parameter, NAME, should be all caps
|
||||||
@c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
@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 .\" other parameters are allowed: see man(7), man(1)
|
||||||
@c man .TH XORRISO 1 "Version 1.3.5, Dec 16, 2013"
|
@c man .TH XORRISO 1 "Version 1.3.5, Dec 28, 2013"
|
||||||
@c man .\" Please adjust this date whenever revising the manpage.
|
@c man .\" Please adjust this date whenever revising the manpage.
|
||||||
@c man .\"
|
@c man .\"
|
||||||
@c man .\" Some roff macros, for reference:
|
@c man .\" Some roff macros, for reference:
|
||||||
@ -1299,7 +1299,7 @@ is the Rock Ridge name of a file object in the ISO image.
|
|||||||
If no Rock Ridge information is recorded in the loaded ISO image, then you
|
If no Rock Ridge information is recorded in the loaded ISO image, then you
|
||||||
will see ISO 9660 names which are of limited length and character set.
|
will see ISO 9660 names which are of limited length and character set.
|
||||||
If no Rock Ridge information shall be stored in an emerging ISO image, then
|
If no Rock Ridge information shall be stored in an emerging ISO image, then
|
||||||
their names will get mapped to such restricted ISO 9660 names.
|
their names will get mapped to such restricted ISO 9660 (aka ECMA-119) names.
|
||||||
@c man .PP
|
@c man .PP
|
||||||
@sp 1
|
@sp 1
|
||||||
Note that in the ISO image you are as powerful as the superuser. Access
|
Note that in the ISO image you are as powerful as the superuser. Access
|
||||||
@ -2174,6 +2174,22 @@ in "hfsplus" tree, in all trees ("on"), or not hidden in any tree ("off").
|
|||||||
@*
|
@*
|
||||||
Those which are hidden in some tree match -not -hidden "off".
|
Those which are hidden in some tree match -not -hidden "off".
|
||||||
@*
|
@*
|
||||||
|
@item -bad_outname namespace :
|
||||||
|
Matches files with names which change when converted forth and back
|
||||||
|
between the local character set and one of the namespaces "rockridge",
|
||||||
|
"joliet", "ecma119", "hfsplus".
|
||||||
|
@*
|
||||||
|
All applicable -compliance rules are taken into respect.
|
||||||
|
Rule "omit_version" is always enabled, because else
|
||||||
|
namespaces "joliet" and "ecma119" would cause changes with every
|
||||||
|
non-directory name.
|
||||||
|
Consider to also enable rules "no_force_dots" resp. "no_j_force_dots".
|
||||||
|
@*
|
||||||
|
The namespaces use different character sets and apply further restrictions
|
||||||
|
to name length, permissible characters, and mandatory name components.
|
||||||
|
"rockridge" uses the character set defined by -out_charset,
|
||||||
|
"joliet" uses UCS-2BE, "ecma119" uses ASCII, "hfsplus" uses UTF-16BE.
|
||||||
|
@*
|
||||||
@item -prune :
|
@item -prune :
|
||||||
If this test is reached and the tested file is a directory then -find will not
|
If this test is reached and the tested file is a directory then -find will not
|
||||||
dive into that directory. This test itself does always match.
|
dive into that directory. This test itself does always match.
|
||||||
@ -2455,6 +2471,20 @@ E.g.:
|
|||||||
@*
|
@*
|
||||||
-find / -disk_name *_secret -exec hide on
|
-find / -disk_name *_secret -exec hide on
|
||||||
@*
|
@*
|
||||||
|
@item print_outname
|
||||||
|
prints in the first line the filename as registered by the program model,
|
||||||
|
and in the second line the filename after conversion forth and back between
|
||||||
|
local character set and one of the namespaces "rockridge", "joliet", "ecma119",
|
||||||
|
or "hfsplus". The third output line is "--" .
|
||||||
|
@*
|
||||||
|
The name conversion does not take into respect the possibility of name
|
||||||
|
collisions in the target namespace. Such collisions are most likely in "joliet"
|
||||||
|
and "ecma119", where they get resolved by automatic file name changes.
|
||||||
|
@*
|
||||||
|
E.g.:
|
||||||
|
@*
|
||||||
|
-find / -bad_outname joliet -exec print_outname joliet
|
||||||
|
@*
|
||||||
@item estimate_size
|
@item estimate_size
|
||||||
prints a lower and an upper estimation of the number of blocks which the
|
prints a lower and an upper estimation of the number of blocks which the
|
||||||
found files together will occupy in the emerging ISO image.
|
found files together will occupy in the emerging ISO image.
|
||||||
|
@ -1 +1 @@
|
|||||||
#define Xorriso_timestamP "2013.12.28.194725"
|
#define Xorriso_timestamP "2013.12.29.120027"
|
||||||
|
Loading…
Reference in New Issue
Block a user