file:   mod_auth_any.c
author: Nafees Bin Zafar <binzafar@musc.edu>
maintainer: Satyajit P. Phanse musc.edu!phanse
date:   7/12/00


This used to be mod_auth.c in the Apache source tree.

I warped it do validation by passing in the username and password into a
popen()'d external program.

Patch by robert (gorlitsk@musc.edu) to properly quote the password for the
bash shell.

7/2002 - Robert Gorlitsky (gorlitsk@musc.edu) Added proper escaping and
quoting of the password

5/2003 - Applied patch from RedHat.  Fixes major security issue.
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=77414

6/2003 - strnlen doesn't work on osx, added strnlen custom function (from
        Nafees/Matthew) to fix. --Satya

6/2003 - Nafees awakens!  Changed the OSX define to __APPLE__ which the
compiler on OS X defines.

Added a BUFLEN define.  All the 257)+1 business was just asking for bugs.

Didn't understand what all the +1 junk was for.  So chunked it.  Feel free to
add it back if there's a good reason.  And if there is, please add
documentation this time. (satya notes: we thought we needed it for terminating
nulls, but we probably don't. If anyone sees a problem with extra-long
parameters, check this first.)

Added a while loop to eat up the pipe read buffer before closing it.

Renamed argv to cl_args

Reindented the source file emacs style

satya: removed the ifdef, we'll override GNU's strnlen() on glibc systems, just
because.

11/2003/05: satya: now checks for "Success\n" being returned, and then checks
for other stuff

7/2004/03: satya: merged in (ifdef WITH_APACHE2) apache 2 stuff sent by Nicolas
Barry. Not tested. Compile with apxs -i -DWITH_APACHE2 for apache2, and just
apxs -i for apache1.

20041015: satya: source dist cleanup: added Makefile targets src src1 dist,
moved FAQ and this CHANGELOG to docs/ dir. This will be 1.5.

