Browse Source

rename Checksum-FileSize to Filesize in hashsum mismatch

Some people do not recognize the field value with such an arcane name
and/or expect it to refer to something different (e.g. #839257).
We can't just rename it internally as its an avoidance strategy as such
fieldname existed previously with less clear semantics, but we can spare
the general public from this implementation detail.
tags/debian/1.4_beta1
David Kalnischkies 4 years ago
parent
commit
28ee7f19b8
5 changed files with 57 additions and 54 deletions
  1. +17
    -14
      apt-pkg/acquire-item.cc
  2. +2
    -2
      test/integration/test-apt-helper
  3. +8
    -8
      test/integration/test-apt-update-not-modified
  4. +4
    -4
      test/integration/test-apt-update-rollback
  5. +26
    -26
      test/integration/test-ubuntu-bug-1098738-apt-get-source-md5sum

+ 17
- 14
apt-pkg/acquire-item.cc View File

@@ -748,6 +748,18 @@ APT_CONST bool pkgAcquire::Item::IsTrusted() const /*{{{*/
// ---------------------------------------------------------------------
/* We return to an idle state if there are still other queues that could
fetch this object */
static void formatHashsum(std::ostream &out, HashString const &hs)
{
auto const type = hs.HashType();
if (type == "Checksum-FileSize")
out << " - Filesize";
else
out << " - " << type;
out << ':' << hs.HashValue();
if (hs.usable() == false)
out << " [weak]";
out << std::endl;
}
void pkgAcquire::Item::Failed(string const &Message,pkgAcquire::MethodConfig const * const Cnf)
{
if (QueueCounter <= 1)
@@ -819,12 +831,7 @@ void pkgAcquire::Item::Failed(string const &Message,pkgAcquire::MethodConfig con
{
out << "Hashes of expected file:" << std::endl;
for (auto const &hs: ExpectedHashes)
{
out << " - " << hs.toStr();
if (hs.usable() == false)
out << " [weak]";
out << std::endl;
}
formatHashsum(out, hs);
}
if (failreason == HASHSUM_MISMATCH)
{
@@ -834,16 +841,12 @@ void pkgAcquire::Item::Failed(string const &Message,pkgAcquire::MethodConfig con
std::string const tagname = std::string(*type) + "-Hash";
std::string const hashsum = LookupTag(Message, tagname.c_str());
if (hashsum.empty() == false)
{
auto const hs = HashString(*type, hashsum);
out << " - " << hs.toStr();
if (hs.usable() == false)
out << " [weak]";
out << std::endl;
}
formatHashsum(out, HashString(*type, hashsum));
}
out << "Last modification reported: " << LookupTag(Message, "Last-Modified", "<none>") << std::endl;
}
auto const lastmod = LookupTag(Message, "Last-Modified", "");
if (lastmod.empty() == false)
out << "Last modification reported: " << lastmod << std::endl;
}
ErrorText = out.str();
}


+ 2
- 2
test/integration/test-apt-helper View File

@@ -41,7 +41,7 @@ test_apt_helper_download() {
- SHA256:b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c
- SHA1:f1d2d2f924e986ac86fdf7b36c94bcdf32beec15 [weak]
- MD5Sum:d3b07384d113edec49eaa6238ad5ff00 [weak]
- Checksum-FileSize:4 [weak]
- Filesize:4 [weak]
Last modification reported: $(lastmodification 'aptarchive/foo')
E: Download Failed"
testfileequal ./downloaded/foo5.FAILED 'foo'
@@ -53,7 +53,7 @@ E: Download Failed"
- SHA256:aabbcc
Hashes of received file:
- SHA256:b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c
- Checksum-FileSize:4 [weak]
- Filesize:4 [weak]
Last modification reported: $(lastmodification 'aptarchive/foo')
E: Download Failed"
testfileequal './downloaded/foo6.FAILED' 'foo'


+ 8
- 8
test/integration/test-apt-update-not-modified View File

@@ -49,21 +49,21 @@ Get:2 $1 unstable/main amd64 Packages [$SIZE B]
Err:2 $1 unstable/main amd64 Packages
Hash Sum mismatch
Hashes of expected file:
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig' | cut -d' ' -f 1)
Hashes of received file:
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz' | cut -d' ' -f 1)
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
Last modification reported: $(lastmodification 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz')
Release file created at: $(releasefiledate 'aptarchive/dists/unstable/InRelease')
Reading package lists...
E: Failed to fetch $1/dists/unstable/main/binary-amd64/Packages.gz Hash Sum mismatch
Hashes of expected file:
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig' | cut -d' ' -f 1)
Hashes of received file:
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz' | cut -d' ' -f 1)
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
Last modification reported: $(lastmodification 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz')
Release file created at: $(releasefiledate 'aptarchive/dists/unstable/InRelease')
E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update
@@ -125,21 +125,21 @@ Get:4 $1 unstable/main amd64 Packages [$SIZE B]
Err:4 $1 unstable/main amd64 Packages
Hash Sum mismatch
Hashes of expected file:
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig' | cut -d' ' -f 1)
Hashes of received file:
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz' | cut -d' ' -f 1)
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
Last modification reported: $(lastmodification 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz')
Release file created at: $(releasefiledate 'aptarchive/dists/unstable/Release')
Reading package lists...
E: Failed to fetch $1/dists/unstable/main/binary-amd64/Packages.gz Hash Sum mismatch
Hashes of expected file:
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig') [weak]
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz.orig' | cut -d' ' -f 1)
Hashes of received file:
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz' | cut -d' ' -f 1)
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz') [weak]
Last modification reported: $(lastmodification 'aptarchive/dists/unstable/main/binary-amd64/Packages.gz')
Release file created at: $(releasefiledate 'aptarchive/dists/unstable/Release')
E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update


+ 4
- 4
test/integration/test-apt-update-rollback View File

@@ -65,11 +65,11 @@ test_inrelease_to_broken_hash_reverts_all() {
# test the error condition
testfailureequal "E: Failed to fetch file:${APTARCHIVE}/dists/unstable/main/source/Sources.gz Hash Sum mismatch
Hashes of expected file:
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz.orig') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz.orig') [weak]
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/source/Sources.gz.orig' | cut -d' ' -f 1)
Hashes of received file:
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/source/Sources.gz' | cut -d' ' -f 1)
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz') [weak]
Last modification reported: $(lastmodification 'aptarchive/dists/unstable/main/source/Sources.gz')
Release file created at: $(releasefiledate 'aptarchive/dists/unstable/InRelease')
E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update -qq
@@ -136,11 +136,11 @@ E: There were unauthenticated packages and -y was used without --allow-unauthent

testfailureequal "E: Failed to fetch file:$APTARCHIVE/dists/unstable/main/source/Sources.gz Hash Sum mismatch
Hashes of expected file:
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz.orig') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz.orig') [weak]
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/source/Sources.gz.orig' | cut -d' ' -f 1)
Hashes of received file:
- SHA256:$(sha256sum 'aptarchive/dists/unstable/main/source/Sources.gz' | cut -d' ' -f 1)
- Checksum-FileSize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz') [weak]
- Filesize:$(stat -c '%s' 'aptarchive/dists/unstable/main/source/Sources.gz') [weak]
Last modification reported: $(lastmodification 'aptarchive/dists/unstable/main/source/Sources.gz')
Release file created at: $(releasefiledate 'aptarchive/dists/unstable/InRelease')
E: Some index files failed to download. They have been ignored, or old ones used instead." aptget update -qq


+ 26
- 26
test/integration/test-ubuntu-bug-1098738-apt-get-source-md5sum View File

@@ -219,28 +219,28 @@ Err:1 http://localhost:${APTHTTPPORT} $1 1.0 (dsc)
Writing more data than expected (3 > 2)
Hashes of expected file:
- SHA256:943d3bf22ac661fb0f59bc4ff68cc12b04ff17a838dfcc2537008eb9c7f3770a
- Checksum-FileSize:2 [weak]
- Filesize:2 [weak]
Get:2 http://localhost:${APTHTTPPORT} $1 1.0 (tar) [4 B]
Err:2 http://localhost:${APTHTTPPORT} $1 1.0 (tar)
Hash Sum mismatch
Hashes of expected file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- Checksum-FileSize:4 [weak]
- Filesize:4 [weak]
Hashes of received file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.dsc")
E: Failed to fetch http://localhost:${APTHTTPPORT}/${1}_1.0.dsc Writing more data than expected (3 > 2)
Hashes of expected file:
- SHA256:943d3bf22ac661fb0f59bc4ff68cc12b04ff17a838dfcc2537008eb9c7f3770a
- Checksum-FileSize:2 [weak]
- Filesize:2 [weak]
E: Failed to fetch http://localhost:${APTHTTPPORT}/${1}_1.0.tar.gz Hash Sum mismatch
Hashes of expected file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- Checksum-FileSize:4 [weak]
- Filesize:4 [weak]
Hashes of received file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.dsc")
E: Failed to fetch some archives."
elif [ "$1" = 'pkg-md5-bad' ]; then
@@ -251,48 +251,48 @@ Err:1 http://localhost:${APTHTTPPORT} $1 1.0 (dsc)
Hash Sum mismatch
Hashes of expected file:
- MD5Sum:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Hashes of received file:
- SHA512:e52b7bb395ea3f46974f1f65b7c5975839aad32d4e2ec0f458f735d5aa24d2bf36d7816ed1e01dc3c493e11879e9a8f66dfca42821608cfe993996929a6be18a
- SHA256:943d3bf22ac661fb0f59bc4ff68cc12b04ff17a838dfcc2537008eb9c7f3770a
- SHA1:324f464e6151a92cf57b26ef95dcfcf2059a8c44 [weak]
- MD5Sum:9604ba9427a280db542279d9ed78400b [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.dsc")
Get:2 http://localhost:${APTHTTPPORT} $1 1.0 (tar) [3 B]
Err:2 http://localhost:${APTHTTPPORT} $1 1.0 (tar)
Hash Sum mismatch
Hashes of expected file:
- MD5Sum:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Hashes of received file:
- SHA512:5aa4cad81553320574eb72ee92bd45a1f0575528e257749dff298b2a33df9e7fc7f5c1c87fc1c8fde230f1234cca3a99bf8625a0ff7bb3238eb7e5473f9b43c0
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- SHA1:680254bad1d7ca0d65ec46aaa315d363abf6a50a [weak]
- MD5Sum:db5570bf61464b46e2bde31ed61a7dc6 [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.tar.gz")
E: Failed to fetch http://localhost:${APTHTTPPORT}/${1}_1.0.dsc Hash Sum mismatch
Hashes of expected file:
- MD5Sum:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Hashes of received file:
- SHA512:e52b7bb395ea3f46974f1f65b7c5975839aad32d4e2ec0f458f735d5aa24d2bf36d7816ed1e01dc3c493e11879e9a8f66dfca42821608cfe993996929a6be18a
- SHA256:943d3bf22ac661fb0f59bc4ff68cc12b04ff17a838dfcc2537008eb9c7f3770a
- SHA1:324f464e6151a92cf57b26ef95dcfcf2059a8c44 [weak]
- MD5Sum:9604ba9427a280db542279d9ed78400b [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.dsc")
E: Failed to fetch http://localhost:${APTHTTPPORT}/${1}_1.0.tar.gz Hash Sum mismatch
Hashes of expected file:
- MD5Sum:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Hashes of received file:
- SHA512:5aa4cad81553320574eb72ee92bd45a1f0575528e257749dff298b2a33df9e7fc7f5c1c87fc1c8fde230f1234cca3a99bf8625a0ff7bb3238eb7e5473f9b43c0
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- SHA1:680254bad1d7ca0d65ec46aaa315d363abf6a50a [weak]
- MD5Sum:db5570bf61464b46e2bde31ed61a7dc6 [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.tar.gz")
E: Failed to fetch some archives."
else
@@ -303,52 +303,52 @@ Err:1 http://localhost:${APTHTTPPORT} $1 1.0 (dsc)
Hash Sum mismatch
Hashes of expected file:
- SHA256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
- SHA1:324f464e6151a92cf57b26ef95dcfcf2059a8c44 [weak]
- MD5Sum:9604ba9427a280db542279d9ed78400b [weak]
Hashes of received file:
- SHA256:943d3bf22ac661fb0f59bc4ff68cc12b04ff17a838dfcc2537008eb9c7f3770a
- SHA1:324f464e6151a92cf57b26ef95dcfcf2059a8c44 [weak]
- MD5Sum:9604ba9427a280db542279d9ed78400b [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.dsc")
Get:2 http://localhost:${APTHTTPPORT} $1 1.0 (tar) [3 B]
Err:2 http://localhost:${APTHTTPPORT} $1 1.0 (tar)
Hash Sum mismatch
Hashes of expected file:
- SHA256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
- SHA1:680254bad1d7ca0d65ec46aaa315d363abf6a50a [weak]
- MD5Sum:db5570bf61464b46e2bde31ed61a7dc6 [weak]
Hashes of received file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- SHA1:680254bad1d7ca0d65ec46aaa315d363abf6a50a [weak]
- MD5Sum:db5570bf61464b46e2bde31ed61a7dc6 [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.tar.gz")
E: Failed to fetch http://localhost:${APTHTTPPORT}/${1}_1.0.dsc Hash Sum mismatch
Hashes of expected file:
- SHA256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
- SHA1:324f464e6151a92cf57b26ef95dcfcf2059a8c44 [weak]
- MD5Sum:9604ba9427a280db542279d9ed78400b [weak]
Hashes of received file:
- SHA256:943d3bf22ac661fb0f59bc4ff68cc12b04ff17a838dfcc2537008eb9c7f3770a
- SHA1:324f464e6151a92cf57b26ef95dcfcf2059a8c44 [weak]
- MD5Sum:9604ba9427a280db542279d9ed78400b [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.dsc")
E: Failed to fetch http://localhost:${APTHTTPPORT}/${1}_1.0.tar.gz Hash Sum mismatch
Hashes of expected file:
- SHA256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
- SHA1:680254bad1d7ca0d65ec46aaa315d363abf6a50a [weak]
- MD5Sum:db5570bf61464b46e2bde31ed61a7dc6 [weak]
Hashes of received file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- SHA1:680254bad1d7ca0d65ec46aaa315d363abf6a50a [weak]
- MD5Sum:db5570bf61464b46e2bde31ed61a7dc6 [weak]
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification "aptarchive/${1}_1.0.tar.gz")
E: Failed to fetch some archives."
fi
@@ -429,18 +429,18 @@ Err:1 http://localhost:${APTHTTPPORT} pkg-mixed-sha2-bad 1.0 (tar)
Hash Sum mismatch
Hashes of expected file:
- SHA256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Hashes of received file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification 'aptarchive/pkg-mixed-sha2-bad_1.0.tar.gz')
E: Failed to fetch http://localhost:${APTHTTPPORT}/pkg-mixed-sha2-bad_1.0.tar.gz Hash Sum mismatch
Hashes of expected file:
- SHA256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Hashes of received file:
- SHA256:90aebae315675cbf04612de4f7d5874850f48e0b8dd82becbeaa47ca93f5ebfb
- Checksum-FileSize:3 [weak]
- Filesize:3 [weak]
Last modification reported: $(lastmodification 'aptarchive/pkg-mixed-sha2-bad_1.0.tar.gz')
E: Failed to fetch some archives." aptget source -d pkg-mixed-sha2-bad



Loading…
Cancel
Save