]>
git.saurik.com Git - apt.git/blob - test/integration/test-hashsum-verification
4 TESTDIR
=$(readlink -f $(dirname $0))
8 configarchitecture
"i386"
15 local DATE
="${2:-now}"
16 if [ "$DATE" = 'now' -a "$1" = "${PKGFILE}-new" ]; then
19 for release
in $(find rootdir/var/lib/apt/lists 2> /dev/null); do
20 touch -d 'now - 6 hours' $release
22 cp $1 aptarchive
/Packages
23 find aptarchive
-name 'Release' -delete
24 compressfile aptarchive
/Packages
25 # create Release file with incorret checksums
26 cat > aptarchive
/Release
<<EOF
27 Date: Fri, 05 Aug 2011 09:22:08 UTC
29 x15c483ac486f5dbe95095c7ec08626f 760 Packages
30 x0579797df4792164a17305fb0b317e9 546 Packages.bz2
31 xc532a82873d2206b4e4503e92d167bd 489 Packages.gz
32 x4d1d25661377dd4bb95a1736e2624d3 527 Packages.lzma
33 xf1cc221194edbaa943d2375d6f44a88 572 Packages.xz
35 x0d3317839cf68cd40c28f0bddca8d2ce5a29cad 760 Packages
36 xffddf046ad8dfd8338a355d76fb08d143c8b636 546 Packages.bz2
37 xa27a3df51ca4474b880a6594c4811957079b613 489 Packages.gz
38 x9d7bba4e6fa927a34dcd797694c2893c21f1004 527 Packages.lzma
39 x7d988fe59cf67298828e5299a15d329c0f00f1b 572 Packages.xz
41 x5a47d72f6b97bfa164b23326b6ad3cb019b5c6cc73769f8c0187616933d1b2b 760 Packages
42 x617252f5bfe3e9126352c7c2f8122d9c3b2c5e1a6c8a9616d62adc0ed164172 546 Packages.bz2
43 xc6abc6fe9a4fcf0758ec5366dfd19bcba90af026a7017c3f6198c59eccd8ef5 489 Packages.gz
44 xb306e66e5e6a7169c8d281a888539d1fdca9cecc99ae605717df579d5b9c166 527 Packages.lzma
45 x9585d0e66b74c9385727fbea11fea9ab33c716b18a32f3036f037a2b9b57120 572 Packages.xz
47 cp aptarchive
/Release aptarchive
/InRelease
50 # fake our downloadable file
51 touch aptarchive
/apt.deb
53 PKGFILE
="${TESTDIR}/$(echo "$(basename $0)" | sed 's#^test-#Packages-#')"
57 rm -rf rootdir/var/lib/apt/lists
58 signreleasefiles 'Joe Sixpack'
59 find aptarchive/ -name "$DELETEFILE" -delete
61 # test signed release file
62 msgtest 'apt-get update gets the expected hashsum mismatch'
63 aptget update 2>&1 | grep "Hash Sum mismatch
" > /dev/null && msgpass || msgfail
64 msgtest 'No package from the source available'
65 [ "$(aptcache show apt 2>&1)" = "E
: No packages found
" ] && msgpass || msgfail
66 msgtest 'No Packages file in /var/lib/apt/lists'
67 [ "$(ls rootdir/var/lib/apt/lists/*Package* 2>/dev/null | grep -v FAILED 2>/dev/null)" = "" ] && msgpass || msgfail
69 # now with the unsigned Release file
70 rm -rf rootdir/var/lib/apt/lists
71 rm aptarchive/InRelease aptarchive/Release.gpg
72 msgtest 'unsigned apt-get update gets the expected hashsum mismatch'
73 aptget update 2>&1 | grep "Hash Sum mismatch
" > /dev/null && msgpass || msgfail
78 for COMPRESSEDINDEXES in 'false' 'true'; do
79 echo "Acquire
::GzipIndexes
\"$COMPRESSEDINDEXES\";" > rootdir/etc/apt/apt.conf.d/compressindexes
80 if $COMPRESSEDINDEXES; then
81 msgmsg 'Run tests with GzipIndexes enabled'
83 msgmsg 'Run tests with GzipIndexes disabled'