Re: PR42829

2008-05-30 Thread Sander Striker
On Fri, May 30, 2008 at 8:03 AM, Stefan Fritsch [EMAIL PROTECTED] wrote:
 On Friday 30 May 2008, Paul Querna wrote:
  https://issues.apache.org/bugzilla/attachment.cgi?id=21137 has
  been in Debian testing and unstable for about 6 months without
  problems. It is not an elegant solution but it works. Considering
  that is is not clear how an elegant solution would look like,
  including this patch might make sense.

 Please don't put these kind of patches into the debian apache
 packages, especially ones that don't exist in trunk.

 (Things that are committed to turnk, and just are awaiting
 backport, I'm less concerned about, but this patch is a behavior
 change at the core of the MPMs.)

 Bugs as grave as this one are not acceptable in Debian packages for
 extended periods of time. The bug report has been open for over 1
 year, I have attached my patch on 2007-11-16. It is marked as
 critical since 2008-01-16. If you don't want such patches in the
 Debian package, you need to fix such bugs faster (and comment on
 patches in bugzilla faster). Of course I understand that this is
 difficult because there are never enough people to fix bugs (we have
 the same problem).

To take it to the extreme, a fork being called 'Apache' isn't
acceptable either.  Please work with us here, even though it's a very
low barrier for you to put patches in your package, much lower than to
get it applied upstream (here).

 I admit that I should have followed up on the discussion in February,
 but I was quite busy and then forgot about it.

Cheers,

Sander


Re: dtrace probes for 2.2.x

2008-05-05 Thread Sander Striker
On Mon, May 5, 2008 at 8:31 PM, Paul Querna [EMAIL PROTECTED] wrote:
 Mads Toftum wrote:

  Theo just announced dtrace probes for httpd:
 
  http://www.opensolaris.org/jive/thread.jspa?threadID=59306tstart=0
 
  I wouldn't mind seeing those (or something similar) make it into trunk.

  +1, this would be very nice. I'd be happy to help shepherd it in.

  I believe we would need to get a CLA from Theo or OmniIT (don't think it
 would be a problem if we asked nicely :P)

  At the very least, they would need to submit it as a .patch to this list,
 saying that we can use it.

Well, there you have it :)

Cheers,

Sander


Re: mod_serf is in trunk

2007-11-13 Thread Sander Striker
On 11/13/07, Paul Querna [EMAIL PROTECTED] wrote:
 I've added mod_serf in r594425:
 http://svn.apache.org/viewvc?view=revrevision=594425

Nice!

 I've grown exceptionally... tired of looking at mod_proxy.  mod_serf is
 nice and tight at 440 lines or so.

A cool low number.  Fits snugly with the idea of having httpd 3.0 revolving
around a serf core.

 With just a little more work, I think it could be a production level
 reverse proxy.

 Oh yeah, and death to ProxyPass, ProxyPassMatch and all similar
 directives that should just go inside Location Blocks.  mod_serf will
 put everything inside a location block like this:

 Location /foo
   SerfPass http://www.exmaple.com/
   SerfPreseveHost On
   SerfReversePass off
   SerfTimeout 5
 /Location

 So no more semi-global configurations options like mod_proxy has.

 Thoughts?

Cool addition, definitely worth exploring further.

Sander


Re: [PATCH]: mod_cache: don't store headers that will never be used

2007-07-30 Thread Sander Striker
On 7/31/07, William A. Rowe, Jr. [EMAIL PROTECTED] wrote:
 Niklas Edmundsson wrote:
  On Mon, 30 Jul 2007, Niklas Edmundsson wrote:
 
  However, if stuff is really depending on Date/Expires being what it
  thinks it is (*shiver*) then I guess there won't be any other options...
 
  Here's a version with a config directive, defaults to disabled.

 Silly Q; a directive?  Or a env var that can be scoped in interesting
 ways using mod_setenvif and/or mod_rewrite?

 Most of our proxy behavior overrides are in terms of envvars.  They are
 much more flexible to being tuned per-browser, per-backend etc.

Directive, envvar, I don't think Niklas cares much.  Can we make up our
mind please?

Sander


Re: mod_cache: Don't update when req max-age=0?

2007-05-24 Thread Sander Striker

On 5/24/07, Niklas Edmundsson [EMAIL PROTECTED] wrote:

On Tue, 22 May 2007, Henrik Nordstrom wrote:

 tis 2007-05-22 klockan 11:40 +0200 skrev Niklas Edmundsson:

 -8---
 Does anybody see a problem with changing mod_cache to not update the
 stored headers when the request has max-age=0, the body turns out not
 to be stale and the on-disk header hasn't expired?
 -8---

 My understanding:

 It's fine in an RFC point of view for the cache to completely ignore a
 304 and not update the stored entity at all. But the response to this
 request should be the merge of the two responses assuming the
 conditional was added by the cache.

This is in line with my understanding, and since the response-merging
is being done today the only change that would be done is to skip
storing the header to disk. I think it would be wise to only skip the
storing for the max-age=0 case though.


Why limit it to the the max-age=0 case?  Isn't it a general improvement?

Sander


Serf, WAS: Re: AW: AW: svn commit: r378032 - in /httpd/httpd/trunk: CHANGES modules/proxy/mod_proxy_http.c modules/proxy/proxy_util.c

2006-02-20 Thread Sander Striker
Plüm wrote:
 I think the SSL problem is caused by throwing away the conn_rec
 entry for the backend and create a new one for each request.
 That does not sound right, but I admit that keeping it must be
 carefully examinated due to several possible issues. Two
 that I can see immeditately are:
 
 1. memory pools
 2. filters
 
 For me that puts the question on the table if using fake request_rec
 and conn_rec structures for the backend connections is really a good
 idea. This misuse already leads to problems in other areas.
 But reworking this will take much time and work and is only mid to
 long term. Might be easier if we have a http / https client library
 as part of httpd or apr-util.

Something like this maybe:

  http://svn.webdav.org/repos/projects/serf/trunk/

It started out to become apr-serf, made a jump to the short-lived
Commons, and ended up at webdav.org.  There is a current effort
by Justin Erenkrantz to get Serf completed, or at least complete
enough to complete ra_serf, a Subversion remote access library.
I expect that with a couple of months the churn is gone, and its
API stable enough to use here in HTTP Server land.

Sander


Re: 2.07-rc4 available for testing

2006-02-10 Thread Sander Striker

+1, passes 'make test' on Ubuntu Linux 5.10.

Thanks,

Sander


Re: mod_proxy, another case of ignoring the filter stack?

2006-01-03 Thread Sander Striker

Brian Akins wrote:

Sander Striker wrote:


Ok, let me tell you why I want it.  I want to implement a directive
called CacheErrorServeStale, which, when it hits the CACHE_SAVE filter
say with a 503 Service Temporarily Unavailable, and has a 
cache-stale_handle,

continues as if it would have received a 304 Not Modified.


That's one use of the request_status hook in mod_proxy.  If mod_cache 
registered a handler for it, it could handle all instances where the 
proxy fails.


No, mod_cache doesn't have to know what the origin is.  It can be
anything from a custom handler, a cgi, etc.  This list happens to
include mod_proxy, but I don't think we need to handle mod_proxy
any differently.

Rudigers suggestion of pushing an error bucket down the filter
stack seems the best solution, which I'm working on implementing.

Sander


Pools bug?, WAS: Re: Event MPM: Spinning on cleanups?

2005-12-31 Thread Sander Striker

Roy T. Fielding wrote:

On Dec 30, 2005, at 5:51 PM, Brian Pane wrote:


I haven't been able to find the bug yet.  As a next step, I'll try  using
valgrind on a build with pool debugging enabled.



On entry to allocator_free, if

   (node == node-next  node-index  current_free_index)

is true, then the do { } while ((node = next) != NULL);
will go into an infinite loop.  This is because

if (max_free_index != APR_ALLOCATOR_MAX_FREE_UNLIMITED
 index  current_free_index) {
node-next = freelist;
freelist = node;
}

does not update current_free_index.  I don't know if that is the
problem, but it may be the symptom.

Roy


Hmm, I'll go over the pools code once more to see if there really
is an obscure edge case bug hitting us.

Sander


Re: mod_proxy, another case of ignoring the filter stack?

2005-12-29 Thread Sander Striker

Ruediger Pluem wrote:


On 12/29/2005 02:11 AM, Sander Striker wrote:

[..cut..]



First it doesn't seem to be the case that mod_proxy actually
sets r-status in the case of an error (service temporarily
unavailable caused by ProxyTimeout for instance).  This may
not matter for a handler, but...



Just for my understanding: Is it really needed to set r-status in these
cases? Isn't it sufficient if the handler just delivers the status code
as return value in this case?



Secondly in case we hit the cleanup phase (for example when
we hit an error like above), mod_proxy doesn't allow filters
that were set up a chance to run.



I remember myself that we both worked on a similar problem with the default 
handler
about 6 month ago:


Yeah, I recalled that discussion as well and thought: hey, more of the same.


http://mail-archives.apache.org/mod_mbox/httpd-dev/200505.mbox/[EMAIL PROTECTED]

At least in the default handler case I faced some problems with the error page 
handling if
the EOS was sent down the filter chain for the error case by the handler.


Hrmpf.  I kindof hoped we finally resolved that, but I guess not.


So I am not convinced right now that doing so is a good idea.


Ok, let me tell you why I want it.  I want to implement a directive
called CacheErrorServeStale, which, when it hits the CACHE_SAVE filter
say with a 503 Service Temporarily Unavailable, and has a cache-stale_handle,
continues as if it would have received a 304 Not Modified.

Ofcourse, this won't work if the cache save filter is never hit.

Sander


mod_proxy, another case of ignoring the filter stack?

2005-12-28 Thread Sander Striker

Hi,

I'm timing out on this one, but I thought I'd throw it in here in
case someone has a bright idea on what is actually going on...

First it doesn't seem to be the case that mod_proxy actually
sets r-status in the case of an error (service temporarily
unavailable caused by ProxyTimeout for instance).  This may
not matter for a handler, but...

Secondly in case we hit the cleanup phase (for example when
we hit an error like above), mod_proxy doesn't allow filters
that were set up a chance to run.

Hereby a tiny patch to fix these issues, though I'd like some
feedback whether this is the correct spot to do this in mod_proxy.

Thanks,

Sander

Index: modules/proxy/mod_proxy.c
===
--- modules/proxy/mod_proxy.c   (revision 359556)
+++ modules/proxy/mod_proxy.c   (working copy)
@@ -790,6 +790,18 @@

proxy_run_request_status(access_status, r);

+if (!r-eos_sent) {
+apr_bucket_brigade *bb;
+apr_bucket *e;
+
+r-status = access_status;
+
+bb = apr_brigade_create(r-pool, r-connection-bucket_alloc);
+e = apr_bucket_eos_create(bb-bucket_alloc);
+APR_BRIGADE_INSERT_TAIL(bb, e);
+ap_pass_brigade(r-output_filters, bb);
+}
+
return access_status;
}



Re: [PATCH] mod_proxy run cleanup on balancer failure

2005-09-29 Thread Sander Striker

[EMAIL PROTECTED] wrote:

As I try to improve my Apache code style awareness. What is wrong with the
formatting?


http://httpd.apache.org/dev/styleguide.html

The basic objection to your patch would be that statements after
your if's; put them on the next line.

HTH,

Sander 




Regards

Rüdiger

Jim Jagielski wrote:


Except for the formatting +1 :)

On Sep 29, 2005, at 12:01 PM, [EMAIL PROTECTED] wrote:



What about the following patch? I think it should address all the  things
discussed.

Regards

Rüdiger

Index: mod_proxy.c
===
--- mod_proxy.c (Revision 280422)
+++ mod_proxy.c (Arbeitskopie)
@@ -679,8 +679,20 @@
char *url = uri;
/* Try to obtain the most suitable worker */
access_status = ap_proxy_pre_request(worker, balancer,  r,
conf, url);
-if (access_status != OK)
-return access_status;
+if (access_status != OK) {
+/*
+ * Only return if access_status is not 
HTTP_SERVICE_UNAVAILABLE

+ * This gives other modules the chance to hook into the
+ * request_status hook and decide what to do in this 
situation.

+ */
+if (access_status != HTTP_SERVICE_UNAVAILABLE) return 
access_status;

+/*
+ * Ensure that balancer is NULL if worker is NULL to 
prevent

+ * potential problems in the post_request hook.
+ */
+if (!worker) balancer = NULL;
+goto cleanup;
+}
if (balancer  balancer-max_attempts_set  !max_attempts)
max_attempts = balancer-max_attempts;
/* firstly, try a proxy, unless a NoProxy directive is 
active */











Re: Apache 2.1/2.2/2.3...

2005-09-16 Thread Sander Striker

Jim Jagielski wrote:

William A. Rowe, Jr. wrote:


Jim Jagielski wrote:


Could someone explain to me what the current thinking is about
the httpd SVN trunk? Is it 2.3.0? 2.1.x? Where does 2.2 fit
in all this? So patches made to HEAD/trunk need to be
backported to 2.2, and 2.1 and then 2.0 ???

Does anyone else think this is more complex than it
needs to be? :)


I thought so... but the list disagreed and nobody else had any
issues with the branch.  So trunk is 2.3-dev.


My confusion deals with how patches are synced... Patches I applied
to TRUNK made it to the 2.2 branch after it was branched, it appears.
I fear that just as viable patches are being missed from being
folded into 2.0, it will be even worse between TRUNK and 2.2, simply
because they track SO close now. Or, conversely, stuff folded into
the 2.2 branch may not end up in trunk.


The latter should never happen.  Develop on trunk, merge back to
stable: 2.2 branch, or 2.2 branch and 2.0 branch.

At least, that's what I envisioned after all the discussion on how
to move on with the branch/versioning scheme.


Sander


Re: svn commit: r220307 - in /httpd/httpd/trunk/modules: metadata/mod_setenvif.c ssl/mod_ssl.c ssl/mod_ssl.h ssl/ssl_expr_eval.c

2005-07-22 Thread Sander Striker

Joe Orton wrote:

On Fri, Jul 22, 2005 at 12:11:56PM -, Martin Kraemer wrote:


Author: martin
Date: Fri Jul 22 05:11:55 2005
New Revision: 220307

URL: http://svn.apache.org/viewcvs?rev=220307view=rev
Log:
Allow extraction of the values of SSL certificate extensions into
environment variables, so that their value can be used by any
module that is aware of environment variables, as in:



So what is the point in posting patches for review if you don't actually 
wait for anyone to review them before committing?


That would be my fault.  We're here at ApacheCon and when Martin said
he posted to the list first I asked him why he didn't commit to trunk
directly, since that is C-T-R.  It's a reasonable smallish patch, with
little impact on existing functionality; hence the nudge.


Sander


[Fwd: [PATCH] 404 does not delete cached entries using mod_disk_cache]

2005-07-21 Thread Sander Striker

Forwarding for Rüdiger, since he's having some problems posting.

Sander

 Original Message 
Subject: [PATCH] 404 does not delete cached entries using mod_disk_cache
Date: Thu, 21 Jul 2005 14:52:19 +0200
From: Plüm, Rüdiger, VIS [EMAIL PROTECTED]
To: [EMAIL PROTECTED]

After having a discussion with various people (Sander, Justin, Paul) at the 
ApacheCon
I submit a new version of my 404 does not delete cached entries using 
mod_disk_cache:

Some comments:

1. In the case that there is an Apache generated error message the content 
filters get
  removed. This problem is now solved by adding a protocol filter 
(CACHE_REMOVE_URL)
  in the quick handler each time we add the cache save filter. If the cache 
save filter
  caches the response from the backend it just removes this filter from the 
chain.
  As the request CACHE_REMOVE_URL is running on a request that might be 
different fromi
  the one where the cache entry should be flushed, the cache request rec is 
taken from
  the filter context where it has been saved during insertation.


2. I adjusted the cache provider API for remove_url as I needed to have a pool
  and (in case of mod_disk_cache) the file name present at remove_url. Thus
  the prototype for remove url does now look like the following:

  int (*remove_url) (cache_handle_t *h, apr_pool_t *p);

Comments / thoughts?

Regards

Rüdiger




new_404_patch_trunk.diff
Description: Binary data


Re: [vote] Revoke R-T-C [was: svn commit: r219520]

2005-07-19 Thread Sander Striker

William A. Rowe, Jr. wrote:

At 12:51 PM 7/18/2005, Roy T. Fielding wrote:



Or you could simply keep working on trunk like everyone else
and let releases be made when a tarball gets three +1s.
Version numbers are cheap.  Telling the entire group to stop while
you work on the next big patch is extremely expensive.



Ok, so we are now three levels deep?

  /trunk

C-T-R

  /branches/2.2.x  [misnomer, we don't have a beta yet]

R-T-C ?  If not now, when?

  /branches/2.0.x

R-T-C


There should be natural migration to 2.2.x.  2.0.x should be
considered closed for new features, that's what the development
line is for.

Triple commits to fix one, one-line segfault?  Well, this isn't 
workable.  I think lack of progress shows it's not workable.


The lack of progress is not due to having to commit to multiple
branches.


Some of us, trawick, orton and myself come to mind, are still up
for supporting our current users.


You make it sound like everybody else is dissing our current users.
This broad characterization is not exactly productive.

As it is, backports aren't 
reviewed, or committed once they are (I even split STATUS just to
call out approved-yet-not-backported patches :-).  


The person who proposed the backport is expected to perform the
backport when it has enough votes.  The person casting the 3rd
vote sometimes does the backport.  And there are cases when a
friendly RM clears the slate when it comes to approved proposed
backports.


Some were working on the stable release of 2.2.x, pquerna comes
firstmost to mind.


It isn't just Paul who wants to see 2.2.x finally materialize.
We've been trying to get 2.2.x out for quite a while.  We've come
very close a couple of times, and because we like consensus we've
not pushed too hard.  I for one don't want to sit here again next
year and still discuss what needs to be fixed/refactored/whatever
before 2.2.x can be released.  Let's just move on.  2.2.x is already
a lot better than 2.0.x; our users deserve a release.


Great progress is afoot, I see that release
going beta very soon, the number of issues has dropped quite
significantly.  [Although we have 29 PatchAvailable issues, not
sure how many correspond to 2.2 commits not backported.]



And others are yet working on 2.4.x.


2.3.x, leading up to 2.4.x.  As of the branch you are one of the
people working on that, what's the issue with that?


So, I call a vote that we drop R-T-C altogether.  It's pretty clear
to me that those interested in current / near-future / far-future
users are almost three distinct groups.  It will be up to those
small groups to call out and vote on changes within our individual
domains.


Define current, near-future, far-future.

current == 1.3?
near-future == 2.0?
far-future == 2.x?

As it stands, only trunk should be C-T-R IMO.  Stability on the
_stable_ branches needs to be ensured.


The question is; would we rather be saturated by commits we feel
need review, or exhausted waiting for commits to be approved?


The latter, but again, it's a broad characterization.


This means code might be committed to 2.0.x and never fixed in head,
it might mean code is fixed in head and never considered for backport
to our current users, but all in all, it beats the situation today.


No it doesn't.  trunk needs to be the branch that has the latest
code, and is most complete.


I'm not suggesting that the 2.0.x users would entertain a break to
ABI compatibility.  But I'm suggesting that parallel development
doesn't work when most folks are focused on tangential development.



Sander


MMN, versioning, WAS: Re: svn commit: r219372 - in /httpd/httpd/trunk ...

2005-07-17 Thread Sander Striker

William A. Rowe, Jr. wrote:

At 12:12 AM 7/17/2005, [EMAIL PROTECTED] wrote:


Author: ianh
Date: Sat Jul 16 22:12:10 2005
New Revision: 219372

URL: http://svn.apache.org/viewcvs?rev=219372view=rev
Log:
This patch adds a new hook (request_status) that gets ran in proxy_handler
just before the final return.  This gives modules an opportunity to do
something based on the proxy status.
[...]
new hook -- so mmn bump.. i made it a major one, hope thats ok 



We only bump major when we -change- an existing API or drop an
API which is no longer supported.  E.g. anyone using the old
major might have been using something we no longer provide.

A new structure member (at the end of an httpd-allocated structure)
or new function are minor bumps; which this patch falls under.
The user updating should not need to update their module, because
the expectations when such modules were built have not changed.


Well honestly, the way the MMN is bumped has been very arbitrary.

If we want to go by the rules that you describe, it needs to get
documented.

One might actually wonder what the MMN is good for nowadays anyway,
given that we have provider versioning and better defined overall
versioning (ie. API compatibility between minor versions).


Sander


Re: mod_cache caching the 301 Moved Permanently

2005-07-12 Thread Sander Striker

[EMAIL PROTECTED] wrote:

Hansjoerg Pehofer wrote:


On Thu, Jul 07, 2005 at 09:22:25PM +0200, [EMAIL PROTECTED] wrote:



Have you checked 
http://mail-archives.apache.org/mod_mbox/httpd-dev/200504.mbox/[EMAIL 
PROTECTED]   ?

It contains a small patch which was not discussed any further here.



Hi,

i tried your patch today. Unfortunately 
cache-handle-cache_obj-info.status isn't set during cache_out_filter(),

but cache-handle-status is.
(It gets set in mod_disk_cache.c:499 during recall_headers().)



Many thanks for the feedback and the corrected patch. I checked my patch again
and must admit that it does only make sense on Apache 2.1. For Apache 2.0.x 
your patch
is the correct one.

Question to the mod_cache gurus:
While mod_mem_cache restores the status during recall_headers in Apache 2.0.54
it seems that mod_mem_cache does not do this in Apache 2.1.x (Maybe fixed 
meanwhile
my latest revision of mod_mem_cache.c is 178625 and viewcvs is currently down), 
whereas
mod_disk_cache still does this in Apache 2.1.x in file_cache_recall_mydata 
which is
called by open_entity. Is this behaviour intended?


2.0 is quite a bit behind when it comes to mod_cache.  mod_mem_cache has gotten
a lot less attention in 2.1 as mod_disk_cache has.

That said, in 2.1, I think we should restore status in mod_cache, not in the 
cache
providers.  Ofcourse, if that isn't possible for whatever reason, the 
restoration
has to be done in _all_ cache providers.  The above might explain the 
discrepancies...


Sander


Re: mod_mbox and i18n

2005-07-09 Thread Sander Striker

Maxime Petazzoni wrote:

There's no reason the strings have to be hard coded into the C code.
You can pull them out into some sort of language specific file, just
like any other C program that worries about i18n.


This would mean more file I/O every time mod_mbox runs, and maybe
using an external library such as gettext (quite heavy stuff for
mod_mbox needs). Maybe some home-made system, but I fear that it won't
be fast enough.


?  Why not?  You can cache the results per language in memory.


Honestly, that seems like a far better solution to me.  XML+XSLT
seems like extreme overkill if all you want is a way to have the
strings change on a per-language basis.


I did not proposed XML+XSLT as a solution to i18n problems. It is just
an interesting system that can provide both templating-like mechanism
and i18n facilities (still, not as clean as I would like).


Quoting from your previous mail:


- With the XML+XSLT output, these strings are in the XSLT so they can
  be easily translated. Two sub-solutions are available :
  * provide a full XSLT per language


Not maintainable if you ask me.  Code duplication is something we want
to avoid, and having to push xsl changes to n translations seems like
a bad idea.


  * use variables for strings and a sub XSL defining this variables
depending on the language.


This is, at least in my mind, not going to be one bit faster than using
(cached) gettext.

FWIW, I'm not too worried about i18n and mod_mbox.  It's only the interface
changing language anyway.


Sander


Re: [vote] MODULE_MAGIC_COOKIE

2005-07-08 Thread Sander Striker

William A. Rowe, Jr. wrote:

At 01:33 PM 7/1/2005, William A. Rowe, Jr. wrote:


I have bumped the MODULE_MAGIC_COOKIE for 2.1.7.  This will be
bumped again upon 2.2 release to AP22.



-#define MODULE_MAGIC_COOKIE 0x41503230UL /* AP20 */
+#define MODULE_MAGIC_COOKIE 0x41503231UL /* AP21 */



The question remains, so please choose one;

  [ ] Revert the cookie to AP20 for httpd-2.1 and httpd-2.2
  [ ] Leave the cookie at AP21 and bump again to AP22 w/httpd-2.2
  [X] Get it over with already and bump now to AP22 for httpd-2.1


Sander


Re: [VOTE] mod_ftp for HTTP Server Project

2005-07-07 Thread Sander Striker

Jim Jagielski wrote:

Now that Covalent has released it's ERS 3.0 distribution, mod_ftp is now
officially offered for donation/incubation/graduation to the ASF.

mod_ftp (previously Covalent FTP) is an Apache 2.0 Protocol Module which
implements FTP (RFCs 959, 1123, 2228, 2389), including such features
as FTP over SSL, jailing logged-in users, extended logging, firewall
awareness and limiting logins. As Covalent FTP, it has been used by
numerous well-known F500 companies, and is such a real-world
protocol module, and not simply an academic exercise (this is not
a comment on any other protocol modules in existence, but a statement
to ensure that the module has been used and tested in real-world
environments by major clients).

The entire code-base, including Perl test scripts for inclusion in  
httpd-test, is available and ready for donation into the ASF svn repos.


Is there anything left for the community to work on?  Or rather, do you
think there is enough to do to attract a few (new) developers?

Assuming the answer is yes:


I therefore Call A Vote on whether we should support mod_ftp for
inclusion into the Incubator and if we should accept mod_ftp upon
graduation from the Incubator. 


+1.


Sander



Re: NOTE To All Dev's!!!

2005-07-01 Thread Sander Striker

William A. Rowe, Jr. wrote:

I have bumped the MODULE_MAGIC_COOKIE for 2.1.7.  This will be
bumped again upon 2.2 release to AP22.


-1.


The modules are significantly disjoint, and testing for the
mmn date and level between a 2.0 and 2.1 module will not produce
the desired results.


Given that 2.0 should remain binary compat, there is no need to bump
the magic cookie.


Please forgive any inconvenience this may cause, but you must rebuild
all in order to continue using modules against 2.1.


I don't understand the need.  Let's discuss this first.

Thanks,

Sander


2.0.55, WAS: Re: 2.1.6 is available for veto^H^H^H^Hvoting

2005-06-27 Thread Sander Striker

William A. Rowe, Jr. wrote:

[...]

My goal is to tag and roll 2.0 by Friday for release early next
week, unless the fixes are ready sooner.  There is a list of 
already-accepted patches in status, if anyone wants to pick some

low hanging fruit for 2.0.


Bill, are you volunteering for RM?  I'm happy to RM FWIW, and do
the 2.0.55 TR on friday.  Which, by the way, will imply release
around wednesday the following week given our regular own dogfood
test.

Thanks,

Sander


Re: Proposal: Drop .Z dist file for 2.1/2.2

2005-06-25 Thread Sander Striker

Paul Querna wrote:

We ship with 3 to 4 different packages of the source for each release.

Currently, we ship bzip2(.bz2), gzip(.gz) and old school compress (.Z) 
for each release. In addition, we do get .zip files for win32 too.


Sizes:
12Mhttpd-2.1.6-alpha.tar.Z
5.4Mhttpd-2.1.6-alpha.tar.bz2
7.4Mhttpd-2.1.6-alpha.tar.gz

So, .Z is more than twice as big as bz2.  I don't see any reason to keep 
including it, since every modern system has gzip, or can get it.


Any objections to only shipping gzip and bzip2?


None from me!

Sander


Re: [Fwd: Re: 404 does not delete cached entries using mod_disk_cache]

2005-06-20 Thread Sander Striker

[EMAIL PROTECTED] wrote:

Sorry for being persistent, but any news / comments on this?


Thanks for being persistent and patient.

Unfortunately, no, I don't think there is any news yet.  I have
gone over your patch, but not detailed enough to commit it.
I'll give it another shot before friday.

Sander



Re: HTTPD 2.1 (Head) Build issues for NetWare...

2005-06-16 Thread Sander Striker

William A. Rowe, Jr. wrote:

At 09:43 AM 6/16/2005, Brad Nicholes wrote:


  I have run into this one also and I still don't understand why the make is 
all of the sudden asking for yacc when this all worked before.  Since neither 
mod_ssl nor BSD sockets are part of the standard NetWare build, this isn't a 
show stopper.  But I would like to understand what happened and how to fix it.



If I had to guess;

 * The most recent tarballs have been pulled together with SVN's
   absolutely bogus default of [miscellany] use-commit-times = no
   (see your ~/.svn/config, where you can uncomment this section
   and option).


Bill, I wish you would stop calling things bogus without doing the
research why this is the default.


   This means they are checkout dates, which are entirely useless.
   It means any dependencies that WOULD be resolved by our commit
   order are no longer resolved and force rebuilds.



 * There was an extra 'touch' to the datestamps for these files
   at one time; this may not have occurred in the last package.


The scripts in httpd-dist/ to create the packages most certainly
do touch the files.


 * Depending on the tool used to unpack the source tarball, that
   tool might not be date preserving; this would invalidate anything
   we attempted above to prevent rebuilding these targets.



Sander


Re: HTTPD 2.1 (Head) Build issues for NetWare...

2005-06-16 Thread Sander Striker

William A. Rowe, Jr. wrote:

At 09:59 AM 6/16/2005, Sander Striker wrote:


William A. Rowe, Jr. wrote:
* The most recent tarballs have been pulled together with SVN's


 absolutely bogus default of [miscellany] use-commit-times = no
 (see your ~/.svn/config, where you can uncomment this section
 and option).


Bill, I wish you would stop calling things bogus without doing the
research why this is the default.



That's reasonable; does anyone want to point me to the thread
that justified this as the best-choice default?  [I suspect I
asked about this once before.]


I remember it was a long one, but I don't have a pointer handy
at this point.


Back to httpd land; the question is --- is this the right choice
for *our tarballs*?  Which may or may not be related to the question
above.  In any case; this is useful metadata even for end users who
build the package for the reasons I mentioned; does anyone have
a desire/justification to lose the commit dates and use the RM's
checkout date?  


Note that the scripts use svn export.  IIRC that does default to use
the last commit time, but I could be wrong.

Sander


Re: problems w/ geronimo wiki (cache???)

2005-06-06 Thread Sander Striker

Joshua Slive wrote:
[Bringing [EMAIL PROTECTED] into the discussion; we just activated 
mod_disk_cache from 2.1-head on the apache wiki and it is broken.]


Geir Magnusson Jr. wrote:


We're having problems now getting to the geronimo wiki

http://wiki.apache.org/geronimo/

some people get content, some people get nothing.  Any ideas?



mod_cache is returning:
HTTP/1.1 304 Not Modified
Date: Mon, 06 Jun 2005 12:56:11 GMT
Server: Apache/2.1.5-dev (Unix)
Connection: close

to ordinary non-conditional GET requests.  The result is obviously a 
blank page in the browser.


So obviously mod_cache is not dealing correctly with 304 responses from 
the back-end, and is therefore rather useless at the moment.  I've 
turned it off on the wiki.


Any suggestions from [EMAIL PROTECTED]


I could have sworn we had solved this a few months ago.  I've seen this
working with 2.1.4-dev, but I'd need to track back what rev.  I don't
expect to be able to look at this before wednesday :/

Justin, how's your stack of round tuits?


Sander


Re: problems w/ geronimo wiki (cache???)

2005-06-06 Thread Sander Striker

Justin Erenkrantz wrote:

On Mon, Jun 06, 2005 at 03:40:41PM +0200, Sander Striker wrote:


[...]

Can we keep the caching running on port 81 on ajax?  That'll make it easier to
debug if I do get some time.  We'd really need to see what the
request/response chain is.  I thought someone said that MoinMoin doesn't know
how to handle 304s - if so, this doesn't make much sense.  -- justin


Yes, that's a good point.  Where is this 304 coming from if not from Moin?
The core server code nor the caching code generate a 304 when the request
is non-conditional.

Sander


Re: svn commit: r180333 - /httpd/httpd/branches/ssl-fips-dev

2005-06-06 Thread Sander Striker

William A. Rowe, Jr. wrote:

At 11:43 AM 6/6/2005, Paul Querna wrote:


André Malo wrote:



Sandbox of httpd/trunk/modules/ssl/ for OpenSSL 0.9.7 fips integration
development

Added:
 httpd/httpd/branches/ssl-fips-dev/
   - copied from r180332, httpd/httpd/trunk/modules/ssl/


I'm not sure about any policy, but it seems better to me to branch off the 
whole trunk, not just a subtree (you never know, what needs to be modified 
finally)


I agree with nd.



My thinking was; 98% of the changes will be to modules/ssl code
itself.  90% of the remainder are likely to be incidental bug
fixes than Ben, I or anyone else working on the tree encounter.
The other 10% is autoconf detection.

Most autoconf can be localized in modules/ssl, but for the rest
of the autoconf issues, they should be no-ops if this code is
not adopted.  E.g. detecting if libcrypto.so.fips (the signature
hash file) exists.

Contrawise, most bug fixes to head will be better reviewed if 
those of us working in this branch pick them up immediately.

But if concensus says make this a full tree, I'll be happy to
oblige.


Personally I prefer entire tree branches.


Sander


Re: 404 does not delete cached entries using mod_disk_cache

2005-05-24 Thread Sander Striker

[EMAIL PROTECTED] wrote:

Felix Enning pointed me again to an interesting question regarding mod_cache / 
mod_disk_cache:

The following situation was observed with Apache 2.0.54 (same applies to trunk):

1. A resource gets cached.
2. The original resource gets removed from the backend (e.g on a proxied 
webserver,
   on the local disk, wherever).
3. The client sents a request that forces the cache to revalidate this entry.
4. The 404 received from the backend is correctly passed back to the client by 
mod_cache.
5. The client sents a request that does NOT require the cache to revalidate 
this entry.
6. Cache delivers the old resource that had been cached before, instead of a 
404.

Is this behaviour intended and compliant with the RFC?


Not to my knowlegde.  Given that mod_mem_cache and mod_disk_cache are doing
different things is pretty much indicative that one of the two is wrong ;).


The reason for this behaviour is that the remove_url function of mod_disk_cache 
is a dummy function
(BTW: mod_mem_cache seems to really remove the cache entry in remove_url).
If this behaviour is not intended I would have a look into this to create a 
patch.


Please do!

Sander


Re: mod_cache deliver 304 instead of (not so) stale cache entries

2005-05-22 Thread Sander Striker

[EMAIL PROTECTED] wrote:

Sander Striker wrote:

[EMAIL PROTECTED] wrote:


[...]

Might as well not do revalidation in that case; actually that would be
better, because the 304's that are returned may not even be correct.  The
conditions are replaced with the ones from the cache, remember?



Yes, I remember, but I must admit that I am slightly confused now. When should
we avoid revalidation with the conditionals from the cache?


Well, we shouldn't; it's a workaround for a different bug.  The workaround 
however
would be to _never_ use the conditionals from the cache.


If the original request does not contain any conditionals? This is what my 
patch does


What I am trying to point out is that you can't use the conditionals from the
cache at all if the CACHE_SAVE filter isn't being invoked.  You will get a 304 
based
on the conditionals from the cache, which may not be correct with respect to
the conditionals from the request.


[..cut..]

I can see the application.  Are you up for submitting a patch to the
default handler? :)



I have attached a patch for this. Two comments:

1. I am not very familar with buckets and brigades, so please check closely if
   I did it correct (my tests make me think so). If I did something wrong 
feedback
   is appreciated such that I can do it better next time :-)
2. ap_meets_conditions returns 3 different values: OK, HTTP_PRECONDITION_FAILED 
and
   HTTP_NOT_MODIFIED. In my patch I assume that in all cases the response should
   go down the filter chain.


I'll review your patch.  I'll massage it into shape if needed, given your
comments.

Thanks,

Sander


Re: mod_cache deliver 304 instead of (not so) stale cache entries

2005-05-21 Thread Sander Striker

[EMAIL PROTECTED] wrote:

[...]

I found out that during the second request which returns a 304 the CACHE_SAVE 
filter,
which would be able to deal with such things (- (not so) stale cache entries) 
is never
used.
The change of the conditionals in cache_storage.c starting at line 269 leads to 
the creation
of a 304 code in the default handler and the default handler does not pass 304 
responses down
the filter chain.


Then that is a bug.  We've seen the same problem in mod_proxy.


So the 304 response is delivered instead of the (not so) stale cache entry. So 
I created the following
patch to cache_storage.c which prevents the modification or better creation of 
any conditionals
if the original request did not contain any:


No, this is what we were trying to prevent.


I am aware that this forces a full request to the backend for requests without 
conditionals
to expired resources. So I am not very happy with this solution. Maybe it is 
better to let
the default handler pass 304 responses down the filter chain.


Might as well not do revalidation in that case; actually that would be better, 
because the
304's that are returned may not even be correct.  The conditions are replaced 
with the
ones from the cache, remember?


Some might also say that my configuration seems stupid (do disk caching for 
static resources,
which was actually born during some tests for another problem I am currently 
hunting), but
this problem also applies to other providers than mod_disk_cache and the 
document root might
be on a non local disk.


I can see the application.  Are you up for submitting a patch to the default 
handler? :)

Sander


Re: [VOTE] 2.2.0 Alpha on Friday

2005-05-13 Thread Sander Striker
Andr Malo wrote:
I'm seeing it like this:
Once forked off, 2.1.x would be *stabilizing* branch, that finally leads
to a 2.2.x branch, when we feel, it's stable (svn mv 2.1.x 2.2.x?). From the 
2.1.x branch we tag alpha and beta releases; from *stable* 2.2.x rc and 
stable release. I think that's exactly the point of the odd/even system - 
2.2.0 being a GA version.

I see (now :-) that we should have already branched 2.1.x the first time we 
released a 2.1 version.
+1.
Sander


Re: [PATCH] mod_cache, don't always run as a quick handler.

2005-05-12 Thread Sander Striker
Paul Querna wrote:
Okay, because of the quirky behavior of a 'sometimes' cached page, this
one had me going in circles for a little while.
What this patch does, is add a new command to mod_cache,
'CacheRunAfterOthers_RenameThisCmd'[1]
The effect this has is to run mod_cache as a normal handler, instead of
a Quick Handler.  This means all the other Translate Name, Map to
Storage, and Fixup hooks are ran.  These include mod_rewrite and
mod_alias, among others.
+1.  And FWIW, I like Brian Atkins' solution to add an extra flag
to CacheEnable.
Sander


Reverting vs branching, WAS: Re: svn commit: r169705 - in /httpd/httpd/trunk: include/util_ldap.h modules/ldap/util_ldap.c

2005-05-11 Thread Sander Striker
Paul Querna wrote:
[EMAIL PROTECTED] wrote:
Author: bnicholes
Date: Wed May 11 15:34:18 2005
New Revision: 169705
URL: http://svn.apache.org/viewcvs?rev=169705view=rev
Log:
Add the LDAPVerifyServerCert directive to util_ldap to force
verification of a server certificate when establishing an SSL connection
to the LDAP server
Modified:
   httpd/httpd/trunk/include/util_ldap.h
   httpd/httpd/trunk/modules/ldap/util_ldap.c
Ack.  This commit means that httpd/trunk now depends on apr-util/trunk.
 Before this you were able to run httpd/trunk using APR-Util 1.1.x.
Which is a no-go.  Please revert.
This effectively kills any httpd alphas until APR-Util 1.2.0 is released.
I believe we should uphold the policy of using only released versions of
a dependency.
+1.
I don't see an APR-Util 1.2.0 coming very soon. The APR-DBD code could
still use more love.
This is just an example of why I wanted to branch trunk to 2.1.x.  I
have nothing against adding this specific feature  -- it just happens to
require a non-released version of APR-Util.
Ideas for a solution that doesn't involve waiting for APR-Util 1.2.0?
Yes.  We could do the branch...
Sander


Re: [PROPOSAL] Branch 2.1.x on May 13

2005-05-02 Thread Sander Striker
Jim Jagielski wrote:
William A. Rowe, Jr. wrote:
From discussion - I see us branching 2.1.x anyways, but still object 
since we will now be maintaining two or three backports for every 
bugfix commit to trunk/.
If the trees are so in sync that the same patch applies it's trivial
to do the backports.
Humbly suggest this isn't the conclusion we reached at AC Las Vegas,
and suggest it's still the wrong solution to a non-problem.
If there was a 2.1.x beta out there right now I would agree it was a
non-problem.  It would be a good thing to restate what the conclusions
were at AC 2004 US.
Bill makes some good points... it seems that branching would simply be
renaming trunk. The good thing is that with svn this is cheap
and easy, but will it really do what we want? Also, the gotta
backport this to yet another branch issue is valid.
No it isn't.  That's the whole point of stabilizing.  No more
worries about whether someone actually reviewed the slew of changes
the night before the RM intended to tag.
The backport issue will still stay FWIW.  If not now, it will come
at the time we have 2.0 and 2.2 out there, and trunk is at 2.3-dev.
It's not like we can drop support for 2.0 then.
In other words, trunk is 2.1 anyway, so what does a branch provide?
I would say it's a perception advantage mostly.
Well, it would let people continue to have a place where they can
develop the larger features/refactoring jobs.  That's indeed only
a handful of people, but at the same time a group of people who
do a lot of work.
Sander


Re: mod_cache caching the 301 Moved Permanently

2005-04-22 Thread Sander Striker
[EMAIL PROTECTED] wrote:
The problem seems to be, that the proxied backend server that is cached via 
mod_disk_cache originally
delivers HTTP status 301 and the Location 
http://www.beach-clothing.com/where-to-buy/, but once cached
mod_disk_cache delivers HTTP status 200 instead of 301 (but correctly 
redelivering the Location header).
I have not proved this for myself so far, but this seems the problem to me.
This wouldn't surprise me one bit.  The 2.1 branch has seen quite a bit of 
churn in this
area.
Any chance you could give 2.1 a go and see if that works correctly?
Sander


Re: 2.0.54 release candidate tarball available for testing

2005-04-14 Thread Sander Striker
Sander Striker wrote:
Hi,
As usual the tarballs are at:
 http://httpd.apache.org/dev/dist/
Please give 2.0.54 a whirl and report any problems (or successes) ;)
Given the reponses and the fact that it has been hosting most
of our own webtraffic for a bit I conclude it is looking good for
release.  I'll push it out tomorrow.
Bill, do you happen to have time to get some win32 balls up on dev/dist
so I can push it out together with the other tarballs?
Thanks,
Sander


2.0.54 release candidate tarball available for testing

2005-04-12 Thread Sander Striker
Hi,
As usual the tarballs are at:
 http://httpd.apache.org/dev/dist/
Please give 2.0.54 a whirl and report any problems (or successes) ;)
Thanks,
Sander


Re: svn commit: r160909 - httpd/httpd/branches/2.0.x/modules/experimental/mod_cache.c

2005-04-11 Thread Sander Striker
Brad Nicholes wrote:
This  broke the NetWare build so I fixed it.  I never saw the
same problem in trunk so I'm not sure where this patch came
from in the first place.   I don't have a problem with
redefining new, I just need it fixed so that NetWare will build
before Sander tags the tree.
Yah, that patch would have been me doing the voted in backports.
Sander


NetWare mod_dav import file, WAS: Re: svn commit: r160636 - httpd/httpd/trunk/modules/dav/main/dav.imp

2005-04-10 Thread Sander Striker
[EMAIL PROTECTED] wrote:
Author: bnicholes
Date: Fri Apr  8 16:03:45 2005
New Revision: 160636
URL: http://svn.apache.org/viewcvs?view=revrev=160636
Log:
Update the mod_dav import file for NetWare
I assume something similar has to be done for 2.0.x?
Sander


Re: svn commit: r160645 - httpd/httpd/branches/2.0.x/STATUS

2005-04-09 Thread Sander Striker
[EMAIL PROTECTED] wrote:
Author: wrowe
Date: Fri Apr  8 17:38:46 2005
New Revision: 160645

@@ -208,7 +209,7 @@
 * Win32: Move call to mpm_service_install to the rewrite_args hook
   from the post_config hook.
   http://svn.apache.org/viewcvs?view=revrev=154319
-  +1: stoddard, striker
+  +1: stoddard, striker, wrowe (as corrected in subsequent patches)
Bill, could you please add the revisions of these subsequent patches?
 * mod_version: New Module, Backport from trunk.
   
http://svn.apache.org/repos/asf/httpd/httpd/trunk/modules/metadata/mod_version.c
   (Also need to backport docs, and build system stuff.)
-  +1: pquerna, jerenkrantz
+  +1: pquerna, jerenkrantz, wrowe (trivial, would even be cool in 1.3)
Paul, Justin, could you either provide me with a complete patch against 
2.0.x
or add the revisions I need to merge?
Thanks,
Sander


Re: [NOTICE] Tagging 2.0.54, WAS: Re: Time for 2.0.54?

2005-04-08 Thread Sander Striker
Sander Striker wrote:
Sander Striker wrote:
Hi guys,
It's been almost 2 months since 2.0.53.  Think it is time for 2.0.54 yet?
I'll volunteer to RM if that is a yes ;)
Just a heads up: I'm planning on starting the TR of 2.0.54 on thursday 
night (UTC +1).
And ofcourse it's friday night already...
I would be thankful if someone could start backporting the 
suggested backports with enough votes in STATUS.  If noone has any round
tuits, I'll get to it before doing the tag.
Noone seemed to have any spare tuits, so I guess that I'm the unfortunate
backporter.  I would like to backport all things that got enough votes
so that STATUS actually shrinks a bit.  Given I don't want to mess this
up too much I'd rather start doing this tomorrow during the day.  If
anyone feels lucky today, don't hesitate to take on some backports
yourself, especially if it is your patch...
Thanks,
Sander


Re: svn commit: r160441 - httpd/httpd/trunk/httpd.dsp

2005-04-07 Thread Sander Striker
[EMAIL PROTECTED] wrote:
Author: wrowe
Date: Thu Apr  7 12:19:58 2005
New Revision: 160441
URL: http://svn.apache.org/viewcvs?view=revrev=160441
Log:
  Catch up with Apache.exe-httpd.exe rename; it seems svn rn can't
  be combined with svn commit and source changes.
Can you please save these comments for the dev@ list and not
put them in the log message?  What exactly didn't go as you
expected?
Sander


[NOTICE] Tagging 2.0.54, WAS: Re: Time for 2.0.54?

2005-04-05 Thread Sander Striker
Sander Striker wrote:
Hi guys,
It's been almost 2 months since 2.0.53.  Think it is time for 2.0.54 yet?
I'll volunteer to RM if that is a yes ;)
Just a heads up: I'm planning on starting the TR of 2.0.54 on thursday 
night
(UTC +1).  I would be thankful if someone could start backporting the suggested
backports with enough votes in STATUS.  If noone has any round tuits, I'll
get to it before doing the tag.
Thanks,
Sander


Re: Forthcoming 2.2 - Win32 specific questions

2005-03-30 Thread Sander Striker
William A. Rowe, Jr. wrote:
'Apache' was our program.  It became our project.  It's become
our entire organization.
In 2.2, I -will- be changing the default location for the Win32
installer from %programsdir%\Apache Group\Apache2\ over to
%programsdir%\Apache Software Foundation\Apache HTTP Server 2.2\.
+1.
[...]
So can I have a quick vote before beta to rename our program to
'httpd.exe' on Windows, matching our Unix builds?
+1.


[PATCH] mod_proxy_http

2005-03-30 Thread Sander Striker
Hi,
It seems like mod_proxy_http is being cute and not sending an EOS
bucket down the rest of the filter stack when it only receives
headers.  This (most likely) causes mod_cache's cache_save_filter
to not be run when it receives a 304.
Unfortunately I cannot 100% reproduce this locally, but the behaviour
seems to be consistent on a solaris production machine which I can't
fiddle about with too much (which includes testing this patch short
term).
In short: Some eyes please...
Thanks,
Sander
---
Index: modules/proxy/mod_proxy_http.c
===
--- modules/proxy/mod_proxy_http.c  (revision 157814)
+++ modules/proxy/mod_proxy_http.c  (working copy)
@@ -1331,9 +1331,21 @@
}
ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r-server,
 proxy: end body send);
-} else {
+}
+else {
ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r-server,
 proxy: header only);
+
+/* Pass EOS bucket down the filter chain */
+e = apr_bucket_eos_create(c-bucket_alloc);
+APR_BRIGADE_INSERT_TAIL(bb, e);
+if (ap_pass_brigade(r-output_filters, bb) != APR_SUCCESS
+|| c-aborted) {
+/* Ack! Phbtt! Die! User aborted! */
+backend-close = 1;  /* this causes socket close below */
+}
+
+apr_brigade_cleanup(bb);
}
} while (interim_response);


Reformat httpd-win.conf

2005-03-30 Thread Sander Striker
Hi,
Rather than sending a patch (since it isn't readable) you'll find
a reformatted httpd-win.conf attached.  It uses the new IfModule
style, and is indented as with the non-win32 counterpart.
Objections?
Sander
#
# Based upon the NCSA server configuration files originally by Rob McCool.
#
# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See URL:http://httpd.apache.org/docs-2.1/ for detailed information about
# the directives.
#
# Do NOT simply read the instructions in here without understanding
# what they do.  They're here only as hints or reminders.  If you are unsure
# consult the online docs. You have been warned.  
#
# The configuration directives are grouped into three basic sections:
#  1. Directives that control the operation of the Apache server process as a
# whole (the 'global environment').
#  2. Directives that define the parameters of the 'main' or 'default' server,
# which responds to requests that aren't handled by a virtual host.
# These directives also provide default values for the settings
# of all virtual hosts.
#  3. Settings for virtual hosts, which allow Web requests to be sent to
# different IP addresses or hostnames and have them handled by the
# same Apache server process.
#
# Configuration and logfile names: If the filenames you specify for many
# of the server's control files begin with / (or drive:/ for Win32), the
# server will use that explicit path.  If the filenames do *not* begin
# with /, the value of ServerRoot is prepended -- so logs/foo.log
# with ServerRoot set to @@ServerRoot@@ will be interpreted by the
# server as @@ServerRoot@@/logs/foo.log.
#
# NOTE: Where filenames are specified, you must use forward slashes
# instead of backslashes (e.g., c:/apache instead of c:\apache).
# If a drive letter is omitted, the drive on which Apache.exe is located
# will be used by default.  It is recommended that you always supply
# an explicit drive letter in absolute paths, however, to avoid
# confusion.
#

### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation (available
# at URL:http://httpd.apache.org/docs-2.1/mod/mpm_common.html#lockfile);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
ServerRoot @@ServerRoot@@

#
# ScoreBoardFile: File used to store internal server process information.
# If unspecified (the default), the scoreboard will be stored in an
# anonymous shared memory segment, and will be unavailable to third-party
# applications.
# If specified, ensure that no two invocations of Apache share the same
# scoreboard file. The scoreboard file MUST BE STORED ON A LOCAL DISK.
#
#ScoreBoardFile logs/apache_runtime_status

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
#
PidFile logs/httpd.pid

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to Off to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 15

##
## Server-Pool Size Regulation (MPM specific)
## 

# WinNT MPM
# ThreadsPerChild: constant number of worker threads in the server process
# MaxRequestsPerChild: maximum  number of requests a server process serves
IfModule mpm_winnt_module
ThreadsPerChild 250
MaxRequestsPerChild  0
/IfModule

#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the VirtualHost
# directive.
#
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
#Listen 12.34.56.78:80
Listen @@Port@@

#
# Dynamic Shared Object (DSO) Support
#
# To be able to use the functionality of a module which was built as a DSO you
# have to place corresponding `LoadModule' lines at this location so the
# directives contained in it are actually available _before_ they are used.
# Statically compiled modules (those listed by `httpd -l') do not need
# to be loaded here.
#
# Example:
# LoadModule foo_module modules/mod_foo.so
#
LoadModule actions_module 

Time for 2.0.54?

2005-03-28 Thread Sander Striker
Hi guys,
It's been almost 2 months since 2.0.53.  Think it is time for 2.0.54 yet?
I'll volunteer to RM if that is a yes ;)
Sander


buildconf.nice, WAS: Re: svn commit: r158303 - httpd/httpd/trunk/buildconf

2005-03-22 Thread Sander Striker
Justin Erenkrantz wrote:
--On Tuesday, March 22, 2005 3:22 PM -0600 William A. Rowe, Jr. 
[EMAIL PROTECTED] wrote:

Of course!  Now I'm on the same page with you.  Actually,
I believe a buildconf.nice is a better solution (for reasons
in my other note.)  We really have no say-so about what is
sitting in the directory above our httpd snapshot.
It only matters if the directory is present and contains the files we 
need. I just think a buildconf.nice would be overkill here.  -- justin
I find myself agreeing with that...
Sander


Re: svn commit: r158303 - httpd/httpd/trunk/buildconf

2005-03-21 Thread Sander Striker
William A. Rowe, Jr. wrote:
At 11:26 PM 3/19/2005, [EMAIL PROTECTED] wrote:
Author: pquerna
Date: Sat Mar 19 21:26:22 2005
New Revision: 158303
URL: http://svn.apache.org/viewcvs?view=revrev=158303
Log:
Test for APR and APR-Util one directory bellow httpd too.  I like not having to 
put them inside srclib.

grumf I'm not keen on this change, since it complicates things
unnecessarily - some day we discover a tag and roll organized like 
this out of the blue?
What do you mean?  I thought that the future goal was to unbundle apr*
in httpd releases?  So you're afraid of tagged and rolled (actually only
rolled, since tags don't include apr* anyway) tarballs that don't
contain srclib/apr* before we actually wish to unbundle?  Isn't that
the RM's responsibility?
Does config.nice not do what you want?  Especially if you rename
it config.me with all your absolute options that you don't tweak?
I don't see how that would help towards the unbundling goal.  Also for
development purposes it's way more convenient to allow apr* next to
httpd as to require it be in srclib/.
Sander



Re: Rolling 2.1.4...

2005-03-16 Thread Sander Striker
Sander Striker wrote:
Justin Erenkrantz wrote:
On Mon, Mar 14, 2005 at 08:03:43PM -0800, Paul Querna wrote:
I would like to roll the 2.1.4 alpha right after APR 1.1.1 is released.
I plan on rolling APR tonight or Tuesday morning.  If there arent any 
problems, I am hoping to create 2.1.4 on Thursday.  Any big 
outstanding issues?
As far as I can tell, the Win32 fixes still haven't been backported to 
APR 1.1.x.  Or, am I missing something?  -- justin
I'll go and look into this tonight if OtherBill *nudge* *nudge* doesn't 
beat
me to it.
FWIW, I've already gone ahead and tagged 2.1.4.  Work is now somewhat
getting in the way, so I'll get to rolling this afternoon.
Sander


2.1.4 available for testing

2005-03-16 Thread Sander Striker
Hi all,
There are some 2.1.4-alpha tarballs waiting to be tested at:
 http://httpd.apache.org/dev/dist/
Please report back with any problems.
Thanks for testing!
Sander


Re: 2.1.4 available for testing

2005-03-16 Thread Sander Striker
Sander Striker wrote:
Hi all,
There are some 2.1.4-alpha tarballs waiting to be tested at:
 http://httpd.apache.org/dev/dist/
Please report back with any problems.
Thanks for testing!
FWIW:  +1
Tested on:
 Linux (Ubuntu - Warty Warthog) 
 Win32 (XP SP2)*

Sander
*) Source from the tag, no zip ball is available at this time.


Re: Rolling 2.1.4...

2005-03-15 Thread Sander Striker
Paul Querna wrote:
I would like to roll the 2.1.4 alpha right after APR 1.1.1 is released.
I plan on rolling APR tonight or Tuesday morning.  If there arent any 
problems, I am hoping to create 2.1.4 on Thursday.  Any big outstanding 
issues?
Nope, just the wait on APR IMO.  FWIW, I might get to 2.1.4 before thursday
if that is any help.
Sander


Re: Rolling 2.1.4...

2005-03-15 Thread Sander Striker
Justin Erenkrantz wrote:
On Mon, Mar 14, 2005 at 08:03:43PM -0800, Paul Querna wrote:
I would like to roll the 2.1.4 alpha right after APR 1.1.1 is released.
I plan on rolling APR tonight or Tuesday morning.  If there arent any 
problems, I am hoping to create 2.1.4 on Thursday.  Any big outstanding 
issues?

As far as I can tell, the Win32 fixes still haven't been backported to APR
1.1.x.  Or, am I missing something?  -- justin
I'll go and look into this tonight if OtherBill *nudge* *nudge* doesn't beat
me to it.
Sander


Re: [PATCH] mod_cache, expand impact of CacheIgnoreCacheControl

2005-03-08 Thread Sander Striker
Justin Erenkrantz wrote:
On Tue, Mar 08, 2005 at 03:57:55AM +0100, Sander Striker wrote:
Hi,
Currently CacheIgnoreCacheControl On only ignores Cache-Control: no-cache
and Pragma: no-cache.  I'd like to add ignoring Cache-Control: max-age=...
and Cache-Control: min-fresh=... as well.
This would give the admin more control, and would also make the directive
slightly more intuitive IMO.  This because different browsers do different
things.  One will send a Cache-Control: no-cache on a refresh, and one will
send a Cache-Control: max-age=...  It would be nice if the effect would
be the same for both.
Thoughts?

While I think this is a good idea, I'd like to consider renaming this
particular directive as I think the name is really confusing.
Does that mean you want me to hold off on committing this patch pending
a directive rename?  Isn't that a seperate issue?
My concern is that CacheIgnoreCacheControl only refers to the request's
Cache-Control not the origin response's Cache-Control header.  But, I like
that separation because having it refer to both is too coarse-grained, I think.
Definately agreed.  Ignoring response Cache-Control is in another league 
than
ignoring the request Cache-Control.
But, I don't have any real ideas for what an alternative name is.  -- justin
CacheIgnoreServerCacheControl?
Sander


Re: [PATCH] mod_cache, expand impact of CacheIgnoreCacheControl

2005-03-08 Thread Sander Striker
Justin Erenkrantz wrote:
It's just that you brought up the point
of making the directive more intuitive - and I have problems from the word go
on this particular directive being intuitive.  It's not.
In order to understand what this directive does, you need to know what
Cache-Control from the RFC means - and that's not intuitive.  I'd like
something that expresses the concept that we will serve cached content even if
the client asks for 'fresh' content.
Agreed.
The closest I can come up with is 'CacheServeStale' - but that's not quite
right or even precise either.
Cache-Control is per definition a bit of a tough thing to translate
to a term like Stale or Fresh, since it can require both.
[...]
Per above, I don't like the phrase Cache-Control.  -- justin
Fair enough.
What about: CacheIgnoreClientAgeRequirements ?  A bit long maybe.  Sigh.
I'm not very good at coming up with short yet descriptive directive
names I'm afraid.
Sander


Re: [PATCH] mod_cache, expand impact of CacheIgnoreCacheControl

2005-03-08 Thread Sander Striker
Eli Marmor wrote:
[...]
CacheForOffline?  (or Cache4Offline)
Offline browsing is the main case where you need such absolute caching.
But it requires you to cache EVERYTHING. Including dynamic content, and
even different content according to different POST input. Maybe two
directives are needed, one for using the cache only if the cookies are
the same.
All of that requires changing the caching mechanism to keep POST input,
cookies, etc.
I think you just proved Justins point.  Above is all about response
Cache-Control.  The current CacheIgnoreCacheControl only affects request
Cache-Control.  Confuzzled yet ;) :)  

Sander


request_rec, no_cache

2005-03-07 Thread Sander Striker
Hi,
There is a no_cache field in the request rec.  It only seems to be set by
mod_negotiation.  Given the big chunk of comments at mod_negotiation.c:2920
I'm not sure if we actually need this field, or if we can reach the same
result in another fashion (without some dodgy flag).
Thoughts?
Sander


Re: [VOTE] 2.1.3 as beta

2005-03-07 Thread Sander Striker
Jim Jagielski wrote:
I vote +1 for a beta.
Ditto.
Sander



[PATCH] mod_cache, expand impact of CacheIgnoreCacheControl

2005-03-07 Thread Sander Striker
Hi,
Currently CacheIgnoreCacheControl On only ignores Cache-Control: no-cache
and Pragma: no-cache.  I'd like to add ignoring Cache-Control: max-age=...
and Cache-Control: min-fresh=... as well.
This would give the admin more control, and would also make the directive
slightly more intuitive IMO.  This because different browsers do different
things.  One will send a Cache-Control: no-cache on a refresh, and one will
send a Cache-Control: max-age=...  It would be nice if the effect would
be the same for both.
Thoughts?
Sander
Log:
Make CacheIgnoreCacheControl do what it implies, at least when it comes to
freshness checks.

* modules/cache/cache_util.c

  (ap_cache_check_freshness): Ignore CacheControl: max-age and min-fresh
   as well if CacheIgnoreCacheControl is set.


Index: modules/cache/cache_util.c
===
--- modules/cache/cache_util.c  (revision 156480)
+++ modules/cache/cache_util.c  (working copy)
@@ -122,6 +122,9 @@
 char *val;
 apr_time_t age_c = 0;
 cache_info *info = (h-cache_obj-info);
+cache_server_conf *conf =
+  (cache_server_conf *)ap_get_module_config(r-server-module_config,
+cache_module);
 
 /*
  * We now want to check if our cached data is still fresh. This depends
@@ -162,9 +165,6 @@
 
 if (ap_cache_liststr(NULL, pragma, no-cache, NULL)
 || ap_cache_liststr(NULL, cc_req, no-cache, NULL)) {
-cache_server_conf *conf =
-  (cache_server_conf *)ap_get_module_config(r-server-module_config,
-cache_module);
 
 if (!conf-ignorecachecontrol) {
/* Treat as stale, causing revalidation */
@@ -172,7 +172,7 @@
}
 
 ap_log_error(APLOG_MARK, APLOG_INFO, 0, r-server,
- Incoming request may be asking for a uncached version of 

+ Incoming request is asking for a uncached version of 
  %s, but we know better and are ignoring it,
  r-unparsed_uri);
 }
@@ -197,7 +197,8 @@
 }
 
 /* extract max-age from request */
-if (cc_req  ap_cache_liststr(r-pool, cc_req, max-age, val)) {
+if (!conf-ignorecachecontrol
+ cc_req  ap_cache_liststr(r-pool, cc_req, max-age, val)) {
 maxage_req = apr_atoi64(val);
 }
 else {
@@ -234,7 +235,8 @@
 }
 
 /* extract min-fresh */
-if (cc_req  ap_cache_liststr(r-pool, cc_req, min-fresh, val)) {
+if (!conf-ignorecachecontrol
+ cc_req  ap_cache_liststr(r-pool, cc_req, min-fresh, val)) {
 minfresh = apr_atoi64(val);
 }
 else {


Re: [VOTE] 2.1.3 as beta

2005-03-07 Thread Sander Striker
William A. Rowe, Jr. wrote:
jakarta-tomcat-dev reports Gump can't build, but since they
haven't given us details so not much we can do about it.
Fails to even build on Win32.
-1 for beta on 2.1.3.
I think we passed the 2.1.3 station already.
Onward to 14 ++1 to Sander's efforts to roll out 2.1.4 ... 
let's get it right (at least, let's have something that builds,
irrespective of it has the features folks want.)
So what is failing to build?  2.1.3?  Or trunk?  Only on
win32, or on other platforms as well?  Can you reproduce?
I've chided tomcat-dev to bother to report to us what their Gump
results are.  Would go a long ways to solving a problem we didn't
know exists.
It seems to build fine in the ASF wide Gump run on brutus:
 http://brutus.apache.org/gump/public/apache-httpd/index.html

Sander


Re: mod_cache

2005-03-06 Thread Sander Striker
Justin Erenkrantz wrote:
--On Friday, March 4, 2005 11:55 PM +0100 Sander Striker 
[...]
What happens if the 'Cache-Control: no-store' header came in with a
304 Not Modified and the original request wasn't conditional?
If I read the spec correctly a 304 can carry a Cache-Control header,
if it has a different value since a previous 200 (or 304).

Hmm.  Good point.  What a goofy corner case though.  I won't lose much 
sleep if we don't fix this.  Care to add a FIXME?  =)
Sure thing.  Done (r156304).
I haven't tracked cache-in_checked fully, so I wonder if it is
possible that this is set on a validating request?  That would
cause the cache not being updated, which is what I am trying to
track down FWIW. [...]

Yes, it would be set.  in_checked is set after we know that we want to 
save the response (i.e. all of the cacheability checks passed 
successfully). However, note that if we are 'blocking' the response 
(i.e. we revalidated the response succesfully with a 304), we set 
block_response which is checked right before in_checked.
Ah, the coin is dropping here.  Since it is a filter, cache save can
be called multiple times in succession, with different brigades.  Makes
total sense.
[...]
AIUI, we can cache 302 Found (HTTP_MOVED_TEMPORARILY) when it has an
Expires or Cache-Control indicating that the request can be cached.
Fair enough.  Feel free to add it, if you like.
Well, I'm first going to check if we are doing the right thing with
cached 301s (I saw some wonkiness earlier, but need to reverify).  If
that is all good, I'll add 302 support.
[...]
/* Were we initially a conditional request? */
if (ap_cache_request_is_conditional(cache-stale_headers)) {
/* FIXME: We must ensure that the request meets conditions. */
/* Set the status to be a 304. */
r-status = HTTP_NOT_MODIFIED;
Is this as simple as clearing r-headers_in, overwriting with
cache-stale_headers,
and the calling ap_meets_conditions()?
Yes, I *believe* so.  But, we should double-check that 
ap_meets_condition would do the 'right' thing.  I'm not 100% sure here.
I'm fairly sure it would.  Considering we have the final response headers,
and the original request headers, this is just like a normal request.
So ap_meets_condition should do the trick just fine when it comes to
figuring out what to send back to the client.  I'll test, and if it works,
I'll commit it.
Okay, back to your real bug:
[...]
Please correct me if I'm wrong.  My understanding is that you have an 
expired cache entry which needs to be revalidated and the updated 
headers aren't updating properly.
Correct.
Now that I read the code I'm betting you are hitting that else block 
with 'XXX log message' in mod_disk_cache's store_headers.
What is that doing there, second guessing its caller (mod_cache)?!
The sequence that I'm envisioning is:
- We have a stale cached entity/handle.
- We send an If-Modified-Since/etc request
- We get the 304 Not modified on revalidation with an updated Expires 
header.
- At mod_cache.c:533, we restore the cached handle.
- Around mod_cache.c:658, we merge in the updated response headers
- Then at mod_cache.c:683, we call the provider to store the headers.
- Then, we hit store_headers in mod_disk_cache.
- Because mod_disk_cache *had* a stale response, it would have loaded 
the stale headers into its handle.
- Hence, the check at mod_disk_cache.c:532 will fail because hfd is 
'valid.'
- We never update the cached headers with the new Expires header

Can you confirm this sequence?
Yes, I can.  Sheesh.
 I'm thinking we shouldn't even check for 
the !hfd case anyway.  That check has probably been there forever and 
was likely to be completely bogus from the start.  What do you think?  
I completely agree.  So much even that I just committed it (r156306).
Why are we storing the header fd in the disk object anyways?  I haven't
gone through mod_disk_cache.c yet, but at least for store_headers() it
doesn't seem to make any sense.
When it comes to store_headers(), shouldn't that be done using a temp
file and moving it into place atomically just like store_body?  Are
we relying on OS buffering and header size being small enough to pull
that off?  Or am I just being paranoid? :)
Sander


Re: [PATCH] mod_cache: Use provider API

2005-03-06 Thread Sander Striker
Justin Erenkrantz wrote:
--On Wednesday, August 4, 2004 12:39 PM -0700 Justin Erenkrantz 
[EMAIL PROTECTED] wrote:

This patch removes the mod_cache dependencies upon the odd vtable and 
hooks
and standardizes upon the ap_provider_* API.  mod_auth uses this provider
interface now as has mod_dav.
+1 (concept).
Sander


Re: [PATCH] mod_cache: Use provider API

2005-03-06 Thread Sander Striker
Sander Striker wrote:
Justin Erenkrantz wrote:
--On Wednesday, August 4, 2004 12:39 PM -0700 Justin Erenkrantz 
[EMAIL PROTECTED] wrote:

This patch removes the mod_cache dependencies upon the odd vtable and 
hooks
and standardizes upon the ap_provider_* API.  mod_auth uses this 
provider
interface now as has mod_dav.

+1 (concept).
Huh?! In that same thread justin had a nice comment:
 place bag over head
I'll go do that now.
FYI, this happens if you try and get your mail sorted out over two years
and you forget to sort it by date in your mailer...
Sander 'Doh' Striker


Re: [VOTE] 2.1.3 as beta

2005-03-06 Thread Sander Striker
Justin Erenkrantz wrote:
2.1.3 tarballs at: http://httpd.apache.org/dev/dist/
I'd like to get enough votes for 2.1.3 to be a beta and commence the 
feature freeze towards a 2.2.0 GA.

As we discussed at ApacheCon in November (over three months ago), this 
would mean we create a 2.2.x branch from the 2.1.3 tag and bump trunk to 
2.3.0.
Given the fixes on trunk that went in since 2.1.3, I'd like to see a
2.1.4, and branch off of that.  I'll even volunteer to take care of
TR'ing 2.1.4 upcoming thursday.
I feel this takes care of the mod_dav exports issue as well.
By this point, I think that if a super-cool feature hasn't made it in 
yet, it's time to admit that the feature missed the boat and it needs to 
wait until 2.4.  I'm tired of waiting for 2.2 when there are excellent 
features in our trunk that are being held up for non-existent patches.  
+1.  I've been one of the people causing the holdup with my preference
of getting the AAA user authentication/group membership split in 2.2.
Let's not have wishful thinking keep up 2.2.
I assume we are in agreement that the current AAA discussion shouldn't
hold up moving to 2.2 either.
Sander


Re: mod_cache

2005-03-06 Thread Sander Striker
Sander Striker wrote:
Justin Erenkrantz wrote:
Sander Striker wrote:

AIUI, we can cache 302 Found (HTTP_MOVED_TEMPORARILY) when it has an
Expires or Cache-Control indicating that the request can be cached.

Fair enough.  Feel free to add it, if you like.

Well, I'm first going to check if we are doing the right thing with
cached 301s (I saw some wonkiness earlier, but need to reverify).  If
that is all good, I'll add 302 support.
I'm fairly sure this doesn't work too well yet.  See below.
[...]
/* Were we initially a conditional request? */
if (ap_cache_request_is_conditional(cache-stale_headers)) {
/* FIXME: We must ensure that the request meets 
conditions. */

/* Set the status to be a 304. */
r-status = HTTP_NOT_MODIFIED;
Is this as simple as clearing r-headers_in, overwriting with
cache-stale_headers,
and the calling ap_meets_conditions()?
Yes, I *believe* so.  But, we should double-check that 
ap_meets_condition would do the 'right' thing.  I'm not 100% sure here.
I'm fairly sure it would.  Considering we have the final response headers,
and the original request headers, this is just like a normal request.
So ap_meets_condition should do the trick just fine when it comes to
figuring out what to send back to the client.  I'll test, and if it works,
I'll commit it.
It works (gave the correct results on cached, cached revalidating, not 
cached)
so I committed it (r156330).
However, I do think you are right that ap_meets_conditions() doesn't do the
right thing.  But that is in general, not just in this case.  It doesn't
seem to take responses other than 2xx into account.  In those cases it shouldn't
return a 304, yet it does.  We'll have to visit all the places where
ap_meets_conditions() is called to make sure r-status is set, and check
r-status in ap_meets_conditions() to fix this.
Luckily for us, there is more work left even in mod_cache.  Right now,
whenever we hit a Cache-Control: no-cache in the request, the cache declines
to handle the request, while it could be handling it (be it with a required
validation request to the backend).  That would be a lot more efficient.
And within bounds of the spec.
Furthermore, Cache-Control: max-age=0 or even max-age=X seems to be completely
ignored.  A response is given back with an Age header with a larger value then
what max-age was set to in the request.
Sander


Re: mod_cache

2005-03-06 Thread Sander Striker
Justin Erenkrantz wrote:
Sander Striker wrote:
[...]
Luckily for us, there is more work left even in mod_cache.  Right now,
whenever we hit a Cache-Control: no-cache in the request, the cache 
declines to handle the request, while it could be handling it (be it
with a required validation request to the backend).  That would be a
lot more efficient.  And within bounds of the spec.
I'm not sure what you mean.  Do you mean that if we get a Cache-Control: 
no-cache, that we should attempt to treat it as mandatory revalidation 
of the content?
Exactly.
Interesting.  Right now, we just get out of the way.
Right.  We don't have to AFAUI, as long as we revalidate.
One approach would be to remove the no-cache check and move it down into 
ap_cache_check_freshness() and make our response always be stale in this 
case.
*nod*
Furthermore, Cache-Control: max-age=0 or even max-age=X seems to be
completely ignored.  A response is given back with an Age header with
a larger value then what max-age was set to in the request.
This *should* be handled by ap_cache_check_freshness().  I'll admit that 
I haven't spent a lot of time in there.  On a cursory look, it seems 
that it should be handling this correctly.
That's what I initially thought when I glanced over it.  Then I started
wondering why headers are retrieved from h-req_hdrs, instead of
r-headers_in.  I noticed we save the request headers of the request
that got a resource into the cache.  Are we maybe mistakenly using
those stored headers instead of the ones from the current request?
I need to go over the code, but this is what popped into my head on
first glance.
Sander


Re: mod_cache

2005-03-06 Thread Sander Striker
Justin Erenkrantz wrote:
Sander Striker wrote:

I completely agree.  So much even that I just committed it (r156306).
Why are we storing the header fd in the disk object anyways?  I haven't
gone through mod_disk_cache.c yet, but at least for store_headers() it
doesn't seem to make any sense.
It's not really the 'disk' object per se - it's part of mod_disk_cache's 
private cache handle.  When we open the cache handle, we also open the 
associated file descriptors in open_entity to ensure that we have 
something valid cached.  We then use those open descriptors in 
recall_headers and recall_body later on.
Right.
Note that we're a little tricky and we partially read the header file in 
open_entity to get some meta-data via file_cache_recall_mydata, but we 
hold off parsing the full MIME headers from disk until recall_headers time.
Gotcha.
When it comes to store_headers(), shouldn't that be done using a temp
file and moving it into place atomically just like store_body?  Are
we relying on OS buffering and header size being small enough to pull
that off?  Or am I just being paranoid? :)
Yes, there's probably a race condition here.  However, store_headers is 
only called once, so the window is relatively small compared to 
store_body which can be called multiple times.  Feel free to have at 
it.  ;-)
*grin*  Will do.
Sander


Re: svn commit: r156279 - httpd/httpd/trunk/include/ap_mmn.h

2005-03-05 Thread Sander Striker
Jeff Trawick wrote:
On Sat, 05 Mar 2005 20:39:33 -, [EMAIL PROTECTED]
[EMAIL PROTECTED] wrote:
Author: trawick
Date: Sat Mar  5 12:39:32 2005
New Revision: 156279

Submitted by: Sander Striker

oops, I put the wrong Sander too :(
Good thing you can fix log messages with svn
(Hint: svn propset --revprop svn:log -r 156279 )
Sander


mod_cache

2005-03-04 Thread Sander Striker
Hi,
I'm going over mod_cache and I'm wondering about some things:
--
modules/cache/mod_cache.c:271
   /* If the request has Cache-Control: no-store from RFC 2616, don't store
* unless CacheStoreNoStore is active.
*/
   cc_in = apr_table_get(r-headers_in, Cache-Control);
   if (r-no_cache ||
   (!conf-store_nostore 
ap_cache_liststr(NULL, cc_in, no-store, NULL))) {
   ap_remove_output_filter(f);
   return ap_pass_brigade(f-next, in);
   }
What happens if the 'Cache-Control: no-store' header came in with a
304 Not Modified and the original request wasn't conditional?
If I read the spec correctly a 304 can carry a Cache-Control header,
if it has a different value since a previous 200 (or 304).
--
modules/cache/mod_cache.c:308
   /* have we already run the cachability check and set up the
* cached file handle? 
*/
   if (cache-in_checked) {
   /* pass the brigades into the cache, then pass them
* up the filter stack
*/

I haven't tracked cache-in_checked fully, so I wonder if it is
possible that this is set on a validating request?  That would
cause the cache not being updated, which is what I am trying to
track down FWIW.  This is not 'my' bug though, since I am seeing
the following line in the log:
 [debug] mod_disk_cache.c(616): disk_cache: Stored headers for URL xxx
However the cache files on disk don't change... I'm a bit puzzled why
not from looking at the code.
--
modules/cache/mod_cache.c:371
   /*
* what responses should we not cache?
*
* At this point we decide based on the response headers whether it
* is appropriate _NOT_ to cache the data from the server. There are
* a whole lot of conditions that prevent us from caching this data.
* They are tested here one by one to be clear and unambiguous. 
*/
   if (r-status != HTTP_OK  r-status != HTTP_NON_AUTHORITATIVE
r-status != HTTP_MULTIPLE_CHOICES
r-status != HTTP_MOVED_PERMANENTLY
r-status != HTTP_NOT_MODIFIED) {
   /* RFC2616 13.4 we are allowed to cache 200, 203, 206, 300, 301 or 410
* We don't cache 206, because we don't (yet) cache partial responses.
* We include 304 Not Modified here too as this is the origin server
* telling us to serve the cached copy.
*/
   reason = apr_psprintf(p, Response status %d, r-status);
   } 

AIUI, we can cache 302 Found (HTTP_MOVED_TEMPORARILY) when it has an Expires
or Cache-Control indicating that the request can be cached.
--
modules/cache/mod_cache.c:685
   /* Did we just update the cached headers on a revalidated response?
*
* If so, we can now decide what to serve to the client:
* - If the original request was conditional and is satisified, send 304.
* - Otherwise, send the cached body.
   */
   if (rv == APR_SUCCESS  cache-stale_handle) {
   apr_bucket_brigade *bb;
   apr_bucket *bkt;
   bb = apr_brigade_create(r-pool, r-connection-bucket_alloc);
   /* Were we initially a conditional request? */
   if (ap_cache_request_is_conditional(cache-stale_headers)) {
   /* FIXME: We must ensure that the request meets conditions. */
   /* Set the status to be a 304. */
   r-status = HTTP_NOT_MODIFIED;
Is this as simple as clearing r-headers_in, overwriting with 
cache-stale_headers,
and the calling ap_meets_conditions()?

Sander


[PATCH] Handle conditional requests in mod_dav

2005-02-11 Thread Sander Striker
Hi,

The point of this small patch is to allow mod_dav to take an easy
out instead of actually going through the (expensive) delivery
step, in case of a conditional request.  Think of cache
validating requests for instance.

I found this interesting because of the potential of serving
content straight from a SVN repository, while retaining
near static content performance*.  That is, with mod_cache
enabled.

*) Ofcourse opening the repository on each connection is a
   penalty, but hey, that needs addressing elsewhere.

Makes sense?

Sander

---
Log:
* modules/dav/main/mod_dav.c

  (dav_method_get): Handle conditional requests.


Index: modules/dav/main/mod_dav.c
===
--- modules/dav/main/mod_dav.c  (revision 153370)
+++ modules/dav/main/mod_dav.c  (working copy)
@@ -813,6 +813,7 @@
 {
 dav_resource *resource;
 dav_error *err;
+int status;
 
 /* This method should only be called when the resource is not
  * visible to Apache. We will fetch the resource from the repository,
@@ -836,6 +837,12 @@
 return dav_handle_err(r, err, NULL);
 }
 
+/* Handle conditional requests */
+status = ap_meets_conditions(r);
+if (status) {
+  return status;
+}
+
 if (r-header_only) {
 return DONE;
 }



RE: UNIX MPMs [ot?]

2005-02-10 Thread Sander Striker
 From: Leif W [mailto:[EMAIL PROTECTED] 
 Sent: Thursday, February 10, 2005 3:10 PM
[...]
 It's already a huge list of workaround and compatibility and portability for
 an admin could be a nightmare.  I do not know if there are even more security
 wrappers needed for other language modules.  Can anyone add to the list some
 things which might commonly be used in concert?  Is there any direction 
 given
 from the top of the Apache group in regards to what gets attention?

No, there is not.  The committers are free to work on what they want.

 In the message on the suPHP list, it is implied that there is in general a
 mentality that security is not a priority

Given the way we handle security issues I don't think this remark will hold 
water.

 (at least regarding setuid per request as perchild MPM would like to do),

Apparently there are a lot of people with the itch, but nobody scratching it.

 only competing with MS/IIS.

Not even that.  I mean, it's fun to watch our marketshare rise every month,
but that's not what the ASF is all about.

 I'm not implying anything, I don't know what to believe, so that's why I ask.
 I'm just trying to understand where the breakdown is.  A feature that people
 want, the lack of which spawns a sloppy slew of incompatible workarounds, but
 no one around to respond and code it or fix what's available.

Well, we are volunteers you know ;).  I'm sure you could find someone to work
on perchild on a contract basis, making your itch (one of) the developers itch.
Or even an external party who would submit patches.

 The strength of Apache was always *nix, so why abandon security on *nix for
 the sake of portability to Windows?

There's more to it than just portability to Windows.

 It's the natural impression given by first glance of the timeline of events,
 not an accusation.  Or is it just coincidence that someone (or many people)
 lost interest in perchild and there's been noone to pick up the slack,

Correct.

 and other people just happened to want to increase portability to windows?

Portability in general.  But this is all contained in the APR project, on top
of which httpd-2.x is built.  Also people worked on a lot of other things
during last year.  Just look at the Changelog, the commit messages etc, to
see what I mean.

 I mean, I like having a windows port, because I can at least practice using
 Apache somewhat, and it expands the development platform, but I won't ever,
 ever, EVER run it on Windows in production, simply because I'd never run
 Windows in production.

Not all administrators are in a position where they can refuse to run Windows.

 Except insofar as to show Windows users a shining example of free software,
 and offer the idea of using an entire OS filled with shining examples of free
 software engineering. 
 ;-)  Toungue in cheek of course, with the ugly little problems such as this
 code abandonment of vital features at the back of my mind.

Well, what is vital depends on context.  Apparently it isn't as vital, since
2.x is certainly used without this vital mpm.

Agreed, it would be very nice to see perchild development picked up again.  Or
metux integrated in the main distro (it'd need review and all that, and ofcourse
desire from the metux developers to do so).  For me personally, it isn't a big
enough itch to start scratching it.  Proxy and caching are a lot higher on my
personal agenda.  As are some other features I still am desperately seeking the
time for to work on.

 I don't mean to
 start an OS flame war, so please don't respond with that in mind.  :-)  If 
 other
 people would like to use Windows, it takes nothing away from me, I'm just
 stating opinion based on my own interaction and experience with Apache, Win, 
 and
 *nix (Linux  FreeBSD).

The problem is that you drag in the *nix vs Windows argument.  Why do we need
to bother with that at all?


Sander



Entity headers in 304 reponse, WAS: RE: svn commit: r152973 - in httpd/httpd/trunk/modules/cache: cache_storage.c mod_cache.c mod_cache.h mod_disk_cache.c

2005-02-09 Thread Sander Striker
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
 Sent: Wednesday, February 09, 2005 2:39 AM

 New Revision: 152973

[...]
+/* RFC 2616 10.3.5 states that entity headers are not supposed
+ * to be in the 304 response.  Therefore, we need to load in the
+ * cached headers before we update the cached headers.

That's not how I read that section.  14.26 has some specific text
stating cache-related header fields should be included.

Sander



RE: Entity headers in 304 reponse, WAS: RE: svn commit: r152973 - in httpd/httpd/trunk/modules/cache: cache_storage.c mod_cache.c mod_cache.h mod_disk_cache.c

2005-02-09 Thread Sander Striker
 From: Justin Erenkrantz [mailto:[EMAIL PROTECTED] 
 Sent: Wednesday, February 09, 2005 6:20 PM

[...]
 Hence, the response headers from the origin server on a 304 response aren't
 guaranteed to be complete.  So, what this commit does now is load in the
 stored cached response headers and interleaving them with the headers we
 just received as part of the 304 response - retaining the just-received
 headers if there is overlap.  Then, we're updating our cache entry with this
 new merged set of headers.

Yeah, I misread the comment.

 The issue here is that you can't just take the response headers from a 304
 header and use them and them alone to update the cache: you need to 'merge' 
 in what you already have to be complete.

Sure.

 As an aside, see line 934 in modules/http/http_filters.c for what httpd sends
 on a 304: all other header fields are stripped.

Ah yes, makes sense.  Nice to have a guard on the way out.

 Or, do you see a better way?  Or, is there a way to make the comment clearer?

I think I've clarified the comment slightly in rev 153104.  But honestly, it was
just me.


Sander



Renaming proxy backends

2005-02-03 Thread Sander Striker
Hi,

Anyone object to me renaming proxy_[ajp|balancer|connect|ftp|http].c to
mod_proxy_[ajp|balancer|connect|ftp|http].c?

Reason:

IfModule mod_proxy_http.c
  ...
/IfModule

I had to look a few times to figure out I had to leave out the
mod_ part.  Since all the other modules start with mod_, I'd
like to make this consistent.


Sander



RE: re-do of proxy request body handling - ready for review

2005-02-02 Thread Sander Striker


-Original Message-
From: Graham Leggett [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, February 02, 2005 10:39 PM
To: dev@httpd.apache.org
Subject: Re: re-do of proxy request body handling - ready for review

Justin Erenkrantz wrote:

 I don't understand the purpose of serving incomplete files from a cache. 
 Can you please elaborate on what you think mod_cache should do?  -- 
 justin

Since the early days of mod_proxy, there has been a race condition in the 
caching code which has been carried over to mod_cache.

After an URL has been invalidated, and before the new version of that URL has 
been downloaded completely from the backend server,
any attempts by other clients to fetch the same URL are passed to the backend 
server directly. This results in the load spike on the
backend server briefly while the replacement cache file is downloaded.

If mod_cache was taught to serve a being-cached URL directly from the cache 
(shadowing the real download), there would be no need
for parallel connections to the backend server while the file is being cached, 
and no load spike.

Regards,
Graham
--



mod_proxy and friends, FIX_15207

2005-02-01 Thread Sander Striker
Hi,

The last couple of weeks I've had to dive into mod_proxy.  I'd
like to know what all the #ifdef FIX_15207 lines are all about
in mod_proxy.c.  Keeping the #define breaks the crap out of
interaction with mod_rewrite for instance.

Furthermore the documentation of mod_proxy* explains a lot
of options that are not supported (anymore).  Like ProxyPass !
for instance.  The other thing is Proxy /location opt1=1 opt2=2 

A side remark: mod_proxy_ajp doesn't follow our coding style
rules.

I know, if I have an itch, I should scratch it.  However,
I remember that a lot effort went into getting mod_proxy ready
for 2.0 (that is, debugged on 2.0).  I wouldn't want to
get in the same situation for 2.2.


Sander



RE: mod_proxy and friends, FIX_15207

2005-02-01 Thread Sander Striker
 From: Jim Jagielski [mailto:[EMAIL PROTECTED] 
 Sent: Tuesday, February 01, 2005 8:03 PM

 It's been on my table to attack the FIX_15207 fooishness, but neither
 keeping the define nor commenting it out results in expected, correct
 behavior :(...

For my specific use case (mod_rewrite, mod_proxy_ajp, mod_cache) commenting
it out did the trick.

What are you running into?  Might be an idea to create a list of things
that work/don't work and thus need work?

Sander




RE: Time for 2.0.53?

2005-01-31 Thread Sander Striker
 From: Justin Erenkrantz [mailto:[EMAIL PROTECTED] 
 Sent: Monday, January 31, 2005 10:19 PM

 Any opposition to doing a tag and roll of 2.0.53 soon?

Nope.

 (Yes, I volunteer to be RM.)

Thanks Justin.

 How about targetting next Tuesday (2/8) for 2.0.53?  I can lay
 down the candidate tarball on Friday morning, so whatever
 backports are merged by then make it.  =)

I wouldn't pin yourself to a release date too much.  Just start
the TR and when we're satisfied with it, release.

 Do we want closure on Jeff's proxy chunking patch for 2.0.53?

It's not a showstopper IMO.

  -- justin

Sander



RE: Working on some load balancing methods

2005-01-07 Thread Sander Striker
 From: Jim Jagielski [mailto:[EMAIL PROTECTED] 
 Sent: Friday, January 07, 2005 8:52 PM
 To: dev@httpd.apache.org
 Subject: Working on some load balancing methods

 I'm currently working on code that extended the lb method within the
 2.1/2.2 proxy from what is basically a weighted request count to also
 be a weighted traffic count (as measured by bytes transferred) and a
 weighted load count (as measured by response time). The former is
 further along and the methods will be selectable at runtime... This is
 definitely a scratch I'm itching,

I'm sure you are not the only one with that itch.

 but before I spend too much (additional) time on it, I'd like some
 feedback on whether the concept is one we can all get behind.

FWIW, I like it.

 I am also toying with the idea of supporting a CPU load method when
 the origin servers are Apache via a custom response header...

+1!


Sander



[NOTICE] CVS to SVN migration complete

2004-11-19 Thread Sander Striker
Hi everyone,

The CVS to SVN conversion of the Apache HTTP Server projects is
complete.

To check out your project:

apache 1.3:
  $ svn co http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x \
apache-1.3

httpd 2.0:
  $ svn co http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x \
httpd-2.0

httpd 2.1:
  $ svn co http://svn.apache.org/repos/asf/httpd/httpd/trunk \
httpd-2.1

httpd-test:
  $ svn co http://svn.apache.org/repos/asf/httpd/test/trunk \
httpd-test

apreq:
  $ svn co http://svn.apache.org/repos/asf/httpd/apreq/branches/1.x \
apreq

apreq-2:
  $ svn co http://svn.apache.org/repos/asf/httpd/apreq/trunk \
apreq-2

mod_python:
  $ svn co http://svn.apache.org/repos/asf/httpd/mod_python/trunk \
mod_python

mod_mbox:
  $ svn co http://svn.apache.org/repos/asf/httpd/mod_mbox/trunk \
mod_mbox

mod_pop3:
  $ svn co http://svn.apache.org/repos/asf/httpd/mod_pop3/trunk \
mod_pop3
  
httpd site:
  $ svn co http://svn.apache.org/repos/asf/httpd/site/trunk \
httpd-site

Note that if you are a committer, you want to check out using https://
instead of http://.

For further instructions on how to use SVN, I'll happily refer to:
  http://www.apache.org/dev/version-control.html

Also note that there is one portion missing, which is the 1.3
documentation.  We'll try to get around that ASAP.

Once again, thanks for all your patience.  I hope you feel it was
worth the wait,

Sander


CVS to SVN conversion

2004-11-19 Thread Sander Striker
Hi again,

The actual load seems to be working now (save the documentation...).
Given that this wasn't a smooth ride, we've loaded things in the
test repository.  Please take a look at it:

  http://svn.apache.org/repos/test/httpd/

If noone raises any issues we'll load it in the main repository in
36 hours.

Sander


[NOTICE] CVS to SVN migration complete

2004-11-19 Thread Sander Striker
Hi everyone,

The CVS to SVN conversion of the Apache HTTP Server projects is
complete.

To check out your project:

apache 1.3:
  $ svn co http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x \
apache-1.3

httpd 2.0:
  $ svn co http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x \
httpd-2.0

httpd 2.1:
  $ svn co http://svn.apache.org/repos/asf/httpd/httpd/trunk \
httpd-2.1

httpd-test:
  $ svn co http://svn.apache.org/repos/asf/httpd/test/trunk \
httpd-test

apreq:
  $ svn co http://svn.apache.org/repos/asf/httpd/apreq/branches/1.x \
apreq

apreq-2:
  $ svn co http://svn.apache.org/repos/asf/httpd/apreq/trunk \
apreq-2

mod_python:
  $ svn co http://svn.apache.org/repos/asf/httpd/mod_python/trunk \
mod_python

mod_mbox:
  $ svn co http://svn.apache.org/repos/asf/httpd/mod_mbox/trunk \
mod_mbox

mod_pop3:
  $ svn co http://svn.apache.org/repos/asf/httpd/mod_pop3/trunk \
mod_pop3
  
httpd site:
  $ svn co http://svn.apache.org/repos/asf/httpd/site/trunk \
httpd-site

Note that if you are a committer, you want to check out using https://
instead of http://.

For further instructions on how to use SVN, I'll happily refer to:
  http://www.apache.org/dev/version-control.html

Also note that there is one portion missing, which is the 1.3
documentation.  We'll try to get around that ASAP.

Once again, thanks for all your patience.  I hope you feel it was
worth the wait,

Sander


Re: CVS to SVN conversion

2004-11-19 Thread Sander Striker
On Fri, 2004-11-19 at 11:04, Justin Erenkrantz wrote:
 --On Friday, November 19, 2004 7:57 PM +0100 André Malo [EMAIL PROTECTED] 
 wrote:
 
  Looks basically fine. I'm wondering a bit about the tags directory,
  especially the 1.3 subdir. Is it necessary, is there something broken?
 
 Just to be clear, Sander's email that you are replying to was an artifact 
 of the busted network at Alexis Park.

Indeed, others will find they have received 'out-of-date' mail from me
as well.

 The conversion is now complete and live at:
 
 http://svn.apache.org/repos/asf/httpd/
 
 Sander should be following up with detailed instructions soon-ish.  But, 
 alas, I think he fell asleep at the keyboard once again this morning.  ;-)

*blush*

The instructions ended up not to be so detailed, but hey :)

 Regarding the tags/1.3 subdir, those are the complete tags for the 1.3 
 series.  Our conversion got royally messed up due to the docs files as they 
 contain overlapping tags with the 1.3 repository.  So, I've cleared out 
 most of the bogus tags in the tags/ directory and I need to move all of the 
 'real' 1.3 tags into the tags/ dir.

Thanks again Justin,

Sander



SVN usage, log message policy

2004-11-19 Thread Sander Striker
Hi guys,

Now that we are using SVN, would we want to adopt a guideline
for log messages.  The SVN project itself uses a standard format
for all their log messages and I must say that it has helped
me tremendously when doing reviews.

See http://svn.collab.net/repos/svn/HACKING for details
(look for Writing log messages).  I reckomend reading the
entire document, since I think it has more useful ideas
than just providing a guideline on log messages.


Sander

PS.  I'll most likely be offline for the entire upcoming week,
 in case you wonder why I don't contribute to the resulting
 thread.


CVS to SVN migration

2004-11-17 Thread Sander Striker
Hi all,

Justin and I have been up all night again working on the httpd-*
conversion.  We've come to about 10% of loading the final dumpfile
and then we run into some issues.

We think we've sorted that out now and are restarting the load
(in a test repos).  Loading takes quite a long time, so we've
started it again and are of to bed.  We'll check on it in the
morning... oh wait... make that around lunch.

The issues we are seeing are related to our f#$%ed up history
of our CVS files.  The copies of the files from one directory
to another leads to duplication, and thus failures.  We have
been working on this intensively, with an earlier date of
completion in mind.  Unfortunately we can't meet that.  This
however doesn't mean that CVS will be reopened.

Thanks for your patience,

Sander 'no sleep for me :/' Striker



Re: [NOTICE] Subversion conversion

2004-11-16 Thread Sander Striker
On Tue, 2004-11-16 at 07:03, Bill Stoddard wrote:
 Sander Striker wrote:
  Hi,
  
  I'm finally taking care of the conversion of httpd-* to SVN.
  I'll follow up with instructions on how to pull new workingcopies,
  etc etc.  I'm looking for volunteers to actually write a page
  for developers on where to get SVN and how to check out the
  sources from the SVN repository.
  
  I'm shooting for being done with it all by tomorrow night.
  
  Sander
  
 
 Did this happen?

Some irresponsible partying is delaying the process a bit...

Sander


Re: [NOTICE] Subversion conversion

2004-11-16 Thread Sander Striker
On Tue, 2004-11-16 at 09:34, Sander Striker wrote:
 On Tue, 2004-11-16 at 07:03, Bill Stoddard wrote:
  Sander Striker wrote:

  Did this happen?
 
 Some irresponsible partying is delaying the process a bit...

To clarify: I was planning on moving forward yesterday after
The Incredibles.  I got about 80% through.  I'll continue
after breakfast.  Apologies for the holdup.  I promise it'll
be worth it though.

Sander



[NOTICE] Subversion conversion

2004-11-13 Thread Sander Striker
Hi,

I'm finally taking care of the conversion of httpd-* to SVN.
I'll follow up with instructions on how to pull new workingcopies,
etc etc.  I'm looking for volunteers to actually write a page
for developers on where to get SVN and how to check out the
sources from the SVN repository.

I'm shooting for being done with it all by tomorrow night.

Sander


[PATCH] Site, ApacheCon 2004

2004-10-16 Thread Sander Striker
Hi,

I did some mods to the site, highlighting all sessions about
httpd, but frankly, it looks totally messy.  If someone with
a bright idea on how to make this look better wants to take
a stab at it, that would be much appreciated.

Sander
 


site.ac2004.patch
Description: Binary data


RE: Bye bye welcome page

2004-10-07 Thread Sander Striker
On Thu, 2004-10-07 at 12:08, John Rowe wrote:
   If I was a newbie, and I saw a page that says `it worked`, my immediate 
   reaction would be `what worked?` and I would start asking the exact 
   questions we`re trying to stop people from asking.
  
  We can always go with simply displaying a meaningless word like 'Waboozle'.
 
 And so the madness begins again..

[...]

I do hope everyone realizes I was kidding.  The only thing we have to do
is agree on a concise and clear message.  I don't think it is we are
likely to reach concensus on proze like the welcome page.  Other than
lazy concensus that is.  FWIW, I'm fine with Joshua's suggestion.


Sander


RE: Bye bye welcome page

2004-10-06 Thread Sander Striker
 -Original Message-
 From: Graham Leggett [mailto:[EMAIL PROTECTED] 
 Sent: Wednesday, October 06, 2004 8:36 PM
 To: [EMAIL PROTECTED]
 Subject: Re: Bye bye welcome page

 Joshua Slive wrote:

 My opinion is that the shorter message is better because, by the fact 
 that it gives no information at all, it is less likely to be 
 misinterpreted to mean something that the website owner doesn't intend.
 
 I won't object if someone wants to put another piece of text there, as 
 long as it doesn't start us back on the same road we left 5+ years ago 
 with this page.

 In that case why not just have the default page be an empty drectory 
 listing?

 If I was a newbie, and I saw a page that says `it worked`, my immediate 
 reaction would be `what worked?` and I would start asking the exact 
 questions we`re trying to stop people from asking.

We can always go with simply displaying a meaningless word like 'Waboozle'.

Sander



Re: Moving httpd-2.0 to Subversion

2004-09-27 Thread Sander Striker
On Mon, 2004-09-27 at 06:13, Joe Schaefer wrote:
 Sander Striker [EMAIL PROTECTED] writes:
 
   Probably not worth it given all of the parallel development.
  
  Well, I'd rather see us using something like this:
  
httpd/
  apreq/
trunk/
branches/
tags/
 
 +1, with more details: httpd-apreq current cvs should 
 probably go to 
 
   apreq/branches/1.3
 
 and httpd-apreq-2 cvs can go to apreq/trunk.

*nod*

 Also, will
 the apreq commit emails still be sent to apreq-cvs@, or 
 will every commit to the httpd repository have to go to 
 a common commit list?

We can configure the mailer however we like (within boundaries
of reason ofcourse :).

Sander


RE: [OT] Developer lists and Reply-To header

2004-09-23 Thread Sander Striker
 From: Jeff Trawick [mailto:[EMAIL PROTECTED] 
 Sent: Thursday, September 23, 2004 2:50 PM

On Thu, 23 Sep 2004 13:20:49 +0200, Mladen Turk [EMAIL PROTECTED] wrote:
 Hi,
 
 Is there any reason why apr, apr-util, httpd mailing lists have
 Reply-To header set to the sender and not to the list itself.

 the reason NOT to do it is that it is unintuitive to most people
 (okay, just me and Mladen) and causes needless vigilance to fix the
 To/Cc

(but [EMAIL PROTECTED] acts in the more intuitive manner, setting Reply-To to
 the mailing list)

Which I would have no issue with fixing... :^)

Sander



Re: Moving httpd-2.0 to Subversion

2004-09-16 Thread Sander Striker
From: Paul Querna [EMAIL PROTECTED]
Sent: Friday, September 17, 2004 7:34 AM

Hi,

 The Original Proposal was in March of this year:
 http://marc.theaimsgroup.com/?t=10791831443r=2w=2

 +1 Votes:
   Tom May
   Justin Erenkrantz
   Andr Malo
   Erik Abele
   Jim Jagielski
   Bill Stoddard
   Joe Orton

I can't believe I am not in this list...

 -1 Votes:
   Aaron Bannert

 Aaron said:
 This will, at least for now, raise the bar to entry for contributors.
[...]

 What are the barriers to moving to Subversion?

Other than making the actual decision?  None.

 I believe we might as
 well do it now, before we start on a new stable branch (2.2).  Time for
 another Vote?

Here's my +1.  I should note though that we voted to move 1.3
ages ago, and I managed to drop the ball on that one.  When I
finally got around to processing the 1.3 converted CVS
repository, Fitz had removed it from his homedir.

cvs2svn has seen a release as well, and has been improved a lot
since march.  Infrastructure is now totally able to run the
cvs2svn conversion itself.  I fully intent to start on the 1.3
conversion tonight; this time without dropping the ball...


Sander



[VOTE] Apache HTTP Server 2.0.51

2004-09-15 Thread Sander Striker
Hi,

I've put the tarballs for 2.0.51 up at http://httpd.apache.org/dev/dist/.
Please test and vote,

Sander


Re: [VOTE] Apache HTTP Server 2.0.51

2004-09-15 Thread Sander Striker
 From: Sander Striker [EMAIL PROTECTED]
 Sent: Wednesday, September 15, 2004 4:49 PM


 Thanks.  I've moved the tarballs to the distribution area.

Could someone please take care of the httpd.apache.org site?
I'm in a bit of a bind currently (for at least another 1-2 hours).


Sander


  1   2   3   4   5   >