*** empty log message ***
[gnupg.git] / checks / genkey1024.test
1 #!/bin/sh
2
3 . $srcdir/defs.inc || exit 3
4
5
6 if which expect ; then
7   :
8 else
9   echo "\"expect\" needed but not found - test skipped"
10   exit 0
11 fi
12
13
14
15 expect - <<EOF
16 #set timeout -1
17 set timeout 8
18 match_max 100000
19 spawn ../g10/gpg --no-batch --quick-random --homedir . --gen-key
20 expect { 
21     -exact "Please select what kind of key you want:\r
22    (1) DSA and ElGamal (default)\r
23    (2) ElGamal (sign and encrypt)\r
24    (3) ElGamal (encrypt only)\r
25    (4) DSA (sign only)\r
26    (5) ElGamal in a v3 packet\r
27 Your selection? "  { send -- "1\r" }
28     timeout { exit 1 } }
29 expect {
30     -exact "1\r
31 \r                 \rDSA keypair will have 1024 bits.\r
32 About to generate a new ELG-E keypair.\r
33               minimum keysize is  768 bits\r
34               default keysize is 1024 bits\r
35     highest suggested keysize is 2048 bits\r
36 What keysize do you want? (1024) " { send -- "\r" }
37     timeout { exit 1 } }
38 expect {
39     -exact "\r
40 \r                                 \rRequested keysize is 1024 bits\r
41 Please specify how long the key should be valid.\r
42          0 = key does not expire\r
43       <n>  = key expires in n days\r
44       <n>w = key expires in n weeks\r
45       <n>m = key expires in n months\r
46       <n>y = key expires in n years\r
47 Key is valid for? (0) " { send -- "1\r" }
48     timeout { exit 1 } }
49 expect {
50      -exact "1\r
51 \r                       \rKey expires at " { }
52     timeout { exit 1 } }
53 expect { 
54      -re "(.*)\r
55 " {}
56     timeout { exit 1 } }
57 expect {
58     -exact "Is this correct (y/n)? " { send -- "y\r" }
59     timeout { exit 1 } }
60 expect {
61     -exact "y\r
62 \r                        \r\r
63 You need a User-ID to identify your key; the software constructs the user id\r
64 from Real Name, Comment and Email Address in this form:\r
65     \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\r
66 \r
67 Real name: " { send -- "Harry H.\r" }
68     timeout { exit 1 } }
69 expect {
70    -exact "Harry H.\r
71 \r                   \rEmail address: " { send -- "hh@ddorf.de\r" }
72     timeout { exit 1 } }
73 expect {
74    -exact "hh@ddorf.de\r
75 \r                          \rComment: " { send -- "a test\r" }
76     timeout { exit 1 } }
77 expect {
78    -exact "a test\r
79 \r               \rYou selected this USER-ID:\r
80     \"Harry H. (a test) <hh@ddorf.de> (INSECURE!)\"\r
81 \r
82 Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? " { send -- "o\r" }
83     timeout { exit 1 } }
84 expect {
85    -exact "o\r
86 \r                                                     \rYou need a Passphrase to protect your secret key.\r
87 \r
88 Enter pass phrase: " { sleep 1; send -- "abc\r" }
89     timeout { exit 1 } }
90 expect {
91   -ex "\r                   \rRepeat pass phrase: " { sleep 1; send -- "abc\r" }
92     timeout { exit 1 } }
93 expect { 
94   -ex "\r                    \rWe need to generate a lot of random bytes. It is a good idea to perform\r
95 some other action (work in another window, move the mouse, utilize the\r
96 network and the disks) during the prime generation; this gives the random\r
97 number generator a better chance to gain enough entropy.\r" {}
98     timeout { exit 1 } }
99 set timeout 600
100 expect {
101     -ex "public and secret key created and signed.\r" { exit 0 }
102     eof  { exit 1 }
103 }
104 exit 1
105 EOF
106