]>
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 cat aptarchive
/Packages
| gzip > aptarchive
/Packages.gz
25 cat aptarchive
/Packages
| bzip2 > aptarchive
/Packages.bz2
26 cat aptarchive
/Packages
| lzma
> aptarchive
/Packages.lzma
27 # create Release file with incorret checksums
28 cat > aptarchive
/Release
<<EOF
29 Date: Fri, 05 Aug 2011 09:22:08 UTC
31 x15c483ac486f5dbe95095c7ec08626f 760 Packages
32 x0579797df4792164a17305fb0b317e9 546 Packages.bz2
33 xc532a82873d2206b4e4503e92d167bd 489 Packages.gz
34 x4d1d25661377dd4bb95a1736e2624d3 527 Packages.lzma
35 xf1cc221194edbaa943d2375d6f44a88 572 Packages.xz
37 x0d3317839cf68cd40c28f0bddca8d2ce5a29cad 760 Packages
38 xffddf046ad8dfd8338a355d76fb08d143c8b636 546 Packages.bz2
39 xa27a3df51ca4474b880a6594c4811957079b613 489 Packages.gz
40 x9d7bba4e6fa927a34dcd797694c2893c21f1004 527 Packages.lzma
41 x7d988fe59cf67298828e5299a15d329c0f00f1b 572 Packages.xz
43 x5a47d72f6b97bfa164b23326b6ad3cb019b5c6cc73769f8c0187616933d1b2b 760 Packages
44 x617252f5bfe3e9126352c7c2f8122d9c3b2c5e1a6c8a9616d62adc0ed164172 546 Packages.bz2
45 xc6abc6fe9a4fcf0758ec5366dfd19bcba90af026a7017c3f6198c59eccd8ef5 489 Packages.gz
46 xb306e66e5e6a7169c8d281a888539d1fdca9cecc99ae605717df579d5b9c166 527 Packages.lzma
47 x9585d0e66b74c9385727fbea11fea9ab33c716b18a32f3036f037a2b9b57120 572 Packages.xz
49 cp aptarchive
/Release aptarchive
/InRelease
52 # fake our downloadable file
53 touch aptarchive
/apt.deb
55 PKGFILE
="${TESTDIR}/$(echo "$(basename $0)" | sed 's#^test-#Packages-#')"
59 rm -rf rootdir/var/lib/apt/lists
60 signreleasefiles 'Joe Sixpack'
61 find aptarchive/ -name "$DELETEFILE" -delete
63 # test signed release file
64 msgtest 'apt-get update gets the expected hashsum mismatch'
65 aptget update 2>&1 | grep "Hash Sum mismatch
" > /dev/null && msgpass || msgfail
66 msgtest 'No package from the source available'
67 [ "$(aptcache show apt 2>&1)" = "E
: No packages found
" ] && msgpass || msgfail
68 msgtest 'No Packages file in /var/lib/apt/lists'
69 [ "$(ls rootdir/var/lib/apt/lists/*Package* 2>/dev/null)" = "" ] && msgpass || msgfail
71 # now with the unsigned Release file
72 rm -rf rootdir/var/lib/apt/lists
73 rm aptarchive/InRelease aptarchive/Release.gpg
74 msgtest 'unsigned apt-get update gets the expected hashsum mismatch'
75 aptget update 2>&1 | grep "Hash Sum mismatch
" > /dev/null && msgpass || msgfail