98a6c3f768b0eb9fa0c1e98888438095d7ed7e19
[gnupg.git] / checks / defs.inc
1 # definitions for the check scripts
2
3 #--------------------------------
4 #------ constants ---------------
5 #--------------------------------
6
7 # Note that usrpass1 is also used in Makefile.am
8 usrname1="one"
9 usrpass1="def"
10 usrname2="two"
11 usrpass2=""
12 usrname3="three"
13 usrpass3=""
14
15
16 dsa_usrname1="pgp5"
17 # we use the sub key because we do not yet have the logic to
18 # to derive the first encryption key from a keyblock (I guess)
19 dsa_usrname2="0xCB879DE9"
20
21 dsa_keyrings="--keyring ./pubring.pkr --secret-keyring ./secring.skr"
22
23
24 plain_files="plain-1 plain-2 plain-3"
25 data_files="data-500 data-9000 data-32000 data-80000"
26 exp_files=""
27
28 # The testscripts expect the original language
29 LANG=
30 LANGUAGE=
31 LC_ALL=
32 LC_MESSAGES=
33
34 # Internal use.
35 defs_stop_on_error=no
36 defs_error_seen=no
37
38 #--------------------------------
39 #------ utility functions -------
40 #--------------------------------
41
42 fatal () {
43     echo "$pgmname: fatal:" $* >&2
44     echo "$pgmname: fatal:" $* >&5
45     exit 1;
46 }
47
48 error () {
49     echo "$pgmname:" $* >&2
50     defs_error_seen=yes
51     echo "$pgmname:" $* >&5
52     if [ x$defs_stop_on_error != xyes ]; then
53       exit 1 
54     fi
55 }
56
57 # Call this at the start of a test and resume_error at the end to keep
58 # on running all subtests without immediately exiting on error.
59 suspend_error () {
60    defs_stop_on_error=yes
61 }
62
63 resume_error () {
64     if [ x$defs_error_seen = xyes ]; then
65         exit 1
66     fi
67     defs_stop_on_error=no
68     defs_error_seen=no
69 }
70
71 info () {
72     echo "$pgmname:" $* >&2
73     if [ -n "${verbose+set}" ]; then
74       echo "$pgmname:" $* >&5
75     fi
76 }
77
78 linefeed () {
79     echo >&2
80 }
81
82
83 echo_n_init=no
84 echo_n () {
85   if test "$echo_n_init" = "no"; then
86     if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
87       if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
88         echo_n_n=
89         echo_n_c='
90 '
91       else
92         echo_n_n='-n'
93         echo_n_c=
94       fi
95     else
96       echo_n_n=
97       echo_n_c='\c'
98     fi
99     echo_n_init=yes
100   fi
101   echo $echo_n_n "${1}$echo_n_c"
102 }
103
104
105 #cleanup () {
106 #    rm $cleanup_files 2>/dev/null || true
107 #    echo "#empty" >./options
108 #}
109
110
111 #add_cleanup () {
112 #    cleanup_files="$cleanup_files $*"
113 #}
114
115 have_pubkey_algo () {
116   if  ../g10/gpg --homedir .  --version | grep "Pubkey:.*$1" >/dev/null
117   then
118         true
119   else
120         false
121   fi
122 }
123
124 have_cipher_algo () {
125   if  ../g10/gpg --homedir .  --version | grep "Cipher:.*$1" >/dev/null
126   then
127         true
128   else
129         false
130   fi
131 }
132
133 have_hash_algo () {
134   if  ../g10/gpg --homedir .  --version | grep "Hash:.*$1" >/dev/null
135   then
136         true
137   else
138         false
139   fi
140 }
141
142 set -e
143 pgmname=`basename $0`
144 #trap cleanup SIGHUP SIGINT SIGQUIT
145
146 [ -z "$srcdir" ] && fatal "not called from make"
147
148 # Make sure we have a valid option files even with VPATH builds.
149 if [ -f ./options ]; then
150   :
151 elif [ -f ./gpg.conf ]; then
152   :
153 elif [ -f $srcdir/options ]; then
154   cat $srcdir/options >gpg.conf
155 fi
156
157 GPG="../g10/gpg --no-permission-warning --homedir . "
158
159 exec 5>&2 2>${pgmname}.log
160
161 :
162 # end