Lookup function in shared library

This commit is contained in:
Raoul Wols 2021-07-13 13:12:32 +02:00
parent df78574034
commit 3ca1ef73ad
No known key found for this signature in database
GPG Key ID: 9FFE06A0F6AAA2DF
3 changed files with 16 additions and 1 deletions

View File

@ -354,6 +354,20 @@ void ERR_clear_error()
return func();
}
/**
* Print errors via a callback
* @param cb
* @param u
*/
void ERR_print_errors_cb(int (*cb)(const char *str, size_t len, void *u), void *u)
{
// the actual function
static Function<decltype(::ERR_print_errors_cb)> func(handle, "ERR_print_errors_cb");
// call the openssl function
func(cb, u);
}
/**
* End of namespace
*/

View File

@ -53,6 +53,7 @@ long SSL_ctrl(SSL *ssl, int cmd, long larg, void *parg);
long SSL_CTX_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg);
int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx);
void ERR_clear_error(void);
void ERR_print_errors_cb(int (*cb)(const char *str, size_t len, void *u), void *u);
/**
* End of namespace

View File

@ -71,7 +71,7 @@ SslErrorPrinter::SslErrorPrinter(int retval)
case SSL_ERROR_SSL:
// collect all error lines
::ERR_print_errors_cb(&sslerrorprintercallback, this);
OpenSSL::ERR_print_errors_cb(&sslerrorprintercallback, this);
// done
break;