Continued patches so certificates and CRLs now can support and use
[openssl.git] / apps / progs.h
1 #ifndef NOPROTO
2 extern int verify_main(int argc,char *argv[]);
3 extern int asn1parse_main(int argc,char *argv[]);
4 extern int req_main(int argc,char *argv[]);
5 extern int dgst_main(int argc,char *argv[]);
6 extern int dh_main(int argc,char *argv[]);
7 extern int enc_main(int argc,char *argv[]);
8 extern int gendh_main(int argc,char *argv[]);
9 extern int errstr_main(int argc,char *argv[]);
10 extern int ca_main(int argc,char *argv[]);
11 extern int crl_main(int argc,char *argv[]);
12 extern int rsa_main(int argc,char *argv[]);
13 extern int dsa_main(int argc,char *argv[]);
14 extern int dsaparam_main(int argc,char *argv[]);
15 extern int x509_main(int argc,char *argv[]);
16 extern int genrsa_main(int argc,char *argv[]);
17 extern int gendsa_main(int argc,char *argv[]);
18 extern int s_server_main(int argc,char *argv[]);
19 extern int s_client_main(int argc,char *argv[]);
20 extern int speed_main(int argc,char *argv[]);
21 extern int s_time_main(int argc,char *argv[]);
22 extern int version_main(int argc,char *argv[]);
23 extern int pkcs7_main(int argc,char *argv[]);
24 extern int crl2pkcs7_main(int argc,char *argv[]);
25 extern int sess_id_main(int argc,char *argv[]);
26 extern int ciphers_main(int argc,char *argv[]);
27 #else
28 extern int verify_main();
29 extern int asn1parse_main();
30 extern int req_main();
31 extern int dgst_main();
32 extern int dh_main();
33 extern int enc_main();
34 extern int gendh_main();
35 extern int errstr_main();
36 extern int ca_main();
37 extern int crl_main();
38 extern int rsa_main();
39 extern int dsa_main();
40 extern int dsaparam_main();
41 extern int x509_main();
42 extern int genrsa_main();
43 extern int gendsa_main();
44 extern int s_server_main();
45 extern int s_client_main();
46 extern int speed_main();
47 extern int s_time_main();
48 extern int version_main();
49 extern int pkcs7_main();
50 extern int crl2pkcs7_main();
51 extern int sess_id_main();
52 extern int ciphers_main();
53 #endif
54
55 #ifdef SSLEAY_SRC
56
57 #define FUNC_TYPE_GENERAL       1
58 #define FUNC_TYPE_MD            2
59 #define FUNC_TYPE_CIPHER        3
60
61 typedef struct {
62         int type;
63         char *name;
64         int (*func)();
65         } FUNCTION;
66
67 FUNCTION functions[] = {
68         {FUNC_TYPE_GENERAL,"verify",verify_main},
69         {FUNC_TYPE_GENERAL,"asn1parse",asn1parse_main},
70         {FUNC_TYPE_GENERAL,"req",req_main},
71         {FUNC_TYPE_GENERAL,"dgst",dgst_main},
72 #ifndef NO_DH
73         {FUNC_TYPE_GENERAL,"dh",dh_main},
74 #endif
75         {FUNC_TYPE_GENERAL,"enc",enc_main},
76 #ifndef NO_DH
77         {FUNC_TYPE_GENERAL,"gendh",gendh_main},
78 #endif
79         {FUNC_TYPE_GENERAL,"errstr",errstr_main},
80         {FUNC_TYPE_GENERAL,"ca",ca_main},
81         {FUNC_TYPE_GENERAL,"crl",crl_main},
82 #ifndef NO_RSA
83         {FUNC_TYPE_GENERAL,"rsa",rsa_main},
84 #endif
85 #ifndef NO_DSA
86         {FUNC_TYPE_GENERAL,"dsa",dsa_main},
87 #endif
88 #ifndef NO_DSA
89         {FUNC_TYPE_GENERAL,"dsaparam",dsaparam_main},
90 #endif
91         {FUNC_TYPE_GENERAL,"x509",x509_main},
92 #ifndef NO_RSA
93         {FUNC_TYPE_GENERAL,"genrsa",genrsa_main},
94 #endif
95 #ifndef NO_DSA
96         {FUNC_TYPE_GENERAL,"gendsa",gendsa_main},
97 #endif
98 #if !defined(NO_SOCK) && !(defined(NO_SSL2) && defined(O_SSL3))
99         {FUNC_TYPE_GENERAL,"s_server",s_server_main},
100 #endif
101 #if !defined(NO_SOCK) && !(defined(NO_SSL2) && defined(O_SSL3))
102         {FUNC_TYPE_GENERAL,"s_client",s_client_main},
103 #endif
104         {FUNC_TYPE_GENERAL,"speed",speed_main},
105 #if !defined(NO_SOCK) && !(defined(NO_SSL2) && defined(O_SSL3))
106         {FUNC_TYPE_GENERAL,"s_time",s_time_main},
107 #endif
108         {FUNC_TYPE_GENERAL,"version",version_main},
109         {FUNC_TYPE_GENERAL,"pkcs7",pkcs7_main},
110         {FUNC_TYPE_GENERAL,"crl2pkcs7",crl2pkcs7_main},
111         {FUNC_TYPE_GENERAL,"sess_id",sess_id_main},
112 #if !defined(NO_SOCK) && !(defined(NO_SSL2) && defined(O_SSL3))
113         {FUNC_TYPE_GENERAL,"ciphers",ciphers_main},
114 #endif
115         {FUNC_TYPE_MD,"md2",dgst_main},
116         {FUNC_TYPE_MD,"md5",dgst_main},
117         {FUNC_TYPE_MD,"sha",dgst_main},
118         {FUNC_TYPE_MD,"sha1",dgst_main},
119         {FUNC_TYPE_MD,"mdc2",dgst_main},
120         {FUNC_TYPE_MD,"rmd160",dgst_main},
121         {FUNC_TYPE_CIPHER,"base64",enc_main},
122 #ifndef NO_DES
123         {FUNC_TYPE_CIPHER,"des",enc_main},
124 #endif
125 #ifndef NO_DES
126         {FUNC_TYPE_CIPHER,"des3",enc_main},
127 #endif
128 #ifndef NO_DES
129         {FUNC_TYPE_CIPHER,"desx",enc_main},
130 #endif
131 #ifndef NO_IDEA
132         {FUNC_TYPE_CIPHER,"idea",enc_main},
133 #endif
134 #ifndef NO_RC4
135         {FUNC_TYPE_CIPHER,"rc4",enc_main},
136 #endif
137 #ifndef NO_RC2
138         {FUNC_TYPE_CIPHER,"rc2",enc_main},
139 #endif
140 #ifndef NO_BLOWFISH
141         {FUNC_TYPE_CIPHER,"bf",enc_main},
142 #endif
143 #ifndef NO_CAST
144         {FUNC_TYPE_CIPHER,"cast",enc_main},
145 #endif
146 #ifndef NO_RC5
147         {FUNC_TYPE_CIPHER,"rc5",enc_main},
148 #endif
149 #ifndef NO_DES
150         {FUNC_TYPE_CIPHER,"des-ecb",enc_main},
151 #endif
152 #ifndef NO_DES
153         {FUNC_TYPE_CIPHER,"des-ede",enc_main},
154 #endif
155 #ifndef NO_DES
156         {FUNC_TYPE_CIPHER,"des-ede3",enc_main},
157 #endif
158 #ifndef NO_DES
159         {FUNC_TYPE_CIPHER,"des-cbc",enc_main},
160 #endif
161 #ifndef NO_DES
162         {FUNC_TYPE_CIPHER,"des-ede-cbc",enc_main},
163 #endif
164 #ifndef NO_DES
165         {FUNC_TYPE_CIPHER,"des-ede3-cbc",enc_main},
166 #endif
167 #ifndef NO_DES
168         {FUNC_TYPE_CIPHER,"des-cfb",enc_main},
169 #endif
170 #ifndef NO_DES
171         {FUNC_TYPE_CIPHER,"des-ede-cfb",enc_main},
172 #endif
173 #ifndef NO_DES
174         {FUNC_TYPE_CIPHER,"des-ede3-cfb",enc_main},
175 #endif
176 #ifndef NO_DES
177         {FUNC_TYPE_CIPHER,"des-ofb",enc_main},
178 #endif
179 #ifndef NO_DES
180         {FUNC_TYPE_CIPHER,"des-ede-ofb",enc_main},
181 #endif
182 #ifndef NO_DES
183         {FUNC_TYPE_CIPHER,"des-ede3-ofb",enc_main},
184 #endif
185 #ifndef NO_IDEA
186         {FUNC_TYPE_CIPHER,"idea-cbc",enc_main},
187 #endif
188 #ifndef NO_IDEA
189         {FUNC_TYPE_CIPHER,"idea-ecb",enc_main},
190 #endif
191 #ifndef NO_IDEA
192         {FUNC_TYPE_CIPHER,"idea-cfb",enc_main},
193 #endif
194 #ifndef NO_IDEA
195         {FUNC_TYPE_CIPHER,"idea-ofb",enc_main},
196 #endif
197 #ifndef NO_RC2
198         {FUNC_TYPE_CIPHER,"rc2-cbc",enc_main},
199 #endif
200 #ifndef NO_RC2
201         {FUNC_TYPE_CIPHER,"rc2-ecb",enc_main},
202 #endif
203 #ifndef NO_RC2
204         {FUNC_TYPE_CIPHER,"rc2-cfb",enc_main},
205 #endif
206 #ifndef NO_RC2
207         {FUNC_TYPE_CIPHER,"rc2-ofb",enc_main},
208 #endif
209 #ifndef NO_BLOWFISH
210         {FUNC_TYPE_CIPHER,"bf-cbc",enc_main},
211 #endif
212 #ifndef NO_BLOWFISH
213         {FUNC_TYPE_CIPHER,"bf-ecb",enc_main},
214 #endif
215 #ifndef NO_BLOWFISH
216         {FUNC_TYPE_CIPHER,"bf-cfb",enc_main},
217 #endif
218 #ifndef NO_BLOWFISH
219         {FUNC_TYPE_CIPHER,"bf-ofb",enc_main},
220 #endif
221 #ifndef NO_CAST
222         {FUNC_TYPE_CIPHER,"cast5-cbc",enc_main},
223 #endif
224 #ifndef NO_CAST
225         {FUNC_TYPE_CIPHER,"cast5-ecb",enc_main},
226 #endif
227 #ifndef NO_CAST
228         {FUNC_TYPE_CIPHER,"cast5-cfb",enc_main},
229 #endif
230 #ifndef NO_CAST
231         {FUNC_TYPE_CIPHER,"cast5-ofb",enc_main},
232 #endif
233 #ifndef NO_CAST
234         {FUNC_TYPE_CIPHER,"cast-cbc",enc_main},
235 #endif
236 #ifndef NO_RC5
237         {FUNC_TYPE_CIPHER,"rc5-cbc",enc_main},
238 #endif
239 #ifndef NO_RC5
240         {FUNC_TYPE_CIPHER,"rc5-ecb",enc_main},
241 #endif
242 #ifndef NO_RC5
243         {FUNC_TYPE_CIPHER,"rc5-cfb",enc_main},
244 #endif
245 #ifndef NO_RC5
246         {FUNC_TYPE_CIPHER,"rc5-ofb",enc_main},
247 #endif
248         {0,NULL,NULL}
249         };
250 #endif
251