>Number: 622 >Category: mod_auth-any >Synopsis: gdbm user authentifcation not functioning >Confidential: no >Severity: serious >Priority: medium >Responsible: apache (Apache HTTP Project) >State: open >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Mon May 26 07:00:01 1997 >Originator: [EMAIL PROTECTED] >Organization: apache >Release: 1.1.1 -> 1.2b10 >Environment: Linux 2.0.24 using gcc and gdbm 1.7.3 Perl 5.003 and PHP/FI 2.0b11 >Description: After loading up a blank machine to repeat this problem, here is what happens :
I need to get Apache, Perl and PHP/FI running with gdbm to do user authentification. I am now in a position where the Apache perl script dbmmanage uses the GDBM library loaded in Perl. I can also read this file using a .phtml script, again 'gdbm' The problem is that I can not get Apache to read this db file. It reports in the error log :- access to /usr/local/etc/apache/htdocs/dbm/htpasswd failed for tg8-28.netculture.net, reason: could not open dbm auth file This is with the -l gdbm put in the Configuration file. I had to delete the option for -ldb as this is not supplied running in our configuration. The default library in mod_auth_dbm.c is : #include <ndbm.h> According to the gdbm source, a sample library is installed to be compatible with 'ndbm.h' Unfortunately not being an expert in this field I can not see if this is a problem with gdbm or Apache. The Apache documentation does however recommend getting 'gdbm' for this type of work. I have also tried on numerous occasions for light on this on UseNet without success. >How-To-Repeat: Install gdbm 1.7.3 and compile Perl with this library available. Modify the Apache 'dbmmanage' script to add the following line at the start of the file :- use GDBM_File; Run 'dbmmanage' to create the dbm file. Try to use AuthDBMAuthoritative off AuthDBMUserFile /usr/local/etc/apache/htdocs/dbm/htpasswd I have also tried with AuthDBMAuthoritative on and still the same results. >Fix: Sorry, I wish I could >Audit-Trail: >Unformatted:
