summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES10
-rw-r--r--crypto/Makefile.ssl13
-rw-r--r--crypto/asn1/Makefile.ssl4
-rw-r--r--crypto/bio/Makefile.ssl10
-rw-r--r--crypto/bn/Makefile.ssl74
-rw-r--r--crypto/buffer/Makefile.ssl6
-rw-r--r--crypto/comp/Makefile.ssl10
-rw-r--r--crypto/conf/Makefile.ssl6
-rw-r--r--crypto/dh/Makefile.ssl6
-rw-r--r--crypto/dsa/Makefile.ssl6
-rw-r--r--crypto/err/err_code.pl212
-rw-r--r--crypto/evp/Makefile.ssl20
-rw-r--r--crypto/md2/Makefile.ssl2
-rw-r--r--crypto/objects/Makefile.ssl10
-rw-r--r--crypto/pem/Makefile.ssl8
-rw-r--r--crypto/pkcs7/Makefile.ssl6
-rw-r--r--crypto/rsa/Makefile.ssl12
-rw-r--r--crypto/x509/Makefile.ssl6
-rw-r--r--rsaref/Makefile.ssl4
-rw-r--r--ssl/Makefile.ssl22
20 files changed, 305 insertions, 142 deletions
diff --git a/CHANGES b/CHANGES
index 2235c937e..33afc413b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -5,6 +5,16 @@
Changes between 0.9.1c and 0.9.2
+ *) Changes to the error generation code. The perl script err-code.pl
+ now reads in the old error codes and retains the old numbers, only
+ adding new ones if necessary. It also only changes the .err files if new
+ codes are added. The makefiles have been modified to only insert errors
+ when needed (to avoid needlessly modifying header files). This is done
+ by only inserting errors if the .err file is newer than the auto generated
+ C file. To rebuild all the error codes from scratch (the old behaviour)
+ either modify crypto/Makefile.ssl to pass the -regen flag to err_code.pl
+ or delete all the .err files.
+
*) CAST-128 was incorrectly implemented for short keys. The C version has
been fixed, but is untested. The assembler versions are also fixed, but
new assembler HAS NOT BEEN GENERATED FOR WIN32 - the Makefile needs fixing
diff --git a/crypto/Makefile.ssl b/crypto/Makefile.ssl
index 3303523e0..b91baad73 100644
--- a/crypto/Makefile.ssl
+++ b/crypto/Makefile.ssl
@@ -15,10 +15,6 @@ MAKEFILE= Makefile.ssl
RM= /bin/rm -f
AR= ar r
-MAKE= make -f Makefile.ssl
-MAKEDEPEND= makedepend -f Makefile.ssl
-MAKEFILE= Makefile.ssl
-
PEX_LIBS=
EX_LIBS=
@@ -148,14 +144,19 @@ dclean:
$(MAKE) CC='$(CC)' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' dclean ); \
done;
-errors:
- perl ./err/err_code.pl -conf err/ssleay.ec *.c */*.c ../ssl/*.c ../rsaref/*.c
+errors: errgen $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
perl err/err_genc.pl -s $(ERR).h $(ERRC).c
+
+errgen:
+ perl ./err/err_code.pl -conf err/ssleay.ec *.c */*.c ../ssl/*.c ../rsaref/*.c
@for i in $(SDIRS) ;\
do \
(cd $$i; echo "making errors in $$i..."; \
$(MAKE) errors ); \
done;
+
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/asn1/Makefile.ssl b/crypto/asn1/Makefile.ssl
index fb2c7f36b..84a4b04d8 100644
--- a/crypto/asn1/Makefile.ssl
+++ b/crypto/asn1/Makefile.ssl
@@ -113,7 +113,9 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
diff --git a/crypto/bio/Makefile.ssl b/crypto/bio/Makefile.ssl
index 9d21a3594..3cb667047 100644
--- a/crypto/bio/Makefile.ssl
+++ b/crypto/bio/Makefile.ssl
@@ -35,7 +35,7 @@ LIBOBJ= bio_lib.o bio_cb.o $(ERRC).o \
SRC= $(LIBSRC)
-EXHEADER= bio.h
+EXHEADER= bio.h bss_file.c
HEADER= $(EXHEADER)
ALL= $(GENERAL) $(SRC) $(HEADER)
@@ -61,7 +61,7 @@ links:
$(TOP)/util/mklink.sh ../../apps $(APPS)
install:
- @for i in $(EXHEADER) ; \
+ @for i in $(EXHEADER) bss_file.c ; \
do \
(cp $$i $(INSTALLTOP)/include/$$i; \
chmod 644 $(INSTALLTOP)/include/$$i ); \
@@ -85,8 +85,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/bn/Makefile.ssl b/crypto/bn/Makefile.ssl
index cbddd4f3e..bf3423415 100644
--- a/crypto/bn/Makefile.ssl
+++ b/crypto/bn/Makefile.ssl
@@ -11,9 +11,12 @@ INSTALLTOP=/usr/local/ssl
MAKE= make -f Makefile.ssl
MAKEDEPEND= makedepend -f Makefile.ssl
MAKEFILE= Makefile.ssl
-BN_MULW= bn_mulw.o
AR= ar r
+BN_ASM= bn_asm.o
+# or use
+#BN_ASM= bn86-elf.o
+
CFLAGS= $(INCLUDES) $(CFLAG)
ERR=bn
@@ -23,14 +26,15 @@ TEST=bntest.c exptest.c
APPS=
LIB=$(TOP)/libcrypto.a
-LIBSRC= bn_add.c bn_div.c bn_exp.c bn_lib.c bn_mod.c bn_mul.c \
- bn_print.c bn_rand.c bn_shift.c bn_sub.c bn_word.c \
- bn_gcd.c bn_prime.c $(ERRC).c bn_sqr.c bn_mulw.c bn_recp.c bn_mont.c
-
-LIBOBJ= bn_add.o bn_div.o bn_exp.o bn_lib.o bn_mod.o bn_mul.o \
- bn_print.o bn_rand.o bn_shift.o bn_sub.o bn_word.o \
- bn_gcd.o bn_prime.o $(ERRC).o bn_sqr.o $(BN_MULW) bn_recp.o bn_mont.o
+LIBSRC= bn_add.c bn_div.c bn_exp.c bn_lib.c bn_mul.c \
+ bn_print.c bn_rand.c bn_shift.c bn_word.c bn_blind.c \
+ bn_gcd.c bn_prime.c $(ERRC).c bn_sqr.c bn_asm.c bn_recp.c bn_mont.c \
+ bn_mpi.c bn_exp2.c
+LIBOBJ= bn_add.o bn_div.o bn_exp.o bn_lib.o bn_mul.o \
+ bn_print.o bn_rand.o bn_shift.o bn_word.o bn_blind.o \
+ bn_gcd.o bn_prime.o $(ERRC).o bn_sqr.o $(BN_ASM) bn_recp.o bn_mont.o \
+ bn_mpi.o bn_exp2.o
SRC= $(LIBSRC)
@@ -56,6 +60,52 @@ lib: $(LIBOBJ)
sh $(TOP)/util/ranlib.sh $(LIB)
@touch lib
+# elf
+asm/bn86-elf.o: asm/bn86unix.cpp
+ $(CPP) -DELF asm/bn86unix.cpp | as -o asm/bn86-elf.o
+
+asm/co86-elf.o: asm/co86unix.cpp
+ $(CPP) -DELF asm/co86unix.cpp | as -o asm/co86-elf.o
+
+# solaris
+asm/bn86-sol.o: asm/bn86unix.cpp
+ $(CC) -E -DSOL asm/bn86unix.cpp | sed 's/^#.*//' > asm/bn86-sol.s
+ as -o asm/bn86-sol.o asm/bn86-sol.s
+ rm -f asm/bn86-sol.s
+
+asm/co86-sol.o: asm/co86unix.cpp
+ $(CC) -E -DSOL asm/co86unix.cpp | sed 's/^#.*//' > asm/co86-sol.s
+ as -o asm/co86-sol.o asm/co86-sol.s
+ rm -f asm/co86-sol.s
+
+# a.out
+asm/bn86-out.o: asm/bn86unix.cpp
+ $(CPP) -DOUT asm/bn86unix.cpp | as -o asm/bn86-out.o
+
+asm/co86-out.o: asm/co86unix.cpp
+ $(CPP) -DOUT asm/co86unix.cpp | as -o asm/co86-out.o
+
+# bsdi
+asm/bn86bsdi.o: asm/bn86unix.cpp
+ $(CPP) -DBSDI asm/bn86unix.cpp | sed 's/ :/:/' | as -o asm/bn86bsdi.o
+
+asm/co86bsdi.o: asm/co86unix.cpp
+ $(CPP) -DBSDI asm/co86unix.cpp | sed 's/ :/:/' | as -o asm/co86bsdi.o
+
+asm/bn86unix.cpp:
+ (cd asm; perl bn-586.pl cpp >bn86unix.cpp )
+
+asm/co86unix.cpp:
+ (cd asm; perl co-586.pl cpp >co86unix.cpp )
+
+# MIPS 64 bit assember
+asm/mips3.o: asm/mips3.s
+ /usr/bin/as -mips3 -O2 -o asm/mips3.o asm/mips3.s
+
+# MIPS 32 bit assember
+asm/mips1.o: asm/mips1.s
+ /usr/bin/as -O2 -o asm/mips1.o asm/mips1.s
+
files:
perl $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
@@ -97,11 +147,13 @@ dclean:
mv -f Makefile.new $(MAKEFILE)
clean:
- /bin/rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff bn_mulw.s
+ /bin/rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff bn_asm.s
+
+errors: $(ERRC).c
-errors:
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).org # special case .org
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/buffer/Makefile.ssl b/crypto/buffer/Makefile.ssl
index 35367933b..756e8b1e2 100644
--- a/crypto/buffer/Makefile.ssl
+++ b/crypto/buffer/Makefile.ssl
@@ -77,8 +77,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/comp/Makefile.ssl b/crypto/comp/Makefile.ssl
index 8673626c9..401651d14 100644
--- a/crypto/comp/Makefile.ssl
+++ b/crypto/comp/Makefile.ssl
@@ -80,7 +80,15 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+# This is a dummy to create comp.err: remove if we add any real errors to this
+# stuff.
+
+comp.err:
+ touch comp.err
+
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
diff --git a/crypto/conf/Makefile.ssl b/crypto/conf/Makefile.ssl
index 878ac70b1..720ac43c5 100644
--- a/crypto/conf/Makefile.ssl
+++ b/crypto/conf/Makefile.ssl
@@ -78,8 +78,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/dh/Makefile.ssl b/crypto/dh/Makefile.ssl
index 7e0c1e104..e634731aa 100644
--- a/crypto/dh/Makefile.ssl
+++ b/crypto/dh/Makefile.ssl
@@ -77,8 +77,10 @@ dclean:
clean:
/bin/rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/dsa/Makefile.ssl b/crypto/dsa/Makefile.ssl
index 7b9c9cf4c..3482f6d65 100644
--- a/crypto/dsa/Makefile.ssl
+++ b/crypto/dsa/Makefile.ssl
@@ -77,8 +77,10 @@ dclean:
clean:
/bin/rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/err/err_code.pl b/crypto/err/err_code.pl
index 5b893001c..8b510c96f 100644
--- a/crypto/err/err_code.pl
+++ b/crypto/err/err_code.pl
@@ -1,79 +1,66 @@
-#!/usr/local/bin/perl
+#!/usr/local/bin/perl -w
-%errfile=(
- "ERR", "NONE",
- "BN", "bn/bn.err",
- "RSA", "rsa/rsa.err",
- "DSA", "dsa/dsa.err",
- "DH", "dh/dh.err",
- "EVP", "evp/evp.err",
- "BUF", "buffer/buffer.err",
- "BIO", "bio/bio.err",
- "OBJ", "objects/objects.err",
- "PEM", "pem/pem.err",
- "X509", "x509/x509.err",
- "METH", "meth/meth.err",
- "ASN1", "asn1/asn1.err",
- "CONF", "conf/conf.err",
- "PROXY","proxy/proxy.err",
- "PKCS7","pkcs7/pkcs7.err",
- "RSAREF","../rsaref/rsaref.err",
- "SSL", "../ssl/ssl.err",
- "SSL2", "../ssl/ssl2.err",
- "SSL3", "../ssl/ssl3.err",
- "SSL23","../ssl/ssl23.err",
- );
+# Modified by Steve Henson. It should now read in the .err
+# file and only add new error codes, retaining the old
+# numbers.
-$function{'RSAREF_F_RSA_BN2BIN'}=1;
-$function{'RSAREF_F_RSA_PRIVATE_DECRYPT'}=1;
-$function{'RSAREF_F_RSA_PRIVATE_ENCRYPT'}=1;
-$function{'RSAREF_F_RSA_PUBLIC_DECRYPT'}=1;
-$function{'RSAREF_F_RSA_PUBLIC_ENCRYPT'}=1;
-$function{'SSL_F_CLIENT_CERTIFICATE'}=1;
+# Before it re-sorted new codes and re-ordered the whole thing.
+# This is the motivation for the change: the re numbering caused large
+# patch files even if only one error or reason code was added.
+# To force regeneration of all error codes (the old behaviour) use the
+# -regen flag.
-$r_value{'SSL_R_SSLV3_ALERT_UNEXPECTED_MESSAGE'}= 1010;
-$r_value{'SSL_R_SSLV3_ALERT_BAD_RECORD_MAC'}= 1020;
-$r_value{'SSL_R_SSLV3_ALERT_DECOMPRESSION_FAILURE'}=1030;
-$r_value{'SSL_R_SSLV3_ALERT_HANDSHAKE_FAILURE'}= 1040;
-$r_value{'SSL_R_SSLV3_ALERT_NO_CERTIFICATE'}= 1041;
-$r_value{'SSL_R_SSLV3_ALERT_BAD_CERTIFICATE'}= 1042;
-$r_value{'SSL_R_SSLV3_ALERT_UNSUPPORTED_CERTIFICATE'}=1043;
-$r_value{'SSL_R_SSLV3_ALERT_CERTIFICATE_REVOKED'}= 1044;
-$r_value{'SSL_R_SSLV3_ALERT_CERTIFICATE_EXPIRED'}= 1045;
-$r_value{'SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN'}= 1046;
-$r_value{'SSL_R_SSLV3_ALERT_ILLEGAL_PARAMETER'}= 1047;
+$regen = 0;
-$r_value{'RSAREF_R_CONTENT_ENCODING'}= 0x0400;
-$r_value{'RSAREF_R_DATA'}= 0x0401;
-$r_value{'RSAREF_R_DIGEST_ALGORITHM'}= 0x0402;
-$r_value{'RSAREF_R_ENCODING'}= 0x0403;
-$r_value{'RSAREF_R_KEY'}= 0x0404;
-$r_value{'RSAREF_R_KEY_ENCODING'}= 0x0405;
-$r_value{'RSAREF_R_LEN'}= 0x0406;
-$r_value{'RSAREF_R_MODULUS_LEN'}= 0x0407;
-$r_value{'RSAREF_R_NEED_RANDOM'}= 0x0408;
-$r_value{'RSAREF_R_PRIVATE_KEY'}= 0x0409;
-$r_value{'RSAREF_R_PUBLIC_KEY'}= 0x040a;
-$r_value{'RSAREF_R_SIGNATURE'}= 0x040b;
-$r_value{'RSAREF_R_SIGNATURE_ENCODING'}=0x040c;
-$r_value{'RSAREF_R_ENCRYPTION_ALGORITHM'}=0x040d;
-
-$last="";
-while (<>)
+while (@ARGV)
{
- if (/err\(([A-Z0-9]+_F_[0-9A-Z_]+)\s*,\s*([0-9A-Z]+_R_[0-9A-Z_]+)\s*\)/)
+ $in=shift(@ARGV);
+ if ($in =~ /^-conf$/)
{
- if ($1 != $last)
+ $in=shift(@ARGV);
+ open(IN,"<$in") || die "unable to open '$in'\n";
+ while (<IN>)
{
- if ($function{$1} == 0)
- {
- printf STDERR "$. $1 is bad\n";
- }
+ s/#.*$//;
+ s/\s+$//;
+ next if (/^$/);
+ if (/^L\s+(\S+)\s+(\S+)$/)
+ { $errfile{$1}=$2; }
+ elsif (/^F\s+(\S+)$/)
+ { $function{$1}=1; }
+ elsif (/^R\s+(\S+)\s+(\S+)$/)
+ { $r_value{$1}=$2; }
+ else { die "bad input line: $in:$.\n"; }
+ }
+ close(IN);
+ next;
+ }
+ elsif ($in =~ /^-regen/)
+ {
+ $regen = 1;
+ next;
+ }
+
+ open(IN,"<$in") || die "unable to open '$in'\n";
+ $last="";
+ while (<IN>)
+ {
+ if (/err\(([A-Z0-9]+_F_[0-9A-Z_]+)\s*,\s*([0-9A-Z]+_R_[0-9A-Z_]+)\s*\)/)
+ {
+# Not sure what this was supposed to be for: it's broken anyway [steve]
+# if ($1 != $last)
+# {
+# if ($function{$1} == 0)
+# {
+# printf STDERR "$. $1 is bad\n";
+# }
+# }
+ $function{$1}++;
+ $last=$1;
+ $reason{$2}++;
}
- $function{$1}++;
- $last=$1;
- $reason{$2}++;
}
+ close(IN);
}
foreach (keys %function,keys %reason)
@@ -86,41 +73,108 @@ foreach (keys %function,keys %reason)
@R=sort keys %reason;
foreach $j (sort keys %prefix)
{
+ next if !defined $errfile{$j};
next if $errfile{$j} eq "NONE";
printf STDERR "doing %-6s - ",$j;
- open(OUT,">$errfile{$j}") || die "unable to open '$errfile{$j}':$!\n";
@f=grep(/^${j}_/,@F);
@r=grep(/^${j}_/,@R);
- $num=100;
+ if (defined($errfile{$j}))
+ {
+ read_errcodes($errfile{$j});
+ # Check to see if any new codes: if not ignore.
+ $new_codes = 0;
+ foreach (@f) {
+ if(!exists $func_codes{$_}) {
+ $new_codes = 1;
+ last;
+ }
+ }
+ if(!$new_codes) {
+ foreach (@r) {
+ if(!exists $reason_codes{$_}) {
+ $new_codes = 1;
+ last;
+ }
+ }
+ }
+ if(!$new_codes) {
+ print STDERR "No New Codes\n";
+ next;
+ }
+ open(OUT,">$errfile{$j}") ||
+ die "unable to open '$errfile{$j}':$!\n";
+ $close_file=1;
+ }
+ else
+ {
+ $min_func = 100;
+ $min_reason = 100;
+ *OUT=*STDOUT;
+ $close_file=0;
+ }
+ $num=$min_func;
print OUT "/* Error codes for the $j functions. */\n\n";
print OUT "/* Function codes. */\n";
$f_count=0;
foreach $i (@f)
{
$z=6-int(length($i)/8);
- printf OUT "#define $i%s $num\n","\t" x $z;
- $num++;
+ if(exists $func_codes{$i}) {
+ printf OUT "#define $i%s $func_codes{$i}\n","\t" x $z;
+ } else {
+ printf OUT "#define $i%s $num\n","\t" x $z;
+ $num++;
+ }
$f_count++;
}
- $num=100;
+ $num=$min_reason;
print OUT "\n/* Reason codes. */\n";
$r_count=0;
foreach $i (@r)
{
$z=6-int(length($i)/8);
- if (defined($r_value{$i}))
- {
+ if (exists $reason_codes{$i}) {
+ printf OUT "#define $i%s $reason_codes{$i}\n","\t" x $z;
+ } elsif (exists $r_value{$i}) {
printf OUT "#define $i%s $r_value{$i}\n","\t" x $z;
- }
- else
- {
+ } else {
printf OUT "#define $i%s $num\n","\t" x $z;
$num++;
- }
+ }
$r_count++;
}
- close(OUT);
+ close(OUT) if $close_file;
printf STDERR "%3d functions, %3d reasons\n",$f_count,$r_count;
}
+# Read in the error codes and populate %function and %reason with the
+# old codes. Also define $min_func and $min_reason with the smallest
+# unused function and reason codes. Care is needed because the
+# config file can define larger reason codes and these should be
+# ignored.
+
+sub read_errcodes {
+$file = $_[0];
+$min_func = 100;
+$min_reason = 100;
+undef %func_codes;
+undef %reason_codes;
+return if ($regen);
+if (open IN, $file) {
+ while(<IN>) {
+ if(/^#define\s*(\S*)\s*(\S*)/) {
+ if (exists $function{$1} ) {
+ if($2 >= $min_func) {$min_func = $2 + 1;}
+ $func_codes{$1} = $2;
+ } elsif ((defined %reason) && exists $reason{$1}) {
+ $reason_codes{$1} = $2;
+ if( !(exists $r_value{$1}) &&
+ ($2 >= $min_reason))
+ {$min_reason = $2 + 1;}
+ }
+ }
+ }
+ close IN;
+}
+}
diff --git a/crypto/evp/Makefile.ssl b/crypto/evp/Makefile.ssl
index 20338119e..902d6fba0 100644
--- a/crypto/evp/Makefile.ssl
+++ b/crypto/evp/Makefile.ssl
@@ -29,10 +29,13 @@ LIBSRC= encode.c digest.c evp_enc.c evp_key.c \
e_cfb_3d.c e_ofb_3d.c e_xcbc_d.c \
e_ecb_r2.c e_cbc_r2.c e_cfb_r2.c e_ofb_r2.c \
e_ecb_bf.c e_cbc_bf.c e_cfb_bf.c e_ofb_bf.c \
+ e_ecb_c.c e_cbc_c.c e_cfb_c.c e_ofb_c.c \
+ e_ecb_r5.c e_cbc_r5.c e_cfb_r5.c e_ofb_r5.c \
m_null.c m_md2.c m_md5.c m_sha.c m_sha1.c m_dss.c m_dss1.c m_mdc2.c \
- p_open.c p_seal.c p_sign.c p_verify.c p_lib.c \
+ m_ripemd.c \
+ p_open.c p_seal.c p_sign.c p_verify.c p_lib.c p_enc.c p_dec.c \
bio_md.c bio_b64.c bio_enc.c $(ERRC).c e_null.c \
- c_all.c
+ c_all.c evp_lib.c
LIBOBJ= encode.o digest.o evp_enc.o evp_key.o \
e_ecb_d.o e_cbc_d.o e_cfb_d.o e_ofb_d.o \
@@ -41,10 +44,13 @@ LIBOBJ= encode.o digest.o evp_enc.o evp_key.o \
e_cfb_3d.o e_ofb_3d.o e_xcbc_d.o \
e_ecb_r2.o e_cbc_r2.o e_cfb_r2.o e_ofb_r2.o \
e_ecb_bf.o e_cbc_bf.o e_cfb_bf.o e_ofb_bf.o \
+ e_ecb_c.o e_cbc_c.o e_cfb_c.o e_ofb_c.o \
+ e_ecb_r5.o e_cbc_r5.o e_cfb_r5.o e_ofb_r5.o \
m_null.o m_md2.o m_md5.o m_sha.o m_sha1.o m_dss.o m_dss1.o m_mdc2.o \
- p_open.o p_seal.o p_sign.o p_verify.o p_lib.o \
+ m_ripemd.o \
+ p_open.o p_seal.o p_sign.o p_verify.o p_lib.o p_enc.o p_dec.o \
bio_md.o bio_b64.o bio_enc.o $(ERRC).o e_null.o \
- c_all.o
+ c_all.o evp_lib.o
SRC= $(LIBSRC)
@@ -98,8 +104,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/md2/Makefile.ssl b/crypto/md2/Makefile.ssl
index d8e7200c8..5ea314943 100644
--- a/crypto/md2/Makefile.ssl
+++ b/crypto/md2/Makefile.ssl
@@ -20,7 +20,7 @@ TEST=md2test.c
APPS=
LIB=$(TOP)/libcrypto.a
-LIBSRC=md2_dgst.c md5_one.c
+LIBSRC=md2_dgst.c md2_one.c
LIBOBJ=md2_dgst.o md2_one.o
SRC= $(LIBSRC)
diff --git a/crypto/objects/Makefile.ssl b/crypto/objects/Makefile.ssl
index 148ac3ce4..a61cde7fe 100644
--- a/crypto/objects/Makefile.ssl
+++ b/crypto/objects/Makefile.ssl
@@ -22,8 +22,8 @@ TEST=
APPS=
LIB=$(TOP)/libcrypto.a
-LIBSRC= obj_dat.c obj_lib.c $(ERRC).c
-LIBOBJ= obj_dat.o obj_lib.o $(ERRC).o
+LIBSRC= o_names.c obj_dat.c obj_lib.c $(ERRC).c
+LIBOBJ= o_names.o obj_dat.o obj_lib.o $(ERRC).o
SRC= $(LIBSRC)
@@ -80,8 +80,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/pem/Makefile.ssl b/crypto/pem/Makefile.ssl
index 447fcb4c0..cbc2d9821 100644
--- a/crypto/pem/Makefile.ssl
+++ b/crypto/pem/Makefile.ssl
@@ -56,7 +56,7 @@ lib: $(LIBOBJ)
files:
perl $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
-links:
+links: $(EXHEADER)
/bin/rm -f Makefile
$(TOP)/util/point.sh Makefile.ssl Makefile ;
$(TOP)/util/mklink.sh ../../include $(EXHEADER)
@@ -88,9 +88,11 @@ dclean:
clean:
/bin/rm -f $(CTX_SIZE) *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).org # SPECIAL CASE .org
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/pkcs7/Makefile.ssl b/crypto/pkcs7/Makefile.ssl
index 64a005a18..7cffde48e 100644
--- a/crypto/pkcs7/Makefile.ssl
+++ b/crypto/pkcs7/Makefile.ssl
@@ -79,8 +79,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/rsa/Makefile.ssl b/crypto/rsa/Makefile.ssl
index 5e04ec448..f706c4188 100644
--- a/crypto/rsa/Makefile.ssl
+++ b/crypto/rsa/Makefile.ssl
@@ -22,8 +22,10 @@ TEST=
APPS=
LIB=$(TOP)/libcrypto.a
-LIBSRC= rsa_enc.c rsa_gen.c rsa_lib.c rsa_sign.c rsa_saos.c $(ERRC).c
-LIBOBJ= rsa_enc.o rsa_gen.o rsa_lib.o rsa_sign.o rsa_saos.o $(ERRC).o
+LIBSRC= rsa_eay.c rsa_gen.c rsa_lib.c rsa_sign.c rsa_saos.c $(ERRC).c \
+ rsa_pk1.c rsa_ssl.c rsa_none.c
+LIBOBJ= rsa_eay.o rsa_gen.o rsa_lib.o rsa_sign.o rsa_saos.o $(ERRC).o \
+ rsa_pk1.o rsa_ssl.o rsa_none.o
SRC= $(LIBSRC)
@@ -77,8 +79,10 @@ dclean:
clean:
/bin/rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/crypto/x509/Makefile.ssl b/crypto/x509/Makefile.ssl
index e54a74d1e..63c0e214b 100644
--- a/crypto/x509/Makefile.ssl
+++ b/crypto/x509/Makefile.ssl
@@ -89,8 +89,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/rsaref/Makefile.ssl b/rsaref/Makefile.ssl
index f75f0eac3..5f5e742ce 100644
--- a/rsaref/Makefile.ssl
+++ b/rsaref/Makefile.ssl
@@ -78,7 +78,9 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
perl ../crypto/err/err_genc.pl -s $(ERR).h $(ERRC).c
diff --git a/ssl/Makefile.ssl b/ssl/Makefile.ssl
index f6f40e44f..50b4d6aa4 100644
--- a/ssl/Makefile.ssl
+++ b/ssl/Makefile.ssl
@@ -23,17 +23,19 @@ APPS=
LIB=$(TOP)/libssl.a
LIBSRC= \
- s2_meth.c s2_srvr.c s2_clnt.c s2_lib.c s2_pkt.c s2_enc.c \
- s3_meth.c s3_srvr.c s3_clnt.c s3_lib.c s3_pkt.c s3_enc.c s3_both.c \
- s23_meth.c s23_srvr.c s23_clnt.c s23_lib.c s23_pkt.c \
+ s2_meth.c s2_srvr.c s2_clnt.c s2_lib.c s2_enc.c s2_pkt.c \
+ s3_meth.c s3_srvr.c s3_clnt.c s3_lib.c s3_enc.c s3_pkt.c s3_both.c \
+ s23_meth.c s23_srvr.c s23_clnt.c s23_lib.c s23_pkt.c \
+ t1_meth.c t1_srvr.c t1_clnt.c t1_lib.c t1_enc.c \
ssl_lib.c ssl_err2.c ssl_cert.c ssl_sess.c \
ssl_ciph.c ssl_stat.c ssl_rsa.c \
ssl_asn1.c ssl_txt.c ssl_algs.c \
bio_ssl.c $(ERRC).c
LIBOBJ= \
- s2_meth.o s2_srvr.o s2_clnt.o s2_lib.o s2_pkt.o s2_enc.o \
- s3_meth.o s3_srvr.o s3_clnt.o s3_lib.o s3_pkt.o s3_enc.o s3_both.o \
- s23_meth.o s23_srvr.o s23_clnt.o s23_lib.o s23_pkt.o \
+ s2_meth.o s2_srvr.o s2_clnt.o s2_lib.o s2_enc.o s2_pkt.o \
+ s3_meth.o s3_srvr.o s3_clnt.o s3_lib.o s3_enc.o s3_pkt.o s3_both.o \
+ s23_meth.o s23_srvr.o s23_clnt.o s23_lib.o s23_pkt.o \
+ t1_meth.o t1_srvr.o t1_clnt.o t1_lib.o t1_enc.o \
ssl_lib.o ssl_err2.o ssl_cert.o ssl_sess.o \
ssl_ciph.o ssl_stat.o ssl_rsa.o \
ssl_asn1.o ssl_txt.o ssl_algs.o \
@@ -41,7 +43,7 @@ LIBOBJ= \
SRC= $(LIBSRC)
-EXHEADER= ssl.h ssl2.h ssl3.h ssl23.h
+EXHEADER= ssl.h ssl2.h ssl3.h ssl23.h tls1.h
HEADER= $(EXHEADER) ssl_locl.h
ALL= $(GENERAL) $(SRC) $(HEADER)
@@ -91,8 +93,10 @@ dclean:
clean:
/bin/rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
-errors:
+errors: $(ERRC).c
+
+$(ERRC).c: $(ERR).err
perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
- perl ../crypto/err/err_genc.pl $(ERR).h $(ERRC).c
+ perl ../crypto/err/err_genc.pl -s $(ERR).h $(ERRC).c
# DO NOT DELETE THIS LINE -- make depend depends on it.