New entities "at_time", "before", "after", "not_after", "not_before" for commands -load, -mount, -mount_cmd, -session_string, -truncate_overwritable

This commit is contained in:
Thomas Schmitt 2024-06-29 23:31:15 +02:00
parent 2e4b824d65
commit 5133b9cba1
10 changed files with 262 additions and 116 deletions

View File

@ -523,14 +523,14 @@ int Xorriso_aquire_drive(struct XorrisO *xorriso, char *adr, char *show_adr,
if((xorriso->image_start_mode&(1<<30))) { /* if enabled at all */
adr_pt= xorriso->image_start_value;
adr_mode= xorriso->image_start_mode & 0xffff;
if(adr_mode == 4 && strlen(adr_pt) <= 80) {
/* Convert volid search expression into lba */
params_flag= 0;
ret= Xorriso__bourne_to_reg(xorriso->image_start_value, adr_data, 0);
if(ret >= 1)
params_flag|= 4;
ret= isoburn_get_mount_params_v2(drive, 4, adr_data, &lba, &track,
&session, volid, params_flag);
if(adr_mode >= 4 && adr_mode <= 9 && strlen(adr_pt) <= 80) {
/* Convert volid search expression or time constraint to lba */
ret= Xorriso_prepare_load_search(xorriso, "-indev", adr_mode, adr_pt,
adr_data, &params_flag, 0);
if(ret <= 0)
goto ex;
ret= isoburn_get_mount_params_v2(drive, adr_mode, adr_data, &lba,
&track, &session, volid, params_flag);
Xorriso_process_msg_queues(xorriso,0);
if(ret <= 0)
goto ex;

View File

@ -1163,13 +1163,11 @@ int Xorriso_mount(struct XorrisO *xorriso, char *dev, int adr_mode,
drive= dinfo[0].drive;
}
if(adr_mode == 4 && strlen(adr_pt) <= 80) {
ret= Xorriso__bourne_to_reg(adr_pt, adr_data, 0);
if(ret == 1) {
params_flag|= 4;
adr_pt= adr_data;
}
}
ret= Xorriso_prepare_load_search(xorriso, "-mount", adr_mode, adr_pt,
adr_data, &params_flag, 0);
if(ret <= 0)
goto ex;
adr_pt= adr_data;
ret= isoburn_get_mount_params_v2(drive, adr_mode, adr_pt, &lba, &track,
&session, volid, params_flag);
Xorriso_process_msg_queues(xorriso,0);

View File

@ -1883,6 +1883,7 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag)
" -grow_blindly \"off\"|predicted_nwa",
" Switch between modifying and blind growing.",
" -load \"session\"|\"track\"|\"lba\"|\"sbsector\"|\"volid\"|\"auto\" id",
" -load \"at_time\"|\"before\"|\"after\"|\"not_before\"|\"not_after\" time",
" Load a particular (outdated) ISO session from a -dev or",
" -indev which hosts more than one session.",
" -displacement [-]block_address",
@ -2049,6 +2050,8 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag)
" -toc Show media specific tables of content (sessions).",
" -toc_of \"in\"|\"out\"|\"all\"[\":short\"]",
" Show -toc of either input drive or output drive or both.",
" -toc_info_type \"volid\"|\"creation_time[_gmt]\"|\"modification_time[_gmt]\"",
" Choose what to show in the right column of -toc and -toc_of.",
"",
" -assess_indev_features \"plain\"|\"cmd\"|\"as_mkisofs\"|\"replay\"",
" Inspect the filesystem on -indev for features like ISO level,",

View File

@ -430,6 +430,16 @@ int Xorriso_decode_load_adr(struct XorrisO *xorriso, char *cmd,
*entity_code= 3 | ((flag&1) << 16);
else if(strcmp(adr_mode, "volid")==0)
*entity_code= 4;
else if(strcmp(adr_mode, "at_time")==0)
*entity_code= 5;
else if(strcmp(adr_mode, "not_after")==0)
*entity_code= 6;
else if(strcmp(adr_mode, "not_before")==0)
*entity_code= 7;
else if(strcmp(adr_mode, "before")==0)
*entity_code= 8;
else if(strcmp(adr_mode, "after")==0)
*entity_code= 9;
else {
sprintf(xorriso->info_text, "%s: unknown address mode '%s'", cmd, adr_mode);
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0);
@ -458,6 +468,42 @@ int Xorriso_decode_load_adr(struct XorrisO *xorriso, char *cmd,
}
int Xorriso_prepare_load_search(struct XorrisO *xorriso, char *cmd,
int adr_mode, char *adr_value_in,
char *adr_value_out, int *params_flag,
int flag)
{
int ret;
time_t seconds;
*params_flag= 0;
if(adr_mode == 4 && strlen(adr_value_in) <= 80) {
ret= Xorriso__bourne_to_reg(adr_value_in, adr_value_out, 0);
if(ret == 1) {
*params_flag|= 4;
} else {
strcpy(adr_value_out, adr_value_in);
}
return(1);
}
if(adr_mode >= 5 && adr_mode <= 9) {
ret= Decode_timestring(adr_value_in, &seconds, 0);
if(ret <= 0) {
sprintf(xorriso->info_text, "%s: Cannot decode timestring '%s'",
cmd, adr_value_in);
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "SORRY", 0);
return(0);
}
sprintf(adr_value_out, "%.f", (double) seconds);
if(xorriso->toc_info_type == 3)
*params_flag|= 4;
return(1);
}
strcpy(adr_value_out, adr_value_in);
return(1);
}
int Xorriso_check_thing_len(struct XorrisO *xorriso, char *name, int size,
char *cmd, char *thing, int flag)
{
@ -1540,7 +1586,7 @@ next_command:;
(*idx)+= 4;
if((*idx)>argc) {
sprintf(xorriso->info_text,
"-%s: Not enough arguments. Needed are: device entity id command",
"-%s: Not enough arguments. Needed are: device entity id path",
cmd);
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0);
ret= 0;
@ -1791,7 +1837,7 @@ next_command:;
(*idx)+= 4;
if((*idx)>argc) {
sprintf(xorriso->info_text,
"-%s: Not enough arguments. Needed are: device entity id command",
"-%s: Not enough arguments. Needed are: device entity id format",
cmd);
Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0);
ret= 0;

View File

@ -1,7 +1,7 @@
/* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images.
Copyright 2007-2014 Thomas Schmitt, <scdbackup@gmx.net>
Copyright 2007-2024 Thomas Schmitt, <scdbackup@gmx.net>
Provided under GPL version 2 or later.
@ -55,6 +55,11 @@ int Xorriso_decode_load_adr(struct XorrisO *xorriso, char *cmd,
int *entity_code, char entity_id[81],
int flag);
int Xorriso_prepare_load_search(struct XorrisO *xorriso, char *cmd,
int adr_mode, char *adr_value_in,
char *adr_value_out, int *params_flag,
int flag);
int Xorriso_check_thing_len(struct XorrisO *xorriso, char *name, int size,
char *cmd, char *thing, int flag);

View File

@ -3654,14 +3654,16 @@ int Xorriso_truncate_overwritable(struct XorrisO *xorriso, char *adr_mode,
{
int ret, iso_session, iso_track, image_start_mode= 0;
int was_indev= 0, checksum_block= 0, vd_end, headless_mode= 0, i;
int params_flag;
off_t iso_lba= 0, iso_size= 0, old_size, new_size, blocks, readable_blocks;
char image_start_value[81], *head_buffer= NULL, iso_volid[33];
char *sb_buffer= NULL, *checksum_pt;
char *sb_buffer= NULL, *checksum_pt, *adr_data= NULL;
struct burn_drive_info *dinfo;
struct burn_drive *drive = NULL, *in_drive = NULL;
struct burn_multi_caps *caps= NULL;
Xorriso_alloc_meM(head_buffer, char, 32 * 2048);
Xorriso_alloc_meM(adr_data, char, 163);
if(Xorriso_change_is_pending(xorriso, 0)) {
sprintf(xorriso->info_text,
@ -3726,9 +3728,14 @@ int Xorriso_truncate_overwritable(struct XorrisO *xorriso, char *adr_mode,
image_start_value, 0);
if(ret <= 0)
goto ex;
ret= isoburn_get_mount_params_v2(drive, image_start_mode, image_start_value,
ret= Xorriso_prepare_load_search(xorriso, "-truncate_overwritable",
image_start_mode, image_start_value,
adr_data, &params_flag, 0);
if(ret <= 0)
goto ex;
ret= isoburn_get_mount_params_v2(drive, image_start_mode, adr_data,
&iso_lba, &iso_track, &iso_session,
iso_volid, 0);
iso_volid, params_flag);
if(ret <= 0)
goto ex;
if(ret != 1) {
@ -3845,6 +3852,7 @@ wrong_adjust:;
ex:
if(caps!=NULL)
burn_disc_free_multi_caps(&caps);
Xorriso_free_meM(adr_data);
Xorriso_free_meM(head_buffer);
Xorriso_free_meM(sb_buffer);
Xorriso_process_msg_queues(xorriso,0);

View File

@ -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.7, Jun 28, 2024"
.TH XORRISO 1 "Version 1.5.7, Jun 29, 2024"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
@ -873,8 +873,39 @@ address. The following entities are defined:
.br
"lba" or "sbsector" with a number as of a line "ISO ...", column "sbsector".
.br
"volid" with a search pattern for a text as of a line "ISO ...",
column "Volume Id".
"volid" with a search pattern for a text as in the column "Volume Id" of
a \-toc line "ISO ...".
.br
"at_time" with a time string as described with command \-alter_date chooses
the last session or track where the modification timestamp matches the given
time within the same second.
.br
"before" with a time string chooses the last session or track of which
the timestamp is older than the given time. But it does not match an entity
with exactly the given time.
.br
"not_after" is like "before" but also matches an entity with exactly the
given time.
.br
"after" with a time string chooses the first session or track of which
the timestamp is younger than the given time. But it does not match an entity
with exactly the given time.
.br
"not_before" is like "after" but also matches an entity with exactly the
given time.
.br
Comparison of time entities is done with an accuracy of one second. I.e. the
centiseconds of ISO 9660 timestamps are ignored.
If \-toc_info_type is set to "creation_time", then the comparison is done
against the creation timestamp of track or session rather than the modification
timestamp. The output of \-pvd_info shows both timestamps as "Creation Time:"
and "Modif. Time :".
.br
The time comparisons pick first and last matching sessions. If the sequence of
timestamps on a drive is not chronologically ascending, the picks might not be
the best choice.
In this case look at the output of \-toc_info_type "mtime" \-toc and choose the
desired entity by "session", "track", or "sbsector".
.br
Addressing a non\-existing entity or one which does not represent an ISO
image will either abandon \-indev or at least lead to a blank image.
@ -1927,7 +1958,7 @@ Relative times counted from current clock time:
where "s" means seconds, "h" hours, "d" days, "w" weeks, "m"=30d,
"y"=365.25d plus 1d added to multiplication result.
.br
Absolute seconds counted from Jan 1 1970:
Absolute seconds counted from Jan 1 1970 00:00 GMT:
.br
=Number
.br

View File

@ -798,8 +798,32 @@ activate them only after image loading.
"Idx".
"lba" or "sbsector" with a number as of a line "ISO ...", column
"sbsector".
"volid" with a search pattern for a text as of a line "ISO ...",
column "Volume Id".
"volid" with a search pattern for a text as in the column "Volume
Id" of a -toc line "ISO ...".
"at_time" with a time string as described with command -alter_date
chooses the last session or track where the modification timestamp
matches the given time within the same second.
"before" with a time string chooses the last session or track of
which the timestamp is older than the given time. But it does not
match an entity with exactly the given time.
"not_after" is like "before" but also matches an entity with
exactly the given time.
"after" with a time string chooses the first session or track of
which the timestamp is younger than the given time. But it does
not match an entity with exactly the given time.
"not_before" is like "after" but also matches an entity with
exactly the given time.
Comparison of time entities is done with an accuracy of one second.
I.e. the centiseconds of ISO 9660 timestamps are ignored. If
-toc_info_type is set to "creation_time", then the comparison is
done against the creation timestamp of track or session rather than
the modification timestamp. The output of -pvd_info shows both
timestamps as "Creation Time:" and "Modif. Time :".
The time comparisons pick first and last matching sessions. If the
sequence of timestamps on a drive is not chronologically ascending,
the picks might not be the best choice. In this case look at the
output of -toc_info_type "mtime" -toc and choose the desired entity
by "session", "track", or "sbsector".
Addressing a non-existing entity or one which does not represent an
ISO image will either abandon -indev or at least lead to a blank
image.
@ -1664,7 +1688,7 @@ whether they stem from the loaded image or were newly inserted.
+|-Number["s"|"h"|"d"|"w"|"m"|"y"]
where "s" means seconds, "h" hours, "d" days, "w" weeks, "m"=30d,
"y"=365.25d plus 1d added to multiplication result.
Absolute seconds counted from Jan 1 1970:
Absolute seconds counted from Jan 1 1970 00:00 GMT:
=Number
'xorriso''s own timestamps:
YYYY.MM.DD[.hh[mm[ss]]]
@ -5768,7 +5792,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* # starts a comment line: Scripting. (line 156)
* -abort_on controls abort on error: Exception. (line 27)
* -abstract_file sets abstract file name: SetWrite. (line 271)
* -acl controls handling of ACLs: Loading. (line 165)
* -acl controls handling of ACLs: Loading. (line 189)
* -add inserts one or more paths: Insert. (line 44)
* -add_plainly inserts one or more paths: Insert. (line 68)
* -alter_date sets timestamps in ISO image: Manip. (line 139)
@ -5778,15 +5802,15 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -application_id sets application id: SetWrite. (line 218)
* -application_use sets application use field: SetWrite. (line 293)
* -as emulates mkisofs or cdrecord: Emulation. (line 13)
* -assert_volid rejects undesired images: Loading. (line 105)
* -assert_volid rejects undesired images: Loading. (line 129)
* -assess_indev_features shows filesystem features: Inquiry. (line 61)
* -auto_charset learns character set from image: Loading. (line 117)
* -auto_charset learns character set from image: Loading. (line 141)
* -backslash_codes enables backslash conversion: Scripting. (line 71)
* -ban_stdio_write demands real drive: Loading. (line 345)
* -ban_stdio_write demands real drive: Loading. (line 369)
* -biblio_file sets biblio file name: SetWrite. (line 277)
* -blank erases media: Writing. (line 57)
* -boot_image controls bootability: Bootable. (line 75)
* -calm_drive reduces drive activity: Loading. (line 335)
* -calm_drive reduces drive activity: Loading. (line 359)
* -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)
@ -5820,15 +5844,15 @@ 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 361)
* -data_cache_size adjusts read cache size: Loading. (line 385)
* -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 255)
* -disk_dev_ino fast incremental backup: Loading. (line 279)
* -disk_pattern controls pattern expansion: Insert. (line 34)
* -displacement compensate altered image start address: Loading.
(line 78)
(line 102)
* -drive_access control device file locking: AqDrive. (line 72)
* -drive_class controls drive accessability: AqDrive. (line 43)
* -du show directory size in ISO image: Navigate. (line 78)
@ -5837,8 +5861,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 421)
* -early_stdio_test classifies stdio drives: Loading. (line 349)
* -ecma119_map names w/o Rock Ridge, Joliet: Loading. (line 228)
* -early_stdio_test classifies stdio drives: Loading. (line 373)
* -ecma119_map names w/o Rock Ridge, Joliet: Loading. (line 252)
* -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)
@ -5851,13 +5875,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 275)
* -file_name_limit curbs length of file names: Loading. (line 299)
* -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 214)
* -for_backup -acl,-xattr,-hardlinks,-md5: Loading. (line 238)
* -fs sets size of fifo: SetWrite. (line 500)
* -getfacl shows ACL in ISO image: Navigate. (line 60)
* -getfacl_r shows ACL in ISO image: Navigate. (line 66)
@ -5865,19 +5889,19 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -getfattr_r shows xattr in ISO image: Navigate. (line 75)
* -gid sets global ownership: SetWrite. (line 314)
* -grow_blindly overrides next writeable address: AqDrive. (line 112)
* -hardlinks controls handling of hard links: Loading. (line 128)
* -hardlinks controls handling of hard links: Loading. (line 152)
* -help prints help text: Scripting. (line 19)
* -hfsplus enables production of HFS+ partition: SetWrite. (line 14)
* -hide excludes file names from directory trees: Manip. (line 177)
* -history brings text into readline history: Scripting. (line 42)
* -indev acquires a drive for input: AqDrive. (line 23)
* -in_charset sets input character set: Loading. (line 112)
* -in_charset sets input character set: Loading. (line 136)
* -iso_nowtime fixed "now" time for ISO 9660 objects: Loading.
(line 249)
(line 273)
* -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 241)
* -joliet_map Joliet names: Loading. (line 265)
* -launch_frontend starts frontend program at pipes: Frontend.
(line 141)
* -list_arg_sorting prints sorting order of -x: ArgSort. (line 26)
@ -5902,7 +5926,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 183)
* -md5 controls handling of MD5 sums: Loading. (line 207)
* -mkdir creates ISO directory: Insert. (line 188)
* -modesty_on_drive keep drive buffer hungry: SetWrite. (line 440)
* -mount issues mount command for ISO session: Restore. (line 204)
@ -5943,7 +5967,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -pwdx tells working directory on disk: Navigate. (line 21)
* -quoted_not_list sets exclusions: SetInsert. (line 74)
* -quoted_path_list inserts paths from disk file: Insert. (line 85)
* -read_fs filesystem type for image loading: Loading. (line 96)
* -read_fs filesystem type for image loading: Loading. (line 120)
* -read_mkisofsrc searches and reads .mkisofsrc file: Emulation.
(line 155)
* -read_speed set read speed: Loading. (line 11)
@ -5959,7 +5983,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 307)
* -rom_toc_scan searches for sessions: Loading. (line 331)
* -rr_reloc_dir sets name of relocation directory: SetWrite. (line 171)
* -scdbackup_tag enables scdbackup checksum tag: Emulation. (line 179)
* -scsi_dev_family choose Linux device file type: AqDrive. (line 95)
@ -6008,7 +6032,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top
* -volume_date sets volume timestamp: SetWrite. (line 232)
* -write_type chooses TAO or SAO/DAO: SetWrite. (line 521)
* -x enables automatic execution order of arguments: ArgSort. (line 16)
* -xattr controls handling of xattr (EA): Loading. (line 172)
* -xattr controls handling of xattr (EA): Loading. (line 196)
* -zisofs controls zisofs production: SetWrite. (line 317)

@ -6020,7 +6044,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
[index]
* Menu:
* ACL, control handling, -acl: Loading. (line 165)
* ACL, control handling, -acl: Loading. (line 189)
* ACL, set in ISO image, -setfacl: Manip. (line 68)
* ACL, set in ISO image, -setfacl_list: Manip. (line 94)
* ACL, set in ISO image, -setfacl_r: Manip. (line 92)
@ -6037,8 +6061,8 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Appended partitions, MBR: Bootable. (line 480)
* Automatic execution order, of arguments, -x: ArgSort. (line 16)
* Backslash Interpretation, _definition: Processing. (line 57)
* Backup, enable fast incremental, -disk_dev_ino: Loading. (line 255)
* Backup, enable features, -for_backup: Loading. (line 214)
* Backup, enable fast incremental, -disk_dev_ino: Loading. (line 279)
* Backup, enable features, -for_backup: Loading. (line 238)
* Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 179)
* Blank media, _definition: Media. (line 34)
* Blank, format, Immed bit, -use_immed_bit: SetWrite. (line 478)
@ -6046,10 +6070,10 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Bootability, control, -boot_image: Bootable. (line 75)
* Bugs, reporting: Bugreport. (line 6)
* cdrecord, Emulation: Emulation. (line 120)
* Character Set, for input, -in_charset: Loading. (line 112)
* Character Set, for input, -in_charset: Loading. (line 136)
* Character Set, for input/output, -charset: Charset. (line 54)
* Character Set, for output, -out_charset: SetWrite. (line 306)
* Character set, learn from image, -auto_charset: Loading. (line 117)
* Character set, learn from image, -auto_charset: Loading. (line 141)
* Character Set, of terminal, -local_charset: Charset. (line 57)
* Character Set, _definition: Charset. (line 6)
* CHRP partition, _definition: Bootable. (line 333)
@ -6077,8 +6101,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 349)
* Drive, demand real MMC, -ban_stdio_write: Loading. (line 345)
* Drive, classify stdio, -early_stdio_test: Loading. (line 373)
* Drive, demand real MMC, -ban_stdio_write: Loading. (line 369)
* Drive, eject tray, -eject: Writing. (line 50)
* Drive, for input and output, -dev: AqDrive. (line 12)
* Drive, for input, -indev: AqDrive. (line 23)
@ -6086,7 +6110,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 335)
* Drive, reduce activity, -calm_drive: Loading. (line 359)
* Drive, report SCSI commands, -scsi_log: Scripting. (line 143)
* Drive, write and eject, -commit_eject: Writing. (line 53)
* Drive, _definition: Drives. (line 6)
@ -6102,9 +6126,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 275)
* File names, if Joliet is loaded: Loading. (line 241)
* File names, if neither Rock Ridge nor Joliet: Loading. (line 228)
* File names, curb length, -file_name_limit: Loading. (line 299)
* File names, if Joliet is loaded: Loading. (line 265)
* File names, if neither Rock Ridge nor Joliet: Loading. (line 252)
* Filesytem features, show, -assess_indev_features: Inquiry. (line 61)
* Filter, apply to file tree, -set_filter_r: Filter. (line 84)
* Filter, apply to file, -set_filter: Filter. (line 58)
@ -6125,15 +6149,15 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Group, in ISO image, -chgrp: Manip. (line 49)
* Group, in ISO image, -chgrp_r: Manip. (line 53)
* Growing, _definition: Methods. (line 20)
* Hard links, control handling, -hardlinks: Loading. (line 128)
* Hard links, control handling, -hardlinks: Loading. (line 152)
* HFS+ allocation block size: Bootable. (line 458)
* HFS+ serial number: Bootable. (line 455)
* hidden, set in ISO image, -hide: Manip. (line 177)
* HP-PA boot sector, production: Bootable. (line 430)
* Image reading, cache size, -data_cache_size: Loading. (line 361)
* Image, demand volume ID, -assert_volid: Loading. (line 105)
* Image reading, cache size, -data_cache_size: Loading. (line 385)
* Image, demand volume ID, -assert_volid: Loading. (line 129)
* Image, discard pending changes, -rollback: Writing. (line 9)
* Image, filesystem to load, -read_fs: Loading. (line 96)
* Image, filesystem to load, -read_fs: Loading. (line 120)
* Image, override change status, -changes_pending: Writing. (line 12)
* Image, set abstract file name, -abstract_file: SetWrite. (line 271)
* Image, set application id, -application_id: SetWrite. (line 218)
@ -6182,14 +6206,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 249)
* libisofs, fixed "now" time: Loading. (line 273)
* 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 388)
* MBR, set, -boot_image system_area=: Bootable. (line 227)
* MBR, _definition: Extras. (line 27)
* MD5, control handling, -md5: Loading. (line 183)
* MD5, control handling, -md5: Loading. (line 207)
* Media, erase, -blank: Writing. (line 57)
* Media, format, -format: Writing. (line 87)
* Media, list formats, -list_formats: Writing. (line 128)
@ -6283,7 +6307,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Result layout, more shell-like, -sh_style_result: Scripting.
(line 61)
* Rock Ridge, _definition: Extras. (line 6)
* Session, altered start address, -displacement: Loading. (line 78)
* Session, altered start address, -displacement: Loading. (line 102)
* Session, info string, -session_string: Inquiry. (line 120)
* Session, issue mount command, -mount: Restore. (line 204)
* Session, log when written, -session_log: Scripting. (line 134)
@ -6298,7 +6322,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* System area, _definition: Bootable. (line 227)
* Table-of-content, choose info to show, -toc_info_type: Inquiry.
(line 49)
* Table-of-content, search sessions, -rom_toc_scan: Loading. (line 307)
* Table-of-content, search sessions, -rom_toc_scan: Loading. (line 331)
* Table-of-content, show parts of, -toc_of: Inquiry. (line 41)
* Table-of-content, show, -toc: Inquiry. (line 27)
* Timestamps, set in ISO image, -alter_date: Manip. (line 139)
@ -6334,7 +6358,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top
* Write, set speed, -speed: SetWrite. (line 392)
* Write, simulation, -dummy: SetWrite. (line 497)
* Write, TAO or SAO/DAO, -write_type: SetWrite. (line 521)
* xattr, control handling, -xattr: Loading. (line 172)
* xattr, control handling, -xattr: Loading. (line 196)
* xattr, set in ISO image, -setfattr: Manip. (line 103)
* xattr, set in ISO image, -setfattr_list: Manip. (line 120)
* xattr, set in ISO image, -setfattr_r: Manip. (line 118)
@ -6358,48 +6382,48 @@ Node: Commands26041
Node: ArgSort27718
Node: AqDrive29212
Node: Loading36369
Node: Insert58140
Node: SetInsert70335
Node: Manip80509
Node: CmdFind90609
Node: Filter110633
Node: Writing115255
Node: SetWrite127749
Node: Bootable159024
Node: Jigdo190306
Node: Charset195309
Node: Exception198638
Node: DialogCtl204767
Node: Inquiry207369
Node: Navigate219902
Node: Verify228609
Node: Restore239758
Node: Emulation251965
Node: Scripting262421
Node: Frontend270204
Node: Examples279830
Node: ExDevices281008
Node: ExCreate281669
Node: ExDialog282969
Node: ExGrowing284240
Node: ExModifying285049
Node: ExBootable285559
Node: ExCharset286114
Node: ExPseudo287010
Node: ExCdrecord287937
Node: ExMkisofs288257
Node: ExGrowisofs290154
Node: ExException291307
Node: ExTime291765
Node: ExIncBackup292223
Node: ExRestore296249
Node: ExRecovery297195
Node: Files297767
Node: Environ299101
Node: Seealso299849
Node: Bugreport300566
Node: Legal301157
Node: CommandIdx302169
Node: ConceptIdx320140
Node: Insert59667
Node: SetInsert71862
Node: Manip82036
Node: CmdFind92146
Node: Filter112170
Node: Writing116792
Node: SetWrite129286
Node: Bootable160561
Node: Jigdo191843
Node: Charset196846
Node: Exception200175
Node: DialogCtl206304
Node: Inquiry208906
Node: Navigate221439
Node: Verify230146
Node: Restore241295
Node: Emulation253502
Node: Scripting263958
Node: Frontend271741
Node: Examples281367
Node: ExDevices282545
Node: ExCreate283206
Node: ExDialog284506
Node: ExGrowing285777
Node: ExModifying286586
Node: ExBootable287096
Node: ExCharset287651
Node: ExPseudo288547
Node: ExCdrecord289474
Node: ExMkisofs289794
Node: ExGrowisofs291691
Node: ExException292844
Node: ExTime293302
Node: ExIncBackup293760
Node: ExRestore297786
Node: ExRecovery298732
Node: Files299304
Node: Environ300638
Node: Seealso301386
Node: Bugreport302103
Node: Legal302694
Node: CommandIdx303706
Node: ConceptIdx321677

End Tag Table

View File

@ -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.7, Jun 28, 2024"
@c man .TH XORRISO 1 "Version 1.5.7, Jun 29, 2024"
@c man .\" Please adjust this date whenever revising the manpage.
@c man .\"
@c man .\" Some roff macros, for reference:
@ -1105,8 +1105,39 @@ address. The following entities are defined:
@*
"lba" or "sbsector" with a number as of a line "ISO ...", column "sbsector".
@*
"volid" with a search pattern for a text as of a line "ISO ...",
column "Volume Id".
"volid" with a search pattern for a text as in the column "Volume Id" of
a -toc line "ISO ...".
@*
"at_time" with a time string as described with command -alter_date chooses
the last session or track where the modification timestamp matches the given
time within the same second.
@*
"before" with a time string chooses the last session or track of which
the timestamp is older than the given time. But it does not match an entity
with exactly the given time.
@*
"not_after" is like "before" but also matches an entity with exactly the
given time.
@*
"after" with a time string chooses the first session or track of which
the timestamp is younger than the given time. But it does not match an entity
with exactly the given time.
@*
"not_before" is like "after" but also matches an entity with exactly the
given time.
@*
Comparison of time entities is done with an accuracy of one second. I.e. the
centiseconds of ISO 9660 timestamps are ignored.
If -toc_info_type is set to "creation_time", then the comparison is done
against the creation timestamp of track or session rather than the modification
timestamp. The output of -pvd_info shows both timestamps as "Creation Time:"
and "Modif. Time :".
@*
The time comparisons pick first and last matching sessions. If the sequence of
timestamps on a drive is not chronologically ascending, the picks might not be
the best choice.
In this case look at the output of -toc_info_type "mtime" -toc and choose the
desired entity by "session", "track", or "sbsector".
@*
Addressing a non-existing entity or one which does not represent an ISO
image will either abandon -indev or at least lead to a blank image.
@ -2317,7 +2348,7 @@ Relative times counted from current clock time:
where "s" means seconds, "h" hours, "d" days, "w" weeks, "m"=30d,
"y"=365.25d plus 1d added to multiplication result.
@*
Absolute seconds counted from Jan 1 1970:
Absolute seconds counted from Jan 1 1970 00:00 GMT:
@*
=Number
@*

View File

@ -1 +1 @@
#define Xorriso_timestamP "2024.06.29.212258"
#define Xorriso_timestamP "2024.06.29.213042"