httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexei Kosut <ako...@hyperreal.com>
Subject cvs commit: apache/src CHANGES http_main.c mod_alias.c mod_auth_anon.c mod_auth_msql.c mod_negotiation.c
Date Mon, 08 Jul 1996 18:59:11 GMT
akosut      96/07/08 11:59:09

  Modified:    src       CHANGES http_main.c mod_alias.c mod_auth_anon.c 
                        mod_auth_msql.c mod_negotiation.c
  Log:
  Update to 1.1.1:
  
  Fix bug with Redirect
  Fix MultiViews/handler interaction
  Update mod_auth_msql
  Fix mispelling in mod_auth_anon
  
  Revision  Changes    Path
  1.40      +13 -0     apache/src/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -C3 -r1.39 -r1.40
  *** CHANGES	1996/07/01 20:08:38	1.39
  --- CHANGES	1996/07/08 18:58:56	1.40
  ***************
  *** 1,3 ****
  --- 1,16 ----
  + Changes with Apache 1.1.1:
  + 
  +   *) Fixed bug where Redirect in .htaccess files would cause memory
  +      leak. [Nathan Neulinger]
  + 
  +   *) MultiViews now works correctly with AddHandler [Alexei Kosut]
  + 
  +   *) Problems with mod_auth_msql fixed [Dirk vanGulik]
  + 
  +   *) Fix mispelling of "Anonymous_Authorative" directive in mod_auth_anon.
  + 
  + Changes with Apache 1.1.0:
  + 
      *) Bring NeXT support up to date. [Takaaki Matsumoto]
    
      *) Bring QNX support up to date. [Ben Laurie]
  
  
  
  1.43      +10 -0     apache/src/http_main.c
  
  Index: http_main.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/http_main.c,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -C3 -r1.42 -r1.43
  *** http_main.c	1996/06/26 22:52:10	1.42
  --- http_main.c	1996/07/08 18:58:57	1.43
  ***************
  *** 606,612 ****
  --- 606,617 ----
    
        have_scoreboard_fname = 1;
        
  + #ifdef __EMX__
  +     /* OS/2 needs binary mode set. */
  +     scoreboard_fd = popenf(p, scoreboard_fname, O_CREAT|O_BINARY|O_RDWR, 0644);
  + #else
        scoreboard_fd = popenf(p, scoreboard_fname, O_CREAT|O_RDWR, 0644);
  + #endif
        if (scoreboard_fd == -1)
        {
    	fprintf (stderr, "Cannot open scoreboard file:\n");
  ***************
  *** 626,632 ****
  --- 631,642 ----
    #if !defined(HAVE_MMAP) && !defined(HAVE_SHMGET)
        if (scoreboard_fd != -1) pclosef (p, scoreboard_fd);
        
  + #ifdef __EMX__    
  +     /* OS/2 needs binary mode set. */
  +     scoreboard_fd = popenf(p, scoreboard_fname, O_CREAT|O_BINARY|O_RDWR, 0666);
  + #else
        scoreboard_fd = popenf(p, scoreboard_fname, O_CREAT|O_RDWR, 0666);
  + #endif
        if (scoreboard_fd == -1)
        {
    	fprintf (stderr, "Cannot open scoreboard file:\n");
  
  
  
  1.5       +39 -13    apache/src/mod_alias.c
  
  Index: mod_alias.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/mod_alias.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -C3 -r1.4 -r1.5
  *** mod_alias.c	1996/03/31 01:07:00	1.4
  --- mod_alias.c	1996/07/08 18:58:58	1.5
  ***************
  *** 74,79 ****
  --- 74,82 ----
        array_header *redirects;
    } alias_server_conf;
    
  + typedef struct {
  +     array_header *redirects;
  + } alias_dir_conf;
    module alias_module;
    
    void *create_alias_config (pool *p, server_rec *s)
  ***************
  *** 86,91 ****
  --- 89,101 ----
        return a;
    }
    
  + void *create_alias_dir_config (pool *p, char *d)
  + {
  +     alias_dir_conf *a =
  +       (alias_dir_conf *)pcalloc (p, sizeof(alias_dir_conf));
  +     a->redirects = make_array (p, 2, sizeof(alias_entry));
  +     return a;
  + }
    void *merge_alias_config (pool *p, void *basev, void *overridesv)
    {
        alias_server_conf *a =
  ***************
  *** 98,103 ****
  --- 108,122 ----
        return a;
    }
    
  + void *merge_alias_dir_config (pool *p, void *basev, void *overridesv)
  + {
  +     alias_dir_conf *a =
  +       (alias_dir_conf *)pcalloc (p, sizeof(alias_dir_conf));
  +     alias_dir_conf *base = (alias_dir_conf *)basev,
  +       *overrides = (alias_dir_conf *)overridesv;
  +     a->redirects = append_arrays (p, overrides->redirects, base->redirects);
  +     return a;
  + }
    char *add_alias(cmd_parms *cmd, void *dummy, char *f, char *r)
    {
        server_rec *s = cmd->server;
  ***************
  *** 111,125 ****
        return NULL;
    }
    
  ! char *add_redirect(cmd_parms *cmd, void *dummy, char *f, char *url)
    {
        server_rec *s = cmd->server;
  !     alias_server_conf *conf =
            (alias_server_conf *)get_module_config(s->module_config,&alias_module);
  -     alias_entry *new = push_array (conf->redirects);
    
        if (!is_url (url)) return "Redirect to non-URL";
  !     
        new->fake = f; new->real = url;
        return NULL;
    }
  --- 130,151 ----
        return NULL;
    }
    
  ! char *add_redirect(cmd_parms *cmd, alias_dir_conf *dirconf, char *f, char *url)
    {
  +     alias_entry *new;
        server_rec *s = cmd->server;
  !     alias_server_conf *serverconf =
            (alias_server_conf *)get_module_config(s->module_config,&alias_module);
    
        if (!is_url (url)) return "Redirect to non-URL";
  !     if ( cmd->path )
  !     {
  !         new = push_array (dirconf->redirects);
  !     }
  !     else
  !     {
  !         new = push_array (serverconf->redirects);
  !     }
        new->fake = f; new->real = url;
        return NULL;
    }
  ***************
  *** 198,204 ****
    int translate_alias_redir(request_rec *r)
    {
        void *sconf = r->server->module_config;
  !     alias_server_conf *conf =
            (alias_server_conf *)get_module_config(sconf, &alias_module);
        char *ret;
    
  --- 224,230 ----
    int translate_alias_redir(request_rec *r)
    {
        void *sconf = r->server->module_config;
  !     alias_server_conf *serverconf =
            (alias_server_conf *)get_module_config(sconf, &alias_module);
        char *ret;
    
  ***************
  *** 210,221 ****
    #endif    
            return BAD_REQUEST;
    
  !     if ((ret = try_alias_list (r, conf->redirects, 1)) != NULL) {
            table_set (r->headers_out, "Location", ret);
            return REDIRECT;
        }
        
  !     if ((ret = try_alias_list (r, conf->aliases, 0)) != NULL) {
            r->filename = ret;
            return OK;
        }
  --- 236,247 ----
    #endif    
            return BAD_REQUEST;
    
  !     if ((ret = try_alias_list (r, serverconf->redirects, 1)) != NULL) {
            table_set (r->headers_out, "Location", ret);
            return REDIRECT;
        }
        
  !     if ((ret = try_alias_list (r, serverconf->aliases, 0)) != NULL) {
            r->filename = ret;
            return OK;
        }
  ***************
  *** 225,238 ****
    
    int fixup_redir(request_rec *r)
    {
  !     void *sconf = r->server->module_config;
  !     alias_server_conf *conf =
  !         (alias_server_conf *)get_module_config(sconf, &alias_module);
        char *ret;
    
        /* It may have changed since last time, so try again */
    
  !     if ((ret = try_alias_list (r, conf->redirects, 1)) != NULL) {
            table_set (r->headers_out, "Location", ret);
            return REDIRECT;
        }
  --- 251,264 ----
    
    int fixup_redir(request_rec *r)
    {
  !     void *dconf = r->per_dir_config;
  !     alias_dir_conf *dirconf =
  !         (alias_dir_conf *)get_module_config(dconf, &alias_module);
        char *ret;
    
        /* It may have changed since last time, so try again */
    
  !     if ((ret = try_alias_list (r, dirconf->redirects, 1)) != NULL) {
            table_set (r->headers_out, "Location", ret);
            return REDIRECT;
        }
  ***************
  *** 243,250 ****
    module alias_module = {
       STANDARD_MODULE_STUFF,
       NULL,			/* initializer */
  !    NULL,			/* dir config creater */
  !    NULL,			/* dir merger --- default is to override */
       create_alias_config,		/* server config */
       merge_alias_config,		/* merge server configs */
       alias_cmds,			/* command table */
  --- 269,276 ----
    module alias_module = {
       STANDARD_MODULE_STUFF,
       NULL,			/* initializer */
  !    create_alias_dir_config,	/* dir config creater */
  !    merge_alias_dir_config,	/* dir merger --- default is to override */
       create_alias_config,		/* server config */
       merge_alias_config,		/* merge server configs */
       alias_cmds,			/* command table */
  
  
  
  1.6       +1 -1      apache/src/mod_auth_anon.c
  
  Index: mod_auth_anon.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/mod_auth_anon.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -C3 -r1.5 -r1.6
  *** mod_auth_anon.c	1996/05/29 03:19:17	1.5
  --- mod_auth_anon.c	1996/07/08 18:58:59	1.6
  ***************
  *** 75,81 ****
     * Anonymous_LogEmail		[ on | off ] default = on
     * Anonymous_VerifyEmail	[ on | off ] default = off
     * Anonymous_NoUserId		[ on | off ] default = off
  !  * Anonymous_Authorative        [ on | off ] default = off
     *
     * The magic user id is something like 'anonymous', it is NOT case sensitive. 
     * 
  --- 75,81 ----
     * Anonymous_LogEmail		[ on | off ] default = on
     * Anonymous_VerifyEmail	[ on | off ] default = off
     * Anonymous_NoUserId		[ on | off ] default = off
  !  * Anonymous_Authoritative      [ on | off ] default = off
     *
     * The magic user id is something like 'anonymous', it is NOT case sensitive. 
     * 
  
  
  
  1.11      +25 -17    apache/src/mod_auth_msql.c
  
  Index: mod_auth_msql.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/mod_auth_msql.c,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -C3 -r1.10 -r1.11
  *** mod_auth_msql.c	1996/07/01 19:04:08	1.10
  --- mod_auth_msql.c	1996/07/08 18:59:00	1.11
  ***************
  *** 284,289 ****
  --- 284,295 ----
     *		Replaced some MAX_STRING_LENGTH claims. 
     *	   1.0  removed some error check as they where already done elsehwere
     *	        NumFields -> NumRows (Thanks Vitek). More stack memory.
  +  *	   1.1	no logging of empty password strings.
  +  * 	   1.2  Problem with the Backward vitek which cause it to check
  +  *		even if msql_auth was not configured; Also more carefull
  +  *		with the authorative stuff; caught by thomas@marvin.calvacom.fr.
  +  *	   1.3  Even more changes to get it right; that BACKWARD thing was a bad
  +  *		idea. 
     */
    
    
  ***************
  *** 778,788 ****
         * We do not check on dbase, group, userid or host name, as it is
         * perfectly possible to only do group control with mSQL and leave
         * user control to the next (dbm) guy in line.
         */
  !     if (
  !     	(!sec->auth_msql_pwd_table) &&
  !     	(!sec->auth_msql_pwd_field)
  ! 	 ) return DECLINED;
    
        if(!(real_pw = get_msql_pw(r, c->user, sec,msql_errstr ))) {
    	if ( msql_errstr[0] ) {
  --- 784,793 ----
         * We do not check on dbase, group, userid or host name, as it is
         * perfectly possible to only do group control with mSQL and leave
         * user control to the next (dbm) guy in line.
  +      * We no longer check on the user field name; to avoid problems
  +      * with Backward VITEK.
         */
  !     if (!sec->auth_msql_pwd_table) return DECLINED;
    
        if(!(real_pw = get_msql_pw(r, c->user, sec,msql_errstr ))) {
    	if ( msql_errstr[0] ) {
  ***************
  *** 809,816 ****
  --- 814,823 ----
         */
    
        if ((sec->auth_msql_nopasswd) && (!strlen(real_pw))) {
  + /*
            sprintf(msql_errstr,"mSQL: user %s: Empty/'any' password accepted",c->user);
    	log_reason (msql_errstr, r->uri, r);
  +  */
    	return OK;
    	};
    
  ***************
  *** 862,867 ****
  --- 869,877 ----
        char *t, *w;
        msql_errstr[0]='\0';
    
  +     /* If we are not configured, ignore */
  +     if (!sec->auth_msql_pwd_table) return DECLINED;
  + 
        if (!reqs_arr) {
    	if (sec->auth_msql_authorative) {
    	        sprintf(msql_errstr,"user %s denied, no access rules specified (MSQL-Authorative)
",user);
  ***************
  *** 929,953 ****
    	    };
            }
    
  !     /* we do not have to check the valid-ness of the group result as
  !      * have not (yet) a 'valid-group' token
         */
  !     if ( (user_result != OK) && (sec->auth_msql_authorative) ) {
  !         sprintf(msql_errstr,"User %s denied, no access rules applied (MSQL-Authorative)
",user);
    	log_reason (msql_errstr, r->uri, r);
  -         note_basic_auth_failure(r);
    	return AUTH_REQUIRED;
    	};
    
    
  !     /* if the user is DECLINED, it is up to the group_result to tip
  !      * the balance. But if the group result is AUTH_REQUIRED it should
  !      * always override. A SERVER_ERROR should not get here. 
  !      */
  !     if ( (user_result == DECLINED) || (group_result == AUTH_REQUIRED))
  ! 	return group_result;
  ! 
  !     return user_result;
    }
    
    
  --- 939,961 ----
    	    };
            }
    
  !     /* Get serious if we are authorative, previous
  !      * returns are only if msql yielded a correct result. 
  !      * This really is not needed.
         */
  !     if (((group_result == AUTH_REQUIRED) || (user_result == AUTH_REQUIRED)) &&
(sec->auth_msql_authorative) ) {
  !         sprintf(msql_errstr,"mSQL-Authorative: Access denied on %s %s rule(s) ", 
  ! 		(group_result == AUTH_REQUIRED) ? "USER" : "", 
  ! 		(user_result == AUTH_REQUIRED) ? "GROUP" : ""
  ! 		);
    	log_reason (msql_errstr, r->uri, r);
    	return AUTH_REQUIRED;
    	};
    
  +     if ( (user_result == OK) || (group_result == OK))
  + 	return OK;
    
  !     return DECLINED;
    }
    
    
  
  
  
  1.9       +1 -0      apache/src/mod_negotiation.c
  
  Index: mod_negotiation.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/mod_negotiation.c,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -C3 -r1.8 -r1.9
  *** mod_negotiation.c	1996/06/09 01:12:21	1.8
  --- mod_negotiation.c	1996/07/08 18:59:02	1.9
  ***************
  *** 1089,1094 ****
  --- 1089,1095 ----
        
        if (!do_cache_negotiated_docs(r->server)) r->no_cache = 1;
        r->filename = sub_req->filename;
  +     r->handler = sub_req->handler;
        r->content_type = sub_req->content_type;
        r->content_encoding = sub_req->content_encoding;
        r->content_language = sub_req->content_language;
  
  
  

Mime
View raw message