From 0b005477c17bd5c91a7ee99190d92cee9f4fd96d Mon Sep 17 00:00:00 2001 From: erwanlr Date: Sun, 8 Mar 2020 20:48:01 +0100 Subject: [PATCH] Adds additional message when checksums mismatch during an update --- lib/wpscan/db/updater.rb | 2 +- lib/wpscan/errors/update.rb | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/wpscan/db/updater.rb b/lib/wpscan/db/updater.rb index 70ea38e6..c1514d4c 100644 --- a/lib/wpscan/db/updater.rb +++ b/lib/wpscan/db/updater.rb @@ -148,7 +148,7 @@ module WPScan create_backup(filename) dl_checksum = download(filename) - raise "#{filename}: checksums do not match" unless dl_checksum == db_checksum + raise Error::ChecksumsMismatch, filename unless dl_checksum == db_checksum updated << filename rescue StandardError => e diff --git a/lib/wpscan/errors/update.rb b/lib/wpscan/errors/update.rb index f20e5dc4..8c38fa3a 100644 --- a/lib/wpscan/errors/update.rb +++ b/lib/wpscan/errors/update.rb @@ -8,5 +8,17 @@ module WPScan 'Update required, you can not run a scan if a database file is missing.' end end + + class ChecksumsMismatch < Standard + attr_reader :db_file + + def initialize(db_file) + @db_file = db_file + end + + def to_s + "#{db_file}: checksums do not match. Please try again in a few minutes." + end + end end end