tests: Run each test in a clean environment.
[gnupg.git] / tests / openpgp / import.test
1 #!/bin/sh
2 # Copyright 2008 Free Software Foundation, Inc.
3 # This file is free software; as a special exception the author gives
4 # unlimited permission to copy and/or distribute it, with or without
5 # modifications, as long as this notice is preserved.  This file is
6 # distributed in the hope that it will be useful, but WITHOUT ANY
7 # WARRANTY, to the extent permitted by law; without even the implied
8 # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
9
10 . $srcdir/defs.inc || exit 3
11
12 i=$srcdir/bug894-test.asc
13 info "Checking bug 894: segv importing certain keys."
14 if $GPG --import $i; then
15   :
16 else
17   error "$i: import failed (bug 894)"
18 fi
19
20
21 boguskey=$srcdir/bug1223-bogus.asc
22 goodkey=$srcdir/bug1223-good.asc
23 keyid=0xC108E83A
24 info "Checking bug 1223: designated revoker sigs are not properly merged."
25 $GPG --delete-key --batch --yes $keyid 2>/dev/null || true
26 $GPG --import $boguskey || true
27 $GPG --import $goodkey || true
28 if $GPG --list-keys --with-colons $keyid \
29     | grep '^rvk:.*:0EE5BE979282D80B9F7540F1CCD2ED94D21739E9:' >/dev/null; then
30   :
31 else
32   error "$goodkey: import failed (bug 1223)"
33 fi
34
35
36 key1=$srcdir/samplekeys/dda252ebb8ebe1af-1.asc
37 key2=$srcdir/samplekeys/dda252ebb8ebe1af-2.asc
38 fpr1=9E669861368BCA0BE42DAF7DDDA252EBB8EBE1AF
39 fpr2=A55120427374F3F7AA5F1166DDA252EBB8EBE1AF
40 info "Checking import of two keys with colliding long key ids."
41 $GPG --delete-key --batch --yes $fpr1 $fpr2 2>/dev/null || true
42 $GPG --import $key1 || true
43 $GPG --import $key2 || true
44 n=$($GPG --list-keys --with-colons $fpr1 $fpr2 2>/dev/null \
45     | grep '^pub:.:4096:1:DDA252EBB8EBE1AF:' | wc -l)
46 if [ $n -ne 2 ] ; then
47   error "Importing keys with long id collision failed"
48 fi