From: Ondřej Surý Date: Mon, 26 Oct 2020 10:14:49 +0000 (+0100) Subject: Remove redundant lt_dlerror() calls X-Git-Tag: v9.17.7~38^2~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0f49b02fc5bf9d8dba30cb9768aab366008bbd9e;p=thirdparty%2Fbind9.git Remove redundant lt_dlerror() calls The redundant lt_dlerror() calls were taken from the examples to clean any previous errors from lt_dl...() calls. However upon code inspection, it was discovered there are no such paths that could cause the lt_dlerror() to return spurious error messages. --- diff --git a/bin/named/unix/dlz_dlopen_driver.c b/bin/named/unix/dlz_dlopen_driver.c index be9055ec102..fb9ce8d459f 100644 --- a/bin/named/unix/dlz_dlopen_driver.c +++ b/bin/named/unix/dlz_dlopen_driver.c @@ -193,8 +193,7 @@ dl_load_symbol(dlopen_data_t *cd, const char *symbol, bool mandatory) { cd->dl_path, symbol, errmsg); } } - /* Cleanup any errors */ - (void)lt_dlerror(); + return (ptr); } @@ -243,8 +242,6 @@ dlopen_dlz_create(const char *dlzname, unsigned int argc, char *argv[], goto failed; } - (void)lt_dlerror(); - /* Find the symbols */ cd->dlz_version = (dlz_dlopen_version_t *)dl_load_symbol(cd, "dlz_version", true); diff --git a/lib/dns/dyndb.c b/lib/dns/dyndb.c index f70723c3a29..e35293ece62 100644 --- a/lib/dns/dyndb.c +++ b/lib/dns/dyndb.c @@ -99,7 +99,6 @@ load_symbol(lt_dlhandle handle, const char *filename, const char *symbol_name, symbol_name, filename, errmsg); return (ISC_R_FAILURE); } - (void)lt_dlerror(); *symbolp = symbol; @@ -132,9 +131,6 @@ load_library(isc_mem_t *mctx, const char *filename, const char *instname, CHECK(ISC_R_FAILURE); } - /* Clear dlerror */ - (void)lt_dlerror(); - CHECK(load_symbol(handle, filename, "dyndb_version", (void **)&version_func)); diff --git a/lib/ns/hooks.c b/lib/ns/hooks.c index 5bd1efb8b44..f79ef1b47bb 100644 --- a/lib/ns/hooks.c +++ b/lib/ns/hooks.c @@ -98,14 +98,6 @@ load_symbol(void *handle, const char *modpath, const char *symbol_name, REQUIRE(handle != NULL); REQUIRE(symbolp != NULL && *symbolp == NULL); - /* - * Clear any pre-existing error conditions before running dlsym(). - * (In this case, we expect dlsym() to return non-NULL values - * and will always return an error if it returns NULL, but - * this ensures that we'll report the correct error condition - * if there is one.) - */ - lt_dlerror(); symbol = lt_dlsym(handle, symbol_name); if (symbol == NULL) { const char *errmsg = lt_dlerror();