|
|
|
@ -1743,7 +1743,7 @@ int Xorriso_findi_action(struct XorrisO *xorriso, struct FindjoB *job,
|
|
|
|
|
char *abs_path, char *show_path,
|
|
|
|
|
IsoNode *node, int depth, int flag)
|
|
|
|
|
{
|
|
|
|
|
int ret= 0, type, action= 0, hflag, deleted= 0, no_dive= 0;
|
|
|
|
|
int ret= 0, type, action= 0, hflag, deleted= 0, no_dive= 0, hide_attrs;
|
|
|
|
|
uid_t user= 0;
|
|
|
|
|
gid_t group= 0;
|
|
|
|
|
time_t date= 0;
|
|
|
|
@ -1860,10 +1860,16 @@ int Xorriso_findi_action(struct XorrisO *xorriso, struct FindjoB *job,
|
|
|
|
|
ret= Xorriso_mkisofs_lower_r(xorriso, node, 0);
|
|
|
|
|
} else if(action == 38) { /* sort_weight */
|
|
|
|
|
iso_node_set_sort_weight(node, type);
|
|
|
|
|
} else if(action == 38) { /* hide */
|
|
|
|
|
|
|
|
|
|
/* >>> iso_node_set_hidden */;
|
|
|
|
|
|
|
|
|
|
} else if(action == 39) { /* hide */
|
|
|
|
|
hide_attrs= 0;
|
|
|
|
|
if(type) {
|
|
|
|
|
hide_attrs|= LIBISO_HIDE_BUT_WRITE;
|
|
|
|
|
if(type & 1)
|
|
|
|
|
hide_attrs|= LIBISO_HIDE_ON_RR;
|
|
|
|
|
if(type & 2)
|
|
|
|
|
hide_attrs|= LIBISO_HIDE_ON_JOLIET;
|
|
|
|
|
}
|
|
|
|
|
iso_node_set_hidden(node, hide_attrs);
|
|
|
|
|
} else { /* includes : 15 in_iso */
|
|
|
|
|
sprintf(xorriso->result_line, "%s\n", Text_shellsafe(show_path, sfe, 0));
|
|
|
|
|
Xorriso_result(xorriso, 0);
|
|
|
|
@ -1915,7 +1921,7 @@ return:
|
|
|
|
|
*/
|
|
|
|
|
{
|
|
|
|
|
int value=0, ret, start_lba, end_lba;
|
|
|
|
|
int lba_count, *file_end_lbas= NULL, *file_start_lbas= NULL, i;
|
|
|
|
|
int lba_count, *file_end_lbas= NULL, *file_start_lbas= NULL, i, mask;
|
|
|
|
|
void *arg1, *arg2;
|
|
|
|
|
char ft, *decision, md5[16];
|
|
|
|
|
regmatch_t name_match;
|
|
|
|
@ -2091,6 +2097,20 @@ return:
|
|
|
|
|
break; case 16: /* -disk_name *arg1 (regex in *arg2) */
|
|
|
|
|
value= !! Exprtest_match_disk_name(xorriso, ftest, node, 0);
|
|
|
|
|
|
|
|
|
|
break; case 17: /* -hidden int *arg1 */
|
|
|
|
|
value= 0;
|
|
|
|
|
ret= iso_node_get_hidden(node);
|
|
|
|
|
mask= *((int *) arg1) & 3;
|
|
|
|
|
if(mask == 0 && !(ret & (LIBISO_HIDE_ON_RR | LIBISO_HIDE_ON_JOLIET)))
|
|
|
|
|
value= 1;
|
|
|
|
|
else if(mask == 1 && (ret & LIBISO_HIDE_ON_RR))
|
|
|
|
|
value= 1;
|
|
|
|
|
else if(mask == 2 && (ret & LIBISO_HIDE_ON_JOLIET))
|
|
|
|
|
value= 1;
|
|
|
|
|
else if(mask == 3 && (ret & LIBISO_HIDE_ON_RR) &&
|
|
|
|
|
(ret & LIBISO_HIDE_ON_JOLIET))
|
|
|
|
|
value= 1;
|
|
|
|
|
|
|
|
|
|
break; default:
|
|
|
|
|
|
|
|
|
|
/* >>> complain about unknown test type */;
|
|
|
|
|