httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From r..@hyperreal.org
Subject cvs commit: apache-1.3/src/modules/standard mod_auth_db.module mod_auth_db.c
Date Sat, 19 Sep 1998 12:12:37 GMT
rse         98/09/19 05:12:36

  Modified:    src      CHANGES
               src/modules/standard mod_auth_db.module mod_auth_db.c
  Log:
  Add support for Berkeley-DB/2.x (in addition to Berkeley-DB/1.x) to
  mod_auth_db to both be friendly to users who wants to use this version
  and to avoid problems under platforms where only version 2.x is present.
  
  Submitted by: Dan Jacobowitz <drow@false.org>
  Enhanced by: Ralf S. Engelschall
  
  Revision  Changes    Path
  1.1069    +5 -0      apache-1.3/src/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v
  retrieving revision 1.1068
  retrieving revision 1.1069
  diff -u -r1.1068 -r1.1069
  --- CHANGES	1998/09/18 04:29:06	1.1068
  +++ CHANGES	1998/09/19 12:12:34	1.1069
  @@ -1,5 +1,10 @@
   Changes with Apache 1.3.2
   
  +  *) Add support for Berkeley-DB/2.x (in addition to Berkeley-DB/1.x) to
  +     mod_auth_db to both be friendly to users who wants to use this version
  +     and to avoid problems under platforms where only version 2.x is present.
  +     [Dan Jacobowitz <drow@false.org>, Ralf S. Engelschall]
  +
     *) When using ap_log_rerror(), make the error message available to the
        *ERROR_NOTES envariables by default.  [Ken Coar]
   
  
  
  
  1.6       +31 -15    apache-1.3/src/modules/standard/mod_auth_db.module
  
  Index: mod_auth_db.module
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_auth_db.module,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- mod_auth_db.module	1998/03/05 12:42:32	1.5
  +++ mod_auth_db.module	1998/09/19 12:12:35	1.6
  @@ -1,20 +1,36 @@
   Name: db_auth_module
   ConfigStart
  -    if ./helpers/TestCompile func dbopen; then
  -        :
  +    DB_VERSION=''
  +    DB_LIB=''
  +    if ./helpers/TestCompile func db_open; then
  +        DB_VERSION='Berkeley-DB/2.x'
       else
  -	case "$PLAT" in
  -	    *-linux*)
  -		# many systems have -ldb installed
  -		DB_LIB=""
  -		if ./helpers/TestCompile lib db dbopen; then
  -		    DB_LIB="-ldb"
  -		fi
  -		;;
  -	esac
  -	LIBS="$LIBS $DB_LIB"
  -	if [ "X$DB_LIB" != "X" ]; then
  -	    echo " + using $DB_LIB for mod_auth_db"
  -	fi
  +        if ./helpers/TestCompile lib db db_open; then
  +            DB_VERSION='Berkeley-DB/2.x'
  +            DB_LIB='-ldb'
  +        else
  +            if ./helpers/TestCompile func dbopen; then
  +                DB_VERSION='Berkeley-DB/1.x'
  +            else
  +                if ./helpers/TestCompile lib db dbopen; then
  +                    DB_VERSION='Berkeley-DB/1.x'
  +                    DB_LIB='-ldb'
  +                fi
  +            fi 
  +        fi
  +    fi
  +    if [ ".$DB_VERSION" != . ]; then
  +        if [ ".$DB_LIB" != . ]; then
  +            LIBS="$LIBS $DB_LIB"
  +            echo "      using $DB_VERSION for mod_auth_db ($DB_LIB)"
  +        else
  +            echo "      using $DB_VERSION for mod_auth_db (-lc)"
  +        fi
  +    else
  +        echo "Error: Neither Berkeley-DB/1.x nor Berkeley-DB/2.x library found."
  +        echo "       Either disable mod_auth_db or provide us with the paths"
  +        echo "       to the Berkeley-DB include and library files."
  +        echo "       (Hint: INCLUDES, LDFLAGS, LIBS)"
  +        exit 1
       fi
   ConfigEnd
  
  
  
  1.33      +16 -0     apache-1.3/src/modules/standard/mod_auth_db.c
  
  Index: mod_auth_db.c
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_auth_db.c,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- mod_auth_db.c	1998/08/06 17:30:55	1.32
  +++ mod_auth_db.c	1998/09/19 12:12:36	1.33
  @@ -97,6 +97,10 @@
   #include "http_protocol.h"
   #include <db.h>
   
  +#if defined(DB_VERSION_MAJOR) && (DB_VERSION_MAJOR == 2)
  +#define DB2
  +#endif
  +
   typedef struct {
   
       char *auth_dbpwfile;
  @@ -154,19 +158,31 @@
       q.data = user;
       q.size = strlen(q.data);
   
  +#ifdef DB2
  +    if (db_open(auth_dbpwfile, DB_HASH, O_RDONLY, 0664, NULL, NULL,  &f) != 0) {
  +#else
       if (!(f = dbopen(auth_dbpwfile, O_RDONLY, 0664, DB_HASH, NULL))) {
  +#endif
   	ap_log_rerror(APLOG_MARK, APLOG_ERR, r,
   		    "could not open db auth file: %s", auth_dbpwfile);
   	return NULL;
       }
   
  +#ifdef DB2
  +    if (!((f->get) (f, NULL, &q, &d, 0))) {
  +#else
       if (!((f->get) (f, &q, &d, 0))) {
  +#endif
   	pw = ap_palloc(r->pool, d.size + 1);
   	strncpy(pw, d.data, d.size);
   	pw[d.size] = '\0';	/* Terminate the string */
       }
   
  +#ifdef DB2
  +    (f->close) (f, 0);
  +#else
       (f->close) (f);
  +#endif
       return pw;
   }
   
  
  
  

Mime
View raw message