rse         98/10/23 01:15:01

  Modified:    src      CHANGES
               src/modules/standard mod_auth_db.c
  Log:
  Fix Berkeley-DB/2.x support in mod_auth_db: The data structures were not
  initialized correctly and the db_open() call used an invalid mode
  parameter.
  
  Because compare especially this section from db_dbt(3):
  
  | In  order  to ensure compatibility with future releases of DB, all
  | fields of the DBT structure that are  not  explic- itly  set should be
  | initialized to 0 before the first time the structure is used.  Do this
  | by declaring the structure external  or  static,  or by calling the C
  | library routine bzero(3) or memset(3).
  
  Submitted by: Ron Klatchko <[EMAIL PROTECTED]>
  PR: 3171
  
  Revision  Changes    Path
  1.1119    +4 -0      apache-1.3/src/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v
  retrieving revision 1.1118
  retrieving revision 1.1119
  diff -u -r1.1118 -r1.1119
  --- CHANGES   1998/10/23 08:12:03     1.1118
  +++ CHANGES   1998/10/23 08:14:58     1.1119
  @@ -1,5 +1,9 @@
   Changes with Apache 1.3.4
   
  +  *) Fix Berkeley-DB/2.x support in mod_auth_db: The data structures were not
  +     initialized correctly and the db_open() call used an invalid mode
  +     parameter. [Ron Klatchko <[EMAIL PROTECTED]>] PR#3171
  +
     *) PORT: DSO support for UnixWare 7
        [Ralf S. Engelschall, Ron Record <[EMAIL PROTECTED]>]
   
  
  
  
  1.35      +4 -1      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.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- mod_auth_db.c     1998/10/03 15:11:52     1.34
  +++ mod_auth_db.c     1998/10/23 08:15:01     1.35
  @@ -155,11 +155,14 @@
       DBT d, q;
       char *pw = NULL;
   
  +    memset(&d, 0, sizeof(d));
  +    memset(&q, 0, sizeof(q));
  +
       q.data = user;
       q.size = strlen(q.data);
   
   #ifdef DB2
  -    if (db_open(auth_dbpwfile, DB_HASH, O_RDONLY, 0664, NULL, NULL,  &f) != 
0) {
  +    if (db_open(auth_dbpwfile, DB_HASH, DB_RDONLY, 0664, NULL, NULL, &f) != 
0) {
   #else
       if (!(f = dbopen(auth_dbpwfile, O_RDONLY, 0664, DB_HASH, NULL))) {
   #endif
  
  
  

Reply via email to