diff options
Diffstat (limited to 'crypto/err')
-rw-r--r-- | crypto/err/err_genc.pl | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/crypto/err/err_genc.pl b/crypto/err/err_genc.pl index 87c6da9a6d..5ebfa1a15e 100644 --- a/crypto/err/err_genc.pl +++ b/crypto/err/err_genc.pl @@ -65,7 +65,23 @@ print "#endif\n"; if ($static) { $lib="ERR_LIB_$type"; } else - { $lib="${type}_lib_error_code"; } + { + print <<"EOF"; + +#ifdef ${type}_LIB_NAME +static ERR_STRING_DATA ${type}_lib_name[]= + { +{0 ,${type}_LIB_NAME}, +{0,NULL} + }; +#endif + +EOF + $lib="${type}_lib_error_code"; + + + + } $str=""; $str.="#ifndef NO_ERR\n"; @@ -77,7 +93,7 @@ if (!$static) { print <<"EOF"; -static int ${type}_lib_error_code=0; +int ${type}_lib_error_code=0; void ERR_load_${type}_strings() { @@ -90,6 +106,10 @@ void ERR_load_${type}_strings() { init=0; $str +#ifdef ${type}_LIB_NAME + ${type}_lib_name->error = ERR_PACK(${type}_lib_error_code,0,0); + ERR_load_strings(0,${type}_lib_name); +#endif; } } |