[asterisk-commits] trunk r9844 - /trunk/asterisk.c

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Mon Feb 13 19:41:44 MST 2006


Author: bweschke
Date: Mon Feb 13 20:41:42 2006
New Revision: 9844

URL: http://svn.digium.com/view/asterisk?rev=9844&view=rev
Log:
 Make sure that PR_SET_DUMPABLE is set to make certain that we still dump core if Asterisk has setuid'd to run as non-root


Modified:
    trunk/asterisk.c

Modified: trunk/asterisk.c
URL: http://svn.digium.com/view/asterisk/trunk/asterisk.c?rev=9844&r1=9843&r2=9844&view=diff
==============================================================================
--- trunk/asterisk.c (original)
+++ trunk/asterisk.c Mon Feb 13 20:41:42 2006
@@ -74,6 +74,7 @@
 #include <grp.h>
 #include <pwd.h>
 #include <sys/stat.h>
+#include <sys/prctl.h>
 #include <regex.h>
 
 #if  defined(__FreeBSD__) || defined( __NetBSD__ ) || defined(SOLARIS)
@@ -2191,6 +2192,12 @@
 
 #endif /* __CYGWIN__ */
 
+	if (geteuid() && ast_opt_dump_core) {
+		if (prctl(PR_SET_DUMPABLE, 1, 0, 0, 0) < 0) {
+			ast_log(LOG_WARNING, "Unable to set the process for core dumps after changing to a non-root user. %s\n", strerror(errno));
+		}	
+	}
+
 	term_init();
 	printf(term_end());
 	fflush(stdout);



More information about the asterisk-commits mailing list