From c310e2abc1812e46ef3e356307ff595b3e630f6e Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Tue, 10 Jan 2023 19:03:10 +0100 Subject: [PATCH] Bug fix: -find test -has_xattr matched "isofs." attributes in -xattr mode "any" --- xorriso/iso_tree.c | 12 ++- xorriso/xorriso.1 | 11 ++- xorriso/xorriso.info | 143 ++++++++++++++++++------------------ xorriso/xorriso.texi | 11 ++- xorriso/xorriso_timestamp.h | 2 +- 5 files changed, 93 insertions(+), 86 deletions(-) diff --git a/xorriso/iso_tree.c b/xorriso/iso_tree.c index d3a89b67..261a615c 100644 --- a/xorriso/iso_tree.c +++ b/xorriso/iso_tree.c @@ -837,7 +837,17 @@ int Xorriso_getfattr(struct XorrisO *xorriso, void *in_node, char *path, if(ret <= 0) goto ex; if(flag & 64) { - ret= (num_attrs > 0); + if(flag & 16) { + ret= 0; + for(i= 0; i < (int) num_attrs; i++) { + if(strncmp(names[i], "isofs.", 6) != 0) { + ret= 1; + break; + } + } + } else { + ret= (num_attrs > 0); + } goto ex; } if(num_attrs == 0) diff --git a/xorriso/xorriso.1 b/xorriso/xorriso.1 index f68fd7fc..ff4684fc 100644 --- a/xorriso/xorriso.1 +++ b/xorriso/xorriso.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISO 1 "Version 1.5.5, Nov 09, 2022" +.TH XORRISO 1 "Version 1.5.5, Jan 10, 2023" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -1009,9 +1009,8 @@ Mode "any" processes attributes of all namespaces. This might need administrator privileges, even if the owner of the disk file tries to read or write the attributes. .br -Note that xattr from namespace "isofs." are never read from disk or restored -to disk. Further it is not possible to set them via xorriso xattr manipulation -commands. +Note that it is not possible to set xattr of namespace "isofs." by xorriso +xattr manipulation commands. .TP \fB\-md5\fR "on"|"all"|"off"|"load_check_off" Enable or disable processing of MD5 checksums for the overall session and for @@ -2050,7 +2049,7 @@ The suffixes "k", "M", and "G" mean 1024, 1024k, and 1024M respectively. As usual with xorriso, the suffixes "d" and "s" mean 512 and 2048 and all suffixes are recognized as both, uppercase and lowercase letters. .br -E.g. match files larger or equal 4 GiB: +E.g. match files of 4 GiB or larger: .br \-size +=4g .br @@ -6646,7 +6645,7 @@ Thomas Schmitt .br for libburnia\-project.org .SH COPYRIGHT -Copyright (c) 2007 \- 2022 Thomas Schmitt +Copyright (c) 2007 \- 2023 Thomas Schmitt .br Permission is granted to distribute this text freely. It shall only be modified in sync with the technical properties of \fBxorriso\fR. diff --git a/xorriso/xorriso.info b/xorriso/xorriso.info index 8c2e6d81..053dc185 100644 --- a/xorriso/xorriso.info +++ b/xorriso/xorriso.info @@ -4,7 +4,7 @@ xorriso.texi. xorriso - creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. - Copyright (C) 2007 - 2022 Thomas Schmitt + Copyright (C) 2007 - 2023 Thomas Schmitt Permission is granted to distribute this text freely. INFO-DIR-SECTION Archiving @@ -911,8 +911,7 @@ activate them only after image loading. Mode "any" processes attributes of all namespaces. This might need administrator privileges, even if the owner of the disk file tries to read or write the attributes. - Note that xattr from namespace "isofs." are never read from disk - or restored to disk. Further it is not possible to set them via + Note that it is not possible to set xattr of namespace "isofs." by xorriso xattr manipulation commands. -md5 "on"|"all"|"off"|"load_check_off" Enable or disable processing of MD5 checksums for the overall @@ -1764,7 +1763,7 @@ File: xorriso.info, Node: CmdFind, Next: Filter, Prev: Manip, Up: Commands usual with xorriso, the suffixes "d" and "s" mean 512 and 2048 and all suffixes are recognized as both, uppercase and lowercase letters. - E.g. match files larger or equal 4 GiB: + E.g. match files of 4 GiB or larger: -size +=4g -maxdepth number : Matches only files which are at most at the given depth level @@ -5626,7 +5625,7 @@ for libburnia-project.org 15.2 Copyright ============== -Copyright (c) 2007 - 2022 Thomas Schmitt +Copyright (c) 2007 - 2023 Thomas Schmitt Permission is granted to distribute this text freely. It shall only be modified in sync with the technical properties of 'xorriso'. If you make use of the license to derive modified versions of 'xorriso' then @@ -5669,11 +5668,11 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -assess_indev_features shows filesystem features: Inquiry. (line 49) * -auto_charset learns character set from image: Loading. (line 117) * -backslash_codes enables backslash conversion: Scripting. (line 71) -* -ban_stdio_write demands real drive: Loading. (line 346) +* -ban_stdio_write demands real drive: Loading. (line 345) * -biblio_file sets biblio file name: SetWrite. (line 256) * -blank erases media: Writing. (line 57) * -boot_image controls bootability: Bootable. (line 75) -* -calm_drive reduces drive activity: Loading. (line 336) +* -calm_drive reduces drive activity: Loading. (line 335) * -cd sets working directory in ISO: Navigate. (line 7) * -cdx sets working directory on disk: Navigate. (line 15) * -changes_pending overrides change status: Writing. (line 12) @@ -5707,12 +5706,12 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -cp_rx copies file trees to disk: Restore. (line 131) * -cp_rx copies file trees to disk <1>: Restore. (line 139) * -cut_out inserts piece of data file or device: Insert. (line 139) -* -data_cache_size adjusts read cache size: Loading. (line 362) +* -data_cache_size adjusts read cache size: Loading. (line 361) * -dev acquires one drive for input and output: AqDrive. (line 12) * -devices gets list of drives: Inquiry. (line 7) * -device_links gets list of drives: Inquiry. (line 17) * -dialog enables dialog mode: DialogCtl. (line 7) -* -disk_dev_ino fast incremental backup: Loading. (line 256) +* -disk_dev_ino fast incremental backup: Loading. (line 255) * -disk_pattern controls pattern expansion: Insert. (line 34) * -displacement compensate altered image start address: Loading. (line 78) @@ -5724,8 +5723,8 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -dusx show directory size on disk: Navigate. (line 88) * -dux show directory size on disk: Navigate. (line 84) * -dvd_obs set write block size and end alignment: SetWrite. (line 400) -* -early_stdio_test classifies stdio drives: Loading. (line 350) -* -ecma119_map names w/o Rock Ridge, Joliet: Loading. (line 229) +* -early_stdio_test classifies stdio drives: Loading. (line 349) +* -ecma119_map names w/o Rock Ridge, Joliet: Loading. (line 228) * -eject ejects drive tray: Writing. (line 50) * -end writes pending session and ends program: Scripting. (line 151) * -errfile_log logs problematic disk files: Scripting. (line 116) @@ -5738,13 +5737,13 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -extract_cut copies file piece to disk: Restore. (line 108) * -extract_l copies files to disk: Restore. (line 104) * -extract_single copies file to disk: Restore. (line 101) -* -file_name_limit curbs length of file names: Loading. (line 276) +* -file_name_limit curbs length of file names: Loading. (line 275) * -file_size_limit limits data file size: SetInsert. (line 7) * -find traverses and alters ISO tree: CmdFind. (line 7) * -findx traverses disk tree: Navigate. (line 91) * -follow softlinks and mount points: SetInsert. (line 77) * -format formats media: Writing. (line 87) -* -for_backup -acl,-xattr,-hardlinks,-md5: Loading. (line 215) +* -for_backup -acl,-xattr,-hardlinks,-md5: Loading. (line 214) * -fs sets size of fifo: SetWrite. (line 479) * -getfacl shows ACL in ISO image: Navigate. (line 60) * -getfacl_r shows ACL in ISO image: Navigate. (line 66) @@ -5760,11 +5759,11 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -indev acquires a drive for input: AqDrive. (line 23) * -in_charset sets input character set: Loading. (line 112) * -iso_nowtime fixed "now" time for ISO 9660 objects: Loading. - (line 250) + (line 249) * -iso_rr_pattern controls pattern expansion: Manip. (line 10) * -jigdo clears JTE or or adds parameter to JTE: Jigdo. (line 37) * -joliet enables production of Joliet tree: SetWrite. (line 10) -* -joliet_map Joliet names: Loading. (line 242) +* -joliet_map Joliet names: Loading. (line 241) * -launch_frontend starts frontend program at pipes: Frontend. (line 141) * -list_arg_sorting prints sorting order of -x: ArgSort. (line 26) @@ -5789,7 +5788,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -map_l inserts paths from disk file: Insert. (line 96) * -map_single inserts path: Insert. (line 93) * -mark sets synchronizing message: Frontend. (line 23) -* -md5 controls handling of MD5 sums: Loading. (line 184) +* -md5 controls handling of MD5 sums: Loading. (line 183) * -mkdir creates ISO directory: Insert. (line 187) * -modesty_on_drive keep drive buffer hungry: SetWrite. (line 419) * -mount issues mount command for ISO session: Restore. (line 204) @@ -5846,7 +5845,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top (line 57) * -rollback discards pending changes: Writing. (line 9) * -rollback_end ends program without writing: Scripting. (line 154) -* -rom_toc_scan searches for sessions: Loading. (line 308) +* -rom_toc_scan searches for sessions: Loading. (line 307) * -rr_reloc_dir sets name of relocation directory: SetWrite. (line 150) * -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 179) * -scsi_dev_family choose Linux device file type: AqDrive. (line 95) @@ -5921,8 +5920,8 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Appended partition, in MBR or GPT: Bootable. (line 284) * Automatic execution order, of arguments, -x: ArgSort. (line 16) * Backslash Interpretation, _definition: Processing. (line 57) -* Backup, enable fast incremental, -disk_dev_ino: Loading. (line 256) -* Backup, enable features, -for_backup: Loading. (line 215) +* Backup, enable fast incremental, -disk_dev_ino: Loading. (line 255) +* Backup, enable features, -for_backup: Loading. (line 214) * Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 179) * Blank media, _definition: Media. (line 34) * Blank, format, Immed bit, -use_immed_bit: SetWrite. (line 457) @@ -5961,8 +5960,8 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Directory, delete, -rmdir: Manip. (line 29) * disk_path, _definition: Insert. (line 6) * Drive, accessability, -drive_class: AqDrive. (line 43) -* Drive, classify stdio, -early_stdio_test: Loading. (line 350) -* Drive, demand real MMC, -ban_stdio_write: Loading. (line 346) +* Drive, classify stdio, -early_stdio_test: Loading. (line 349) +* Drive, demand real MMC, -ban_stdio_write: Loading. (line 345) * Drive, eject tray, -eject: Writing. (line 50) * Drive, for input and output, -dev: AqDrive. (line 12) * Drive, for input, -indev: AqDrive. (line 23) @@ -5970,7 +5969,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Drive, get drive list, -devices: Inquiry. (line 7) * Drive, get drive list, -device_links: Inquiry. (line 17) * Drive, list supported media, -list_profiles: Writing. (line 163) -* Drive, reduce activity, -calm_drive: Loading. (line 336) +* Drive, reduce activity, -calm_drive: Loading. (line 335) * Drive, report SCSI commands, -scsi_log: Scripting. (line 143) * Drive, write and eject, -commit_eject: Writing. (line 53) * Drive, _definition: Drives. (line 6) @@ -5986,9 +5985,9 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Examples: Examples. (line 6) * extattr, _definition: Extras. (line 66) * File content, copy, -concat: Restore. (line 148) -* File names, curb length, -file_name_limit: Loading. (line 276) -* File names, if Joliet is loaded: Loading. (line 242) -* File names, if neither Rock Ridge nor Joliet: Loading. (line 229) +* File names, curb length, -file_name_limit: Loading. (line 275) +* File names, if Joliet is loaded: Loading. (line 241) +* File names, if neither Rock Ridge nor Joliet: Loading. (line 228) * Filesytem features, show, -assess_indev_features: Inquiry. (line 49) * Filter, apply to file tree, -set_filter_r: Filter. (line 84) * Filter, apply to file, -set_filter: Filter. (line 58) @@ -6014,7 +6013,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * HFS+ serial number: Bootable. (line 418) * hidden, set in ISO image, -hide: Manip. (line 177) * HP-PA boot sector, production: Bootable. (line 393) -* Image reading, cache size, -data_cache_size: Loading. (line 362) +* Image reading, cache size, -data_cache_size: Loading. (line 361) * Image, demand volume ID, -assert_volid: Loading. (line 105) * Image, discard pending changes, -rollback: Writing. (line 9) * Image, filesystem to load, -read_fs: Loading. (line 96) @@ -6066,14 +6065,14 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Jigdo Template Extraction, -jigdo: Jigdo. (line 37) * Jigdo Template Extraction, _definition: Jigdo. (line 6) * LBA, _definition: Drives. (line 17) -* libisofs, fixed "now" time: Loading. (line 250) +* libisofs, fixed "now" time: Loading. (line 249) * Linux device type, -scsi_dev_family: AqDrive. (line 95) * List delimiter, _definition: Processing. (line 13) * Local Character Set, _definition: Charset. (line 11) * MBR bootable/active flag, enforce: Bootable. (line 351) * MBR, set, -boot_image system_area=: Bootable. (line 200) * MBR, _definition: Extras. (line 27) -* MD5, control handling, -md5: Loading. (line 184) +* MD5, control handling, -md5: Loading. (line 183) * Media, erase, -blank: Writing. (line 57) * Media, format, -format: Writing. (line 87) * Media, list formats, -list_formats: Writing. (line 128) @@ -6180,7 +6179,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * SUN SPARC boot images, activation: Bootable. (line 464) * Symbolic link, create, -lns: Insert. (line 191) * System area, _definition: Bootable. (line 200) -* Table-of-content, search sessions, -rom_toc_scan: Loading. (line 308) +* Table-of-content, search sessions, -rom_toc_scan: Loading. (line 307) * Table-of-content, show, -toc: Inquiry. (line 27) * Timestamps, set in ISO image, -alter_date: Manip. (line 139) * Timestamps, set in ISO image, -alter_date_r: Manip. (line 174) @@ -6239,48 +6238,48 @@ Node: Commands26041 Node: ArgSort27718 Node: AqDrive29212 Node: Loading36369 -Node: Insert58208 -Node: SetInsert70325 -Node: Manip80442 -Node: CmdFind90542 -Node: Filter110569 -Node: Writing115191 -Node: SetWrite127446 -Node: Bootable157298 -Node: Jigdo185179 -Node: Charset190182 -Node: Exception193511 -Node: DialogCtl199640 -Node: Inquiry202242 -Node: Navigate213500 -Node: Verify222207 -Node: Restore233356 -Node: Emulation245564 -Node: Scripting256020 -Node: Frontend263803 -Node: Examples273429 -Node: ExDevices274607 -Node: ExCreate275268 -Node: ExDialog276568 -Node: ExGrowing277839 -Node: ExModifying278648 -Node: ExBootable279158 -Node: ExCharset279713 -Node: ExPseudo280609 -Node: ExCdrecord281536 -Node: ExMkisofs281856 -Node: ExGrowisofs283753 -Node: ExException284906 -Node: ExTime285364 -Node: ExIncBackup285822 -Node: ExRestore289848 -Node: ExRecovery290794 -Node: Files291366 -Node: Environ292700 -Node: Seealso293448 -Node: Bugreport294165 -Node: Legal294756 -Node: CommandIdx295768 -Node: ConceptIdx313666 +Node: Insert58140 +Node: SetInsert70257 +Node: Manip80374 +Node: CmdFind90474 +Node: Filter110498 +Node: Writing115120 +Node: SetWrite127375 +Node: Bootable157227 +Node: Jigdo185108 +Node: Charset190111 +Node: Exception193440 +Node: DialogCtl199569 +Node: Inquiry202171 +Node: Navigate213429 +Node: Verify222136 +Node: Restore233285 +Node: Emulation245493 +Node: Scripting255949 +Node: Frontend263732 +Node: Examples273358 +Node: ExDevices274536 +Node: ExCreate275197 +Node: ExDialog276497 +Node: ExGrowing277768 +Node: ExModifying278577 +Node: ExBootable279087 +Node: ExCharset279642 +Node: ExPseudo280538 +Node: ExCdrecord281465 +Node: ExMkisofs281785 +Node: ExGrowisofs283682 +Node: ExException284835 +Node: ExTime285293 +Node: ExIncBackup285751 +Node: ExRestore289777 +Node: ExRecovery290723 +Node: Files291295 +Node: Environ292629 +Node: Seealso293377 +Node: Bugreport294094 +Node: Legal294685 +Node: CommandIdx295697 +Node: ConceptIdx313595  End Tag Table diff --git a/xorriso/xorriso.texi b/xorriso/xorriso.texi index b9b5f80a..53f9bab4 100644 --- a/xorriso/xorriso.texi +++ b/xorriso/xorriso.texi @@ -50,7 +50,7 @@ @c man .\" First parameter, NAME, should be all caps @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 .TH XORRISO 1 "Version 1.5.5, Nov 09, 2022" +@c man .TH XORRISO 1 "Version 1.5.5, Jan 10, 2023" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -69,7 +69,7 @@ xorriso - creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. -Copyright @copyright{} 2007 - 2022 Thomas Schmitt +Copyright @copyright{} 2007 - 2023 Thomas Schmitt @quotation Permission is granted to distribute this text freely. @@ -1257,9 +1257,8 @@ Mode "any" processes attributes of all namespaces. This might need administrator privileges, even if the owner of the disk file tries to read or write the attributes. @* -Note that xattr from namespace "isofs." are never read from disk or restored -to disk. Further it is not possible to set them via xorriso xattr manipulation -commands. +Note that it is not possible to set xattr of namespace "isofs." by xorriso +xattr manipulation commands. @c man .TP @item -md5 "on"|"all"|"off"|"load_check_off" @kindex -md5 controls handling of MD5 sums @@ -7717,7 +7716,7 @@ Thomas Schmitt for libburnia-project.org @c man .SH COPYRIGHT @section Copyright -Copyright (c) 2007 - 2022 Thomas Schmitt +Copyright (c) 2007 - 2023 Thomas Schmitt @* Permission is granted to distribute this text freely. It shall only be modified in sync with the technical properties of @command{xorriso}. diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index 034c0b7c..66d1491f 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2023.01.09.144346" +#define Xorriso_timestamP "2023.01.10.180154"