From b2bdd6895556fc980169629cf5f24f38e0b2bb0e Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Tue, 12 Mar 2013 19:51:15 +0000 Subject: [PATCH] Reporting volume timestamps with -pvd_info --- xorriso/iso_img.c | 17 +++++++-- xorriso/text_io.c | 8 +++++ xorriso/xorriso.1 | 7 ++-- xorriso/xorriso.h | 12 +++++++ xorriso/xorriso.info | 69 +++++++++++++++++++------------------ xorriso/xorriso.texi | 7 ++-- xorriso/xorriso_timestamp.h | 2 +- 7 files changed, 82 insertions(+), 40 deletions(-) diff --git a/xorriso/iso_img.c b/xorriso/iso_img.c index 2afcc555..bf0c64a2 100644 --- a/xorriso/iso_img.c +++ b/xorriso/iso_img.c @@ -1,7 +1,7 @@ /* xorriso - creates, loads, manipulates and burns ISO 9660 filesystem images. - Copyright 2007-2012 Thomas Schmitt, + Copyright 2007-2013 Thomas Schmitt, Provided under GPL version 2 or later. @@ -243,7 +243,7 @@ int Xorriso_pvd_info(struct XorrisO *xorriso, int flag) IsoImage *image; struct burn_drive_info *dinfo; struct burn_drive *drive; - char *msg, block_head[8]; + char *msg, block_head[8], *crt, *mdt, *ext, *eft; off_t head_count; msg= xorriso->result_line; @@ -292,6 +292,19 @@ int Xorriso_pvd_info(struct XorrisO *xorriso, int flag) Xorriso_result(xorriso,0); sprintf(msg, "Biblio File : %s\n", xorriso->biblio_file); Xorriso_result(xorriso,0); + + ret= iso_image_get_pvd_times(image, &crt, &mdt, &ext, &eft); + if(ret != ISO_SUCCESS) + crt= mdt= ext= eft= ""; + sprintf(msg, "Creation Time: %s\n", crt); + Xorriso_result(xorriso,0); + sprintf(msg, "Modif. Time : %s\n", mdt); + Xorriso_result(xorriso,0); + sprintf(msg, "Expir. Time : %s\n", ext); + Xorriso_result(xorriso,0); + sprintf(msg, "Eff. Time : %s\n", eft); + Xorriso_result(xorriso,0); + return(1); } diff --git a/xorriso/text_io.c b/xorriso/text_io.c index ee9c4966..4f25d412 100644 --- a/xorriso/text_io.c +++ b/xorriso/text_io.c @@ -1737,12 +1737,18 @@ int Xorriso_sieve_big(struct XorrisO *xorriso, int flag) { 0, -1, -1, -1, -1, -1}, 1, 1}, {"CopyrightFile:", 3, "CopyrightFile: ", "", 1, { 0, -1, -1, -1, -1, -1}, 1, 1}, + {"Creation Time:", 3, "Creation Time: ", "", 1, { 0, -1, -1, -1, -1, -1}, + 1, 1}, {"DVD obs 64 kB:", 3, "DVD obs 64 kB:", "", 1, { 0, -1, -1, -1, -1, -1}, 1, 0}, {"Drive current:", 3, "Drive current:", "", 2, { 0, 1, -1, -1, -1, -1}, 2, 0}, {"Drive type :", 3, "Drive type :", "", 3, { 1, 3, 5, -1, -1, -1}, 2, 0}, + {"Eff. Time :", 3, "Eff. Time : ", "", 1, { 0, -1, -1, -1, -1, -1}, + 1, 1}, + {"Expir. Time :", 3, "Expir. Time : ", "", 1, { 0, -1, -1, -1, -1, -1}, + 1, 1}, {"Ext. filters :", 3, "Ext. filters : ", "", 1, { 0, -1, -1, -1, -1, -1}, 1, 1}, {"File damaged :", 3, "File damaged :", "", 4, { 0, 2, 4, 6, -1, -1}, @@ -1783,6 +1789,8 @@ int Xorriso_sieve_big(struct XorrisO *xorriso, int flag) 2, 1}, {"Media summary:", 3, "Media summary:", "", 4, { 0, 2, 5, 7, -1, -1}, 2, 0}, + {"Modif. Time :", 3, "Modif. Time : ", "", 1, { 0, -1, -1, -1, -1, -1}, + 1, 1}, {"PVD address :", 3, "PVD address :", "", 1, { 0, -1, -1, -1, -1, -1}, 1, 0}, {"Preparer Id :", 3, "Preparer Id : ", "", 1, { 0, -1, -1, -1, -1, -1}, diff --git a/xorriso/xorriso.1 b/xorriso/xorriso.1 index d28aae4b..d13eedf2 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.2.7, Mar 11, 2013" +.TH XORRISO 1 "Version 1.2.7, Mar 12, 2013" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -3515,9 +3515,12 @@ The free space after the next \-commit might be smaller by several MB. This depends on medium type, number of recorded sessions, and drive habits. .TP \fB\-pvd_info\fR -Print various ID strings which can be found in loaded ISO +Print various ID strings and timestamps which can be found in loaded ISO images. Some of the IDs may be changed by commands like \-volid or \-publisher. For these IDs \-pvd_info reports what would be written with the next \-commit. +The timestamps get not automatically propagated from loaded image to newly +written image. The ones for new images may be set by command \-volume_date. +See there for the meaning of the particular timestamps. .TP .B Navigation in ISO image and disk filesystem: .TP diff --git a/xorriso/xorriso.h b/xorriso/xorriso.h index 5cdec7c0..9682e657 100644 --- a/xorriso/xorriso.h +++ b/xorriso/xorriso.h @@ -796,6 +796,9 @@ int Xorriso_sieve_dispose(struct XorrisO *xorriso, int flag); "CopyrightFile:" up to 1 result from -pvd_info argv[0]= file name (Note: prefix is "CopyrightFile: ") + "Creation Time:" up to 1 result from -pvd_info + argv[0]= YYYYMMDDhhmmsscc + (Note: prefix is "Creation Time: ") "DVD obs 64 kB:" up to 1 result from -list_extras argv[0]= "yes" or "no" "Drive current:" up to 2 results from -dev, -indev, -toc, others @@ -805,6 +808,12 @@ int Xorriso_sieve_dispose(struct XorrisO *xorriso, int flag); argv[0]= vendor argv[1]= product argv[2]= revision + "Eff. Time :" up to 1 result from -pvd_info + argv[0]= YYYYMMDDhhmmsscc + (Note: prefix is "EffectiveTime: ") + "Expir. Time :" up to 1 result from -pvd_info + argv[0]= YYYYMMDDhhmmsscc + (Note: prefix is "Expir. Time : ") "Ext. filters :" up to 1 result from -list_extras argv[0]= "yes" or "no" , possibly more info (Note: prefix is "Ext. filters : ") @@ -874,6 +883,9 @@ int Xorriso_sieve_dispose(struct XorrisO *xorriso, int flag); argv[1]= data blocks (full count) argv[2]= data (with unit letter k,m,g) argv[3]= free (with unit letter k,m,g) + "Modif. Time :" up to 1 result from -pvd_info + argv[0]= YYYYMMDDhhmmsscc + (Note: prefix is "Modif. Time : ") "PVD address :" up to 1 result from -pvd_info argv[0]= block address with "s" appended "Preparer Id :" up to 1 result from -pvd_info diff --git a/xorriso/xorriso.info b/xorriso/xorriso.info index 9049586a..5a89ec02 100644 --- a/xorriso/xorriso.info +++ b/xorriso/xorriso.info @@ -3078,10 +3078,13 @@ File: xorriso.info, Node: Inquiry, Next: Navigate, Prev: DialogCtl, Up: Comm drive habits. -pvd_info - Print various ID strings which can be found in loaded ISO images. - Some of the IDs may be changed by commands like -volid or - -publisher. For these IDs -pvd_info reports what would be written - with the next -commit. + Print various ID strings and timestamps which can be found in + loaded ISO images. Some of the IDs may be changed by commands like + -volid or -publisher. For these IDs -pvd_info reports what would + be written with the next -commit. The timestamps get not + automatically propagated from loaded image to newly written image. + The ones for new images may be set by command -volume_date. See + there for the meaning of the particular timestamps.  File: xorriso.info, Node: Navigate, Next: Verify, Prev: Inquiry, Up: Commands @@ -5221,34 +5224,34 @@ Node: Charset141049 Node: Exception143811 Node: DialogCtl149931 Node: Inquiry152529 -Node: Navigate158369 -Node: Verify166667 -Node: Restore175699 -Node: Emulation182786 -Node: Scripting192910 -Node: Frontend200071 -Node: Examples208146 -Node: ExDevices209324 -Node: ExCreate209983 -Node: ExDialog211268 -Node: ExGrowing212533 -Node: ExModifying213338 -Node: ExBootable213842 -Node: ExCharset214394 -Node: ExPseudo215215 -Node: ExCdrecord216113 -Node: ExMkisofs216430 -Node: ExGrowisofs217770 -Node: ExException218905 -Node: ExTime219359 -Node: ExIncBackup219818 -Node: ExRestore223810 -Node: ExRecovery224770 -Node: Files225340 -Node: Seealso226639 -Node: Bugreport227362 -Node: Legal227943 -Node: CommandIdx228954 -Node: ConceptIdx245183 +Node: Navigate158607 +Node: Verify166905 +Node: Restore175937 +Node: Emulation183024 +Node: Scripting193148 +Node: Frontend200309 +Node: Examples208384 +Node: ExDevices209562 +Node: ExCreate210221 +Node: ExDialog211506 +Node: ExGrowing212771 +Node: ExModifying213576 +Node: ExBootable214080 +Node: ExCharset214632 +Node: ExPseudo215453 +Node: ExCdrecord216351 +Node: ExMkisofs216668 +Node: ExGrowisofs218008 +Node: ExException219143 +Node: ExTime219597 +Node: ExIncBackup220056 +Node: ExRestore224048 +Node: ExRecovery225008 +Node: Files225578 +Node: Seealso226877 +Node: Bugreport227600 +Node: Legal228181 +Node: CommandIdx229192 +Node: ConceptIdx245421  End Tag Table diff --git a/xorriso/xorriso.texi b/xorriso/xorriso.texi index 894b60b4..967a8010 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.2.7, Mar 11, 2013" +@c man .TH XORRISO 1 "Version 1.2.7, Mar 12, 2013" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -4115,9 +4115,12 @@ This depends on medium type, number of recorded sessions, and drive habits. @item -pvd_info @kindex -pvd_info shows image id strings @cindex Image, show id strings, -pvd_info -Print various ID strings which can be found in loaded ISO +Print various ID strings and timestamps which can be found in loaded ISO images. Some of the IDs may be changed by commands like -volid or -publisher. For these IDs -pvd_info reports what would be written with the next -commit. +The timestamps get not automatically propagated from loaded image to newly +written image. The ones for new images may be set by command -volume_date. +See there for the meaning of the particular timestamps. @end table @c man .TP @c man .B Navigation in ISO image and disk filesystem: diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index 14dcbbe6..d4d30f15 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2013.03.12.194842" +#define Xorriso_timestamP "2013.03.12.195052"