1 /* $FreeBSD$ */ 2 /* 3 * WARNING: do not edit! 4 * Generated by apps/progs.pl 5 * 6 * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. 7 * 8 * Licensed under the OpenSSL license (the "License"). You may not use 9 * this file except in compliance with the License. You can obtain a copy 10 * in the file LICENSE in the source distribution or at 11 * https://www.openssl.org/source/license.html 12 */ 13 14 typedef enum FUNC_TYPE { 15 FT_none, FT_general, FT_md, FT_cipher, FT_pkey, 16 FT_md_alg, FT_cipher_alg 17 } FUNC_TYPE; 18 19 typedef struct function_st { 20 FUNC_TYPE type; 21 const char *name; 22 int (*func)(int argc, char *argv[]); 23 const OPTIONS *help; 24 } FUNCTION; 25 26 DEFINE_LHASH_OF(FUNCTION); 27 28 extern int asn1parse_main(int argc, char *argv[]); 29 extern int ca_main(int argc, char *argv[]); 30 extern int ciphers_main(int argc, char *argv[]); 31 extern int cms_main(int argc, char *argv[]); 32 extern int crl_main(int argc, char *argv[]); 33 extern int crl2pkcs7_main(int argc, char *argv[]); 34 extern int dgst_main(int argc, char *argv[]); 35 extern int dhparam_main(int argc, char *argv[]); 36 extern int dsa_main(int argc, char *argv[]); 37 extern int dsaparam_main(int argc, char *argv[]); 38 extern int ec_main(int argc, char *argv[]); 39 extern int ecparam_main(int argc, char *argv[]); 40 extern int enc_main(int argc, char *argv[]); 41 extern int engine_main(int argc, char *argv[]); 42 extern int errstr_main(int argc, char *argv[]); 43 extern int gendsa_main(int argc, char *argv[]); 44 extern int genpkey_main(int argc, char *argv[]); 45 extern int genrsa_main(int argc, char *argv[]); 46 extern int help_main(int argc, char *argv[]); 47 extern int list_main(int argc, char *argv[]); 48 extern int nseq_main(int argc, char *argv[]); 49 extern int ocsp_main(int argc, char *argv[]); 50 extern int passwd_main(int argc, char *argv[]); 51 extern int pkcs12_main(int argc, char *argv[]); 52 extern int pkcs7_main(int argc, char *argv[]); 53 extern int pkcs8_main(int argc, char *argv[]); 54 extern int pkey_main(int argc, char *argv[]); 55 extern int pkeyparam_main(int argc, char *argv[]); 56 extern int pkeyutl_main(int argc, char *argv[]); 57 extern int prime_main(int argc, char *argv[]); 58 extern int rand_main(int argc, char *argv[]); 59 extern int rehash_main(int argc, char *argv[]); 60 extern int req_main(int argc, char *argv[]); 61 extern int rsa_main(int argc, char *argv[]); 62 extern int rsautl_main(int argc, char *argv[]); 63 extern int s_client_main(int argc, char *argv[]); 64 extern int s_server_main(int argc, char *argv[]); 65 extern int s_time_main(int argc, char *argv[]); 66 extern int sess_id_main(int argc, char *argv[]); 67 extern int smime_main(int argc, char *argv[]); 68 extern int speed_main(int argc, char *argv[]); 69 extern int spkac_main(int argc, char *argv[]); 70 extern int srp_main(int argc, char *argv[]); 71 extern int storeutl_main(int argc, char *argv[]); 72 extern int ts_main(int argc, char *argv[]); 73 extern int verify_main(int argc, char *argv[]); 74 extern int version_main(int argc, char *argv[]); 75 extern int x509_main(int argc, char *argv[]); 76 77 extern const OPTIONS asn1parse_options[]; 78 extern const OPTIONS ca_options[]; 79 extern const OPTIONS ciphers_options[]; 80 extern const OPTIONS cms_options[]; 81 extern const OPTIONS crl_options[]; 82 extern const OPTIONS crl2pkcs7_options[]; 83 extern const OPTIONS dgst_options[]; 84 extern const OPTIONS dhparam_options[]; 85 extern const OPTIONS dsa_options[]; 86 extern const OPTIONS dsaparam_options[]; 87 extern const OPTIONS ec_options[]; 88 extern const OPTIONS ecparam_options[]; 89 extern const OPTIONS enc_options[]; 90 extern const OPTIONS engine_options[]; 91 extern const OPTIONS errstr_options[]; 92 extern const OPTIONS gendsa_options[]; 93 extern const OPTIONS genpkey_options[]; 94 extern const OPTIONS genrsa_options[]; 95 extern const OPTIONS help_options[]; 96 extern const OPTIONS list_options[]; 97 extern const OPTIONS nseq_options[]; 98 extern const OPTIONS ocsp_options[]; 99 extern const OPTIONS passwd_options[]; 100 extern const OPTIONS pkcs12_options[]; 101 extern const OPTIONS pkcs7_options[]; 102 extern const OPTIONS pkcs8_options[]; 103 extern const OPTIONS pkey_options[]; 104 extern const OPTIONS pkeyparam_options[]; 105 extern const OPTIONS pkeyutl_options[]; 106 extern const OPTIONS prime_options[]; 107 extern const OPTIONS rand_options[]; 108 extern const OPTIONS rehash_options[]; 109 extern const OPTIONS req_options[]; 110 extern const OPTIONS rsa_options[]; 111 extern const OPTIONS rsautl_options[]; 112 extern const OPTIONS s_client_options[]; 113 extern const OPTIONS s_server_options[]; 114 extern const OPTIONS s_time_options[]; 115 extern const OPTIONS sess_id_options[]; 116 extern const OPTIONS smime_options[]; 117 extern const OPTIONS speed_options[]; 118 extern const OPTIONS spkac_options[]; 119 extern const OPTIONS srp_options[]; 120 extern const OPTIONS storeutl_options[]; 121 extern const OPTIONS ts_options[]; 122 extern const OPTIONS verify_options[]; 123 extern const OPTIONS version_options[]; 124 extern const OPTIONS x509_options[]; 125 126 #ifdef INCLUDE_FUNCTION_TABLE 127 static FUNCTION functions[] = { 128 {FT_general, "asn1parse", asn1parse_main, asn1parse_options}, 129 {FT_general, "ca", ca_main, ca_options}, 130 #ifndef OPENSSL_NO_SOCK 131 {FT_general, "ciphers", ciphers_main, ciphers_options}, 132 #endif 133 #ifndef OPENSSL_NO_CMS 134 {FT_general, "cms", cms_main, cms_options}, 135 #endif 136 {FT_general, "crl", crl_main, crl_options}, 137 {FT_general, "crl2pkcs7", crl2pkcs7_main, crl2pkcs7_options}, 138 {FT_general, "dgst", dgst_main, dgst_options}, 139 #ifndef OPENSSL_NO_DH 140 {FT_general, "dhparam", dhparam_main, dhparam_options}, 141 #endif 142 #ifndef OPENSSL_NO_DSA 143 {FT_general, "dsa", dsa_main, dsa_options}, 144 #endif 145 #ifndef OPENSSL_NO_DSA 146 {FT_general, "dsaparam", dsaparam_main, dsaparam_options}, 147 #endif 148 #ifndef OPENSSL_NO_EC 149 {FT_general, "ec", ec_main, ec_options}, 150 #endif 151 #ifndef OPENSSL_NO_EC 152 {FT_general, "ecparam", ecparam_main, ecparam_options}, 153 #endif 154 {FT_general, "enc", enc_main, enc_options}, 155 #ifndef OPENSSL_NO_ENGINE 156 {FT_general, "engine", engine_main, engine_options}, 157 #endif 158 {FT_general, "errstr", errstr_main, errstr_options}, 159 #ifndef OPENSSL_NO_DSA 160 {FT_general, "gendsa", gendsa_main, gendsa_options}, 161 #endif 162 {FT_general, "genpkey", genpkey_main, genpkey_options}, 163 #ifndef OPENSSL_NO_RSA 164 {FT_general, "genrsa", genrsa_main, genrsa_options}, 165 #endif 166 {FT_general, "help", help_main, help_options}, 167 {FT_general, "list", list_main, list_options}, 168 {FT_general, "nseq", nseq_main, nseq_options}, 169 #ifndef OPENSSL_NO_OCSP 170 {FT_general, "ocsp", ocsp_main, ocsp_options}, 171 #endif 172 {FT_general, "passwd", passwd_main, passwd_options}, 173 #ifndef OPENSSL_NO_DES 174 {FT_general, "pkcs12", pkcs12_main, pkcs12_options}, 175 #endif 176 {FT_general, "pkcs7", pkcs7_main, pkcs7_options}, 177 {FT_general, "pkcs8", pkcs8_main, pkcs8_options}, 178 {FT_general, "pkey", pkey_main, pkey_options}, 179 {FT_general, "pkeyparam", pkeyparam_main, pkeyparam_options}, 180 {FT_general, "pkeyutl", pkeyutl_main, pkeyutl_options}, 181 {FT_general, "prime", prime_main, prime_options}, 182 {FT_general, "rand", rand_main, rand_options}, 183 {FT_general, "rehash", rehash_main, rehash_options}, 184 {FT_general, "req", req_main, req_options}, 185 {FT_general, "rsa", rsa_main, rsa_options}, 186 #ifndef OPENSSL_NO_RSA 187 {FT_general, "rsautl", rsautl_main, rsautl_options}, 188 #endif 189 #ifndef OPENSSL_NO_SOCK 190 {FT_general, "s_client", s_client_main, s_client_options}, 191 #endif 192 #ifndef OPENSSL_NO_SOCK 193 {FT_general, "s_server", s_server_main, s_server_options}, 194 #endif 195 #ifndef OPENSSL_NO_SOCK 196 {FT_general, "s_time", s_time_main, s_time_options}, 197 #endif 198 {FT_general, "sess_id", sess_id_main, sess_id_options}, 199 {FT_general, "smime", smime_main, smime_options}, 200 {FT_general, "speed", speed_main, speed_options}, 201 {FT_general, "spkac", spkac_main, spkac_options}, 202 #ifndef OPENSSL_NO_SRP 203 {FT_general, "srp", srp_main, srp_options}, 204 #endif 205 {FT_general, "storeutl", storeutl_main, storeutl_options}, 206 #ifndef OPENSSL_NO_TS 207 {FT_general, "ts", ts_main, ts_options}, 208 #endif 209 {FT_general, "verify", verify_main, verify_options}, 210 {FT_general, "version", version_main, version_options}, 211 {FT_general, "x509", x509_main, x509_options}, 212 #ifndef OPENSSL_NO_MD2 213 {FT_md, "md2", dgst_main}, 214 #endif 215 #ifndef OPENSSL_NO_MD4 216 {FT_md, "md4", dgst_main}, 217 #endif 218 {FT_md, "md5", dgst_main}, 219 #ifndef OPENSSL_NO_GOST 220 {FT_md, "gost", dgst_main}, 221 #endif 222 {FT_md, "sha1", dgst_main}, 223 {FT_md, "sha224", dgst_main}, 224 {FT_md, "sha256", dgst_main}, 225 {FT_md, "sha384", dgst_main}, 226 {FT_md, "sha512", dgst_main}, 227 {FT_md, "sha512-224", dgst_main}, 228 {FT_md, "sha512-256", dgst_main}, 229 {FT_md, "sha3-224", dgst_main}, 230 {FT_md, "sha3-256", dgst_main}, 231 {FT_md, "sha3-384", dgst_main}, 232 {FT_md, "sha3-512", dgst_main}, 233 {FT_md, "shake128", dgst_main}, 234 {FT_md, "shake256", dgst_main}, 235 #ifndef OPENSSL_NO_MDC2 236 {FT_md, "mdc2", dgst_main}, 237 #endif 238 #ifndef OPENSSL_NO_RMD160 239 {FT_md, "rmd160", dgst_main}, 240 #endif 241 #ifndef OPENSSL_NO_BLAKE2 242 {FT_md, "blake2b512", dgst_main}, 243 #endif 244 #ifndef OPENSSL_NO_BLAKE2 245 {FT_md, "blake2s256", dgst_main}, 246 #endif 247 #ifndef OPENSSL_NO_SM3 248 {FT_md, "sm3", dgst_main}, 249 #endif 250 {FT_cipher, "aes-128-cbc", enc_main, enc_options}, 251 {FT_cipher, "aes-128-ecb", enc_main, enc_options}, 252 {FT_cipher, "aes-192-cbc", enc_main, enc_options}, 253 {FT_cipher, "aes-192-ecb", enc_main, enc_options}, 254 {FT_cipher, "aes-256-cbc", enc_main, enc_options}, 255 {FT_cipher, "aes-256-ecb", enc_main, enc_options}, 256 #ifndef OPENSSL_NO_ARIA 257 {FT_cipher, "aria-128-cbc", enc_main, enc_options}, 258 #endif 259 #ifndef OPENSSL_NO_ARIA 260 {FT_cipher, "aria-128-cfb", enc_main, enc_options}, 261 #endif 262 #ifndef OPENSSL_NO_ARIA 263 {FT_cipher, "aria-128-ctr", enc_main, enc_options}, 264 #endif 265 #ifndef OPENSSL_NO_ARIA 266 {FT_cipher, "aria-128-ecb", enc_main, enc_options}, 267 #endif 268 #ifndef OPENSSL_NO_ARIA 269 {FT_cipher, "aria-128-ofb", enc_main, enc_options}, 270 #endif 271 #ifndef OPENSSL_NO_ARIA 272 {FT_cipher, "aria-128-cfb1", enc_main, enc_options}, 273 #endif 274 #ifndef OPENSSL_NO_ARIA 275 {FT_cipher, "aria-128-cfb8", enc_main, enc_options}, 276 #endif 277 #ifndef OPENSSL_NO_ARIA 278 {FT_cipher, "aria-192-cbc", enc_main, enc_options}, 279 #endif 280 #ifndef OPENSSL_NO_ARIA 281 {FT_cipher, "aria-192-cfb", enc_main, enc_options}, 282 #endif 283 #ifndef OPENSSL_NO_ARIA 284 {FT_cipher, "aria-192-ctr", enc_main, enc_options}, 285 #endif 286 #ifndef OPENSSL_NO_ARIA 287 {FT_cipher, "aria-192-ecb", enc_main, enc_options}, 288 #endif 289 #ifndef OPENSSL_NO_ARIA 290 {FT_cipher, "aria-192-ofb", enc_main, enc_options}, 291 #endif 292 #ifndef OPENSSL_NO_ARIA 293 {FT_cipher, "aria-192-cfb1", enc_main, enc_options}, 294 #endif 295 #ifndef OPENSSL_NO_ARIA 296 {FT_cipher, "aria-192-cfb8", enc_main, enc_options}, 297 #endif 298 #ifndef OPENSSL_NO_ARIA 299 {FT_cipher, "aria-256-cbc", enc_main, enc_options}, 300 #endif 301 #ifndef OPENSSL_NO_ARIA 302 {FT_cipher, "aria-256-cfb", enc_main, enc_options}, 303 #endif 304 #ifndef OPENSSL_NO_ARIA 305 {FT_cipher, "aria-256-ctr", enc_main, enc_options}, 306 #endif 307 #ifndef OPENSSL_NO_ARIA 308 {FT_cipher, "aria-256-ecb", enc_main, enc_options}, 309 #endif 310 #ifndef OPENSSL_NO_ARIA 311 {FT_cipher, "aria-256-ofb", enc_main, enc_options}, 312 #endif 313 #ifndef OPENSSL_NO_ARIA 314 {FT_cipher, "aria-256-cfb1", enc_main, enc_options}, 315 #endif 316 #ifndef OPENSSL_NO_ARIA 317 {FT_cipher, "aria-256-cfb8", enc_main, enc_options}, 318 #endif 319 #ifndef OPENSSL_NO_CAMELLIA 320 {FT_cipher, "camellia-128-cbc", enc_main, enc_options}, 321 #endif 322 #ifndef OPENSSL_NO_CAMELLIA 323 {FT_cipher, "camellia-128-ecb", enc_main, enc_options}, 324 #endif 325 #ifndef OPENSSL_NO_CAMELLIA 326 {FT_cipher, "camellia-192-cbc", enc_main, enc_options}, 327 #endif 328 #ifndef OPENSSL_NO_CAMELLIA 329 {FT_cipher, "camellia-192-ecb", enc_main, enc_options}, 330 #endif 331 #ifndef OPENSSL_NO_CAMELLIA 332 {FT_cipher, "camellia-256-cbc", enc_main, enc_options}, 333 #endif 334 #ifndef OPENSSL_NO_CAMELLIA 335 {FT_cipher, "camellia-256-ecb", enc_main, enc_options}, 336 #endif 337 {FT_cipher, "base64", enc_main, enc_options}, 338 #ifdef ZLIB 339 {FT_cipher, "zlib", enc_main, enc_options}, 340 #endif 341 #ifndef OPENSSL_NO_DES 342 {FT_cipher, "des", enc_main, enc_options}, 343 #endif 344 #ifndef OPENSSL_NO_DES 345 {FT_cipher, "des3", enc_main, enc_options}, 346 #endif 347 #ifndef OPENSSL_NO_DES 348 {FT_cipher, "desx", enc_main, enc_options}, 349 #endif 350 #ifndef OPENSSL_NO_IDEA 351 {FT_cipher, "idea", enc_main, enc_options}, 352 #endif 353 #ifndef OPENSSL_NO_SEED 354 {FT_cipher, "seed", enc_main, enc_options}, 355 #endif 356 #ifndef OPENSSL_NO_RC4 357 {FT_cipher, "rc4", enc_main, enc_options}, 358 #endif 359 #ifndef OPENSSL_NO_RC4 360 {FT_cipher, "rc4-40", enc_main, enc_options}, 361 #endif 362 #ifndef OPENSSL_NO_RC2 363 {FT_cipher, "rc2", enc_main, enc_options}, 364 #endif 365 #ifndef OPENSSL_NO_BF 366 {FT_cipher, "bf", enc_main, enc_options}, 367 #endif 368 #ifndef OPENSSL_NO_CAST 369 {FT_cipher, "cast", enc_main, enc_options}, 370 #endif 371 #ifndef OPENSSL_NO_RC5 372 {FT_cipher, "rc5", enc_main, enc_options}, 373 #endif 374 #ifndef OPENSSL_NO_DES 375 {FT_cipher, "des-ecb", enc_main, enc_options}, 376 #endif 377 #ifndef OPENSSL_NO_DES 378 {FT_cipher, "des-ede", enc_main, enc_options}, 379 #endif 380 #ifndef OPENSSL_NO_DES 381 {FT_cipher, "des-ede3", enc_main, enc_options}, 382 #endif 383 #ifndef OPENSSL_NO_DES 384 {FT_cipher, "des-cbc", enc_main, enc_options}, 385 #endif 386 #ifndef OPENSSL_NO_DES 387 {FT_cipher, "des-ede-cbc", enc_main, enc_options}, 388 #endif 389 #ifndef OPENSSL_NO_DES 390 {FT_cipher, "des-ede3-cbc", enc_main, enc_options}, 391 #endif 392 #ifndef OPENSSL_NO_DES 393 {FT_cipher, "des-cfb", enc_main, enc_options}, 394 #endif 395 #ifndef OPENSSL_NO_DES 396 {FT_cipher, "des-ede-cfb", enc_main, enc_options}, 397 #endif 398 #ifndef OPENSSL_NO_DES 399 {FT_cipher, "des-ede3-cfb", enc_main, enc_options}, 400 #endif 401 #ifndef OPENSSL_NO_DES 402 {FT_cipher, "des-ofb", enc_main, enc_options}, 403 #endif 404 #ifndef OPENSSL_NO_DES 405 {FT_cipher, "des-ede-ofb", enc_main, enc_options}, 406 #endif 407 #ifndef OPENSSL_NO_DES 408 {FT_cipher, "des-ede3-ofb", enc_main, enc_options}, 409 #endif 410 #ifndef OPENSSL_NO_IDEA 411 {FT_cipher, "idea-cbc", enc_main, enc_options}, 412 #endif 413 #ifndef OPENSSL_NO_IDEA 414 {FT_cipher, "idea-ecb", enc_main, enc_options}, 415 #endif 416 #ifndef OPENSSL_NO_IDEA 417 {FT_cipher, "idea-cfb", enc_main, enc_options}, 418 #endif 419 #ifndef OPENSSL_NO_IDEA 420 {FT_cipher, "idea-ofb", enc_main, enc_options}, 421 #endif 422 #ifndef OPENSSL_NO_SEED 423 {FT_cipher, "seed-cbc", enc_main, enc_options}, 424 #endif 425 #ifndef OPENSSL_NO_SEED 426 {FT_cipher, "seed-ecb", enc_main, enc_options}, 427 #endif 428 #ifndef OPENSSL_NO_SEED 429 {FT_cipher, "seed-cfb", enc_main, enc_options}, 430 #endif 431 #ifndef OPENSSL_NO_SEED 432 {FT_cipher, "seed-ofb", enc_main, enc_options}, 433 #endif 434 #ifndef OPENSSL_NO_RC2 435 {FT_cipher, "rc2-cbc", enc_main, enc_options}, 436 #endif 437 #ifndef OPENSSL_NO_RC2 438 {FT_cipher, "rc2-ecb", enc_main, enc_options}, 439 #endif 440 #ifndef OPENSSL_NO_RC2 441 {FT_cipher, "rc2-cfb", enc_main, enc_options}, 442 #endif 443 #ifndef OPENSSL_NO_RC2 444 {FT_cipher, "rc2-ofb", enc_main, enc_options}, 445 #endif 446 #ifndef OPENSSL_NO_RC2 447 {FT_cipher, "rc2-64-cbc", enc_main, enc_options}, 448 #endif 449 #ifndef OPENSSL_NO_RC2 450 {FT_cipher, "rc2-40-cbc", enc_main, enc_options}, 451 #endif 452 #ifndef OPENSSL_NO_BF 453 {FT_cipher, "bf-cbc", enc_main, enc_options}, 454 #endif 455 #ifndef OPENSSL_NO_BF 456 {FT_cipher, "bf-ecb", enc_main, enc_options}, 457 #endif 458 #ifndef OPENSSL_NO_BF 459 {FT_cipher, "bf-cfb", enc_main, enc_options}, 460 #endif 461 #ifndef OPENSSL_NO_BF 462 {FT_cipher, "bf-ofb", enc_main, enc_options}, 463 #endif 464 #ifndef OPENSSL_NO_CAST 465 {FT_cipher, "cast5-cbc", enc_main, enc_options}, 466 #endif 467 #ifndef OPENSSL_NO_CAST 468 {FT_cipher, "cast5-ecb", enc_main, enc_options}, 469 #endif 470 #ifndef OPENSSL_NO_CAST 471 {FT_cipher, "cast5-cfb", enc_main, enc_options}, 472 #endif 473 #ifndef OPENSSL_NO_CAST 474 {FT_cipher, "cast5-ofb", enc_main, enc_options}, 475 #endif 476 #ifndef OPENSSL_NO_CAST 477 {FT_cipher, "cast-cbc", enc_main, enc_options}, 478 #endif 479 #ifndef OPENSSL_NO_RC5 480 {FT_cipher, "rc5-cbc", enc_main, enc_options}, 481 #endif 482 #ifndef OPENSSL_NO_RC5 483 {FT_cipher, "rc5-ecb", enc_main, enc_options}, 484 #endif 485 #ifndef OPENSSL_NO_RC5 486 {FT_cipher, "rc5-cfb", enc_main, enc_options}, 487 #endif 488 #ifndef OPENSSL_NO_RC5 489 {FT_cipher, "rc5-ofb", enc_main, enc_options}, 490 #endif 491 #ifndef OPENSSL_NO_SM4 492 {FT_cipher, "sm4-cbc", enc_main, enc_options}, 493 #endif 494 #ifndef OPENSSL_NO_SM4 495 {FT_cipher, "sm4-ecb", enc_main, enc_options}, 496 #endif 497 #ifndef OPENSSL_NO_SM4 498 {FT_cipher, "sm4-cfb", enc_main, enc_options}, 499 #endif 500 #ifndef OPENSSL_NO_SM4 501 {FT_cipher, "sm4-ofb", enc_main, enc_options}, 502 #endif 503 #ifndef OPENSSL_NO_SM4 504 {FT_cipher, "sm4-ctr", enc_main, enc_options}, 505 #endif 506 {0, NULL, NULL} 507 }; 508 #endif 509