brian       98/05/04 21:48:06

  Modified:    src/modules/standard mod_log_config.c mod_rewrite.c
                        mod_status.c
               src/main http_core.c
  Log:
  Hi,
  
  the patch makes mod_rewrite, mod_log_config, mod_status and
  the ServerSignature feature compatible with 'UseCanonicalName off'
  by changing  r->server->server_hostname to ap_get_server_name().
  
  And I changed some functions which use r->server->port to
  use ap_get_server_port() instead, because if there's no Port directive
  in the config r->server->port is 0.
  
  ciao...
  --
  Lars Eilebrecht                        - Reality has always been to small
  [EMAIL PROTECTED]                             - for human imagination.
  http://www.home.unix-ag.org/sfx/
  
  Revision  Changes    Path
  1.56      +2 -2      apache-1.3/src/modules/standard/mod_log_config.c
  
  Index: mod_log_config.c
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_log_config.c,v
  retrieving revision 1.55
  retrieving revision 1.56
  diff -u -r1.55 -r1.56
  --- mod_log_config.c  1998/04/29 23:46:03     1.55
  +++ mod_log_config.c  1998/05/05 04:47:58     1.56
  @@ -404,12 +404,12 @@
    */
   static char *log_virtual_host(request_rec *r, char *a)
   {
  -    return ap_pstrdup(r->pool, r->server->server_hostname);
  +    return ap_pstrdup(r->pool, ap_get_server_name(r));
   }
   
   static char *log_server_port(request_rec *r, char *a)
   {
  -    return ap_psprintf(r->pool, "%u", r->server->port);
  +    return ap_psprintf(r->pool, "%u", ap_get_server_port(r));
   }
   
   static char *log_child_pid(request_rec *r, char *a)
  
  
  
  1.102     +12 -9     apache-1.3/src/modules/standard/mod_rewrite.c
  
  Index: mod_rewrite.c
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_rewrite.c,v
  retrieving revision 1.101
  retrieving revision 1.102
  diff -u -r1.101 -r1.102
  --- mod_rewrite.c     1998/04/11 12:00:50     1.101
  +++ mod_rewrite.c     1998/05/05 04:47:59     1.102
  @@ -998,11 +998,12 @@
        */
   
       /* add the canonical URI of this URL */
  -    thisserver = r->server->server_hostname;
  -    if (is_default_port(r->server->port, r))
  +    thisserver = (char *) ap_get_server_name(r);
  +    thisport = (char *) ap_get_server_port(r);
  +    if (is_default_port((int) thisport, r))
           thisport = "";
       else {
  -        ap_snprintf(buf, sizeof(buf), ":%u", r->server->port);
  +        ap_snprintf(buf, sizeof(buf), ":%u", thisport);
           thisport = buf;
       }
       thisurl = ap_table_get(r->subprocess_env, ENVVAR_SCRIPT_URL);
  @@ -2249,25 +2250,27 @@
   {
       int i;
       char port[32];
  +    char *thisport;
   
       i = strlen(r->filename);
       if (!(   (i > 7 && strncasecmp(r->filename, "http://";, 7)   == 0)
             || (i > 8 && strncasecmp(r->filename, "https://";, 8)  == 0)
             || (i > 9 && strncasecmp(r->filename, "gopher://";, 9) == 0)
             || (i > 6 && strncasecmp(r->filename, "ftp://";, 6)    == 0))) {
  -
  -        if (is_default_port(r->server->port,r))
  +          
  +        thisport = (char *) ap_get_server_port(r);
  +        if (is_default_port((int) thisport,r))
               port[0] = '\0';
           else
  -            ap_snprintf(port, sizeof(port), ":%u", r->server->port);
  +            ap_snprintf(port, sizeof(port), ":%u", thisport);
   
           if (r->filename[0] == '/')
               r->filename = ap_psprintf(r->pool, "%s://%s%s%s",
  -                        http_method(r), r->server->server_hostname,
  +                        http_method(r), ap_get_server_name(r),
                           port, r->filename);
           else
               r->filename = ap_psprintf(r->pool, "%s://%s%s/%s",
  -                        http_method(r), r->server->server_hostname,
  +                        http_method(r), ap_get_server_name(r),
                           port, r->filename);
       }
       return;
  @@ -2960,7 +2963,7 @@
   
       ap_snprintf(str3, sizeof(str3),
                   "%s %s [%s/sid#%lx][rid#%lx/%s%s] (%d) %s\n", str1,
  -                current_logtime(r), r->server->server_hostname,
  +                current_logtime(r), ap_get_server_name(r),
                   (unsigned long)(r->server), (unsigned long)r,
                   type, redir, level, str2);
   
  
  
  
  1.86      +1 -2      apache-1.3/src/modules/standard/mod_status.c
  
  Index: mod_status.c
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_status.c,v
  retrieving revision 1.85
  retrieving revision 1.86
  diff -u -r1.85 -r1.86
  --- mod_status.c      1998/04/11 12:00:51     1.85
  +++ mod_status.c      1998/05/05 04:47:59     1.86
  @@ -234,7 +234,6 @@
   #endif /* STATUS */
       int short_report = 0;
       int no_table_report = 0;
  -    server_rec *server = r->server;
       short_score score_record;
       parent_score ps_record;
       char stat_buffer[HARD_SERVER_LIMIT];
  @@ -324,7 +323,7 @@
       if (!short_report) {
        ap_rputs("<HTML><HEAD>\n<TITLE>Apache Status</TITLE>\n</HEAD><BODY>\n", 
r);
        ap_rputs("<H1>Apache Server Status for ", r);
  -     ap_rvputs(r, server->server_hostname, "</H1>\n\n", NULL);
  +     ap_rvputs(r, ap_get_server_name(r), "</H1>\n\n", NULL);
        ap_rvputs(r, "Server Version: ", ap_get_server_version(), "<br>\n",
               NULL);
        ap_rvputs(r, "Server Built: ", ap_get_server_built(), "<br>\n<hr>\n",
  
  
  
  1.192     +3 -3      apache-1.3/src/main/http_core.c
  
  Index: http_core.c
  ===================================================================
  RCS file: /export/home/cvs/apache-1.3/src/main/http_core.c,v
  retrieving revision 1.191
  retrieving revision 1.192
  diff -u -r1.191 -r1.192
  --- http_core.c       1998/05/04 16:46:41     1.191
  +++ http_core.c       1998/05/05 04:48:05     1.192
  @@ -1836,16 +1836,16 @@
       if (conf->server_signature == srv_sig_off)
        return "";
   
  -    ap_snprintf(sport, sizeof sport, "%u", (unsigned) r->server->port);
  +    ap_snprintf(sport, sizeof sport, "%u", (unsigned) ap_get_server_port(r));
   
       if (conf->server_signature == srv_sig_withmail) {
        return ap_pstrcat(r->pool, prefix, "<ADDRESS>" SERVER_BASEVERSION
             " Server at <A HREF=\"mailto:";, r->server->server_admin, "\">",
  -                    r->server->server_hostname, "</A> Port ", sport,
  +                    ap_get_server_name(r), "</A> Port ", sport,
                       "</ADDRESS>\n", NULL);
       }
       return ap_pstrcat(r->pool, prefix, "<ADDRESS>" SERVER_BASEVERSION
  -          " Server at ", r->server->server_hostname, " Port ", sport,
  +          " Server at ", ap_get_server_name(r), " Port ", sport,
                   "</ADDRESS>\n", NULL);
   }
   
  
  
  

Reply via email to