The data contained in this repository can be downloaded to your computer using one of several clients.
Please see the documentation of your version control software client for more information.

Please select the desired protocol below to get the URL.

This URL has Read-Only access.

Statistics
| Branch: | Revision:

main_repo / deps / openssl / openssl / apps / progs.pl @ aa3b4b4d

History | View | Annotate | Download (3.61 KB)

1
#!/usr/local/bin/perl
2

    
3
print "/* apps/progs.h */\n";
4
print "/* automatically generated by progs.pl for openssl.c */\n\n";
5

    
6
grep(s/^asn1pars$/asn1parse/,@ARGV);
7

    
8
foreach (@ARGV)
9
	{ printf "extern int %s_main(int argc,char *argv[]);\n",$_; }
10

    
11
print <<'EOF';
12

    
13
#define FUNC_TYPE_GENERAL	1
14
#define FUNC_TYPE_MD		2
15
#define FUNC_TYPE_CIPHER	3
16
#define FUNC_TYPE_PKEY		4
17
#define FUNC_TYPE_MD_ALG	5
18
#define FUNC_TYPE_CIPHER_ALG	6
19

    
20
typedef struct {
21
	int type;
22
	const char *name;
23
	int (*func)(int argc,char *argv[]);
24
	} FUNCTION;
25
DECLARE_LHASH_OF(FUNCTION);
26

    
27
FUNCTION functions[] = {
28
EOF
29

    
30
foreach (@ARGV)
31
	{
32
	push(@files,$_);
33
	$str="\t{FUNC_TYPE_GENERAL,\"$_\",${_}_main},\n";
34
	if (($_ =~ /^s_/) || ($_ =~ /^ciphers$/))
35
		{ print "#if !defined(OPENSSL_NO_SOCK)\n${str}#endif\n"; } 
36
	elsif ( ($_ =~ /^speed$/))
37
		{ print "#ifndef OPENSSL_NO_SPEED\n${str}#endif\n"; }
38
	elsif ( ($_ =~ /^engine$/))
39
		{ print "#ifndef OPENSSL_NO_ENGINE\n${str}#endif\n"; }
40
	elsif ( ($_ =~ /^rsa$/) || ($_ =~ /^genrsa$/) || ($_ =~ /^rsautl$/)) 
41
		{ print "#ifndef OPENSSL_NO_RSA\n${str}#endif\n";  }
42
	elsif ( ($_ =~ /^dsa$/) || ($_ =~ /^gendsa$/) || ($_ =~ /^dsaparam$/))
43
		{ print "#ifndef OPENSSL_NO_DSA\n${str}#endif\n"; }
44
	elsif ( ($_ =~ /^ec$/) || ($_ =~ /^ecparam$/))
45
		{ print "#ifndef OPENSSL_NO_EC\n${str}#endif\n";}
46
	elsif ( ($_ =~ /^dh$/) || ($_ =~ /^gendh$/) || ($_ =~ /^dhparam$/))
47
		{ print "#ifndef OPENSSL_NO_DH\n${str}#endif\n"; }
48
	elsif ( ($_ =~ /^pkcs12$/))
49
		{ print "#if !defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_SHA1)\n${str}#endif\n"; }
50
	elsif ( ($_ =~ /^cms$/))
51
		{ print "#ifndef OPENSSL_NO_CMS\n${str}#endif\n"; }
52
	elsif ( ($_ =~ /^ocsp$/))
53
		{ print "#ifndef OPENSSL_NO_OCSP\n${str}#endif\n"; }
54
	elsif ( ($_ =~ /^srp$/))
55
		{ print "#ifndef OPENSSL_NO_SRP\n${str}#endif\n"; }
56
	else
57
		{ print $str; }
58
	}
59

    
60
foreach ("md2","md4","md5","sha","sha1","mdc2","rmd160")
61
	{
62
	push(@files,$_);
63
	printf "#ifndef OPENSSL_NO_".uc($_)."\n\t{FUNC_TYPE_MD,\"".$_."\",dgst_main},\n#endif\n";
64
	}
65

    
66
foreach (
67
	"aes-128-cbc", "aes-128-ecb",
68
	"aes-192-cbc", "aes-192-ecb",
69
	"aes-256-cbc", "aes-256-ecb",
70
	"camellia-128-cbc", "camellia-128-ecb",
71
	"camellia-192-cbc", "camellia-192-ecb",
72
	"camellia-256-cbc", "camellia-256-ecb",
73
	"base64", "zlib",
74
	"des", "des3", "desx", "idea", "seed", "rc4", "rc4-40",
75
	"rc2", "bf", "cast", "rc5",
76
	"des-ecb", "des-ede",    "des-ede3",
77
	"des-cbc", "des-ede-cbc","des-ede3-cbc",
78
	"des-cfb", "des-ede-cfb","des-ede3-cfb",
79
	"des-ofb", "des-ede-ofb","des-ede3-ofb",
80
	"idea-cbc","idea-ecb",    "idea-cfb", "idea-ofb",
81
	"seed-cbc","seed-ecb",    "seed-cfb", "seed-ofb",
82
	"rc2-cbc", "rc2-ecb", "rc2-cfb","rc2-ofb", "rc2-64-cbc", "rc2-40-cbc",
83
	"bf-cbc",  "bf-ecb",     "bf-cfb",   "bf-ofb",
84
	"cast5-cbc","cast5-ecb", "cast5-cfb","cast5-ofb",
85
	"cast-cbc", "rc5-cbc",   "rc5-ecb",  "rc5-cfb",  "rc5-ofb")
86
	{
87
	push(@files,$_);
88

    
89
	$t=sprintf("\t{FUNC_TYPE_CIPHER,\"%s\",enc_main},\n",$_);
90
	if    ($_ =~ /des/)  { $t="#ifndef OPENSSL_NO_DES\n${t}#endif\n"; }
91
	elsif ($_ =~ /aes/)  { $t="#ifndef OPENSSL_NO_AES\n${t}#endif\n"; }
92
	elsif ($_ =~ /camellia/)  { $t="#ifndef OPENSSL_NO_CAMELLIA\n${t}#endif\n"; }
93
	elsif ($_ =~ /idea/) { $t="#ifndef OPENSSL_NO_IDEA\n${t}#endif\n"; }
94
	elsif ($_ =~ /seed/) { $t="#ifndef OPENSSL_NO_SEED\n${t}#endif\n"; }
95
	elsif ($_ =~ /rc4/)  { $t="#ifndef OPENSSL_NO_RC4\n${t}#endif\n"; }
96
	elsif ($_ =~ /rc2/)  { $t="#ifndef OPENSSL_NO_RC2\n${t}#endif\n"; }
97
	elsif ($_ =~ /bf/)   { $t="#ifndef OPENSSL_NO_BF\n${t}#endif\n"; }
98
	elsif ($_ =~ /cast/) { $t="#ifndef OPENSSL_NO_CAST\n${t}#endif\n"; }
99
	elsif ($_ =~ /rc5/)  { $t="#ifndef OPENSSL_NO_RC5\n${t}#endif\n"; }
100
	elsif ($_ =~ /zlib/)  { $t="#ifdef ZLIB\n${t}#endif\n"; }
101
	print $t;
102
	}
103

    
104
print "\t{0,NULL,NULL}\n\t};\n";