Add ctrls to clear options and mode.
[openssl.git] / apps / progs.h
1 /* apps/progs.h */
2 /* automatically generated by progs.pl for openssl.c */
3
4 extern int verify_main(int argc,char *argv[]);
5 extern int asn1parse_main(int argc,char *argv[]);
6 extern int req_main(int argc,char *argv[]);
7 extern int dgst_main(int argc,char *argv[]);
8 extern int dh_main(int argc,char *argv[]);
9 extern int dhparam_main(int argc,char *argv[]);
10 extern int enc_main(int argc,char *argv[]);
11 extern int passwd_main(int argc,char *argv[]);
12 extern int gendh_main(int argc,char *argv[]);
13 extern int errstr_main(int argc,char *argv[]);
14 extern int ca_main(int argc,char *argv[]);
15 extern int crl_main(int argc,char *argv[]);
16 extern int rsa_main(int argc,char *argv[]);
17 extern int rsautl_main(int argc,char *argv[]);
18 extern int dsa_main(int argc,char *argv[]);
19 extern int dsaparam_main(int argc,char *argv[]);
20 extern int ec_main(int argc,char *argv[]);
21 extern int ecparam_main(int argc,char *argv[]);
22 extern int x509_main(int argc,char *argv[]);
23 extern int genrsa_main(int argc,char *argv[]);
24 extern int gendsa_main(int argc,char *argv[]);
25 extern int genpkey_main(int argc,char *argv[]);
26 extern int s_server_main(int argc,char *argv[]);
27 extern int s_client_main(int argc,char *argv[]);
28 extern int speed_main(int argc,char *argv[]);
29 extern int s_time_main(int argc,char *argv[]);
30 extern int version_main(int argc,char *argv[]);
31 extern int pkcs7_main(int argc,char *argv[]);
32 extern int cms_main(int argc,char *argv[]);
33 extern int crl2pkcs7_main(int argc,char *argv[]);
34 extern int sess_id_main(int argc,char *argv[]);
35 extern int ciphers_main(int argc,char *argv[]);
36 extern int nseq_main(int argc,char *argv[]);
37 extern int pkcs12_main(int argc,char *argv[]);
38 extern int pkcs8_main(int argc,char *argv[]);
39 extern int pkey_main(int argc,char *argv[]);
40 extern int pkeyparam_main(int argc,char *argv[]);
41 extern int pkeyutl_main(int argc,char *argv[]);
42 extern int spkac_main(int argc,char *argv[]);
43 extern int smime_main(int argc,char *argv[]);
44 extern int rand_main(int argc,char *argv[]);
45 extern int engine_main(int argc,char *argv[]);
46 extern int ocsp_main(int argc,char *argv[]);
47 extern int prime_main(int argc,char *argv[]);
48 extern int ts_main(int argc,char *argv[]);
49
50 #define FUNC_TYPE_GENERAL       1
51 #define FUNC_TYPE_MD            2
52 #define FUNC_TYPE_CIPHER        3
53 #define FUNC_TYPE_PKEY          4
54 #define FUNC_TYPE_MD_ALG        5
55 #define FUNC_TYPE_CIPHER_ALG    6
56
57 typedef struct {
58         int type;
59         const char *name;
60         int (*func)(int argc,char *argv[]);
61         } FUNCTION;
62 DECLARE_LHASH_OF(FUNCTION);
63
64 FUNCTION functions[] = {
65         {FUNC_TYPE_GENERAL,"verify",verify_main},
66         {FUNC_TYPE_GENERAL,"asn1parse",asn1parse_main},
67         {FUNC_TYPE_GENERAL,"req",req_main},
68         {FUNC_TYPE_GENERAL,"dgst",dgst_main},
69 #ifndef OPENSSL_NO_DH
70         {FUNC_TYPE_GENERAL,"dh",dh_main},
71 #endif
72 #ifndef OPENSSL_NO_DH
73         {FUNC_TYPE_GENERAL,"dhparam",dhparam_main},
74 #endif
75         {FUNC_TYPE_GENERAL,"enc",enc_main},
76         {FUNC_TYPE_GENERAL,"passwd",passwd_main},
77 #ifndef OPENSSL_NO_DH
78         {FUNC_TYPE_GENERAL,"gendh",gendh_main},
79 #endif
80         {FUNC_TYPE_GENERAL,"errstr",errstr_main},
81         {FUNC_TYPE_GENERAL,"ca",ca_main},
82         {FUNC_TYPE_GENERAL,"crl",crl_main},
83 #ifndef OPENSSL_NO_RSA
84         {FUNC_TYPE_GENERAL,"rsa",rsa_main},
85 #endif
86 #ifndef OPENSSL_NO_RSA
87         {FUNC_TYPE_GENERAL,"rsautl",rsautl_main},
88 #endif
89 #ifndef OPENSSL_NO_DSA
90         {FUNC_TYPE_GENERAL,"dsa",dsa_main},
91 #endif
92 #ifndef OPENSSL_NO_DSA
93         {FUNC_TYPE_GENERAL,"dsaparam",dsaparam_main},
94 #endif
95 #ifndef OPENSSL_NO_EC
96         {FUNC_TYPE_GENERAL,"ec",ec_main},
97 #endif
98 #ifndef OPENSSL_NO_EC
99         {FUNC_TYPE_GENERAL,"ecparam",ecparam_main},
100 #endif
101         {FUNC_TYPE_GENERAL,"x509",x509_main},
102 #ifndef OPENSSL_NO_RSA
103         {FUNC_TYPE_GENERAL,"genrsa",genrsa_main},
104 #endif
105 #ifndef OPENSSL_NO_DSA
106         {FUNC_TYPE_GENERAL,"gendsa",gendsa_main},
107 #endif
108         {FUNC_TYPE_GENERAL,"genpkey",genpkey_main},
109 #if !defined(OPENSSL_NO_SOCK) && !(defined(OPENSSL_NO_SSL2) && defined(OPENSSL_NO_SSL3))
110         {FUNC_TYPE_GENERAL,"s_server",s_server_main},
111 #endif
112 #if !defined(OPENSSL_NO_SOCK) && !(defined(OPENSSL_NO_SSL2) && defined(OPENSSL_NO_SSL3))
113         {FUNC_TYPE_GENERAL,"s_client",s_client_main},
114 #endif
115 #ifndef OPENSSL_NO_SPEED
116         {FUNC_TYPE_GENERAL,"speed",speed_main},
117 #endif
118 #if !defined(OPENSSL_NO_SOCK) && !(defined(OPENSSL_NO_SSL2) && defined(OPENSSL_NO_SSL3))
119         {FUNC_TYPE_GENERAL,"s_time",s_time_main},
120 #endif
121         {FUNC_TYPE_GENERAL,"version",version_main},
122         {FUNC_TYPE_GENERAL,"pkcs7",pkcs7_main},
123 #ifndef OPENSSL_NO_CMS
124         {FUNC_TYPE_GENERAL,"cms",cms_main},
125 #endif
126         {FUNC_TYPE_GENERAL,"crl2pkcs7",crl2pkcs7_main},
127         {FUNC_TYPE_GENERAL,"sess_id",sess_id_main},
128 #if !defined(OPENSSL_NO_SOCK) && !(defined(OPENSSL_NO_SSL2) && defined(OPENSSL_NO_SSL3))
129         {FUNC_TYPE_GENERAL,"ciphers",ciphers_main},
130 #endif
131         {FUNC_TYPE_GENERAL,"nseq",nseq_main},
132 #if !defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_SHA1)
133         {FUNC_TYPE_GENERAL,"pkcs12",pkcs12_main},
134 #endif
135         {FUNC_TYPE_GENERAL,"pkcs8",pkcs8_main},
136         {FUNC_TYPE_GENERAL,"pkey",pkey_main},
137         {FUNC_TYPE_GENERAL,"pkeyparam",pkeyparam_main},
138         {FUNC_TYPE_GENERAL,"pkeyutl",pkeyutl_main},
139         {FUNC_TYPE_GENERAL,"spkac",spkac_main},
140         {FUNC_TYPE_GENERAL,"smime",smime_main},
141         {FUNC_TYPE_GENERAL,"rand",rand_main},
142 #ifndef OPENSSL_NO_ENGINE
143         {FUNC_TYPE_GENERAL,"engine",engine_main},
144 #endif
145 #ifndef OPENSSL_NO_OCSP
146         {FUNC_TYPE_GENERAL,"ocsp",ocsp_main},
147 #endif
148         {FUNC_TYPE_GENERAL,"prime",prime_main},
149         {FUNC_TYPE_GENERAL,"ts",ts_main},
150 #ifndef OPENSSL_NO_MD2
151         {FUNC_TYPE_MD,"md2",dgst_main},
152 #endif
153 #ifndef OPENSSL_NO_MD4
154         {FUNC_TYPE_MD,"md4",dgst_main},
155 #endif
156 #ifndef OPENSSL_NO_MD5
157         {FUNC_TYPE_MD,"md5",dgst_main},
158 #endif
159 #ifndef OPENSSL_NO_SHA
160         {FUNC_TYPE_MD,"sha",dgst_main},
161 #endif
162 #ifndef OPENSSL_NO_SHA1
163         {FUNC_TYPE_MD,"sha1",dgst_main},
164 #endif
165 #ifndef OPENSSL_NO_MDC2
166         {FUNC_TYPE_MD,"mdc2",dgst_main},
167 #endif
168 #ifndef OPENSSL_NO_RMD160
169         {FUNC_TYPE_MD,"rmd160",dgst_main},
170 #endif
171 #ifndef OPENSSL_NO_AES
172         {FUNC_TYPE_CIPHER,"aes-128-cbc",enc_main},
173 #endif
174 #ifndef OPENSSL_NO_AES
175         {FUNC_TYPE_CIPHER,"aes-128-ecb",enc_main},
176 #endif
177 #ifndef OPENSSL_NO_AES
178         {FUNC_TYPE_CIPHER,"aes-192-cbc",enc_main},
179 #endif
180 #ifndef OPENSSL_NO_AES
181         {FUNC_TYPE_CIPHER,"aes-192-ecb",enc_main},
182 #endif
183 #ifndef OPENSSL_NO_AES
184         {FUNC_TYPE_CIPHER,"aes-256-cbc",enc_main},
185 #endif
186 #ifndef OPENSSL_NO_AES
187         {FUNC_TYPE_CIPHER,"aes-256-ecb",enc_main},
188 #endif
189 #ifndef OPENSSL_NO_CAMELLIA
190         {FUNC_TYPE_CIPHER,"camellia-128-cbc",enc_main},
191 #endif
192 #ifndef OPENSSL_NO_CAMELLIA
193         {FUNC_TYPE_CIPHER,"camellia-128-ecb",enc_main},
194 #endif
195 #ifndef OPENSSL_NO_CAMELLIA
196         {FUNC_TYPE_CIPHER,"camellia-192-cbc",enc_main},
197 #endif
198 #ifndef OPENSSL_NO_CAMELLIA
199         {FUNC_TYPE_CIPHER,"camellia-192-ecb",enc_main},
200 #endif
201 #ifndef OPENSSL_NO_CAMELLIA
202         {FUNC_TYPE_CIPHER,"camellia-256-cbc",enc_main},
203 #endif
204 #ifndef OPENSSL_NO_CAMELLIA
205         {FUNC_TYPE_CIPHER,"camellia-256-ecb",enc_main},
206 #endif
207         {FUNC_TYPE_CIPHER,"base64",enc_main},
208 #ifdef ZLIB
209         {FUNC_TYPE_CIPHER,"zlib",enc_main},
210 #endif
211 #ifndef OPENSSL_NO_DES
212         {FUNC_TYPE_CIPHER,"des",enc_main},
213 #endif
214 #ifndef OPENSSL_NO_DES
215         {FUNC_TYPE_CIPHER,"des3",enc_main},
216 #endif
217 #ifndef OPENSSL_NO_DES
218         {FUNC_TYPE_CIPHER,"desx",enc_main},
219 #endif
220 #ifndef OPENSSL_NO_IDEA
221         {FUNC_TYPE_CIPHER,"idea",enc_main},
222 #endif
223 #ifndef OPENSSL_NO_SEED
224         {FUNC_TYPE_CIPHER,"seed",enc_main},
225 #endif
226 #ifndef OPENSSL_NO_RC4
227         {FUNC_TYPE_CIPHER,"rc4",enc_main},
228 #endif
229 #ifndef OPENSSL_NO_RC4
230         {FUNC_TYPE_CIPHER,"rc4-40",enc_main},
231 #endif
232 #ifndef OPENSSL_NO_RC2
233         {FUNC_TYPE_CIPHER,"rc2",enc_main},
234 #endif
235 #ifndef OPENSSL_NO_BF
236         {FUNC_TYPE_CIPHER,"bf",enc_main},
237 #endif
238 #ifndef OPENSSL_NO_CAST
239         {FUNC_TYPE_CIPHER,"cast",enc_main},
240 #endif
241 #ifndef OPENSSL_NO_RC5
242         {FUNC_TYPE_CIPHER,"rc5",enc_main},
243 #endif
244 #ifndef OPENSSL_NO_DES
245         {FUNC_TYPE_CIPHER,"des-ecb",enc_main},
246 #endif
247 #ifndef OPENSSL_NO_DES
248         {FUNC_TYPE_CIPHER,"des-ede",enc_main},
249 #endif
250 #ifndef OPENSSL_NO_DES
251         {FUNC_TYPE_CIPHER,"des-ede3",enc_main},
252 #endif
253 #ifndef OPENSSL_NO_DES
254         {FUNC_TYPE_CIPHER,"des-cbc",enc_main},
255 #endif
256 #ifndef OPENSSL_NO_DES
257         {FUNC_TYPE_CIPHER,"des-ede-cbc",enc_main},
258 #endif
259 #ifndef OPENSSL_NO_DES
260         {FUNC_TYPE_CIPHER,"des-ede3-cbc",enc_main},
261 #endif
262 #ifndef OPENSSL_NO_DES
263         {FUNC_TYPE_CIPHER,"des-cfb",enc_main},
264 #endif
265 #ifndef OPENSSL_NO_DES
266         {FUNC_TYPE_CIPHER,"des-ede-cfb",enc_main},
267 #endif
268 #ifndef OPENSSL_NO_DES
269         {FUNC_TYPE_CIPHER,"des-ede3-cfb",enc_main},
270 #endif
271 #ifndef OPENSSL_NO_DES
272         {FUNC_TYPE_CIPHER,"des-ofb",enc_main},
273 #endif
274 #ifndef OPENSSL_NO_DES
275         {FUNC_TYPE_CIPHER,"des-ede-ofb",enc_main},
276 #endif
277 #ifndef OPENSSL_NO_DES
278         {FUNC_TYPE_CIPHER,"des-ede3-ofb",enc_main},
279 #endif
280 #ifndef OPENSSL_NO_IDEA
281         {FUNC_TYPE_CIPHER,"idea-cbc",enc_main},
282 #endif
283 #ifndef OPENSSL_NO_IDEA
284         {FUNC_TYPE_CIPHER,"idea-ecb",enc_main},
285 #endif
286 #ifndef OPENSSL_NO_IDEA
287         {FUNC_TYPE_CIPHER,"idea-cfb",enc_main},
288 #endif
289 #ifndef OPENSSL_NO_IDEA
290         {FUNC_TYPE_CIPHER,"idea-ofb",enc_main},
291 #endif
292 #ifndef OPENSSL_NO_SEED
293         {FUNC_TYPE_CIPHER,"seed-cbc",enc_main},
294 #endif
295 #ifndef OPENSSL_NO_SEED
296         {FUNC_TYPE_CIPHER,"seed-ecb",enc_main},
297 #endif
298 #ifndef OPENSSL_NO_SEED
299         {FUNC_TYPE_CIPHER,"seed-cfb",enc_main},
300 #endif
301 #ifndef OPENSSL_NO_SEED
302         {FUNC_TYPE_CIPHER,"seed-ofb",enc_main},
303 #endif
304 #ifndef OPENSSL_NO_RC2
305         {FUNC_TYPE_CIPHER,"rc2-cbc",enc_main},
306 #endif
307 #ifndef OPENSSL_NO_RC2
308         {FUNC_TYPE_CIPHER,"rc2-ecb",enc_main},
309 #endif
310 #ifndef OPENSSL_NO_RC2
311         {FUNC_TYPE_CIPHER,"rc2-cfb",enc_main},
312 #endif
313 #ifndef OPENSSL_NO_RC2
314         {FUNC_TYPE_CIPHER,"rc2-ofb",enc_main},
315 #endif
316 #ifndef OPENSSL_NO_RC2
317         {FUNC_TYPE_CIPHER,"rc2-64-cbc",enc_main},
318 #endif
319 #ifndef OPENSSL_NO_RC2
320         {FUNC_TYPE_CIPHER,"rc2-40-cbc",enc_main},
321 #endif
322 #ifndef OPENSSL_NO_BF
323         {FUNC_TYPE_CIPHER,"bf-cbc",enc_main},
324 #endif
325 #ifndef OPENSSL_NO_BF
326         {FUNC_TYPE_CIPHER,"bf-ecb",enc_main},
327 #endif
328 #ifndef OPENSSL_NO_BF
329         {FUNC_TYPE_CIPHER,"bf-cfb",enc_main},
330 #endif
331 #ifndef OPENSSL_NO_BF
332         {FUNC_TYPE_CIPHER,"bf-ofb",enc_main},
333 #endif
334 #ifndef OPENSSL_NO_CAST
335         {FUNC_TYPE_CIPHER,"cast5-cbc",enc_main},
336 #endif
337 #ifndef OPENSSL_NO_CAST
338         {FUNC_TYPE_CIPHER,"cast5-ecb",enc_main},
339 #endif
340 #ifndef OPENSSL_NO_CAST
341         {FUNC_TYPE_CIPHER,"cast5-cfb",enc_main},
342 #endif
343 #ifndef OPENSSL_NO_CAST
344         {FUNC_TYPE_CIPHER,"cast5-ofb",enc_main},
345 #endif
346 #ifndef OPENSSL_NO_CAST
347         {FUNC_TYPE_CIPHER,"cast-cbc",enc_main},
348 #endif
349 #ifndef OPENSSL_NO_RC5
350         {FUNC_TYPE_CIPHER,"rc5-cbc",enc_main},
351 #endif
352 #ifndef OPENSSL_NO_RC5
353         {FUNC_TYPE_CIPHER,"rc5-ecb",enc_main},
354 #endif
355 #ifndef OPENSSL_NO_RC5
356         {FUNC_TYPE_CIPHER,"rc5-cfb",enc_main},
357 #endif
358 #ifndef OPENSSL_NO_RC5
359         {FUNC_TYPE_CIPHER,"rc5-ofb",enc_main},
360 #endif
361         {0,NULL,NULL}
362         };