More test cases.
[openssl.git] / test / tkey
1 #!/bin/sh
2
3 t=$1
4 ktype=$2
5 ptype=$3
6
7 if ../util/shlib_wrap.sh ../apps/openssl no-$ktype; then
8   echo skipping $ktype $ptype conversion test
9   exit 0
10 fi
11
12 if [ $ptype = "public" ]; then
13     cmd="../util/shlib_wrap.sh ../apps/openssl $ktype -pubin -pubout"
14 else
15     cmd="../util/shlib_wrap.sh ../apps/openssl $ktype"
16 fi
17
18 echo testing $ktype $ptype conversions
19 cp $t $ktype-fff.p
20
21 echo "p -> d"
22 $cmd -in $ktype-fff.p -inform p -outform d >$ktype-f.d || exit 1
23 echo "p -> p"
24 $cmd -in $ktype-fff.p -inform p -outform p >$ktype-f.p || exit 1
25
26 echo "d -> d"
27 $cmd -in $ktype-f.d -inform d -outform d >$ktype-ff.d1 || exit 1
28 echo "p -> d"
29 $cmd -in $ktype-f.p -inform p -outform d >$ktype-ff.d3 || exit 1
30
31 echo "d -> p"
32 $cmd -in $ktype-f.d -inform d -outform p >$ktype-ff.p1 || exit 1
33 echo "p -> p"
34 $cmd -in $ktype-f.p -inform p -outform p >$ktype-ff.p3 || exit 1
35
36 cmp $ktype-fff.p $ktype-f.p || exit 1
37 cmp $ktype-fff.p $ktype-ff.p1 || exit 1
38 cmp $ktype-fff.p $ktype-ff.p3 || exit 1
39 cmp $ktype-f.p $ktype-ff.p1 || exit 1
40 cmp $ktype-f.p $ktype-ff.p3 || exit 1
41
42 /bin/rm -f $ktype-f.* $ktype-ff.* $ktype-fff.*
43
44 [ $ptype = "public" ] && exit 0
45
46
47 echo testing $ktype PKCS#8 conversions
48 cmd="../util/shlib_wrap.sh ../apps/openssl pkey"
49
50 $cmd -in $t -out $ktype-fff.p
51
52 echo "p -> d"
53 $cmd -in $ktype-fff.p -inform p -outform d >$ktype-f.d || exit 1
54 echo "p -> p"
55 $cmd -in $ktype-fff.p -inform p -outform p >$ktype-f.p || exit 1
56
57 echo "d -> d"
58 $cmd -in $ktype-f.d -inform d -outform d >$ktype-ff.d1 || exit 1
59 echo "p -> d"
60 $cmd -in $ktype-f.p -inform p -outform d >$ktype-ff.d3 || exit 1
61
62 echo "d -> p"
63 $cmd -in $ktype-f.d -inform d -outform p >$ktype-ff.p1 || exit 1
64 echo "p -> p"
65 $cmd -in $ktype-f.p -inform p -outform p >$ktype-ff.p3 || exit 1
66
67 cmp $ktype-fff.p $ktype-f.p || exit 1
68 cmp $ktype-fff.p $ktype-ff.p1 || exit 1
69 cmp $ktype-fff.p $ktype-ff.p3 || exit 1
70 cmp $ktype-f.p $ktype-ff.p1 || exit 1
71 cmp $ktype-f.p $ktype-ff.p3 || exit 1
72
73 /bin/rm -f $ktype-f.* $ktype-ff.* $ktype-fff.*