There was an error while loading. Please reload this page.
1 parent 4fbddb6 commit d9d5feaCopy full SHA for d9d5fea
1 file changed
mod_wsgi.c
@@ -10756,6 +10756,19 @@ static void wsgi_setup_access(WSGIDaemonProcess *daemon)
10756
ap_log_error(APLOG_MARK, WSGI_LOG_ALERT(errno), wsgi_server,
10757
"mod_wsgi (pid=%d): Unable to change to uid=%ld.",
10758
getpid(), (long)daemon->group->uid);
10759
+
10760
+ /*
10761
+ * On true UNIX systems this should always succeed at
10762
+ * this point. With certain Linux kernel versions though
10763
+ * we can get back EAGAIN where the target user had
10764
+ * reached their process limit. In that case will be left
10765
+ * running as wrong user. Just exit on all failures to be
10766
+ * safe. Don't die immediately to avoid a fork bomb.
10767
+ */
10768
10769
+ sleep(20);
10770
10771
+ exit(-1);
10772
}
10773
10774
/*
0 commit comments