New -find test -has_some_lfa_flags_of

This commit is contained in:
2024-08-06 22:21:41 +02:00
parent a8eabad3da
commit 58fb826c1d
7 changed files with 86 additions and 45 deletions

View File

@@ -947,14 +947,17 @@ off_t_overflow:;
Findjob_set_aaip_filter(job, 1, 0);
} else if(strcmp(argv[i], "-has_no_aaip")==0) {
Findjob_set_aaip_filter(job, -1, 0);
} else if(strcmp(argv[i], "-has_lfa_flags")==0) {
} else if(strcmp(argv[i], "-has_lfa_flags") == 0 ||
strcmp(argv[i], "-has_some_lfa_flags_of") == 0) {
if(i + 1 >= end_idx)
goto not_enough_arguments;
i++;
ret= Xorriso_decode_lfa_flags(xorriso, argv[i], &lfa_flags, 0);
if(ret <= 0)
goto sorry_ex;
Findjob_set_uint64_filter(job, 28, lfa_flags, 0);
Findjob_set_uint64_filter(job,
28 + (strcmp(argv[i - 1], "-has_some_lfa_flags_of") == 0),
lfa_flags, 0);
} else if(strcmp(argv[i], "-has_filter")==0) {
Findjob_set_filter_filter(job, 1, 0);
} else if(strcmp(argv[i], "-has_no_filter")==0) {
@@ -2231,9 +2234,12 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag)
" performs an action on files below the given directory in",
" the ISO image. Tests:",
" -name pattern, -wholename pattern, -disk_name pattern,",
" -disk_path pattern, -use_pattern on|off,",
" -or_use_pattern on|off, -name_limit_blocker length,",
" -type b|c|d|p|f|l|s|e, -pending_data, -hidden,",
" -lba_range start count, -damaged, -has_acl, -has_xattr,",
" -has_aaip, -has_filter, -has_md5, -has_any_xattr,",
" -has_lfa_flags letters, -has_some_lfa_flags_of letters,",
" -has_hfs_crtp, -has_hfs_bless, -bad_outname,",
" -name_limit_blocker, -maxdepth, -mindepth, -size,",
" -prune, -decision yes|no, -true, -false",