Return-Path: Delivered-To: apache-cvs-archive@hyperreal.org Received: (qmail 17029 invoked by uid 6000); 28 Jan 1998 11:33:34 -0000 Received: (qmail 17023 invoked by alias); 28 Jan 1998 11:33:33 -0000 Delivered-To: apache-1.3-cvs@hyperreal.org Received: (qmail 17021 invoked by uid 143); 28 Jan 1998 11:33:32 -0000 Date: 28 Jan 1998 11:33:32 -0000 Message-ID: <19980128113332.17020.qmail@hyperreal.org> From: dgaudet@hyperreal.org To: apache-1.3-cvs@hyperreal.org Subject: cvs commit: apache-1.3/src/modules/standard mod_access.c mod_autoindex.c mod_cgi.c mod_include.c mod_rewrite.c Sender: apache-cvs-owner@apache.org Precedence: bulk Reply-To: new-httpd@apache.org dgaudet 98/01/28 03:33:32 Modified: src CHANGES src/main http_protocol.c http_vhost.c util.c src/modules/proxy mod_proxy.c src/modules/standard mod_access.c mod_autoindex.c mod_cgi.c mod_include.c mod_rewrite.c Log: RFC2068 says pretty much everything is case-insensitive... there are only a few exceptions. Clean up a bunch of cases where we got it wrong. Also clean up a few cases where modules used both case-sensitive and insensitive parsing of their parms. Revision Changes Path 1.604 +3 -0 apache-1.3/src/CHANGES Index: CHANGES =================================================================== RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.603 retrieving revision 1.604 diff -u -r1.603 -r1.604 --- CHANGES 1998/01/28 10:00:25 1.603 +++ CHANGES 1998/01/28 11:33:19 1.604 @@ -1,5 +1,8 @@ Changes with Apache 1.3b4 + *) Some case-sensitivity issues cleaned up to be consistent with + RFC2068. [Dean Gaudet] + *) SIGURG doesn't exist everywhere. [Mark Andrew Heinrich ] 1.182 +2 -2 apache-1.3/src/main/http_protocol.c Index: http_protocol.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/main/http_protocol.c,v retrieving revision 1.181 retrieving revision 1.182 diff -u -r1.181 -r1.182 --- http_protocol.c 1998/01/26 19:50:13 1.181 +++ http_protocol.c 1998/01/28 11:33:21 1.182 @@ -137,7 +137,7 @@ if (!(range = table_get(r->headers_in, "Range"))) range = table_get(r->headers_in, "Request-Range"); - if (!range || strncmp(range, "bytes=", 6)) { + if (!range || strncasecmp(range, "bytes=", 6)) { table_setn(r->headers_out, "Accept-Ranges", "bytes"); return 0; } @@ -630,7 +630,7 @@ unsigned port; /* This routine parses full URLs, if they match the server */ - if (strncmp(uri, "http://", 7)) + if (strncasecmp(uri, "http://", 7)) return uri; name = pstrdup(r->pool, uri + 7); 1.4 +2 -2 apache-1.3/src/main/http_vhost.c Index: http_vhost.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/main/http_vhost.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- http_vhost.c 1998/01/07 16:46:17 1.3 +++ http_vhost.c 1998/01/28 11:33:22 1.4 @@ -191,7 +191,7 @@ my_addr = htonl(INADDR_ANY); is_an_ip_addr = 1; } - else if (strcmp(w, "_default_") == 0 + else if (strcasecmp(w, "_default_") == 0 || strcmp(w, "255.255.255.255") == 0) { my_addr = DEFAULT_VHOST_ADDR; is_an_ip_addr = 1; @@ -678,7 +678,7 @@ found: /* s is the first matching server, we're done */ r->server = r->connection->server = s; - if (r->hostlen && !strncmp(r->uri, "http://", 7)) { + if (r->hostlen && !strncasecmp(r->uri, "http://", 7)) { r->uri += r->hostlen; parse_uri(r, r->uri); } 1.90 +1 -1 apache-1.3/src/main/util.c Index: util.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/main/util.c,v retrieving revision 1.89 retrieving revision 1.90 diff -u -r1.89 -r1.90 --- util.c 1998/01/21 22:11:02 1.89 +++ util.c 1998/01/28 11:33:22 1.90 @@ -1526,7 +1526,7 @@ if (ind(p->h_name, '.') == -1) { for (x = 0; p->h_aliases[x]; ++x) { if ((ind(p->h_aliases[x], '.') != -1) && - (!strncmp(p->h_aliases[x], p->h_name, strlen(p->h_name)))) + (!strncasecmp(p->h_aliases[x], p->h_name, strlen(p->h_name)))) return pstrdup(a, p->h_aliases[x]); } return NULL; 1.34 +7 -7 apache-1.3/src/modules/proxy/mod_proxy.c Index: mod_proxy.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/mod_proxy.c,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- mod_proxy.c 1998/01/26 19:50:17 1.33 +++ mod_proxy.c 1998/01/28 11:33:24 1.34 @@ -302,7 +302,7 @@ /* Check URI's destination host against NoProxy hosts */ /* Bypass ProxyRemote server lookup if configured as NoProxy */ /* we only know how to handle communication to a proxy via http */ - /*if (strcmp(scheme, "http") == 0) */ + /*if (strcasecmp(scheme, "http") == 0) */ { int ii; struct dirconn_entry *list = (struct dirconn_entry *) conf->dirconn->elts; @@ -331,9 +331,9 @@ for (i = 0; i < proxies->nelts; i++) { p = strchr(ents[i].scheme, ':'); /* is it a partial URL? */ if (strcmp(ents[i].scheme, "*") == 0 || - (p == NULL && strcmp(scheme, ents[i].scheme) == 0) || + (p == NULL && strcasecmp(scheme, ents[i].scheme) == 0) || (p != NULL && - strncmp(url, ents[i].scheme, strlen(ents[i].scheme)) == 0)) { + strncasecmp(url, ents[i].scheme, strlen(ents[i].scheme)) == 0)) { /* CONNECT is a special method that bypasses the normal * proxy code. */ @@ -341,7 +341,7 @@ rc = proxy_connect_handler(r, cr, url, ents[i].hostname, ents[i].port); /* we only know how to handle communication to a proxy via http */ - else if (strcmp(ents[i].protocol, "http") == 0) + else if (strcasecmp(ents[i].protocol, "http") == 0) rc = proxy_http_handler(r, cr, url, ents[i].hostname, ents[i].port); else @@ -361,9 +361,9 @@ /* handle the scheme */ if (r->method_number == M_CONNECT) return proxy_connect_handler(r, cr, url, NULL, 0); - if (strcmp(scheme, "http") == 0) + if (strcasecmp(scheme, "http") == 0) return proxy_http_handler(r, cr, url, NULL, 0); - if (strcmp(scheme, "ftp") == 0) + if (strcasecmp(scheme, "ftp") == 0) return proxy_ftp_handler(r, cr, url); else return NOT_IMPLEMENTED; @@ -427,7 +427,7 @@ if (port == -1) { int i; for (i = 0; defports[i].scheme != NULL; i++) - if (strcmp(defports[i].scheme, r) == 0) + if (strcasecmp(defports[i].scheme, r) == 0) break; port = defports[i].port; } 1.30 +2 -2 apache-1.3/src/modules/standard/mod_access.c Index: mod_access.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_access.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- mod_access.c 1998/01/07 16:46:42 1.29 +++ mod_access.c 1998/01/28 11:33:25 1.30 @@ -152,12 +152,12 @@ a->x.from = where = pstrdup(cmd->pool, where); a->limited = cmd->limited; - if (!strncmp(where, "env=", 4)) { + if (!strncasecmp(where, "env=", 4)) { a->type = T_ENV; a->x.from += 4; } - else if (!strcmp(where, "all")) { + else if (!strcasecmp(where, "all")) { a->type = T_ALL; } 1.64 +2 -2 apache-1.3/src/modules/standard/mod_autoindex.c Index: mod_autoindex.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_autoindex.c,v retrieving revision 1.63 retrieving revision 1.64 diff -u -r1.63 -r1.64 --- mod_autoindex.c 1998/01/26 18:24:37 1.63 +++ mod_autoindex.c 1998/01/28 11:33:26 1.64 @@ -612,8 +612,8 @@ return NULL; } if (r->content_type - && (!strcmp(r->content_type, "text/html") - || !strcmp(r->content_type, INCLUDES_MAGIC_TYPE)) + && (!strcasecmp(r->content_type, "text/html") + || !strcasecmp(r->content_type, INCLUDES_MAGIC_TYPE)) && !r->content_encoding) { if (!(thefile = pfopen(r->pool, r->filename, "r"))) return NULL; 1.69 +1 -1 apache-1.3/src/modules/standard/mod_cgi.c Index: mod_cgi.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_cgi.c,v retrieving revision 1.68 retrieving revision 1.69 diff -u -r1.68 -r1.69 --- mod_cgi.c 1998/01/26 16:46:14 1.68 +++ mod_cgi.c 1998/01/28 11:33:27 1.69 @@ -85,7 +85,7 @@ static int is_scriptaliased(request_rec *r) { char *t = table_get(r->notes, "alias-forced-type"); - return t && (!strcmp(t, "cgi-script")); + return t && (!strcasecmp(t, "cgi-script")); } /* Configuration stuff */ 1.69 +1 -1 apache-1.3/src/modules/standard/mod_include.c Index: mod_include.c =================================================================== RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_include.c,v retrieving revision 1.68 retrieving revision 1.69 diff -u -r1.68 -r1.69 --- mod_include.c 1998/01/27 02:46:56 1.68 +++ mod_include.c 1998/01/28 11:33:29 1.69 @@ -662,7 +662,7 @@ } if (!error_fmt && noexec && rr->content_type - && (strncmp(rr->content_type, "text/", 5))) { + && (strncasecmp(rr->content_type, "text/", 5))) { error_fmt = "unable to include potential exec \"%s\" " "in parsed file %s"; } 1.64 +19 -19 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.63 retrieving revision 1.64 diff -u -r1.63 -r1.64 --- mod_rewrite.c 1998/01/26 19:50:23 1.63 +++ mod_rewrite.c 1998/01/28 11:33:30 1.64 @@ -991,13 +991,13 @@ return OK; } else if ( (strlen(r->filename) > 7 && - strncmp(r->filename, "http://", 7) == 0) + strncasecmp(r->filename, "http://", 7) == 0) || (strlen(r->filename) > 8 && - strncmp(r->filename, "https://", 8) == 0) + strncasecmp(r->filename, "https://", 8) == 0) || (strlen(r->filename) > 9 && - strncmp(r->filename, "gopher://", 9) == 0) + strncasecmp(r->filename, "gopher://", 9) == 0) || (strlen(r->filename) > 6 && - strncmp(r->filename, "ftp://", 6) == 0) ) { + strncasecmp(r->filename, "ftp://", 6) == 0) ) { /* it was finally rewritten to a remote URL */ /* skip 'scheme:' */ @@ -1773,10 +1773,10 @@ i = strlen(r->filename); if ( prefixstrip && !( r->filename[0] == '/' - || ( (i > 7 && strncmp(r->filename, "http://", 7) == 0) - || (i > 8 && strncmp(r->filename, "https://", 8) == 0) - || (i > 9 && strncmp(r->filename, "gopher://", 9) == 0) - || (i > 6 && strncmp(r->filename, "ftp://", 6) == 0)))) { + || ( (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)))) { rewritelog(r, 3, "[per-dir %s] add per-dir prefix: %s -> %s%s", perdir, r->filename, perdir, r->filename); r->filename = pstrcat(r->pool, perdir, r->filename, NULL); @@ -1837,10 +1837,10 @@ * directly force an external HTTP redirect. */ i = strlen(r->filename); - if ( (i > 7 && strncmp(r->filename, "http://", 7) == 0) - || (i > 8 && strncmp(r->filename, "https://", 8) == 0) - || (i > 9 && strncmp(r->filename, "gopher://", 9) == 0) - || (i > 6 && strncmp(r->filename, "ftp://", 6) == 0)) { + 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 (perdir == NULL) rewritelog(r, 2, "implicitly forcing redirect (rc=%d) with %s", @@ -2097,11 +2097,11 @@ #ifdef APACHE_SSL if ( (!r->connection->client->ssl && - strncmp(r->filename, "http://", 7) == 0) + strncasecmp(r->filename, "http://", 7) == 0) || (r->connection->client->ssl && - strncmp(r->filename, "https://", 8) == 0)) { + strncasecmp(r->filename, "https://", 8) == 0)) { #else - if (strncmp(r->filename, "http://", 7) == 0) { + if (strncasecmp(r->filename, "http://", 7) == 0) { #endif /* there was really a rewrite to a remote path */ @@ -2175,10 +2175,10 @@ char port[32]; i = strlen(r->filename); - if (!( (i > 7 && strncmp(r->filename, "http://", 7) == 0) - || (i > 8 && strncmp(r->filename, "https://", 8) == 0) - || (i > 9 && strncmp(r->filename, "gopher://", 9) == 0) - || (i > 6 && strncmp(r->filename, "ftp://", 6) == 0))) { + 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))) { #ifdef APACHE_SSL if (is_default_port(r->server->port,r)) #else