From 92665c8be35e33a3c9cbca828b30f32b204cfc7b Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Sat, 1 Sep 2018 21:19:06 +0200 Subject: [PATCH] Corrected rank of -checkmedia quality "md5_mismatch" --- xorriso/check_media.c | 8 ++--- xorriso/check_media.h | 8 ++--- xorriso/drive_mgt.c | 3 +- xorriso/xorriso.1 | 8 +++-- xorriso/xorriso.info | 72 +++++++++++++++++++------------------ xorriso/xorriso.texi | 10 +++--- xorriso/xorriso_timestamp.h | 2 +- 7 files changed, 59 insertions(+), 52 deletions(-) diff --git a/xorriso/check_media.c b/xorriso/check_media.c index 94e0b171..dd0444e4 100644 --- a/xorriso/check_media.c +++ b/xorriso/check_media.c @@ -228,14 +228,14 @@ char *Spotlist__quality_name(int quality, char name[80], int bad_limit, strcat(name, "valid"); else if(quality == Xorriso_read_quality_untesteD) strcat(name, "untested"); + else if(quality == Xorriso_read_quality_md5_mismatcH) + strcat(name, "md5_mismatch"); else if(quality == Xorriso_read_quality_invaliD) strcat(name, "invalid"); else if(quality == Xorriso_read_quality_tao_enD) strcat(name, "tao_end"); else if(quality == Xorriso_read_quality_off_tracK) strcat(name, "off_track"); - else if(quality == Xorriso_read_quality_md5_mismatcH) - strcat(name, "md5_mismatch"); else if(quality == Xorriso_read_quality_unreadablE) strcat(name, "unreadable"); else @@ -678,14 +678,14 @@ int Xorriso_check_media_setup_job(struct XorrisO *xorriso, xorriso->check_media_bad_limit= Xorriso_read_quality_valiD; else if(strcmp(argv[i] + 10, "untested") == 0) xorriso->check_media_bad_limit= Xorriso_read_quality_untesteD; + else if(strcmp(argv[i] + 10, "md5_mismatch") == 0) + xorriso->check_media_bad_limit= Xorriso_read_quality_md5_mismatcH; else if(strcmp(argv[i] + 10, "invalid") == 0) xorriso->check_media_bad_limit= Xorriso_read_quality_invaliD; else if(strcmp(argv[i] + 10, "tao_end") == 0) xorriso->check_media_bad_limit= Xorriso_read_quality_tao_enD; else if(strcmp(argv[i] + 10, "off_track") == 0) xorriso->check_media_bad_limit= Xorriso_read_quality_off_tracK; - else if(strcmp(argv[i] + 10, "md5_mismatch") == 0) - xorriso->check_media_bad_limit= Xorriso_read_quality_md5_mismatcH; else if(strcmp(argv[i] + 10, "unreadable") == 0) xorriso->check_media_bad_limit= Xorriso_read_quality_unreadablE; else diff --git a/xorriso/check_media.h b/xorriso/check_media.h index 541ee59a..e9179a4a 100644 --- a/xorriso/check_media.h +++ b/xorriso/check_media.h @@ -85,10 +85,10 @@ char *Spotlist__quality_name(int quality, char name[80], int bad_limit, #define Xorriso_read_quality_partiaL 0x50000000 #define Xorriso_read_quality_valiD 0x40000000 #define Xorriso_read_quality_untesteD 0x3fffffff -#define Xorriso_read_quality_invaliD 0x3ffffffe -#define Xorriso_read_quality_tao_enD 0x28000000 -#define Xorriso_read_quality_off_tracK 0x20000000 -#define Xorriso_read_quality_md5_mismatcH 0x10000000 +#define Xorriso_read_quality_md5_mismatcH 0x38000000 +#define Xorriso_read_quality_invaliD 0x30000000 +#define Xorriso_read_quality_tao_enD 0x20000000 +#define Xorriso_read_quality_off_tracK 0x10000000 #define Xorriso_read_quality_unreadablE 0x00000000 diff --git a/xorriso/drive_mgt.c b/xorriso/drive_mgt.c index 48726728..f70d9937 100644 --- a/xorriso/drive_mgt.c +++ b/xorriso/drive_mgt.c @@ -2543,7 +2543,8 @@ int Xorriso_chunk_md5(struct XorrisO *xorriso, char *data, int to_read, Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, sev_text, 0); } if(valid && (tag_type == 1 || (tag_type == 4 && pos == lba && lba < 32))){ - if(state->md5_spot_value != Xorriso_read_quality_untesteD) { + if(state->md5_spot_value != Xorriso_read_quality_untesteD && + Xorriso_read_quality_md5_mismatcH <= xorriso->check_media_bad_limit){ ret= Xorriso__add_spot(state, state->md5_start, state->md5_spot_lba - state->md5_start, state->md5_spot_value, 0); if(ret <= 0) diff --git a/xorriso/xorriso.1 b/xorriso/xorriso.1 index 1fced6a0..2ce85b1c 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.4.9, Mar 23, 2018" +.TH XORRISO 1 "Version 1.4.9, Aug 31, 2018" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -4652,7 +4652,7 @@ have an \-indev and a loaded image. ":force" may be appended after the number. \fBbad_limit=threshold\fR sets the highest quality which shall be considered as damage. Choose one of "good", "md5_match", "slow", "partial", "valid", "untested", -"invalid", "tao_end", "off_track", "md5_mismatch", "unreadable". +"md5_mismatch", "invalid", "tao_end", "off_track", "unreadable". .br "valid" and "invalid" are qualities imported from a sector_map file. "tao_end" and "off_track" are intentionally not readable, but not bad either. @@ -4660,6 +4660,8 @@ Choose one of "good", "md5_match", "slow", "partial", "valid", "untested", supposed to be ok but stem from a suspicious neighborhood. .br "md5_match" and "md5_mismatch" regions overlap with regions of other quality. +The former is a strong confirmation for quality, the latter only tells that +one or more blocks of the region must be wrong. .br \fBslow_limit=threshold\fR sets the time threshold for a single read chunk to be considered @@ -6126,7 +6128,7 @@ Libreadline, a comfortable input line facility .TP Other programs which produce ISO 9660 images .BR mkisofs(8), -.BR genisoimage(8) +.BR genisoimage(1) .TP Other programs which burn sessions to optical media .BR growisofs(1), diff --git a/xorriso/xorriso.info b/xorriso/xorriso.info index 60eb18ee..3c0db722 100644 --- a/xorriso/xorriso.info +++ b/xorriso/xorriso.info @@ -3903,7 +3903,7 @@ transmission errors. bad_limit=threshold sets the highest quality which shall be considered as damage. Choose one of "good", "md5_match", "slow", "partial", "valid", - "untested", "invalid", "tao_end", "off_track", "md5_mismatch", + "untested", "md5_mismatch", "invalid", "tao_end", "off_track", "unreadable". "valid" and "invalid" are qualities imported from a sector_map file. "tao_end" and "off_track" are intentionally not @@ -3911,7 +3911,9 @@ transmission errors. from a partially readable chunk. They are supposed to be ok but stem from a suspicious neighborhood. "md5_match" and "md5_mismatch" regions overlap with regions of - other quality. + other quality. The former is a strong confirmation for + quality, the latter only tells that one or more blocks of the + region must be wrong. slow_limit=threshold sets the time threshold for a single read chunk to be considered slow. This may be a fractional number like 0.1 or @@ -5174,7 +5176,7 @@ For mounting 'xorriso' generated ISO 9660 images (-t iso9660) Libreadline, a comfortable input line facility readline(3) Other programs which produce ISO 9660 images - mkisofs(8), genisoimage(8) + mkisofs(8), genisoimage(1) Other programs which burn sessions to optical media growisofs(1), cdrecord(1), wodim(1), cdrskin(1) ACL and xattr @@ -5266,8 +5268,8 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -cdx sets working directory on disk: Navigate. (line 15) * -changes_pending overrides change status: Writing. (line 12) * -charset sets input/output character set: Charset. (line 54) -* -check_md5 verifies file checksum: Verify. (line 164) -* -check_md5_r verifies file tree checksums: Verify. (line 178) +* -check_md5 verifies file checksum: Verify. (line 166) +* -check_md5_r verifies file tree checksums: Verify. (line 180) * -check_media reads media block by block: Verify. (line 21) * -check_media_defaults sets -check_media options: Verify. (line 40) * -chgrp sets group in ISO image: Manip. (line 49) @@ -5763,8 +5765,8 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Verify, compare ISO and disk file, -compare: Navigate. (line 131) * Verify, compare ISO and disk tree, -compare_r: Navigate. (line 143) * Verify, compare ISO and disk, -compare_l: Navigate. (line 147) -* Verify, file checksum, -check_md5: Verify. (line 164) -* Verify, file tree checksums, -check_md5_r: Verify. (line 178) +* Verify, file checksum, -check_md5: Verify. (line 166) +* Verify, file tree checksums, -check_md5_r: Verify. (line 180) * Verify, preset -check_media, -check_media_defaults: Verify. (line 40) * Write, block size, -dvd_obs: SetWrite. (line 330) * Write, bootability, -boot_image: Bootable. (line 75) @@ -5825,33 +5827,33 @@ Node: DialogCtl183562 Node: Inquiry186164 Node: Navigate195048 Node: Verify203505 -Node: Restore213383 -Node: Emulation221996 -Node: Scripting232455 -Node: Frontend240238 -Node: Examples249864 -Node: ExDevices251042 -Node: ExCreate251703 -Node: ExDialog253003 -Node: ExGrowing254274 -Node: ExModifying255083 -Node: ExBootable255593 -Node: ExCharset256148 -Node: ExPseudo257044 -Node: ExCdrecord257971 -Node: ExMkisofs258291 -Node: ExGrowisofs259648 -Node: ExException260802 -Node: ExTime261260 -Node: ExIncBackup261718 -Node: ExRestore265744 -Node: ExRecovery266690 -Node: Files267262 -Node: Environ268596 -Node: Seealso269305 -Node: Bugreport270022 -Node: Legal270613 -Node: CommandIdx271625 -Node: ConceptIdx288959 +Node: Restore213528 +Node: Emulation222141 +Node: Scripting232600 +Node: Frontend240383 +Node: Examples250009 +Node: ExDevices251187 +Node: ExCreate251848 +Node: ExDialog253148 +Node: ExGrowing254419 +Node: ExModifying255228 +Node: ExBootable255738 +Node: ExCharset256293 +Node: ExPseudo257189 +Node: ExCdrecord258116 +Node: ExMkisofs258436 +Node: ExGrowisofs259793 +Node: ExException260947 +Node: ExTime261405 +Node: ExIncBackup261863 +Node: ExRestore265889 +Node: ExRecovery266835 +Node: Files267407 +Node: Environ268741 +Node: Seealso269450 +Node: Bugreport270167 +Node: Legal270758 +Node: CommandIdx271770 +Node: ConceptIdx289104  End Tag Table diff --git a/xorriso/xorriso.texi b/xorriso/xorriso.texi index 6cbec8d8..76fedac2 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.4.9, Mar 23, 2018" +@c man .TH XORRISO 1 "Version 1.4.9, Aug 31, 2018" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -5369,7 +5369,7 @@ have an -indev and a loaded image. ":force" may be appended after the number. @item bad_limit=threshold sets the highest quality which shall be considered as damage. Choose one of "good", "md5_match", "slow", "partial", "valid", "untested", -"invalid", "tao_end", "off_track", "md5_mismatch", "unreadable". +"md5_mismatch", "invalid", "tao_end", "off_track", "unreadable". @* "valid" and "invalid" are qualities imported from a sector_map file. "tao_end" and "off_track" are intentionally not readable, but not bad either. @@ -5377,6 +5377,8 @@ Choose one of "good", "md5_match", "slow", "partial", "valid", "untested", supposed to be ok but stem from a suspicious neighborhood. @* "md5_match" and "md5_mismatch" regions overlap with regions of other quality. +The former is a strong confirmation for quality, the latter only tells that +one or more blocks of the region must be wrong. @* @item slow_limit=threshold sets the time threshold for a single read chunk to be considered @@ -7138,7 +7140,7 @@ Startup files and program options can override the effect of SOURCE_DATE_EPOCH. @c man .TP @c man Other programs which produce ISO 9660 images @c man .BR mkisofs(8), -@c man .BR genisoimage(8) +@c man .BR genisoimage(1) @c man .TP @c man Other programs which burn sessions to optical media @c man .BR growisofs(1), @@ -7173,7 +7175,7 @@ mount(8) readline(3) @item Other programs which produce ISO 9660 images mkisofs(8), -genisoimage(8) +genisoimage(1) @item Other programs which burn sessions to optical media growisofs(1), cdrecord(1), diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index c563a8ab..206c16c1 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2018.05.18.152119" +#define Xorriso_timestamP "2018.09.01.191851"