www-apache-bugdb mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Schuler <sch...@btv.ibm.com>
Subject os-aix/1317: Proxy Module - File/directory name on AIX 1.X cannot be "@"
Date Fri, 24 Oct 1997 23:42:21 GMT

>Number:         1317
>Category:       os-aix
>Synopsis:       Proxy Module - File/directory name on AIX 1.X cannot be "@"
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    apache
>State:          open
>Class:          sw-bug
>Submitter-Id:   apache
>Arrival-Date:   Fri Oct 24 16:50:00 PDT 1997
>Last-Modified:
>Originator:     schuld@btv.ibm.com
>Organization:
apache
>Release:        1.2.4
>Environment:
i386-ibm-aix - IBM AIX Version 1.3.0 ptf (patchlevel) 0024
gcc 2.7.2.3
>Description:
The IBM AIX version 1.X operating system does not allow a file name or directory
name to be "@" (a single ampersand).  When I enable and use the mod_proxy
module, it is consistently logging the following type of errors:

[Thu Oct 23 20:30:35 1997] proxy: error creating cache directory
- mkdir: /usr/local/etc/httpd/proxy/2/G/@: No such file or directory
[Thu Oct 23 20:30:35 1997] proxy: error linking cache file
- link: /usr/local/etc/httpd/proxy/2/G/@/cFQnVidGCEF7152linQ: No such file or directory
[Thu Oct 23 20:36:09 1997] proxy: error creating cache directory
- mkdir: /usr/local/etc/httpd/proxy/W/c/@: No such file or directory
[Thu Oct 23 20:36:10 1997] proxy: error linking cache file
- link: /usr/local/etc/httpd/proxy/W/c/@/@s9PQJTCvqmSKK@b@og: No such file or directory

This fail is caused because a file and/or directory name cannot have a single
"@" as it's name.  In AIX versions 1.X and 2.X, IBM used the single "@" character
as a special type of hidden directory/file.  This was used with the IBM/Locus
Transparent Computing Facility (TCF) code.

The ONLY fails I received from the mod_proxy are when the "@" was going to be
used as a file / directory name.
>How-To-Repeat:
The only way to recreate this fail is to use an AIX 1.X or 2.X system.
>Fix:
I can give you a fix for AIX 1.X.  A slightly different symbol (which I don't
know) would be required for AIX 2.X.  But, the odds of anyone having AIX 2.X
are pretty slim these days, anyway.  A quick fix that doesn't screw up the
hashing function is to use the "%" character in place of the "@" character
on AIX 1.X.  This causes file names and directory names to be created with a
single "%", which has been running for a while now without any fails of any
type being logged.

To fix AIX 1.X, apply the following context diff to apache_1.2.4 source:


*** src/modules/proxy/proxy_util.c-	Fri Oct 24 15:31:02 1997
--- src/modules/proxy/proxy_util.c	Fri Oct 24 15:31:52 1997
***************
*** 558,564 ****
--- 558,568 ----
      int i, k, d;
      unsigned int x;
      static const char table[64]=
+ #ifdef __ps2__
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_%";
+ #else
  "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_@";
+ #endif
  
      MD5Init(&context);
      MD5Update(&context, (const unsigned char *)it, strlen(it));
%
>Audit-Trail:
>Unformatted:


Mime
View raw message