diff options
author | Rich Salz <rsalz@akamai.com> | 2019-05-31 13:52:45 -0400 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2019-07-16 05:26:28 +0200 |
commit | aac96e2797c34a6b2a839eb58c30ab3328a0cee8 (patch) | |
tree | 105434e5b948326f7846dce7a9a8fb7ff41974e6 /util | |
parent | 3d9b33b5e48d82d098a1f8c37dbf616a0d84621c (diff) |
Remove function name from errors
Deprecate all xxx_F_ defines.
Removed some places that tested for a specific function.
Use empty field for the function names in output.
Update documentation.
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/9058)
Diffstat (limited to 'util')
-rwxr-xr-x | util/mkerr.pl | 56 |
1 files changed, 15 insertions, 41 deletions
diff --git a/util/mkerr.pl b/util/mkerr.pl index 08593d026d..aae49ac237 100755 --- a/util/mkerr.pl +++ b/util/mkerr.pl @@ -122,20 +122,22 @@ if ( $internal ) { } # Data parsed out of the config and state files. +# We always map function-code values to zero, so items marked below with +# an asterisk could eventually be removed. TODO(4.0) my %hinc; # lib -> header my %libinc; # header -> lib my %cskip; # error_file -> lib my %errorfile; # lib -> error file name -my %fmax; # lib -> max assigned function code +my %fmax; # lib -> max assigned function code* my %rmax; # lib -> max assigned reason code -my %fassigned; # lib -> colon-separated list of assigned function codes +my %fassigned; # lib -> colon-separated list of assigned function codes* my %rassigned; # lib -> colon-separated list of assigned reason codes -my %fnew; # lib -> count of new function codes +my %fnew; # lib -> count of new function codes* my %rnew; # lib -> count of new reason codes my %rextra; # "extra" reason code -> lib my %rcodes; # reason-name -> value -my %ftrans; # old name -> #define-friendly name (all caps) -my %fcodes; # function-name -> value +my %ftrans; # old name -> #define-friendly name (all caps)* +my %fcodes; # function-name -> value* my $statefile; # state file with assigned reason and function codes my %strings; # define -> text @@ -454,9 +456,9 @@ foreach my $lib ( keys %errorfile ) { #ifndef HEADER_${lib}ERR_H # define HEADER_${lib}ERR_H -# ifndef HEADER_SYMHACKS_H -# include <openssl/symhacks.h> -# endif +# include <openssl/opensslconf.h> +# include <openssl/symhacks.h> + EOF if ( $internal ) { @@ -480,7 +482,7 @@ int ERR_load_${lib}_strings(void); EOF } else { print OUT <<"EOF"; -# define ${lib}err(f, r) ERR_${lib}_error((f), (r), OPENSSL_FILE, OPENSSL_LINE) +# define ${lib}err(f, r) ERR_${lib}_error(0, (r), OPENSSL_FILE, OPENSSL_LINE) EOF if ( ! $static ) { @@ -500,6 +502,7 @@ EOF } print OUT "\n/*\n * $lib function codes.\n */\n"; + print OUT "# if !OPENSSL_API_3\n"; foreach my $i ( @function ) { my $z = 48 - length($i); $z = 0 if $z < 0; @@ -514,8 +517,9 @@ EOF $fassigned{$lib} .= "$findcode:"; print STDERR "New Function code $i\n" if $debug; } - printf OUT "#${indent}define $i%s $fcodes{$i}\n", " " x $z; + printf OUT "#${indent} define $i%s 0\n", " " x $z; } + print OUT "# endif\n"; print OUT "\n/*\n * $lib reason codes.\n */\n"; foreach my $i ( @reasons ) { @@ -575,32 +579,6 @@ EOF #ifndef OPENSSL_NO_ERR -static ${const}ERR_STRING_DATA ${lib}_str_functs[] = { -EOF - - # Add each function code: if a function name is found then use it. - foreach my $i ( @function ) { - my $fn; - if ( exists $strings{$i} and $strings{$i} ne '' ) { - $fn = $strings{$i}; - $fn = "" if $fn eq '*'; - } else { - $i =~ /^${lib}_F_(\S+)$/; - $fn = $1; - $fn = $ftrans{$fn} if exists $ftrans{$fn}; - $strings{$i} = $fn; - } - my $short = " {ERR_PACK($pack_lib, $i, 0), \"$fn\"},"; - if ( length($short) <= 80 ) { - print OUT "$short\n"; - } else { - print OUT " {ERR_PACK($pack_lib, $i, 0),\n \"$fn\"},\n"; - } - } - print OUT <<"EOF"; - {0, NULL} -}; - static ${const}ERR_STRING_DATA ${lib}_str_reasons[] = { EOF @@ -635,10 +613,8 @@ EOF int ERR_load_${lib}_strings(void) { #ifndef OPENSSL_NO_ERR - if (ERR_func_error_string(${lib}_str_functs[0].error) == NULL) { - ERR_load_strings_const(${lib}_str_functs); + if (ERR_func_error_string(${lib}_str_reasons[0].error) == NULL) ERR_load_strings_const(${lib}_str_reasons); - } #endif return 1; } @@ -657,7 +633,6 @@ ${st}int ERR_load_${lib}_strings(void) if (!error_loaded) { #ifndef OPENSSL_NO_ERR - ERR_load_strings(lib_code, ${lib}_str_functs); ERR_load_strings(lib_code, ${lib}_str_reasons); #endif error_loaded = 1; @@ -669,7 +644,6 @@ ${st}void ERR_unload_${lib}_strings(void) { if (error_loaded) { #ifndef OPENSSL_NO_ERR - ERR_unload_strings(lib_code, ${lib}_str_functs); ERR_unload_strings(lib_code, ${lib}_str_reasons); #endif error_loaded = 0; |