dovecot-2.0-sslstream: Added module_get_symbol_quiet().

dovecot at dovecot.org dovecot at dovecot.org
Sat Feb 13 02:56:26 EET 2010


details:   http://hg.dovecot.org/dovecot-2.0-sslstream/rev/12434655f2e5
changeset: 10336:12434655f2e5
user:      Timo Sirainen <tss at iki.fi>
date:      Mon Nov 16 18:37:12 2009 -0500
description:
Added module_get_symbol_quiet().

diffstat:

2 files changed, 11 insertions(+), 7 deletions(-)
src/lib/module-dir.c |   17 ++++++++++-------
src/lib/module-dir.h |    1 +

diffs (57 lines):

diff -r 5ecda3558f2a -r 12434655f2e5 src/lib/module-dir.c
--- a/src/lib/module-dir.c	Mon Nov 16 16:42:47 2009 -0500
+++ b/src/lib/module-dir.c	Mon Nov 16 18:37:12 2009 -0500
@@ -19,16 +19,20 @@
 #  define RTLD_NOW 0
 #endif
 
+void *module_get_symbol_quiet(struct module *module, const char *symbol)
+{
+	/* clear out old errors */
+	(void)dlerror();
+
+	return dlsym(module->handle, symbol);
+}
+
 void *module_get_symbol(struct module *module, const char *symbol)
 {
 	const char *error;
 	void *ret;
 
-	/* clear out old errors */
-	(void)dlerror();
-
-	/* get our init func */
-	ret = dlsym(module->handle, symbol);
+	ret = module_get_symbol_quiet(module, symbol);
 	if (ret == NULL) {
 		error = dlerror();
 		if (error != NULL) {
@@ -37,7 +41,6 @@ void *module_get_symbol(struct module *m
 			ret = NULL;
 		}
 	}
-
 	return ret;
 }
 
@@ -66,7 +69,7 @@ static void *get_symbol(struct module *m
 static void *get_symbol(struct module *module, const char *symbol, bool quiet)
 {
 	if (quiet)
-		return dlsym(module->handle, symbol);
+		return module_get_symbol_quiet(module, symbol);
 
 	return module_get_symbol(module, symbol);
 }
diff -r 5ecda3558f2a -r 12434655f2e5 src/lib/module-dir.h
--- a/src/lib/module-dir.h	Mon Nov 16 16:42:47 2009 -0500
+++ b/src/lib/module-dir.h	Mon Nov 16 18:37:12 2009 -0500
@@ -25,6 +25,7 @@ void module_dir_unload(struct module **m
 void module_dir_unload(struct module **modules);
 
 void *module_get_symbol(struct module *module, const char *symbol);
+void *module_get_symbol_quiet(struct module *module, const char *symbol);
 
 /* Returns module's base name from the filename. */
 const char *module_file_get_name(const char *fname);


More information about the dovecot-cvs mailing list