summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2003-02-18 12:15:13 +0000
committerRichard Levitte <levitte@openssl.org>2003-02-18 12:15:13 +0000
commitcc811b1d7edce8c7c28ff790669e0b5ae43c6719 (patch)
treee64d6c6f4414e9c2d2b4d0a258c0c3ca02ad924d
parenta81d9af7f77dfabbbed62b0f2d950490e8eb76eb (diff)
Make the no-err option work properly
-rw-r--r--CHANGES11
-rwxr-xr-xConfigure5
-rw-r--r--crypto/err/err.c2
3 files changed, 18 insertions, 0 deletions
diff --git a/CHANGES b/CHANGES
index ce694c4b24..661f9e504c 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,17 @@
Changes between 0.9.7 and 0.9.7a [XX xxx 2003]
+ *) Make the no-err option work as intended. The intention with no-err
+ is not to have the whole error stack handling routines removed from
+ libcrypto, it's only intended to remove all the function name and
+ reason texts, thereby removing some of the footprint that may not
+ be interesting if those errors aren't displayed anyway.
+
+ NOTE: it's still possible for any application or module to have it's
+ own set of error texts inserted. The routines are there, just not
+ used by default when no-err is given.
+ [Richard Levitte]
+
*) Add support for FreeBSD on IA64.
[dirk.meyer@dinoex.sub.org via Richard Levitte, resolves #454]
diff --git a/Configure b/Configure
index 851158af2d..768651f03c 100755
--- a/Configure
+++ b/Configure
@@ -692,6 +692,11 @@ PROCESS_ARGS:
$flags .= "-DOPENSSL_NO_ASM ";
$openssl_other_defines .= "#define OPENSSL_NO_ASM\n";
}
+ elsif (/^no-err$/)
+ {
+ $flags .= "-DOPENSSL_NO_ERR ";
+ $openssl_other_defines .= "#define OPENSSL_NO_ERR\n";
+ }
elsif (/^no-hw-(.+)$/)
{
my $hw=$1;
diff --git a/crypto/err/err.c b/crypto/err/err.c
index 5abe44e6d5..b873270c04 100644
--- a/crypto/err/err.c
+++ b/crypto/err/err.c
@@ -211,6 +211,7 @@ static ERR_STRING_DATA ERR_str_reasons[]=
{0,NULL},
};
+#endif
/* Define the predeclared (but externally opaque) "ERR_FNS" type */
@@ -491,6 +492,7 @@ static int int_err_get_next_lib(void)
}
+#ifndef OPENSSL_NO_ERR
#define NUM_SYS_STR_REASONS 127
#define LEN_SYS_STR_REASON 32