2 * Automatically generated by progs.pl for openssl.c
3 * Copyright (c) 2008 The OpenSSL Project. All rights reserved.
4 * See the openssl.c for copyright details.
7 typedef enum FUNC_TYPE {
8 FT_none, FT_general, FT_md, FT_cipher, FT_pkey,
9 FT_md_alg, FT_cipher_alg
12 typedef struct function_st {
15 int (*func)(int argc,char *argv[]);
19 extern int asn1parse_main(int argc, char *argv[]);
20 extern int ca_main(int argc, char *argv[]);
21 extern int ciphers_main(int argc, char *argv[]);
22 extern int cms_main(int argc, char *argv[]);
23 extern int crl_main(int argc, char *argv[]);
24 extern int crl2pkcs7_main(int argc, char *argv[]);
25 extern int dgst_main(int argc, char *argv[]);
26 extern int dhparam_main(int argc, char *argv[]);
27 extern int dsa_main(int argc, char *argv[]);
28 extern int dsaparam_main(int argc, char *argv[]);
29 extern int ec_main(int argc, char *argv[]);
30 extern int ecparam_main(int argc, char *argv[]);
31 extern int enc_main(int argc, char *argv[]);
32 extern int engine_main(int argc, char *argv[]);
33 extern int errstr_main(int argc, char *argv[]);
34 extern int gendsa_main(int argc, char *argv[]);
35 extern int genpkey_main(int argc, char *argv[]);
36 extern int genrsa_main(int argc, char *argv[]);
37 extern int nseq_main(int argc, char *argv[]);
38 extern int ocsp_main(int argc, char *argv[]);
39 extern int passwd_main(int argc, char *argv[]);
40 extern int pkcs12_main(int argc, char *argv[]);
41 extern int pkcs7_main(int argc, char *argv[]);
42 extern int pkcs8_main(int argc, char *argv[]);
43 extern int pkey_main(int argc, char *argv[]);
44 extern int pkeyparam_main(int argc, char *argv[]);
45 extern int pkeyutl_main(int argc, char *argv[]);
46 extern int prime_main(int argc, char *argv[]);
47 extern int rand_main(int argc, char *argv[]);
48 extern int req_main(int argc, char *argv[]);
49 extern int rsa_main(int argc, char *argv[]);
50 extern int rsautl_main(int argc, char *argv[]);
51 extern int s_client_main(int argc, char *argv[]);
52 extern int s_server_main(int argc, char *argv[]);
53 extern int s_time_main(int argc, char *argv[]);
54 extern int sess_id_main(int argc, char *argv[]);
55 extern int smime_main(int argc, char *argv[]);
56 extern int speed_main(int argc, char *argv[]);
57 extern int spkac_main(int argc, char *argv[]);
58 extern int srp_main(int argc, char *argv[]);
59 extern int ts_main(int argc, char *argv[]);
60 extern int verify_main(int argc, char *argv[]);
61 extern int version_main(int argc, char *argv[]);
62 extern int x509_main(int argc, char *argv[]);
63 extern int rehash_main(int argc, char *argv[]);
64 extern int list_main(int argc, char *argv[]);
65 extern int help_main(int argc, char *argv[]);
66 extern int exit_main(int argc, char *argv[]);
68 extern OPTIONS asn1parse_options[];
69 extern OPTIONS ca_options[];
70 extern OPTIONS ciphers_options[];
71 extern OPTIONS cms_options[];
72 extern OPTIONS crl_options[];
73 extern OPTIONS crl2pkcs7_options[];
74 extern OPTIONS dgst_options[];
75 extern OPTIONS dhparam_options[];
76 extern OPTIONS dsa_options[];
77 extern OPTIONS dsaparam_options[];
78 extern OPTIONS ec_options[];
79 extern OPTIONS ecparam_options[];
80 extern OPTIONS enc_options[];
81 extern OPTIONS engine_options[];
82 extern OPTIONS errstr_options[];
83 extern OPTIONS gendsa_options[];
84 extern OPTIONS genpkey_options[];
85 extern OPTIONS genrsa_options[];
86 extern OPTIONS nseq_options[];
87 extern OPTIONS ocsp_options[];
88 extern OPTIONS passwd_options[];
89 extern OPTIONS pkcs12_options[];
90 extern OPTIONS pkcs7_options[];
91 extern OPTIONS pkcs8_options[];
92 extern OPTIONS pkey_options[];
93 extern OPTIONS pkeyparam_options[];
94 extern OPTIONS pkeyutl_options[];
95 extern OPTIONS prime_options[];
96 extern OPTIONS rand_options[];
97 extern OPTIONS req_options[];
98 extern OPTIONS rsa_options[];
99 extern OPTIONS rsautl_options[];
100 extern OPTIONS s_client_options[];
101 extern OPTIONS s_server_options[];
102 extern OPTIONS s_time_options[];
103 extern OPTIONS sess_id_options[];
104 extern OPTIONS smime_options[];
105 extern OPTIONS speed_options[];
106 extern OPTIONS spkac_options[];
107 extern OPTIONS srp_options[];
108 extern OPTIONS ts_options[];
109 extern OPTIONS verify_options[];
110 extern OPTIONS version_options[];
111 extern OPTIONS x509_options[];
112 extern OPTIONS rehash_options[];
113 extern OPTIONS list_options[];
114 extern OPTIONS help_options[];
115 extern OPTIONS exit_options[];
117 #ifdef INCLUDE_FUNCTION_TABLE
118 static FUNCTION functions[] = {
119 { FT_general, "asn1parse", asn1parse_main, asn1parse_options },
120 { FT_general, "ca", ca_main, ca_options },
121 #if !defined(OPENSSL_NO_SOCK)
122 { FT_general, "ciphers", ciphers_main, ciphers_options },
124 #ifndef OPENSSL_NO_CMS
125 { FT_general, "cms", cms_main, cms_options },
127 { FT_general, "crl", crl_main, crl_options },
128 { FT_general, "crl2pkcs7", crl2pkcs7_main, crl2pkcs7_options },
129 { FT_general, "dgst", dgst_main, dgst_options },
130 #ifndef OPENSSL_NO_DH
131 { FT_general, "dhparam", dhparam_main, dhparam_options },
133 #ifndef OPENSSL_NO_DSA
134 { FT_general, "dsa", dsa_main, dsa_options },
136 #ifndef OPENSSL_NO_DSA
137 { FT_general, "dsaparam", dsaparam_main, dsaparam_options },
139 #ifndef OPENSSL_NO_EC
140 { FT_general, "ec", ec_main, ec_options },
142 #ifndef OPENSSL_NO_EC
143 { FT_general, "ecparam", ecparam_main, ecparam_options },
145 { FT_general, "enc", enc_main, enc_options },
146 #ifndef OPENSSL_NO_ENGINE
147 { FT_general, "engine", engine_main, engine_options },
149 { FT_general, "errstr", errstr_main, errstr_options },
150 #ifndef OPENSSL_NO_DSA
151 { FT_general, "gendsa", gendsa_main, gendsa_options },
153 { FT_general, "genpkey", genpkey_main, genpkey_options },
154 #ifndef OPENSSL_NO_RSA
155 { FT_general, "genrsa", genrsa_main, genrsa_options },
157 { FT_general, "nseq", nseq_main, nseq_options },
158 #ifndef OPENSSL_NO_OCSP
159 { FT_general, "ocsp", ocsp_main, ocsp_options },
161 { FT_general, "passwd", passwd_main, passwd_options },
162 #if !defined(OPENSSL_NO_DES)
163 { FT_general, "pkcs12", pkcs12_main, pkcs12_options },
165 { FT_general, "pkcs7", pkcs7_main, pkcs7_options },
166 { FT_general, "pkcs8", pkcs8_main, pkcs8_options },
167 { FT_general, "pkey", pkey_main, pkey_options },
168 { FT_general, "pkeyparam", pkeyparam_main, pkeyparam_options },
169 { FT_general, "pkeyutl", pkeyutl_main, pkeyutl_options },
170 { FT_general, "prime", prime_main, prime_options },
171 { FT_general, "rand", rand_main, rand_options },
172 { FT_general, "req", req_main, req_options },
173 #ifndef OPENSSL_NO_RSA
174 { FT_general, "rsa", rsa_main, rsa_options },
176 #ifndef OPENSSL_NO_RSA
177 { FT_general, "rsautl", rsautl_main, rsautl_options },
179 #if !defined(OPENSSL_NO_SOCK)
180 { FT_general, "s_client", s_client_main, s_client_options },
182 #if !defined(OPENSSL_NO_SOCK)
183 { FT_general, "s_server", s_server_main, s_server_options },
185 #if !defined(OPENSSL_NO_SOCK)
186 { FT_general, "s_time", s_time_main, s_time_options },
188 { FT_general, "sess_id", sess_id_main, sess_id_options },
189 { FT_general, "smime", smime_main, smime_options },
190 { FT_general, "speed", speed_main, speed_options },
191 { FT_general, "spkac", spkac_main, spkac_options },
192 #ifndef OPENSSL_NO_SRP
193 { FT_general, "srp", srp_main, srp_options },
195 { FT_general, "ts", ts_main, ts_options },
196 { FT_general, "verify", verify_main, verify_options },
197 { FT_general, "version", version_main, version_options },
198 { FT_general, "x509", x509_main, x509_options },
199 { FT_general, "rehash", rehash_main, rehash_options },
200 { FT_general, "list", list_main, list_options },
201 { FT_general, "help", help_main, help_options },
202 { FT_general, "exit", exit_main, exit_options },
203 #ifndef OPENSSL_NO_MD2
204 { FT_md, "md2", dgst_main},
206 #ifndef OPENSSL_NO_MD4
207 { FT_md, "md4", dgst_main},
209 #ifndef OPENSSL_NO_MD5
210 { FT_md, "md5", dgst_main},
212 #ifndef OPENSSL_NO_MD_GHOST94
213 { FT_md, "md_ghost94", dgst_main},
215 { FT_md, "sha", dgst_main},
216 { FT_md, "sha1", dgst_main},
217 { FT_md, "sha224", dgst_main},
218 { FT_md, "sha256", dgst_main},
219 { FT_md, "sha384", dgst_main},
220 { FT_md, "sha512", dgst_main},
221 #ifndef OPENSSL_NO_MDC2
222 { FT_md, "mdc2", dgst_main},
224 #ifndef OPENSSL_NO_RMD160
225 { FT_md, "rmd160", dgst_main},
227 #ifndef OPENSSL_NO_AES
228 { FT_cipher, "aes-128-cbc", enc_main, enc_options },
230 #ifndef OPENSSL_NO_AES
231 { FT_cipher, "aes-128-ecb", enc_main, enc_options },
233 #ifndef OPENSSL_NO_AES
234 { FT_cipher, "aes-192-cbc", enc_main, enc_options },
236 #ifndef OPENSSL_NO_AES
237 { FT_cipher, "aes-192-ecb", enc_main, enc_options },
239 #ifndef OPENSSL_NO_AES
240 { FT_cipher, "aes-256-cbc", enc_main, enc_options },
242 #ifndef OPENSSL_NO_AES
243 { FT_cipher, "aes-256-ecb", enc_main, enc_options },
245 #ifndef OPENSSL_NO_CAMELLIA
246 { FT_cipher, "camellia-128-cbc", enc_main, enc_options },
248 #ifndef OPENSSL_NO_CAMELLIA
249 { FT_cipher, "camellia-128-ecb", enc_main, enc_options },
251 #ifndef OPENSSL_NO_CAMELLIA
252 { FT_cipher, "camellia-192-cbc", enc_main, enc_options },
254 #ifndef OPENSSL_NO_CAMELLIA
255 { FT_cipher, "camellia-192-ecb", enc_main, enc_options },
257 #ifndef OPENSSL_NO_CAMELLIA
258 { FT_cipher, "camellia-256-cbc", enc_main, enc_options },
260 #ifndef OPENSSL_NO_CAMELLIA
261 { FT_cipher, "camellia-256-ecb", enc_main, enc_options },
263 { FT_cipher, "base64", enc_main, enc_options },
265 { FT_cipher, "zlib", enc_main, enc_options },
267 #ifndef OPENSSL_NO_DES
268 { FT_cipher, "des", enc_main, enc_options },
270 #ifndef OPENSSL_NO_DES
271 { FT_cipher, "des3", enc_main, enc_options },
273 #ifndef OPENSSL_NO_DES
274 { FT_cipher, "desx", enc_main, enc_options },
276 #ifndef OPENSSL_NO_IDEA
277 { FT_cipher, "idea", enc_main, enc_options },
279 #ifndef OPENSSL_NO_SEED
280 { FT_cipher, "seed", enc_main, enc_options },
282 #ifndef OPENSSL_NO_RC4
283 { FT_cipher, "rc4", enc_main, enc_options },
285 #ifndef OPENSSL_NO_RC4
286 { FT_cipher, "rc4-40", enc_main, enc_options },
288 #ifndef OPENSSL_NO_RC2
289 { FT_cipher, "rc2", enc_main, enc_options },
291 #ifndef OPENSSL_NO_BF
292 { FT_cipher, "bf", enc_main, enc_options },
294 #ifndef OPENSSL_NO_CAST
295 { FT_cipher, "cast", enc_main, enc_options },
297 #ifndef OPENSSL_NO_RC5
298 { FT_cipher, "rc5", enc_main, enc_options },
300 #ifndef OPENSSL_NO_DES
301 { FT_cipher, "des-ecb", enc_main, enc_options },
303 #ifndef OPENSSL_NO_DES
304 { FT_cipher, "des-ede", enc_main, enc_options },
306 #ifndef OPENSSL_NO_DES
307 { FT_cipher, "des-ede3", enc_main, enc_options },
309 #ifndef OPENSSL_NO_DES
310 { FT_cipher, "des-cbc", enc_main, enc_options },
312 #ifndef OPENSSL_NO_DES
313 { FT_cipher, "des-ede-cbc", enc_main, enc_options },
315 #ifndef OPENSSL_NO_DES
316 { FT_cipher, "des-ede3-cbc", enc_main, enc_options },
318 #ifndef OPENSSL_NO_DES
319 { FT_cipher, "des-cfb", enc_main, enc_options },
321 #ifndef OPENSSL_NO_DES
322 { FT_cipher, "des-ede-cfb", enc_main, enc_options },
324 #ifndef OPENSSL_NO_DES
325 { FT_cipher, "des-ede3-cfb", enc_main, enc_options },
327 #ifndef OPENSSL_NO_DES
328 { FT_cipher, "des-ofb", enc_main, enc_options },
330 #ifndef OPENSSL_NO_DES
331 { FT_cipher, "des-ede-ofb", enc_main, enc_options },
333 #ifndef OPENSSL_NO_DES
334 { FT_cipher, "des-ede3-ofb", enc_main, enc_options },
336 #ifndef OPENSSL_NO_IDEA
337 { FT_cipher, "idea-cbc", enc_main, enc_options },
339 #ifndef OPENSSL_NO_IDEA
340 { FT_cipher, "idea-ecb", enc_main, enc_options },
342 #ifndef OPENSSL_NO_IDEA
343 { FT_cipher, "idea-cfb", enc_main, enc_options },
345 #ifndef OPENSSL_NO_IDEA
346 { FT_cipher, "idea-ofb", enc_main, enc_options },
348 #ifndef OPENSSL_NO_SEED
349 { FT_cipher, "seed-cbc", enc_main, enc_options },
351 #ifndef OPENSSL_NO_SEED
352 { FT_cipher, "seed-ecb", enc_main, enc_options },
354 #ifndef OPENSSL_NO_SEED
355 { FT_cipher, "seed-cfb", enc_main, enc_options },
357 #ifndef OPENSSL_NO_SEED
358 { FT_cipher, "seed-ofb", enc_main, enc_options },
360 #ifndef OPENSSL_NO_RC2
361 { FT_cipher, "rc2-cbc", enc_main, enc_options },
363 #ifndef OPENSSL_NO_RC2
364 { FT_cipher, "rc2-ecb", enc_main, enc_options },
366 #ifndef OPENSSL_NO_RC2
367 { FT_cipher, "rc2-cfb", enc_main, enc_options },
369 #ifndef OPENSSL_NO_RC2
370 { FT_cipher, "rc2-ofb", enc_main, enc_options },
372 #ifndef OPENSSL_NO_RC2
373 { FT_cipher, "rc2-64-cbc", enc_main, enc_options },
375 #ifndef OPENSSL_NO_RC2
376 { FT_cipher, "rc2-40-cbc", enc_main, enc_options },
378 #ifndef OPENSSL_NO_BF
379 { FT_cipher, "bf-cbc", enc_main, enc_options },
381 #ifndef OPENSSL_NO_BF
382 { FT_cipher, "bf-ecb", enc_main, enc_options },
384 #ifndef OPENSSL_NO_BF
385 { FT_cipher, "bf-cfb", enc_main, enc_options },
387 #ifndef OPENSSL_NO_BF
388 { FT_cipher, "bf-ofb", enc_main, enc_options },
390 #ifndef OPENSSL_NO_CAST
391 { FT_cipher, "cast5-cbc", enc_main, enc_options },
393 #ifndef OPENSSL_NO_CAST
394 { FT_cipher, "cast5-ecb", enc_main, enc_options },
396 #ifndef OPENSSL_NO_CAST
397 { FT_cipher, "cast5-cfb", enc_main, enc_options },
399 #ifndef OPENSSL_NO_CAST
400 { FT_cipher, "cast5-ofb", enc_main, enc_options },
402 #ifndef OPENSSL_NO_CAST
403 { FT_cipher, "cast-cbc", enc_main, enc_options },
405 #ifndef OPENSSL_NO_RC5
406 { FT_cipher, "rc5-cbc", enc_main, enc_options },
408 #ifndef OPENSSL_NO_RC5
409 { FT_cipher, "rc5-ecb", enc_main, enc_options },
411 #ifndef OPENSSL_NO_RC5
412 { FT_cipher, "rc5-cfb", enc_main, enc_options },
414 #ifndef OPENSSL_NO_RC5
415 { FT_cipher, "rc5-ofb", enc_main, enc_options },