Hi again,
I've tracked the problem down to this piece of code which was added in the
dc2/dc3 patch:
+ int proc_temp = 0;
+ for(; current != NULL; current = current->next) {
+ directive = current->directive;
+
+ if (!strcasecmp(directive, "user")) {
+ user_name = current->args;
+ }
+ else if (!strcasecmp(directive, "group")) {
+ group_name = current->args;
+ }
+ else if (!strcasecmp(directive, "chroot")) {
+ senv.chroot = ap_getword_conf(cmd->pool, ¤t->args);
+ }
+ else if (!strcasecmp(directive, "nicelevel")) {
+ senv.nice_lvl = atoi(current->args);
+ }
+ else if (!strcasecmp(directive, "maxprocessors")) {
+ proc_temp = atoi(current->args);
It would appear the chroot isn't being correctly grabbed :o I've tried to
fix this myself
but just hitting a brick wall - and my brain is cabbaged. So i'll look at
it another time.
<3
Original Message:
-----------------
From: [email protected] [email protected]
Date: Thu, 13 Aug 2009 20:59:22 -0400
To: [email protected]
Subject: [peruser] Problem with mpm-peruser conf.d reading
Hi guys,
After 2 HOURS of debugging, it would appear I have finally traced down a
problem. Whenever
you put your configuration in a conf.d file, mpm-peruser seems to have a
really bad bitch
fit about it. It ends up reading in random lines from other conf.d files,
such as
ports.conf :O I get stuff like:
[Fri Aug 14 01:01:30 2009] [alert] (2)No such file or directory: chdir:
unable to change
to directory: Listen
[Fri Aug 14 01:27:38 2009] [alert] (2)No such file or directory: chdir:
unable to change
to directory: Listen
[Fri Aug 14 01:28:23 2009] [alert] (2)No such file or directory: chdir:
unable to change
to directory: Listen
[Fri Aug 14 01:37:28 2009] [warn] (peruser: pid=3192 uid=0 child=1)
peruser_setup_child():
chdir to Listen
[Fri Aug 14 01:37:28 2009] [alert] (2)No such file or directory: chdir:
unable to change
to directory: Listen
:O
So, I moved the config from conf.d/peruser into apache2.conf, and it works
absolutely
perfectly.. Now, considering the conf.d files are only includes for apache,
I would guess
that this is something to do with the way mpm-peruser grabs its config
settings.
What ends up happening, is that it doesn't read its config properly, and as
such:
static const char *cf_Multiplexer(cmd_parms *cmd, void *dummy,
const char *user_name, const char *group_name, const char *chroot)
{
senv.chroot = chroot
That doesn't get set properly, thus the whole thing just screws up. Also -
if one
environment has a problem, or if its child dies unexpectedly, then so do
all the others.
Also - if you misconfigure the thing, it just seg faults lol.
I'm planning on fixing a whole bunch of these problems, or at least make it
not seg fault
and give usable error messages lol, then submit as a patch and pray/hope
the maintainer
merges them into the trunk :)
Hopefully this will be helpful to anyone who has had similar issues!
Regards
Cal Leeming
aka foxx
--------------------------------------------------------------------
myhosting.com - Premium Microsoft® Windows® and Linux web and application
hosting - http://link.myhosting.com/myhosting
_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser
--------------------------------------------------------------------
myhosting.com - Premium Microsoft® Windows® and Linux web and application
hosting - http://link.myhosting.com/myhosting
--------------------------------------------------------------------
mail2web.com Enhanced email for the mobile individual based on Microsoft®
Exchange - http://link.mail2web.com/Personal/EnhancedEmail
_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser