]> git.saurik.com Git - apt.git/blob - test/integration/test-bug-617690-allow-unauthenticated-makes-all-untrusted
ensure filesize of deb is included in the hashes list
[apt.git] / test / integration / test-bug-617690-allow-unauthenticated-makes-all-untrusted
1 #!/bin/sh
2 set -e
3
4 TESTDIR="$(readlink -f "$(dirname "$0")")"
5 . "$TESTDIR/framework"
6 setupenvironment
7 configarchitecture 'i386'
8
9 buildsimplenativepackage 'cool' 'i386' '1.0' 'unstable'
10
11 setupaptarchive --no-update
12
13 testfileexists() {
14 msgtest 'Test for existence of file' "$1"
15 test -e "$1" && msgpass || msgfail
16 rm -f "$1"
17 }
18
19 testfilemissing() {
20 msgtest 'Test for non-existence of file' "$1"
21 test -e "$1" && msgfail || msgpass
22 rm -f "$1"
23 }
24
25 testrun() {
26 rm -rf rootdir/var/lib/apt
27 cd downloaded
28
29 if [ "$1" = 'trusted' ]; then
30 testsuccess aptget update
31
32 testsuccess aptget download cool
33 testfileexists 'cool_1.0_i386.deb'
34
35 testsuccess aptget download cool --allow-unauthenticated
36 testfileexists 'cool_1.0_i386.deb'
37 else
38 testwarning aptget update --allow-insecure-repositories
39
40 testfailure aptget download cool
41 testfilemissing 'cool_1.0_i386.deb'
42
43 testsuccess aptget download cool --allow-unauthenticated
44 testfileexists 'cool_1.0_i386.deb'
45 fi
46
47 mv ../aptarchive/pool/cool_1.0_i386.deb ../aptarchive/pool/cool_1.0_i386.deb.bak
48 echo 'this is not a good package' > ../aptarchive/pool/cool_1.0_i386.deb
49 testfailure aptget download cool
50 testfilemissing cool_1.0_i386.deb
51
52 testfailure aptget download cool --allow-unauthenticated # unauthenticated doesn't mean unchecked
53 testfilemissing cool_1.0_i386.deb
54
55 rm -f ../aptarchive/pool/cool_1.0_i386.deb
56 mv ../aptarchive/pool/cool_1.0_i386.deb.bak ../aptarchive/pool/cool_1.0_i386.deb
57 testsuccess aptget download cool --allow-unauthenticated
58 testfileexists 'cool_1.0_i386.deb'
59 cd - >/dev/null
60 }
61
62 testrun 'trusted'
63
64 find aptarchive/ \( -name 'Release.gpg' -o -name 'InRelease' \) -delete
65 testrun 'untrusted'
66
67 changetowebserver
68 testrun 'untrusted'