Make the no-err option work properly
authorRichard Levitte <levitte@openssl.org>
Tue, 18 Feb 2003 12:15:13 +0000 (12:15 +0000)
committerRichard Levitte <levitte@openssl.org>
Tue, 18 Feb 2003 12:15:13 +0000 (12:15 +0000)
CHANGES
Configure
crypto/err/err.c

diff --git a/CHANGES b/CHANGES
index ce694c4b24d9aaa8419fc5384b0ee0b75f5aa517..661f9e504c27bd0047758431fb800c3b384b010f 100644 (file)
--- 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]
 
index 851158af2d1ace7dc1246c5bd114768575039b64..768651f03cd0013ce99f48b8e3890edc0dcda404 100755 (executable)
--- 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;
index 5abe44e6d57d7b63cf6475a3ef275c93eb080db6..b873270c049ad7cd0373001390f2b326f20607e9 100644 (file)
@@ -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