RE: cvs commit: httpd-2.0/server/mpm/winnt mpm_winnt.c

2002-02-08 Thread Ryan Bloom

> > I disagree completely.  The Windows MPM is fragile, because it is
almost
> > impossible to read.  Bill has been cleaning it up so that multiple
> > people can easily modify the code and actually understand what is
> > happening.
> >
> > Knowing how much time Bill has spent reading through that code, and
> > trying to solve the underlying problem, I know that he believes he
must
> > clean the code before he can fix the actual bug.
> >
> > Ryan
> >
> 
> I suggest spending time to learn about code before you begin hacking
it
> up.  I've seen
> this exact same pattern repeat itself in Apache 2.0 multiple times.
You
> and Bill have a
> grand vision of 'how things should be', and start making changes. When
you
> are done, what
> once worked is broken and others are left to pick up the pieces and
finish
> what you
> started. Both you guys have done some really good things, don't get me
> wrong, but I am
> frankly tired of picking up after you guys.
> 
> When I stopped work on the windows MPM, everything worked. I leave it
> alone for several
> months, you guys come in and start changing things and you f*cked it
up. A
> bit of testing
> after every change would have caught the bug when it was first
introduced.
> It's not too
> much to ask that yuou finish what you start and understand what you
are
> changing before
> you change it. You CANNOT argue you did this with the Windows MPM,
because
> clearly you did
> not.

BS I didn't test.  I did test.  I ran the server for three days after
making my changes.  In fact, Bill was harping on my to commit the damn
patch because I was taking so long to get it in.  The problem was that I
didn't realize how fragile the damn service stuff was.  Nor could I
have, because there was no comment explaining what was happening.

Add to that, the Windows MPM didn't behave like any other MPM.  That
means that as people were writing modules for Windows, they were adding
hacks to their modules to make up for the way that the MPM did things.
That is completely bogus.

What I did was to move the Windows MPM back into line with the other
MPMs with regard to the pre_mpm hook, so that it was very clearly stated
that the pre_mpm hook is called once per Apache instance and the
child_init hook is called once per child process.

What Bill is doing is cleaning the code so that it looks like other
Apache modules and can be followed.  Does this mean that he is ripping
the module apart and putting it back together?  Yes, because that is
what is required to understand the damn thing.

As for the fact that the Windows MPM was working before we touched it
and wasn't working afterwards, I don't believe it.  I believe that the
changes we made highlighted problems that weren't hitting due to luck
before.  Do I have proof?  How about the fact that all I did was
relocate code that was already in the server?  I didn't add a single
line of code, nor did I remove one.  I just moved it from the pre_mpm
phase to the child_init phase, which was not all that different at the
end of the day.

Ryan 




Re: cvs commit: httpd-2.0/server/mpm/winnt mpm_winnt.c

2002-02-08 Thread Bill Stoddard


> > Can we fix the service restart problem before we go making other
> changes
> > to the MPM?  I
> > see over the last few days there have been dozens of changes to the
> code,
> > none of which
> > are directed at fixing the service restart problem. All this monkeying
> > around with the
> > code does is obscure finding what patch introduced the problem.
> Bleh...
>
> I disagree completely.  The Windows MPM is fragile, because it is almost
> impossible to read.  Bill has been cleaning it up so that multiple
> people can easily modify the code and actually understand what is
> happening.
>
> Knowing how much time Bill has spent reading through that code, and
> trying to solve the underlying problem, I know that he believes he must
> clean the code before he can fix the actual bug.
>
> Ryan
>

I suggest spending time to learn about code before you begin hacking it up.  I've seen
this exact same pattern repeat itself in Apache 2.0 multiple times.  You and Bill have 
a
grand vision of 'how things should be', and start making changes. When you are done, 
what
once worked is broken and others are left to pick up the pieces and finish what you
started. Both you guys have done some really good things, don't get me wrong, but I am
frankly tired of picking up after you guys.

When I stopped work on the windows MPM, everything worked. I leave it alone for several
months, you guys come in and start changing things and you f*cked it up. A bit of 
testing
after every change would have caught the bug when it was first introduced. It's not too
much to ask that yuou finish what you start and understand what you are changing before
you change it. You CANNOT argue you did this with the Windows MPM, because clearly you 
did
not.

Bill




JRE_1 roll.

2002-02-08 Thread Justin Erenkrantz

http://www.apache.org/~jerenkrantz/2.0.32-jre/httpd-2.0.32-JRE-1-alpha.tar.gz

It's preliminary.  You should be able to grab this version via JRE_1
tag in CVS.

Please let me know what you think.

While I'd like to wait for Win32 support, others (such as Jeff)
think that we shouldn't wait.  So, I'll put it up to you all to vote
on.  I may adjust the JRE_1 tag in CVS as I see fit.  This is not
a set-in-stone tag - meaning that I may shift it around as needed.

Is this tarball beta quality?  If so, then I will make this tag
2.0.32.  (I don't believe the accept() handling problems stops a
beta.)

Note: This version will represent itself as .32-dev which I believe
is correct since this is *not* a formal release.  If you think it is,
well, you have lots of problems.  -- justin




http://httpd.apache.org/docs/ in french

2002-02-08 Thread Marc Slemko

If I send:

Accept-Charset: ISO-8859-1, utf-8;q=0.66, *;q=0.66

with no Accept-Language header, I get a page in french.  That isn't right
is it?

This is what Mozilla generates for me if I go and remove the en-us
language from the list of languages.




RE: cvs commit: httpd-2.0/server/mpm/winnt mpm_winnt.c

2002-02-08 Thread Ryan Bloom

> Can we fix the service restart problem before we go making other
changes
> to the MPM?  I
> see over the last few days there have been dozens of changes to the
code,
> none of which
> are directed at fixing the service restart problem. All this monkeying
> around with the
> code does is obscure finding what patch introduced the problem.
Bleh...

I disagree completely.  The Windows MPM is fragile, because it is almost
impossible to read.  Bill has been cleaning it up so that multiple
people can easily modify the code and actually understand what is
happening.

Knowing how much time Bill has spent reading through that code, and
trying to solve the underlying problem, I know that he believes he must
clean the code before he can fix the actual bug.

Ryan





Re: cvs commit: httpd-2.0/server/mpm/winnt mpm_winnt.c

2002-02-08 Thread Bill Stoddard

Can we fix the service restart problem before we go making other changes to the MPM?  I
see over the last few days there have been dozens of changes to the code, none of which
are directed at fixing the service restart problem. All this monkeying around with the
code does is obscure finding what patch introduced the problem. Bleh...

Bill

- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, February 08, 2002 2:37 PM
Subject: cvs commit: httpd-2.0/server/mpm/winnt mpm_winnt.c


> wrowe   02/02/08 11:37:03
>
>   Modified:server/mpm/winnt mpm_winnt.c
>   Log:
> Drawing attention to the timing problem; push the wait up so we do about
> nothing until WinNT initializes the app.
>
>   Revision  ChangesPath
>   1.229 +10 -10httpd-2.0/server/mpm/winnt/mpm_winnt.c
>
>   Index: mpm_winnt.c
>   ===
>   RCS file: /home/cvs/httpd-2.0/server/mpm/winnt/mpm_winnt.c,v
>   retrieving revision 1.228
>   retrieving revision 1.229
>   diff -u -r1.228 -r1.229
>   --- mpm_winnt.c 6 Feb 2002 21:09:26 - 1.228
>   +++ mpm_winnt.c 8 Feb 2002 19:37:02 - 1.229
>   @@ -1585,6 +1585,16 @@
>   NULL,
>   &si, &pi);
>
>   +/* Important:
>   + * Give the child process a chance to run before dup'ing the sockets.
>   + * We have already set the listening sockets noninheritable, but if
>   + * WSADuplicateSocket runs before the child process initializes
>   + * the listeners will be inherited anyway.
>   + *
>   + * XXX: This is badness; needs some mutex interlocking
>   + */
>   +Sleep(1000);
>   +
>/* Undo everything we created for the child only
> */
>CloseHandle(pi.hThread);
>   @@ -1605,16 +1615,6 @@
>
>ap_log_error(APLOG_MARK, APLOG_INFO, APR_SUCCESS, ap_server_conf,
> "Parent: Created child process %d", pi.dwProcessId);
>   -
>   -/* Important:
>   - * Give the child process a chance to run before dup'ing the sockets.
>   - * We have already set the listening sockets noninheritable, but if
>   - * WSADuplicateSocket runs before the child process initializes
>   - * the listeners will be inherited anyway.
>   - *
>   - * XXX: This is badness; needs some mutex interlocking
>   - */
>   -Sleep(1000);
>
>if (send_handles_to_child(p, *child_exit_event, pi.hProcess, hPipeWrite)) {
>CloseHandle(hPipeWrite);
>
>
>
>




Re: cvs commit: httpd-2.0/server/mpm/winnt mpm_winnt.c

2002-02-08 Thread Bill Stoddard

The important thing here is that the process yields to allow the child to initialize. 
The
time of the sleep is really not important.  The thing that needs to happen is deep in 
the
OS, so I am not sure what we would mutex against. Yea, this does suck... it is a bug in
the OS AFAIK cause we shouldn;t have to jump through these hoops.

Bill

> wrowe   02/02/08 11:37:03
>
>   Modified:server/mpm/winnt mpm_winnt.c
>   Log:
> Drawing attention to the timing problem; push the wait up so we do about
> nothing until WinNT initializes the app.
>
>   Revision  ChangesPath
>   1.229 +10 -10httpd-2.0/server/mpm/winnt/mpm_winnt.c
>
>   Index: mpm_winnt.c
>   ===
>   RCS file: /home/cvs/httpd-2.0/server/mpm/winnt/mpm_winnt.c,v
>   retrieving revision 1.228
>   retrieving revision 1.229
>   diff -u -r1.228 -r1.229
>   --- mpm_winnt.c 6 Feb 2002 21:09:26 - 1.228
>   +++ mpm_winnt.c 8 Feb 2002 19:37:02 - 1.229
>   @@ -1585,6 +1585,16 @@
>   NULL,
>   &si, &pi);
>
>   +/* Important:
>   + * Give the child process a chance to run before dup'ing the sockets.
>   + * We have already set the listening sockets noninheritable, but if
>   + * WSADuplicateSocket runs before the child process initializes
>   + * the listeners will be inherited anyway.
>   + *
>   + * XXX: This is badness; needs some mutex interlocking
>   + */
>   +Sleep(1000);
>   +
>/* Undo everything we created for the child only
> */
>CloseHandle(pi.hThread);
>   @@ -1605,16 +1615,6 @@
>
>ap_log_error(APLOG_MARK, APLOG_INFO, APR_SUCCESS, ap_server_conf,
> "Parent: Created child process %d", pi.dwProcessId);
>   -
>   -/* Important:
>   - * Give the child process a chance to run before dup'ing the sockets.
>   - * We have already set the listening sockets noninheritable, but if
>   - * WSADuplicateSocket runs before the child process initializes
>   - * the listeners will be inherited anyway.
>   - *
>   - * XXX: This is badness; needs some mutex interlocking
>   - */
>   -Sleep(1000);
>
>if (send_handles_to_child(p, *child_exit_event, pi.hProcess, hPipeWrite)) {
>CloseHandle(hPipeWrite);
>
>
>
>




Re: recent build breakage in Apache, probably due to apr-util?

2002-02-08 Thread Justin Erenkrantz

On Fri, Feb 08, 2002 at 04:03:19PM -0500, Jeff Trawick wrote:
> I'm getting stuff like this on Linux and FreeBSD.
> 
> > htpasswd.o: In function `mkrecord':
> > /home/regress/regress/httpd-2.0/support/htpasswd.c:235: undefined
> > reference to `apr_sha1_base64'
> > collect2: ld returned 1 exit status
> > make[2]: *** [htpasswd] Error 1
> > make[1]: *** [all-recursive] Error 1
> > make: *** [all-recursive] Error 1
> 
> Is anybody else seeing this?

My bad.  See my recent commits - should be fixed now.  =)

We're trying to divorce usage of APRVARS in apr-util.  -- justin




recent build breakage in Apache, probably due to apr-util?

2002-02-08 Thread Jeff Trawick

I'm getting stuff like this on Linux and FreeBSD.

> htpasswd.o: In function `mkrecord':
> /home/regress/regress/httpd-2.0/support/htpasswd.c:235: undefined
> reference to `apr_sha1_base64'
> collect2: ld returned 1 exit status
> make[2]: *** [htpasswd] Error 1
> make[1]: *** [all-recursive] Error 1
> make: *** [all-recursive] Error 1

Is anybody else seeing this?

-- 
Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site:
   http://www.geocities.com/SiliconValley/Park/9289/
 Born in Roswell... married an alien...



2.0 accept() error handling in Unix

2002-02-08 Thread Greg Ames

[sorry for the long post, but I think this is important...]

We had three instances recently where daedalus's httpd parent died because of a
fatal error detected in a child.  There has been some discussion about what to
do about the remaining children etc, but none about how screwed up our Unix
accept() error handling is which led to the fatal error.

The kernel was periodically running out of fd's.  prefork happened to
(indirectly) invoke unixd_accept at an unlucky moment.  unixd_accept called apr,
which did the right thing and returned ENFILE.  unixd_accept goes thru a rather
unsightly switch statement where none of the cases match.  So we hit the
default, which logs the error and returns APR_EGENERAL.  Back in prefork,

if (status == APR_EGENERAL) {
clean_child_exit(APEXIT_CHILDFATAL);

yikes!  Since Brian B had mentioned the fd problem, I scrambled to get a patch
ready for 2.0.31 so we could survive it.  

While I was doing this, I told Jeff about it and he was astonished.  He had
recently been beating the crap out of worker on AIX and Solaris with the number
of fd's severely restricted to make sure we didn't do anything foolish, and
hadn't seen such a problem.  As it turns out, worker ignores the error and
re-issues the accept().  That's probably better, but if we had a 3rd party
module leaking descriptors for example, it wouldn't help resolve the situation.

1.3 has the same comments mentioning fd leaks so the problem was well known.  In
1.3, ENFILE | EMFILE also hit the default (line 4419 in src/main/http_main.c)
but the Unix code then does a clean_child_exit(1).  TPF considers the default
fatal.  

At first I thought somebody had accidently copied the 1.3 TPF code into 2.0
Unix.  But then I had a look at the accept(2) man page on FreeBSD and Linux. 
Most of the errno's look like should-not-occur programming errors, so having
default/APR_EGENERAL be a fatal error might be reasonable.

What I think we need is a new APR error category (APR_ENORESOURCE ?
APR_ESICKCHILD ?), similar to APR_EGENERAL, that advises the MPM to cleanly shut
down the child without affecting the parent.  This could be set in unixd_accept
for things like EMFILE, ENFILE,  ENOBUFS, and ENOMEM, which deal with resource
shortages.

Comments?  Better names for the new error category?

Greg



Re: cvs commit: httpd-2.0/include util_ldap.h

2002-02-08 Thread Brad Nicholes

I would move it but I have no idea how to.  Maybe whoever initially
moved the LDAP files could take care of it.



Brad Nicholes
Senior Software Engineer
Novell, Inc., a leading provider of Net business solutions
http://www.novell.com 

>>> [EMAIL PROTECTED] Friday, February 08, 2002 11:48:06 AM >>>
On Fri, Feb 08, 2002 at 06:32:51PM -, [EMAIL PROTECTED] wrote:
> bnicholes02/02/08 10:32:51
> 
>   Modified:include  util_ldap.h
>   Log:
>   Updated to use the newer locking API's.  This file should probably
be moved
>   to the httpd-ldap with the rest of the auth_ldap stuff.

Yeah, it should.  -- justin




Re: [PATCH] XHTML/CSS support in mod_autoindex

2002-02-08 Thread Greg Ames

"William A. Rowe, Jr." wrote:
> 
> From: "Greg Ames" <[EMAIL PROTECTED]>
> Sent: Friday, February 08, 2002 9:20 AM

> > I am discouraged by the amount of churn in the 2.0 code base with negligible
> > benefit to users.

> Unfortuantely, some bits like input filtering were 'left unfinished' when the
> filtering changes went in.  That means we've experienced some pains with that
> part of the 2.0 model.  

I certainly didn't mean to pick on Justin.  He has been turning around problems
very quickly, and I think he and I agree on the need for a stable release.  

Actually, the biggest barrier to a stable release at the moment is probably the
WinNT MPM.  I'm frustrated because I don't have the skills to pitch in and help
with it.

Greg



Re: cvs commit: httpd-2.0/include util_ldap.h

2002-02-08 Thread Justin Erenkrantz

On Fri, Feb 08, 2002 at 06:32:51PM -, [EMAIL PROTECTED] wrote:
> bnicholes02/02/08 10:32:51
> 
>   Modified:include  util_ldap.h
>   Log:
>   Updated to use the newer locking API's.  This file should probably be moved
>   to the httpd-ldap with the rest of the auth_ldap stuff.

Yeah, it should.  -- justin




Re: cvs commit: httpd-2.0 STATUS

2002-02-08 Thread Justin Erenkrantz

On Fri, Feb 08, 2002 at 12:53:54PM -0500, MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1) 
wrote:
> How about the configure.in fix for HPUX 11i - would you be bumping the tag
> for that file also ??.. If not, then something has to go into the README
> file because .31 will not work as-is on a HPUX 11i system..

I'm planning on making .32 be HEAD whenever Win32 is fixed, so this
fix will be in.  If there is some oddball commit that I think
challenges the stability of the tree before then, I won't include
it.  (That's why I'm maintaining my own tag for now.)  -- justin




RE: cvs commit: httpd-2.0 STATUS

2002-02-08 Thread MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1)

How about the configure.in fix for HPUX 11i - would you be bumping the tag
for that file also ??.. If not, then something has to go into the README
file because .31 will not work as-is on a HPUX 11i system..

Thanks
-Madhu

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Friday, February 08, 2002 9:15 AM
To: [EMAIL PROTECTED]
Subject: cvs commit: httpd-2.0 STATUS


jerenkrantz02/02/08 09:15:02

  Modified:.STATUS
  Log:
  Explain why I'm sitting on .32.
  
  Revision  ChangesPath
  1.490 +10 -1 httpd-2.0/STATUS
  
  Index: STATUS
  ===
  RCS file: /home/cvs/httpd-2.0/STATUS,v
  retrieving revision 1.489
  retrieving revision 1.490
  diff -u -r1.489 -r1.490
  --- STATUS7 Feb 2002 23:01:47 -   1.489
  +++ STATUS8 Feb 2002 17:15:01 -   1.490
  @@ -1,5 +1,5 @@
   APACHE 2.0 STATUS:
-*-text-*-
  -Last modified at [$Date: 2002/02/07 23:01:47 $]
  +Last modified at [$Date: 2002/02/08 17:15:01 $]
   
   Release:
   
  @@ -41,6 +41,15 @@
   
   
   CURRENT RELEASE NOTES:
  +
  +* 32 status:
  +Justin is waiting for Win32 to become functional.  As potential
  +RM for .32, he considers it a showstopper.  Once Win32 is
  +operational (per EitherBills), .32 will be rolled.  If the group
  +thinks that we could have a good beta without Win32 support,
please
  +note so here.  If a majority agree that Win32 is not required for
  +a beta, Justin will roll .32 ASAP.  (And, if you agree with the
  +fact that Win32 is a showstopper, please note that here too.)
   
   * Proposed BETA possibilities
 31 + fixes for all resolved problems and call it 32 (instead of
HEAD)
  
  
  



Re: rewrite and SSI's broken in httpd20 HEAD

2002-02-08 Thread Ian Holsman

Ian Kallen  wrote:
> Just thought I'd send in some recently observed behavior...
> 
> I was trying out SSI's on .html files
> I have +Includes in Options for htdocs && I tried the example syntax
> AddOutputFilter INCLUDES .html
> 
> It does work with .shtml though.
> 
I suggest you look how the .shtml is configured, as I have .html working
quite well with CVS head.

Options Includes

AddOutputFilter INCLUDES .html

maybe the '+' is throwing it off..

> Also, I the rnd function in mod_rewrite appears to be broken.  Given a
> list of alternating choices, it's only ever picking the first one.  The
> 1.3.x mod_rewrite appeared to truly randomize it's selection.  It's doing
> this for main and subrequests.
> 
no idea on this one.


> cheers,
> -Ian
> 
> 






Re: rewrite and SSI's broken in httpd20 HEAD

2002-02-08 Thread David Ford

This sort of thing seems to be biting a lot of people.  Nobody is aware 
of the filters section that is now required.  In my first pass at 
getting apache2 and php working, I spent three days before I came across 
a post made reference to the filters.

Perhaps an "UPGRADE" or "README.new-requirements" ... is needed which 
covers things like this.

David

Greg Ames wrote:

>"Ian Kallen " wrote:
>
>>Just thought I'd send in some recently observed behavior...
>>
>
>thanks for the feedback.
> 
>
>>I was trying out SSI's on .html files
>>I have +Includes in Options for htdocs && I tried the example syntax
>>AddOutputFilter INCLUDES .html
>>
>
>...and what bad thing happens? SSI tags aren't parsed/expanded I assume?
>
>we've got the following on daedalus, fwiw:
>
>
>SetOutputFilter INCLUDES
>
>
>>Also, I the rnd function in mod_rewrite appears to be broken.  Given a
>>list of alternating choices, it's only ever picking the first one.  
>>
>
>any idea how long this has been broken on 2.0?  forever?
>
>Greg
>




smime.p7s
Description: S/MIME Cryptographic Signature


Re: [PATCH] XHTML/CSS support in mod_autoindex

2002-02-08 Thread William A. Rowe, Jr.

From: "Greg Ames" <[EMAIL PROTECTED]>
Sent: Friday, February 08, 2002 9:20 AM


> yet more evidence that we _really_ need to get a stable Apache 2.0 (as in,
> beta/GA with usable binaries) into widespread use.

No doubt.  I cleaned up 2.0 for XML syntax some great time ago...

almost considered a backport, but nahhh... 2.0 will be out soon!
Or so I believed.

> Otherwise we're going to see more and more pressure for new features in 1.3 
> which will eat into our available time.  

The only developers pressured are those terribly interested in the 1.3 code.
I was the only one hacking on Win32 for some time, because others were sure
that 2.0 was just around the corner, but I saw a broken build model.  Once
apxs worked on 1.3, I new I had succeeded.  Now I feel little pressure, except
from the XP send() corruption bug [in XP but there must be a workaround!]

New features :-?  Ha.  If contributors are busy 'improving' [read, introducing
new opportunities for brokenness in] 1.3, then they either have too much time 
on their hands, insufficient confidence in 2.0 or want to see 1.3 remain a
strong viable solution for the near or long term.  When you look at how long 
it took for the world to adopt 1.3 from 1.2, and the fact that development is 
a matter of scratching our individual itches, then it's not a huge issue.

> I am discouraged by the amount of churn in the 2.0 code base with negligible 
> benefit to users.

But massive benefits to module authors.  Apache HTTP is as strong as it is,
and gets so much devoted attention with corporate blessing precisely because 
it is an incredible platform to extend.

Unfortuantely, some bits like input filtering were 'left unfinished' when the
filtering changes went in.  That means we've experienced some pains with that
part of the 2.0 model.  I believe Justin's overhaul substantially corrects
those design deficiencies.  It's not perfect, perhaps, but getting as close
as 2.0 will ever come.  The change was painful, but necessary.

Bill





Re: rewrite and SSI's broken in httpd20 HEAD

2002-02-08 Thread Greg Ames

"Ian Kallen " wrote:
> 
> Just thought I'd send in some recently observed behavior...

thanks for the feedback.
 
> I was trying out SSI's on .html files
> I have +Includes in Options for htdocs && I tried the example syntax
> AddOutputFilter INCLUDES .html

...and what bad thing happens? SSI tags aren't parsed/expanded I assume?

we've got the following on daedalus, fwiw:


SetOutputFilter INCLUDES


> Also, I the rnd function in mod_rewrite appears to be broken.  Given a
> list of alternating choices, it's only ever picking the first one.  

any idea how long this has been broken on 2.0?  forever?

Greg



Re: [Patch]: to get the Ldap code building

2002-02-08 Thread Jeff Trawick

Ian Holsman <[EMAIL PROTECTED]> writes:

> Hi Paul.
> I've applied the apr-util config change.
> I dont have access (never tried) to httpd-ldap so you'll
> need to pester the list again for these changes.

AFAICT, anybody that can commit to httpd can commit to httpd-ldap.

Go for it, Paul.
-- 
Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site:
   http://www.geocities.com/SiliconValley/Park/9289/
 Born in Roswell... married an alien...



rewrite and SSI's broken in httpd20 HEAD

2002-02-08 Thread Ian Kallen <[EMAIL PROTECTED]>


Just thought I'd send in some recently observed behavior...

I was trying out SSI's on .html files
I have +Includes in Options for htdocs && I tried the example syntax
AddOutputFilter INCLUDES .html

It does work with .shtml though.

Also, I the rnd function in mod_rewrite appears to be broken.  Given a
list of alternating choices, it's only ever picking the first one.  The
1.3.x mod_rewrite appeared to truly randomize it's selection.  It's doing
this for main and subrequests.

cheers,
-Ian

-- 
Ian Kallen <[EMAIL PROTECTED]> | AIM/yahoo: iankallen





Re: [PATCH] enable static support binaries at build-time

2002-02-08 Thread Jeff Trawick

Aaron Bannert <[EMAIL PROTECTED]> writes:

> On Thu, Feb 07, 2002 at 02:12:42PM -0800, Justin Erenkrantz wrote:
> > On Thu, Feb 07, 2002 at 01:23:08PM -0800, Aaron Bannert wrote:
> > > This does _not_ add support for a static httpd, since that issue is
> > > not yet decided, but it should solve 7 of the 8 binaries that Ken was
> > > worried about. The "should httpd also be static" discussion can happen
> > > independently of this patch.
> > 
> > Personally, I agree that the httpd *can* be static, but not that
> > it *should* be static.  Can we just go ahead and add that while we're
> > at it?  IMHO, the real discussion is what is the default.  -- justin
> 
> I'm not so sure that it can be static on all platforms in the first place.
> My main concern is a missing symbol required by a module that isn't
> available in httpd or properly exported, which causes a runtime failure
> at some unknown time *after* the server appears to successfully start;
> but this could just be paranoia on my part.
> 
> I'd also rather not allow this discussion to block the above patch,
> since I think we'd all agree that it is acceptable.

Damn straight.  Commit already :)

Like Justin, I think it is goodness to have a configure option like
--static-httpd.  Obviously such a thought has no bearing on the patch
you posted.

I have the *feeling* that it is not good for binbuild.sh to use such
an option (--static-httpd) but I don't have a technical argument
behind that.

Do we all violently agree?

-- 
Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site:
   http://www.geocities.com/SiliconValley/Park/9289/
 Born in Roswell... married an alien...



Don't forget the testers

2002-02-08 Thread Rodent of Unusual Size

It seems to me that somehow we keep forgetting to let the
volunteer testers ({stable,current}[EMAIL PROTECTED])
know about our progress and that we're preparing to release..

BTW, those lists should probably get moved to @httpd.apache.org. :-)
-- 
#kenP-)}

Ken Coar, Sanagendamgagwedweinini  http://Golux.Com/coar/
Author, developer, opinionist  http://Apache-Server.Com/

"Millennium hand and shrimp!"



Re: [PATCH] XHTML/CSS support in mod_autoindex

2002-02-08 Thread Greg Ames

tom stuart wrote:



>  apache 2.0's
> mod_autoindex provides a remedy for this problem; however, 1.3 is the
> current stable version of apache, and it cannot produce valid XHTML
> directory listings.

yet more evidence that we _really_ need to get a stable Apache 2.0 (as in,
beta/GA with usable binaries) into widespread use.  Otherwise we're going to see
more and more pressure for new features in 1.3 which will eat into our available
time.  I am discouraged by the amount of churn in the 2.0 code base with
negligible benefit to users.

Greg



[PATCH] XHTML/CSS support in mod_autoindex

2002-02-08 Thread tom stuart

[filed a week ago in the bug database (PR#9693)]

>Description:
XML adoption is becoming increasingly widespread, and more and more
people want to build web sites that validate as XHTML. apache 2.0's
mod_autoindex provides a remedy for this problem; however, 1.3 is the
current stable version of apache, and it cannot produce valid XHTML
directory listings.

>Fix:
(patches can be downloaded from http://obsess.com/files/apache/)

below are patches against the current apache-1.3 and htdocs-1.3 cvs
modules to provide an implementation of and documentation for an
EmitXHTML index option and a StyleName configuration directive. this
provides a huge opportunity for visual formatting of directory listings,
as well as making sure that directory indexes validate along with the
rest of a web site and are simple for clients to automatically parse.
the intent was to have as little impact on mod_autoindex as possible,
leaving its behaviour entirely unchanged unless the new functionality is
explicitly invoked. code style has therefore been kept consistent with
existing mod_autoindex code.

unfortunately this feature involved touching httpd.h to add a define for
DOCTYPE_XHTML_1_0S (plus DOCTYPE_XHTML_1_0T and DOCTYPE_XHTML_1_0F while
we're in there) and http_core.c to make the  tags XHTML
compliant (just changing them from upper to lower case). i found it hard
to imagine the latter having any compatibility impact but it can be left
out if necessary; full XHTML compliance could then still be achieved by
turning ServerSignature off.

see additional ISO 8601 and HEADER/README comments and additional
patches further down.


Index: apache-1.3/src/include/httpd.h
===
RCS file: /home/cvspublic/apache-1.3/src/include/httpd.h,v
retrieving revision 1.352
diff -u -r1.352 httpd.h
--- apache-1.3/src/include/httpd.h  21 Jan 2002 19:29:37 -  1.352
+++ apache-1.3/src/include/httpd.h  4 Feb 2002 13:06:21 -
@@ -614,6 +614,15 @@
 #define DOCTYPE_HTML_4_0F "http://www.w3.org/TR/REC-html40/frameset.dtd\";>\n"
+#define DOCTYPE_XHTML_1_0S "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\";>\n"
+#define DOCTYPE_XHTML_1_0T "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\";>\n"
+#define DOCTYPE_XHTML_1_0F "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd\";>\n"
 
 /* Just in case your linefeed isn't the one the other end is expecting. */
 #ifndef CHARSET_EBCDIC
Index: apache-1.3/src/main/http_core.c
===
RCS file: /home/cvspublic/apache-1.3/src/main/http_core.c,v
retrieving revision 1.303
diff -u -r1.303 http_core.c
--- apache-1.3/src/main/http_core.c 16 Jan 2002 21:34:32 -  1.303
+++ apache-1.3/src/main/http_core.c 4 Feb 2002 13:06:23 -
@@ -2726,15 +2726,15 @@
 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, "" SERVER_BASEVERSION
- " Server at mailto:";,
+   return ap_pstrcat(r->pool, prefix, "" SERVER_BASEVERSION
+ " Server at mailto:";,
  r->server->server_admin, "\">",
- ap_get_server_name(r), " Port ", sport,
- "\n", NULL);
+ ap_get_server_name(r), " Port ", sport,
+ "\n", NULL);
 }
-return ap_pstrcat(r->pool, prefix, "" SERVER_BASEVERSION
+return ap_pstrcat(r->pool, prefix, "" SERVER_BASEVERSION
  " Server at ", ap_get_server_name(r), " Port ", sport,
- "\n", NULL);
+ "\n", NULL);
 }
 
 /*
Index: apache-1.3/src/modules/standard/mod_autoindex.c
===
RCS file: /home/cvspublic/apache-1.3/src/modules/standard/mod_autoindex.c,v
retrieving revision 1.121
diff -u -r1.121 mod_autoindex.c
--- apache-1.3/src/modules/standard/mod_autoindex.c 17 Nov 2001 03:27:09 - 
 1.121
+++ apache-1.3/src/modules/standard/mod_autoindex.c 4 Feb 2002 13:06:23 -
@@ -98,6 +98,7 @@
 #define NO_OPTIONS 256
 #define FOLDERS_FIRST 512
 #define TRACK_MODIFIED 1024
+#define EMIT_XHTML 2048
 
 #define K_PAD 1
 #define K_NOPAD 0
@@ -162,6 +163,7 @@
 array_header *ign_list;
 array_header *hdr_list;
 array_header *rdme_list;
+array_header *css_list;
 
 } autoindex_config_rec;
 
@@ -195,11 +197,37 @@
  * We include the DOCTYPE because we may be using features therefrom (i.e.,
  * HEIGHT and WIDTH attributes on the icons if we're FancyIndexing).
  */
-static void emit_preamble(request_rec *r, char *title)
+static void emit_preamble(request_rec *r, char *title, char *css_fname,
+ int emit_xhtml)
 {
-ap_rvputs(r, DOCTYPE_HTML_3_2,
- "\n \n  Index of ", title,
- "\n \n \n", NULL);
+request_