New info return modes 3 "Creation Time" and 4 "Modification Time" with isoburn_read_iso_head() and isoburn_read_iso_head_v2()
This commit is contained in:
parent
9222d38f19
commit
2306175432
@ -1295,6 +1295,8 @@ int isoburn_report_iso_error(int iso_error_code, char msg_text[], int os_errno,
|
||||
0= do not return anything in info (do not even touch it)
|
||||
1= copy volume id to info (info needs 33 bytes)
|
||||
2= do not touch info (caller will copy 64 kB header to it)
|
||||
3= copy creation time to info (info needs 18 bytes)
|
||||
4= copy modification time to info (info needs 18 bytes)
|
||||
bit14= -reserved -
|
||||
bit15= -reserved-
|
||||
@return 1 seems to be a valid ISO image , 0 format not recognized, <0 error
|
||||
@ -1315,7 +1317,7 @@ int isoburn_read_iso_head_parse(unsigned char *data,
|
||||
info_mode= flag&255;
|
||||
if(info_mode==0) {
|
||||
;
|
||||
} else if(info_mode==1) {
|
||||
} else if(info_mode==1) { /* Volume Id */
|
||||
strncpy(info, (char *) (data+40), 32);
|
||||
info[32]= 0;
|
||||
for(i= strlen(info)-1; i>=0; i--)
|
||||
@ -1325,6 +1327,12 @@ int isoburn_read_iso_head_parse(unsigned char *data,
|
||||
info[i]= 0;
|
||||
} else if(info_mode==2) {
|
||||
;
|
||||
} else if(info_mode == 3) { /* Creation Time */
|
||||
strncpy(info, (char *) (data + 813), 17);
|
||||
info[17]= 0;
|
||||
} else if(info_mode == 4) { /* Modification Time */
|
||||
strncpy(info, (char *) (data + 830), 17);
|
||||
info[17]= 0;
|
||||
} else {
|
||||
isoburn_msgs_submit(NULL, 0x00060000,
|
||||
"Program error: Unknown info mode with isoburn_read_iso_head()",
|
||||
|
@ -730,7 +730,7 @@ void isoburn_toc_disc_free(struct isoburn_toc_disc *disc);
|
||||
|
||||
/** Try whether the data at the given address look like a ISO 9660
|
||||
image header and obtain its alleged size. Depending on the info mode
|
||||
one other string of text information can be retrieved too.
|
||||
one string of text information or data can be retrieved too.
|
||||
@since 0.1.6
|
||||
@param d The drive with the medium to inspect
|
||||
@param lba The block number from where to read
|
||||
@ -740,7 +740,14 @@ void isoburn_toc_disc_free(struct isoburn_toc_disc *disc);
|
||||
0= do not return anything in info (do not even touch it)
|
||||
1= copy volume id to info (info needs 33 bytes)
|
||||
2= @since 0.2.2 :
|
||||
copy 64 kB header to info (needs 65536 bytes)
|
||||
copy 64 kB header to info (needs 65536 bytes) .
|
||||
No trailing zero gets appended.
|
||||
3= @since 1.5.8 :
|
||||
copy creation time to info (info needs 18 bytes).
|
||||
info[16] is the binary timezone offset x 15 minutes east
|
||||
4= @since 1.5.8 :
|
||||
copy modification time to info (info needs 18 bytes).
|
||||
info[16] is the binary timezone offset x 15 minutes east
|
||||
bit12= @since 1.5.6 :
|
||||
Read even if the start of multi-session emulation
|
||||
yielded a read error
|
||||
|
@ -1 +1 @@
|
||||
#define Xorriso_timestamP "2024.06.28.065555"
|
||||
#define Xorriso_timestamP "2024.06.28.135605"
|
||||
|
Loading…
Reference in New Issue
Block a user