tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jess Holle <je...@ptc.com>
Subject Re: cvs commit: jakarta-tomcat-connectors/jk/native2/server/apache2 mod_jk2.c
Date Thu, 01 Apr 2004 15:00:29 GMT
I also tried this and everything worked nicely.

NormW wrote:

>Good morning All.
>Just tried Jean's recent change to mod_jk2.c and _pleased_ to say JkUriSet
>now registers correctly the same as a [uri] section, and can access /admin
>with only a <Location> in the httpd.conf.  I did note there were duplicate
>uri objects created (based on their name) if the same uri spec was in both
>files, but in any case this is a lot closer to theory than in the past.
>Thanks Jean.
>
>Norm
>
>----- Original Message ----- 
>From: <jfclere@apache.org>
>To: <jakarta-tomcat-connectors-cvs@apache.org>
>Sent: Thursday, April 01, 2004 12:22 AM
>Subject: cvs commit: jakarta-tomcat-connectors/jk/native2/server/apache2
>mod_jk2.c
>
>
>  
>
>>jfclere     2004/03/31 06:22:04
>>
>>  Modified:    jk/native2/server/apache2 mod_jk2.c
>>  Log:
>>  Fix handling of id added in jk2_create_dir_config().
>>  I do not see why we need this id... May because jk2_merge_dir_config()
>>  was buggy.
>>  That fixes PR 18472 and 28916.
>>
>>  Revision  Changes    Path
>>  1.82      +33 -16
>>    
>>
>jakarta-tomcat-connectors/jk/native2/server/apache2/mod_jk2.c
>  
>
>>  Index: mod_jk2.c
>>  ===================================================================
>>  RCS file:
>>    
>>
>/home/cvs/jakarta-tomcat-connectors/jk/native2/server/apache2/mod_jk2.c,v
>  
>
>>  retrieving revision 1.81
>>  retrieving revision 1.82
>>  diff -u -r1.81 -r1.82
>>  --- mod_jk2.c 21 Mar 2004 09:44:30 -0000 1.81
>>  +++ mod_jk2.c 31 Mar 2004 14:22:04 -0000 1.82
>>  @@ -221,14 +221,25 @@
>>               strcpy(tmp_full_url, s->server_hostname);
>>               strcat(tmp_full_url, uriEnv->uri);
>>           }
>>  +
>>           uriEnv->mbean->setAttribute(workerEnv->globalEnv,
>>    
>>
>uriEnv->mbean,
>  
>
>>                                       "uri", tmp_full_url);
>>           uriEnv->mbean->setAttribute(workerEnv->globalEnv,
>>    
>>
>uriEnv->mbean,
>  
>
>>                                       "path", cmd->path);
>>  +
>>           uriEnv->name = tmp_virtual;
>>           uriEnv->virtual = tmp_virtual;
>>
>>  +    } else {
>>  +        /*
>>  +         * The jk2_create_dir_config added an id to uri and  path
>>  +         * we have to correct it here.
>>  +         */
>>  +
>>  +        uriEnv->mbean->setAttribute(workerEnv->globalEnv,
>>    
>>
>uriEnv->mbean,
>  
>
>>  +                                    "uri", cmd->path);
>>       }
>>  +
>>       /* now lets actually add the parameter set in the <Location> block
>>    
>>
>*/
>  
>
>>       uriEnv->mbean->setAttribute(workerEnv->globalEnv, uriEnv->mbean,
>>                                   (char *)name, (void *)val);
>>  @@ -293,40 +304,46 @@
>>       jk_uriEnv_t *child = (jk_uriEnv_t *)childv;
>>       jk_uriEnv_t *parent = (jk_uriEnv_t *)parentv;
>>       jk_uriEnv_t *winner = NULL;
>>  -    jk_uriEnv_t *loser = NULL;
>>  +    char *hostchild;
>>  +    char *hostparent;
>>
>>       if (child == NULL || child->uri == NULL || child->workerName ==
>>    
>>
>NULL) {
>  
>
>>           winner = parent;
>>  -        loser = child;
>>       }
>>       else if (parent == NULL || parent->uri == NULL
>>                || parent->workerName == NULL) {
>>           winner = child;
>>  -        loser = parent;
>>           /* interresting bit... so far they are equal ... */
>>       }
>>       else if (strlen(parent->uri) > strlen(child->uri)) {
>>           winner = parent;
>>  -        loser = child;
>>  +    }
>>  +    else if (strlen(parent->uri) == strlen(child->uri)) {
>>  +        /* Try the virtual host to decide */
>>  +        hostchild = child->mbean->getAttribute(workerEnv->globalEnv,
>>    
>>
>child->mbean,"host");
>  
>
>>  +        hostparent = parent->mbean->getAttribute(workerEnv->globalEnv,
>>    
>>
>parent->mbean,"host");
>  
>
>>  +        if (hostchild == NULL)
>>  +            winner = parent;
>>  +        if (hostparent == NULL)
>>  +            winner = child;
>>  +        if (winner == NULL) {
>>  +            if (strlen(hostchild) > strlen(hostparent))
>>  +                winner = child;
>>  +            else
>>  +                winner = parent;
>>  +        }
>>       }
>>       else {
>>           winner = child;
>>  -        loser = parent;
>>       }
>>
>>       /* Do we merge loser into winner - i.e. inherit properties ? */
>>
>>  -    /*if ( winner == child )
>>  -       fprintf(stderr, "Going with the child\n");
>>  -       else if ( winner == parent )
>>  -       fprintf(stderr, "Going with the parent\n");
>>  -       else
>>  -       fprintf(stderr, "Going with NULL\n");
>>  -     */
>>  -    fprintf(stderr, "Merging %s %s %s\n",
>>  -            (winner == NULL || winner->uri == NULL) ? "" : winner->uri,
>>  +    ap_log_perror(APLOG_MARK, APLOG_DEBUG, 0, NULL,
>>  +                  "mod_jk2 Merging %s %s winner: %s\n",
>>               (child == NULL || child->uri == NULL) ? "" : child->uri,
>>  -            (parent == NULL || parent->uri == NULL) ? "" :
>>    
>>
>parent->uri);
>  
>
>>  +            (parent == NULL || parent->uri == NULL) ? "" : parent->uri,
>>  +            (winner == child) ? "parent" : "child" );
>>
>>
>>       return (void *)winner;
>>
>>
>>
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
>>For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org
>>
>>
>>    
>>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org
>
>
>  
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message