The problem with apache has been fixed by Darren Benham and myself.
The patch can be retrieved from
http://www.debian.org/~treacy/mod_negotiation.diff
but is replicated below since it is so small.
If you trust a precompiled module, you can simply grab
http://www.debian.org/~treacy/mod_negotiation.so
and use it to replace the current version in /usr/lib/apache/1.3/
Simply restart apache when done.
Jay Treacy
----------------- begin mod_negotiation.diff -----------------------
The following patch fixes a problem with content negotiation in apache.
The problem is that clients that don't send an Accept-Language: header
can receive the wrong language.
As is apparent from the patch, the file mod_negotiation.c needs one line
modified. This file can be found in apache-1.3.3/src/modules/standard/
The patch has been sent to apache and will hopefully make it into the
next release.
*** mod_negotiation.c.orig Wed Nov 4 16:14:28 1998
--- mod_negotiation.c Tue Nov 3 11:53:28 1998
***************
*** 1651,1657 ****
/* if language qualities were equal, try the LanguagePriority
* stuff */
! if (best->lang_index != -1 && variant->lang_index > best->lang_index) {
return 0;
}
if (variant->lang_index != -1 &&
--- 1645,1651 ----
/* if language qualities were equal, try the LanguagePriority
* stuff */
! if (best->lang_index != -1 && (variant->lang_index == -1 ||
variant->lang_index > best->lang_index))
{
return 0;
}
if (variant->lang_index != -1 &&
***************
----------------- end mod_negotiation.diff -----------------------