[asterisk-commits] russell: branch 1.4 r183241 - in /branches/1.4: ./ include/asterisk/ main/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Thu Mar 19 12:52:56 CDT 2009


Author: russell
Date: Thu Mar 19 12:52:52 2009
New Revision: 183241

URL: http://svn.digium.com/svn-view/asterisk?view=rev&rev=183241
Log:
Remove the use of RTLD_NOLOAD, as it is not behaving like expected.

Modified:
    branches/1.4/configure
    branches/1.4/configure.ac
    branches/1.4/include/asterisk/autoconfig.h.in
    branches/1.4/main/loader.c

Modified: branches/1.4/configure.ac
URL: http://svn.digium.com/svn-view/asterisk/branches/1.4/configure.ac?view=diff&rev=183241&r1=183240&r2=183241
==============================================================================
--- branches/1.4/configure.ac (original)
+++ branches/1.4/configure.ac Thu Mar 19 12:52:52 2009
@@ -429,15 +429,6 @@
 		AC_DEFINE([HAVE_RES_NDESTROY], 1, [Define to 1 if your system has the ndestroy resolver function.]),
 		AC_MSG_RESULT(no)
 	),
-	AC_MSG_RESULT(no)
-)
-
-AC_MSG_CHECKING(for RTLD_NOLOAD)
-AC_LINK_IFELSE(
-	AC_LANG_PROGRAM([#include <dlfcn.h>],
-			[int foo = RTLD_NOLOAD;]),
-	AC_MSG_RESULT(yes)
-	AC_DEFINE([HAVE_RTLD_NOLOAD], 1, [Define to 1 if your system has a dynamic linker that supports RTLD_NOLOAD.]),
 	AC_MSG_RESULT(no)
 )
 

Modified: branches/1.4/include/asterisk/autoconfig.h.in
URL: http://svn.digium.com/svn-view/asterisk/branches/1.4/include/asterisk/autoconfig.h.in?view=diff&rev=183241&r1=183240&r2=183241
==============================================================================
--- branches/1.4/include/asterisk/autoconfig.h.in (original)
+++ branches/1.4/include/asterisk/autoconfig.h.in Thu Mar 19 12:52:52 2009
@@ -333,10 +333,6 @@
 
 /* Define to 1 if you have the `rint' function. */
 #undef HAVE_RINT
-
-/* Define to 1 if your system has a dynamic linker that supports RTLD_NOLOAD.
-   */
-#undef HAVE_RTLD_NOLOAD
 
 /* Define to 1 if your system has /sbin/launchd. */
 #undef HAVE_SBIN_LAUNCHD

Modified: branches/1.4/main/loader.c
URL: http://svn.digium.com/svn-view/asterisk/branches/1.4/main/loader.c?view=diff&rev=183241&r1=183240&r2=183241
==============================================================================
--- branches/1.4/main/loader.c (original)
+++ branches/1.4/main/loader.c Thu Mar 19 12:52:52 2009
@@ -386,18 +386,6 @@
 		return NULL;
 	}
 
-	/* if the system supports RTLD_NOLOAD, we can just 'promote' the flags
-	   on the already-opened library to what we want... if not, we have to
-	   close it and start over
-	*/
-#if defined(HAVE_RTLD_NOLOAD) && !defined(__Darwin__)
-	if (!dlopen(fn, RTLD_NOLOAD | (wants_global ? RTLD_LAZY | RTLD_GLOBAL : RTLD_NOW | RTLD_LOCAL))) {
-		ast_log(LOG_WARNING, "Unable to promote flags on module '%s': %s\n", resource_in, dlerror());
-		while (!dlclose(lib));
-		free(resource_being_loaded);
-		return NULL;
-	}
-#else
 	while (!dlclose(lib));
 	resource_being_loaded = NULL;
 
@@ -417,7 +405,6 @@
 	/* since the module was successfully opened, and it registered itself
 	   the previous time we did that, we're going to assume it worked this
 	   time too :) */
-#endif
 
 	AST_LIST_LAST(&module_list)->lib = lib;
 	resource_being_loaded = NULL;




More information about the asterisk-commits mailing list