]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
*) Fix a problem introduced by the directory index patch that
authorRandy Terbush <randy@apache.org>
Tue, 14 Jan 1997 04:10:41 +0000 (04:10 +0000)
committerRandy Terbush <randy@apache.org>
Tue, 14 Jan 1997 04:10:41 +0000 (04:10 +0000)
     breaks CGI with PATH_INFO arguments.

  *) Remove const in storage type declaration for make_cookie().

Reviewed by: Marc Slemko, Sameer Parekh
Submitted by: Marc Slemko
CS: Reviewed by:

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3@77439 13f79535-47bb-0310-9956-ffa450edef68

RELEASE_1_1_X/src/CHANGES
RELEASE_1_1_X/src/main/http_request.c
RELEASE_1_1_X/src/mod_cookies.c

index a030d6be80770c903e958540f3046e2121097aa6..950e6392771721e6232b93095c5ed5f03d799db4 100644 (file)
@@ -1,3 +1,10 @@
+Changes with Apache 1.1.3:
+
+  *) Fix a problem introduced by the directory index patch that
+     breaks CGI with PATH_INFO arguments.
+
+  *) Remove const in storage type declaration for make_cookie().
+
 Changes with Apache 1.1.2:
 
   *) Fix a buffer overflow problem in mod_cookies. Without these
index 180c2651af0511468927cac055990f968ac6f75b..d150993931976dc3d18cf02dc007b33b2e9cb2df 100644 (file)
@@ -179,10 +179,10 @@ int get_path_info(request_rec *r)
            *cp = '\0';
            return OK;
        }
-#if defined(ENOENT)
-       else if (errno == ENOENT) {
+#if defined(ENOENT) && defined(ENOTDIR)
+       else if (errno == ENOENT || errno == ENOTDIR) {
 #else
-  #error Your system apparently does not define ENOENT.
+  #error Your system apparently does not define ENOENT || ENOTDIR.
   #error Removal of these lines opens a security hole if protecting
   #error from directory indexes with DirectoryIndex.
        else {
@@ -195,9 +195,9 @@ int get_path_info(request_rec *r)
            while (cp > path && cp[-1] == '/')
                --cp;
        } 
-#if defined(ENOENT)
+#if defined(ENOENT) && defined(ENOTDIR)
        else {
-           log_printf(r->server, "access to %s failed for client; unable to determine if index file exists (stat() returned unexpected error)", r->filename);
+           log_printf(r->server, "access to %s failed for client; unable to determine if index file exists (stat() returned unexpected error[%d])", r->filename, errno);
            return FORBIDDEN;
        }
 #endif
index 836120599088402ac352cb0b5dc8e0407d796917..5173beef5d65e6601e86240047708c7e2a738851 100644 (file)
@@ -121,7 +121,7 @@ void make_cookie(request_rec *r)
     struct timeval tv;
     char new_cookie[1024];     /* blurgh */
     char *dot;
-    const char *rname = pstrdup(r->pool, 
+    char *rname = pstrdup(r->pool, 
                                get_remote_host(r->connection, r->per_dir_config,
                                                REMOTE_NAME));