Update from 0.9.7-stable.

Improve mkerr.pl header file function name parsing.
This commit is contained in:
Dr. Stephen Henson 2006-11-21 20:14:05 +00:00
parent 4877e30504
commit 900f7a8776
2 changed files with 14 additions and 7 deletions

View File

@ -4,6 +4,11 @@
Changes between 0.9.8d and 0.9.8e [XX xxx XXXX]
*) Load error codes if they are not already present instead of using a
static variable. This allows them to be cleanly unloaded and reloaded.
Improve header file function name parsing.
[Steve Henson]
Changes between 0.9.8c and 0.9.8d [28 Sep 2006]
*) Introduce limits to prevent malicious keys being able to

View File

@ -135,6 +135,8 @@ while (($hdr, $lib) = each %libinc)
print STDERR " \r" if $debug;
$defnr = 0;
# Delete any DECLARE_ macros
$def =~ s/DECLARE_\w+\([\w,\s]+\)//gs;
foreach (split /;/, $def) {
$defnr++;
print STDERR "def: $defnr\r" if $debug;
@ -147,6 +149,9 @@ while (($hdr, $lib) = each %libinc)
# Skip over recognized non-function declarations
next if(/typedef\W/ or /DECLARE_STACK_OF/ or /TYPEDEF_.*_OF/);
# Remove STACK_OF(foo)
s/STACK_OF\(\w+\)/void/;
# Reduce argument lists to empty ()
# fold round brackets recursively: (t(*v)(t),t) -> (t{}{},t) -> {}
while(/\(.*\)/s) {
@ -595,17 +600,14 @@ if($static) {
${staticloader}void ERR_load_${lib}_strings(void)
{
static int init=1;
if (init)
{
init=0;
#ifndef OPENSSL_NO_ERR
if (ERR_func_error_string(${lib}_str_functs[0].error) == NULL)
{
ERR_load_strings($load_errcode,${lib}_str_functs);
ERR_load_strings($load_errcode,${lib}_str_reasons);
#endif
}
#endif
}
EOF
} else {