提交 d7f0ab5f 编写于 作者: U Ulf Möller

New make target "report" to run util/selftest.pl

上级 49976df5
...@@ -272,6 +272,9 @@ tests: rehash ...@@ -272,6 +272,9 @@ tests: rehash
$(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SDIRS='${SDIRS}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' tests ); $(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SDIRS='${SDIRS}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' tests );
@apps/openssl version -a @apps/openssl version -a
report:
@$(PERL) util/selftest.pl
depend: depend:
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
......
...@@ -80,40 +80,14 @@ ...@@ -80,40 +80,14 @@
A Configuration loader that uses a format similar to MS .ini files. A Configuration loader that uses a format similar to MS .ini files.
openssl: openssl:
A command line tool which provides the following functions: A command line tool that can be used for:
Creation of RSA, DH and DSA key parameters
enc - a general encryption program that can encrypt/decrypt using Creation of X.509 certificates, CSRs and CRLs
one of 17 different cipher/mode combinations. The Calculation of Message Digests
input/output can also be converted to/from base64 Encryption and Decryption with Ciphers
ascii encoding. SSL/TLS Client and Server Tests
dgst - a generate message digesting program that will generate Handling of S/MIME signed or encrypted mail
message digests for any of md2, md5, sha (sha-0 or sha-1)
or mdc2.
asn1parse - parse and display the structure of an asn1 encoded
binary file.
rsa - Manipulate RSA private keys.
dsa - Manipulate DSA private keys.
dh - Manipulate Diffie-Hellman parameter files.
dsaparam- Manipulate and generate DSA parameter files.
crl - Manipulate certificate revocation lists.
crt2pkcs7- Generate a pkcs7 object containing a crl and a certificate.
x509 - Manipulate x509 certificates, self-sign certificates.
req - Manipulate PKCS#10 certificate requests and also
generate certificate requests.
genrsa - Generates an arbitrary sized RSA private key.
gendsa - Generates DSA parameters.
gendh - Generates a set of Diffie-Hellman parameters, the prime
will be a strong prime.
ca - Create certificates from PKCS#10 certificate requests.
This program also maintains a database of certificates
issued.
verify - Check x509 certificate signatures.
speed - Benchmark OpenSSL's ciphers.
s_server- A test SSL server.
s_client- A test SSL client.
s_time - Benchmark SSL performance of SSL server programs.
errstr - Convert from OpenSSL hex error codes to a readable form.
nseq - Netscape certificate sequence utility
PATENTS PATENTS
------- -------
...@@ -157,30 +131,23 @@ ...@@ -157,30 +131,23 @@
If you have any problems with OpenSSL then please take the following steps If you have any problems with OpenSSL then please take the following steps
first: first:
- Download the current snapshot from ftp://ftp.openssl.org/snapshot/
to see if the problem has already been addressed
- Remove ASM versions of libraries - Remove ASM versions of libraries
- Remove compiler optimisation flags - Remove compiler optimisation flags
- Add compiler debug flags (if using gcc then remove -fomit-frame-pointer
before you try to debug things)
If you wish to report a bug then please include the following information in If you wish to report a bug then please include the following information in
any bug report: any bug report:
OpenSSL Details - On Unix systems:
- Version, most of these details can be got from the Self-test report generated by 'make report'
'openssl version -a' command. - On other systems:
Operating System Details OpenSSL version: output of 'openssl version -a'
- On Unix systems: Output of './config -t' OS Name, Version, Hardware platform
- OS Name, Version Compiler Details (name, version)
- Hardware platform - Application Details (name, version)
Compiler Details - Problem Description (steps that will reproduce the problem, if known)
- Name - Stack Traceback (if the application dumps core)
- Version
Application Details
- Name
- Version
Problem Description
- include steps that will reproduce the problem (if known)
Stack Traceback (if the application dumps core)
Report the bug to the OpenSSL project at: Report the bug to the OpenSSL project at:
...@@ -188,7 +155,7 @@ ...@@ -188,7 +155,7 @@
Note that mail to openssl-bugs@openssl.org is forwarded to a public Note that mail to openssl-bugs@openssl.org is forwarded to a public
mailing list. Confidential mail may be sent to openssl-security@openssl.org mailing list. Confidential mail may be sent to openssl-security@openssl.org
(PGP key available from the key servers.) (PGP key available from the key servers).
HOW TO CONTRIBUTE TO OpenSSL HOW TO CONTRIBUTE TO OpenSSL
---------------------------- ----------------------------
......
...@@ -17,6 +17,7 @@ my $options="??"; ...@@ -17,6 +17,7 @@ my $options="??";
my $last="??"; my $last="??";
my $ok=0; my $ok=0;
my $cc="cc"; my $cc="cc";
my $cversion="??";
my $sep="-----------------------------------------------------------------------------\n"; my $sep="-----------------------------------------------------------------------------\n";
open(OUT,">$report") or die; open(OUT,">$report") or die;
...@@ -38,13 +39,19 @@ if (open(IN,"<Makefile.ssl")) { ...@@ -38,13 +39,19 @@ if (open(IN,"<Makefile.ssl")) {
$version=$1 if (/^VERSION=(.*)$/); $version=$1 if (/^VERSION=(.*)$/);
$platform=$1 if (/^PLATFORM=(.*)$/); $platform=$1 if (/^PLATFORM=(.*)$/);
$options=$1 if (/^OPTIONS=(.*)$/); $options=$1 if (/^OPTIONS=(.*)$/);
$cc=$1 if (/^CC=(.*)$/); $cc=$1 if (/^CC= *(.*)$/);
} }
close(IN); close(IN);
} else { } else {
print OUT "Error running config: no Makefile.ssl!\n"; print OUT "Error running config!\n";
} }
$cversion=`$cc -v 2>&1`;
$cversion=`$cc -V 2>&1` if $cversion =~ "usage";
$cversion =~ s/Reading specs.*\n//;
$cversion =~ s/usage.*\n//;
chomp $cversion;
if (open(IN,"<CHANGES")) { if (open(IN,"<CHANGES")) {
while(<IN>) { while(<IN>) {
if (/\*\) (.{0,55})/) { if (/\*\) (.{0,55})/) {
...@@ -61,8 +68,11 @@ print OUT "OS (uname): $uname"; ...@@ -61,8 +68,11 @@ print OUT "OS (uname): $uname";
print OUT "OS (config): $os\n"; print OUT "OS (config): $os\n";
print OUT "Target (default): $platform0\n"; print OUT "Target (default): $platform0\n";
print OUT "Target: $platform\n"; print OUT "Target: $platform\n";
print OUT "Compiler: $cversion\n";
print OUT "\n"; print OUT "\n";
goto err;
print "Checking compiler...\n"; print "Checking compiler...\n";
if (open(TEST,">test.c")) { if (open(TEST,">test.c")) {
print TEST "#include <stdio.h>\nmain(){printf(\"Hello world\\n\");}\n"; print TEST "#include <stdio.h>\nmain(){printf(\"Hello world\\n\");}\n";
...@@ -149,3 +159,4 @@ while (<IN>) { ...@@ -149,3 +159,4 @@ while (<IN>) {
print; print;
} }
print "Test report in file $report\n"; print "Test report in file $report\n";
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册