[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: apache and suexec breaks my cgi script



On Sat, Jun 08, 2002 at 01:03:19AM -0700, Vineet Kumar wrote:
| * Derrick 'dman' Hudson (dman@dman.ddts.net) [020607 22:10]:
| > [2002-06-07 23:55:40]: emerg: cannot get docroot information
| > (/home/dman)
| 
| > drwx--x--x   92 dman     dman         4096 Jun  8 00:13 /home/dman
| 
| These 2 lines seem to make me think the problem is somehow related to
| not having +r on /home/dman. Does changing that permission alleviate the
| problem?

No, I've tried making it group and world readable, but I get the same
error messages.
 
| IIRC, it does something like traverse back up the directory tree to see
| if the request is within a ~userdir, to see if it matches a Directory
| directive, I think. Just a shot in the dark. A look at the source would
| reveal exactly what the problem is (or at least where that error message
| comes from).

Here's the relevant source from suexec.c :
    if (userdir) {
        if (((chdir(target_homedir)) != 0) ||
            ((chdir(USERDIR_SUFFIX)) != 0) ||
            ((getcwd(dwd, AP_MAXPATH)) == NULL) ||
            ((chdir(cwd)) != 0)) {
            log_err("emerg: cannot get docroot information (%s)\n",
                    target_homedir);
            exit(112);
        }
    }
    else {
        if (((chdir(DOC_ROOT)) != 0) ||
            ((getcwd(dwd, AP_MAXPATH)) == NULL) ||
            ((chdir(cwd)) != 0)) {
            log_err("emerg: cannot get docroot information (%s)\n", DOC_ROOT);
            exit(113);
        }
    }

(nice that both branches give the exact same error message =p)

I tried adding some more logging into the source and rebuilt it, but
apache won't enable suexec with that new binary.  If it would, then I
could figure out which check is failling.

TIA,
-D

-- 

Q: What is the difference betwee open-source and commercial software?
A: If you have a problem with commercial software you can call a phone
   number and they will tell you it might be solved in a future version.
   For open-source sofware there isn't a phone number to call, but you
   get the solution within a day.
 
GnuPG key : http://dman.ddts.net/~dman/public_key.gpg

Attachment: pgptsUbjebMZp.pgp
Description: PGP signature


Reply to: