Re: Apache for win64

2005-07-20 Thread Gopikrishnan Sidhardhan

William A. Rowe, Jr. wrote:


At 06:23 AM 7/20/2005, Gopikrishnan Sidhardhan wrote:
 


Tried building it.  Went on for some time, with lots of warnings like "conversion from size_t 
to DWORD: possible loss of data".  Then the build broke with "fatal error LNK1112: module 
machine type 'AMD64' conflicts with target machine type 'X86'".

Any ideas, anyone?
   



Yes - don't try Apache 2.2, try Apache 2.1 alpha and the APR 1.2.0
which isn't quite released yet.
 



You do mean "don't try Apache 2.0", right?

Thanks,
--Gopi


Apache 2.0/APR 0.9 haven't been kept up - making them comply with
Win64's LP64 model would have broken binary compatibility.

Please -do- test Apache 2.1/2.2 candidates as they are announced,
since we've done our level best without a Win64 test box to get
these compiling clean. 


Bill


 





Re: Apache for win64

2005-07-20 Thread Gopikrishnan Sidhardhan

William A. Rowe, Jr. wrote:


At 06:23 AM 7/20/2005, Gopikrishnan Sidhardhan wrote:
 


Tried building it.  Went on for some time, with lots of warnings like "conversion from size_t 
to DWORD: possible loss of data".  Then the build broke with "fatal error LNK1112: module 
machine type 'AMD64' conflicts with target machine type 'X86'".

Any ideas, anyone?
   



Yes - don't try Apache 2.2, try Apache 2.1 alpha and the APR 1.2.0
which isn't quite released yet.

Apache 2.0/APR 0.9 haven't been kept up - making them comply with
Win64's LP64 model would have broken binary compatibility.

Please -do- test Apache 2.1/2.2 candidates as they are announced,
since we've done our level best without a Win64 test box to get
these compiling clean. 


Bill


 



If you can point me to the 2.1/2.2 source I can try building it and let 
you know what happens.


Thanks,
--Gopi



[STATUS] (httpd-test: perl-framework) Wed Jul 20 23:46:18 2005

2005-07-20 Thread Rodent of Unusual Size
httpd-test/perl-framework STATUS:   -*-text-*-
Last modified at [$Date: 2004-11-24 19:36:41 -0500 (Wed, 24 Nov 2004) $]

Stuff to do:
* finish the t/TEST exit code issue (ORed with 0x2C if
  framework failed)

* change existing tests that frob the DocumentRoot (e.g.,
  t/modules/access.t) to *not* do that; instead, have
  Makefile.PL prepare appropriate subdirectory configs
  for them.  Why?  So t/TEST can be used to test a
  remote server.

* problems with -d perl mode, doesn't work as documented
  Message-ID: <[EMAIL PROTECTED]>
  Date: Sat, 20 Oct 2001 12:58:33 +0800
  Subject: Re: perldb

Tests to be written:

* t/apache
  - simulations of network failures (incomplete POST bodies,
chunked and unchunked; missing POST bodies; slooow
client connexions, such as taking 1 minute to send
1KiB; ...)

* t/modules/autoindex
  - something seems possibly broken with inheritance on 2.0

* t/ssl
  - SSLPassPhraseDialog exec:
  - SSLRandomSeed exec:


[STATUS] (httpd-2.0) Wed Jul 20 23:45:35 2005

2005-07-20 Thread Rodent of Unusual Size
APACHE 2.0 STATUS:  -*-text-*-
Last modified at [$Date: 2005-07-19 17:59:17 -0400 (Tue, 19 Jul 2005) $]

The current version of this file can be found at:

  * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/STATUS

Documentation status is maintained seperately and can be found at:

  * docs/STATUS in this source tree, or
  * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/docs/STATUS

Consult the following STATUS files for information on related projects:

  * http://svn.apache.org/repos/asf/apr/apr/branches/0.9.x/STATUS
  * http://svn.apache.org/repos/asf/apr/apr-util/branches/0.9.x/STATUS

Consult the trunk/ for all new development and documentation efforts:

  * http://svn.apache.org/repos/asf/httpd/httpd/trunk/STATUS
  * http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/STATUS


Release history:

2.0.55  : in development
2.0.54  : released April 17, 2005 as GA.
2.0.53  : released February 7, 2005 as GA.
2.0.52  : released September 28, 2004 as GA.
2.0.51  : released September 15, 2004 as GA.
2.0.50  : released June 30, 2004 as GA.
2.0.49  : released March 19, 2004 as GA.
2.0.48  : released October 29, 2003 as GA.
2.0.47  : released July 09, 2003 as GA.
2.0.46  : released May 28, 2003 as GA.
2.0.45  : released April 1, 2003 as GA.
2.0.44  : released January 20, 2003 as GA.
2.0.43  : released October 3, 2002 as GA.
2.0.42  : released September 24, 2002 as GA.
2.0.41  : rolled September 16, 2002.  not released.
2.0.40  : released August 9, 2002 as GA.
2.0.39  : released June 17, 2002 as GA.
2.0.38  : rolled June 16, 2002.  not released.
2.0.37  : rolled June 11, 2002.  not released.
2.0.36  : released May 6, 2002 as GA.
2.0.35  : released April 5, 2002 as GA.
2.0.34  : tagged March 26, 2002.
2.0.33  : tagged March 6, 2002.  not released.
2.0.32  : released Feburary 16, 2002 as beta.
2.0.31  : rolled Feburary 1, 2002.  not released.
2.0.30  : tagged January 8, 2002.  not rolled.
2.0.29  : tagged November 27, 2001.  not rolled.
2.0.28  : released November 13, 2001 as beta.
2.0.27  : rolled November 6, 2001
2.0.26  : tagged October 16, 2001.  not rolled.
2.0.25  : rolled August 29, 2001
2.0.24  : rolled August 18, 2001
2.0.23  : rolled August 9, 2001
2.0.22  : rolled July 29, 2001
2.0.21  : rolled July 20, 2001
2.0.20  : rolled July 8, 2001
2.0.19  : rolled June 27, 2001
2.0.18  : rolled May 18, 2001
2.0.17  : rolled April 17, 2001
2.0.16  : rolled April 4, 2001
2.0.15  : rolled March 21, 2001
2.0.14  : rolled March 7, 2001
2.0a9   : released December 12, 2000
2.0a8   : released November 20, 2000
2.0a7   : released October 8, 2000
2.0a6   : released August 18, 2000
2.0a5   : released August 4, 2000
2.0a4   : released June 7, 2000
2.0a3   : released April 28, 2000
2.0a2   : released March 31, 2000
2.0a1   : released March 10, 2000


Contributors looking for a mission:

* Just do an egrep on "TODO" or "XXX" in the source.

* Review the bug database at: http://issues.apache.org/bugzilla/

* Review the "PatchAvailable" bugs in the bug database:

  
http://issues.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=Apache+httpd-2.0&keywords=PatchAvailable

  After testing, you can append a comment saying "Reviewed and tested".

* Open bugs in the bug database.


CURRENT RELEASE NOTES:

* Forward binary compatibility is expected of Apache 2.0.x releases, such
  that no MMN major number changes will occur.  Such changes can only be
  made in the trunk.

* All commits to branches/2.0.x must be reflected in SVN trunk,
  as well, if they apply.  Logical progression is commit to trunk,
  get feedback and votes in STATUS, and then merge into branches/2.0.x.


RELEASE SHOWSTOPPERS:

* Various fixes to T-E and C-L processing from trunk

  Refactor mod_proxy_http.c's Transfer-Encoding/Content-Length elections
  since they didn't follow RFC 2616, in fact didn't seem to make much
  sense at all.  Patch to migrate request-body-handling from trunk/ based
  on 2.1-dev request body handling behavior (although just a bit more
  conservative on the side of C-L spooling)...
  http://people.apache.org/~wrowe/httpd-2.0-proxy-request-3.patch
  Revert r219061 to properly test this patch, as r219061 masks the
  underlying bug (although it is a -good- patch in and of itself).

   +1: wrowe, jim
   -1: jorton: this is a massive patch and extremely hard to review
   for actual interesting content; it is mixed in with all sorts
   of unrelated stuff.  It needs to at least be split up or
   the unrelated stuff removed.

   unrelated change: s/apr_strnatcasecmp/strcasecmp/
   unrelated change: s/b

[STATUS] (httpd-2.1) Wed Jul 20 23:45:47 2005

2005-07-20 Thread Rodent of Unusual Size
APACHE 2.1 STATUS:  -*-text-*-
Last modified at [$Date: 2005-06-30 16:42:43 -0400 (Thu, 30 Jun 2005) $]

The current version of this file can be found at:

  * http://svn.apache.org/repos/asf/httpd/httpd/trunk/STATUS

Documentation status is maintained seperately and can be found at:

  * docs/STATUS in this source tree, or
  * http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/STATUS

Consult the following STATUS files for information on related projects:

  * http://svn.apache.org/repos/asf/apr/apr/trunk/STATUS
  * http://svn.apache.org/repos/asf/apr/apr-util/trunk/STATUS

Patches considered for backport are noted in their branches' STATUS:

  * http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x/STATUS
  * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/STATUS


Release history:
[NOTE that only Alpha/Beta releases occur in 2.1 development]

2.1.7   : in development
2.1.6   : Released on  6/27/2005 as alpha.
2.1.5   : Tagged on 6/17/2005. 
2.1.4   : not released.
2.1.3   : Released on  2/22/2005 as alpha.
2.1.2   : Released on 12/08/2004 as alpha.
2.1.1   : Released on 11/19/2004 as alpha.
2.1.0   : not released.


Contributors looking for a mission:

* Just do an egrep on "TODO" or "XXX" in the source.

* Review the bug database at: http://issues.apache.org/bugzilla/

* Review the "PatchAvailable" bugs in the bug database:

  
http://issues.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=Apache+httpd-2.0&keywords=PatchAvailable

  After testing, you can append a comment saying "Reviewed and tested".

* Open bugs in the bug database.


CURRENT RELEASE NOTES:


RELEASE SHOWSTOPPERS:

* Handling of non-trailing / config by non-default handler is broken
  http://marc.theaimsgroup.com/?l=apache-httpd-dev&m=105451701628081&w=2
  jerenkrantz asks: Why should this block a release?
  wsanchez agrees: this may be a change in behavior, but isn't
clearly wrong, and even if so, it doesn't seem like a
showstopper.

* the edge connection filter cannot be removed 
  http://marc.theaimsgroup.com/?l=apache-httpd-dev&m=105366252619530&w=2

  jerenkrantz asks: Why should this block a release?

  stas replies: because it requires a rewrite of the filters stack
implementation (you have suggested that) and once 2.2 is
released you can't do that anymore. 


CURRENT VOTES:

* httpd-std.conf and friends

  a) httpd-std.conf should be tailored by install (from src or
 binbuild) even if user has existing httpd.conf
 +1:   trawick, slive, gregames, ianh, Ken, wrowe, jwoolley, jim, nd,
   erikabele
   wrowe - prefer httpd.default.conf to avoid ambiguity with cvs

  b) tailored httpd-std.conf should be copied by install to
 sysconfdir/examples
 -0:   striker

  c) tailored httpd-std.conf should be installed to
 sysconfdir/examples or manualdir/exampleconf/
 +1:   slive, trawick, Ken, nd (prefer the latter), erikabele
 +1:   wsanchez (propose sysconfdir/examples/ for diffiness)

  d) Installing a set of default config files when upgrading a server
 doesn't make ANY sense at all.
 +1:   ianh - medium/big sites don't use 'standard config' anyway, as it
  usually needs major customizations
 -1:   Ken, wrowe, jwoolley, jim, nd, erikabele
   wrowe - diff is wonderful when comparing old/new default configs,
   even for customized sites that ianh mentions
   jim - ... assuming that the default configs have been updated
 with the required inline docs to explain the
 changes

* If the parent process dies, should the remaining child processes
  "gracefully" self-terminate. Or maybe we should make it a runtime
  option, or have a concept of 2 parent processes (one being a 
  "hot spare").
  See: Message-ID: <[EMAIL PROTECTED]>

  Self-destruct: Ken, Martin, Lars
  Not self-destruct: BrianP, Ian, Cliff, BillS
  Make it runtime configurable: Aaron, jim, Justin, wrowe, rederpj, nd

  /* The below was a concept on *how* to handle the problem */
  Have 2 parents: +1: jim
  -1: Justin, wrowe, rederpj, nd
  +0: Lars, Martin (while standing by, could it do
something useful?)

* Make the worker MPM the default MPM for threaded Unix boxes.
  +1:   Justin, Ian, Cliff, BillS, striker, wrowe, nd
  +0:   BrianP, Aaron (mutex contention is looking better with the
latest code, let's continue tuning and testing), rederpj, jim
  -0:   Lars

  pquerna: Do we want to change this for 2.2?


RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:

* Patche

Re: mod_mbox and generate_index

2005-07-20 Thread Maxime Petazzoni
Hi,

> I trying to build the standalone helper program generate_index that
> the catchup-archive script needs.  This program does not seem to be
> made by the makefile and the build-dso errors out looking for
> lucene4c headers. Any ideas?

Why do you need this program ? If you want to generate the DBMs used
by mod_mbox, it's not generate_index that you need, but
mod-mbox-util. It is compiled by the autotools.

Here's how I compile and setup mod_mbox (yes, I'll be writing a doc on
this later on, eg. at the end of the summer) :

First, make sure you have configured your Apache2 webserver correctly
by adding a config snippet like the following :

LoadModule mbox_module /usr/lib/apache2/modules/mod_mbox.so

AddHandler mbox-handler .mbox

MboxIndex On


Then, checkout and compile mod_mbox :

% svn co http://svn.apache.org/repos/asf/httpd/mod_mbox/trunk/
% cd trunk/
% ./autogen.sh
% ./configure --with-apxs=/usr/bin/apxs2
[...]
% make clean all
% su
Password:
# make install
# /etc/init.d/apache2 restart

Finally, rsync a mail archive and generate the database :

# mkdir -p /var/www/archives
# cd $_
# rsync -avr svn.apache.org::public-arch/httpd.apache.org/dev/ dev/
# cd dev/
# for i in *.gz ; do gunzip -c $i > ${i%*.gz}.mbox ; done
# cp `date +%Y%m` `date +%Y%m`.mbox
# ~/trunk/module-2.0/mod-mbox-util -v -c /var/www/archives/dev
# chown -R www-data:www-data /var/www/archives/

Then, go to http://localhost/archives/dev/

- Sam

-- 
Maxime Petazzoni (http://www.bulix.org)
 -- gone crazy, back soon. leave message.


signature.asc
Description: Digital signature


Re: mod_mbox: js speed and mbox size

2005-07-20 Thread Jeff White


From: "Bill Stoddard"


Maxime Petazzoni wrote:



As I already said, the AJAX browser
in mod_mbox relies on a hidden
XmlHttpRequest and on Javascript
processing of the replied XML
document to generate the message list.



Snip


Of course, the paging system would
solve this problem, too. In addition to this,
my Javascript code may not be the most
optimized we could find.

- Concerning compatibility problems, the
whole thing does not work nor with IE,
neither with Opera, although both of these
browsers does not comply against any
javascript error.

  Any JS compatibility expert in the house ?


Heh, you wish :0

This is a cool project, glad it's on the httpd
dev list.

Bill



Hasn't someone been suggesting, 
for years now, to deaf ears at ASF,
for ASF to use the very helpful 
Windows Scripting (even XmlHttp)?   

Now ASF's developers and open source 
developers have discovered XmlHttp!  

Atlas = Ajax = asp.net 2.0 
script callbacks and more

http://blogs.msdn.com/nickmalik/archive/2005/07/08/436823.aspx

Perhaps (once again):

Learn to Script
http://www.microsoft.com/technet/scriptcenter/learnit.mspx

Jeff






Re: Pondering strings in Apache 3.x

2005-07-20 Thread Jeff White


From: "William A. Rowe, Jr." 



What else interests us within an 
'ap_string_t' header, that would help 
eliminate bugs within httpd?  A random 
trailing short following the string, in a 
'string debug' mode, to detect buffer 
overflows?  Something similar to detect 
underflows?


Open to all ideas.



What are the newer C / C++ compiler
standard Safer C Library Functions?

Jeff





Memory-Leak problem in own module

2005-07-20 Thread Timo Eckert
Hello,

I have written an own Apache-Module for log-rotating.
Now my Problem is that I have a memory-Leak and I don't know why.

Are there any Debugging-Tools for Apache (or general), where I can see,
what memory is allocated and maybe I can see the content of the allocated
Memory.

For example:

After start the Apache the childs are using 20268 kB of Memory. Then I kill the 
Apache
with -USR1 , then the childs are using 21872 kB of Memory.
So you can see, it grows per reload about 1600 kB of Memory, and I don't know
where I have to search.
Afters a few days (and reloads) my apache is grown to 200-300MB Memory usage.


So if there are any ideas, let me know. Thanks. :)


Regards,
Timo Eckert


Re: httpd-1.3 patchlets

2005-07-20 Thread Mads Toftum
On Wed, Jul 20, 2005 at 03:16:42PM +0200, Sander Temme wrote:
> Two very small patches against 1.3.
> 
> First one, make ab default to the highest SSL version available:
> 
> Index: src/support/ab.c
> ===
> --- src/support/ab.c(revision 125243)
> +++ src/support/ab.c(working copy)
> @@ -1655,7 +1655,7 @@
> 
>  #ifdef USE_SSL
>  SSL_library_init();
> -if (!(ctx = SSL_CTX_new(SSLv2_client_method( {
> +if (!(ctx = SSL_CTX_new(SSLv23_client_method( {
> fprintf(stderr, "Could not init SSL CTX: ");
> ERR_print_errors_fp(stderr);
> exit(1);
> 
+1 from the peanut gallery.

vh

Mads Toftum
-- 
`Darn it, who spiked my coffee with water?!' - lwall



Re: httpd-1.3 patchlets

2005-07-20 Thread William A. Rowe, Jr.
+1 on both patches; I can see how libhttpd.so gets stripped today.

I'd commit if there were a couple more +1's.

Bill

At 08:16 AM 7/20/2005, Sander Temme wrote:
>Two very small patches against 1.3.
>
>First one, make ab default to the highest SSL version available:
>
>Index: src/support/ab.c
>===
>--- src/support/ab.c(revision 125243)
>+++ src/support/ab.c(working copy)
>@@ -1655,7 +1655,7 @@
>
> #ifdef USE_SSL
> SSL_library_init();
>-if (!(ctx = SSL_CTX_new(SSLv2_client_method( {
>+if (!(ctx = SSL_CTX_new(SSLv23_client_method( {
>fprintf(stderr, "Could not init SSL CTX: ");
>ERR_print_errors_fp(stderr);
>exit(1);
>
>Secondly, a patch that keeps --without-execstrip from stripping the  
>httpd binary:
>
>Index: configure
>===
>--- configure   (revision 219524)
>+++ configure   (working copy)
>@@ -927,6 +927,8 @@
> ;;
> --without-execstrip)
> iflags_program=`echo "$iflags_program" | sed -e 's/-s//'`
>+iflags_core=`echo "$iflags_core" | sed -e 's/-S//' -e 's/ 
>\"-S\"//'`
>+iflags_dso=`echo "$iflags_dso" | sed -e 's/-S//' -e 's/ \"-S\"//'`
> ;;
> --suexec-caller=*)
> suexec_caller="$apc_optarg"
>
>There is a special case for Darwin in configure that makes the httpd  
>binary get stripped even if --without-execstrip is specified. This  
>stops that from happening, so --without-execstrip leaves all binaries  
>unstripped. I think this adheres to the principle of least astonishment.
>
>Let me know if you can fudge that in. (:
>
>Thanks,
>
>S.
>
>-- 
>[EMAIL PROTECTED]  http://www.temme.net/sander/
>PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF




Re: Apache for win64

2005-07-20 Thread William A. Rowe, Jr.
At 06:23 AM 7/20/2005, Gopikrishnan Sidhardhan wrote:
>Tried building it.  Went on for some time, with lots of warnings like 
>"conversion from size_t to DWORD: possible loss of data".  Then the build 
>broke with "fatal error LNK1112: module machine type 'AMD64' conflicts with 
>target machine type 'X86'".
>
>Any ideas, anyone?

Yes - don't try Apache 2.2, try Apache 2.1 alpha and the APR 1.2.0
which isn't quite released yet.

Apache 2.0/APR 0.9 haven't been kept up - making them comply with
Win64's LP64 model would have broken binary compatibility.

Please -do- test Apache 2.1/2.2 candidates as they are announced,
since we've done our level best without a Win64 test box to get
these compiling clean. 

Bill




Re: Initial mod_smtpd code.

2005-07-20 Thread Rian Hunter


On Jul 19, 2005, at 7:39 PM, Jorge Schrauwen wrote:


Wouldn't something like


ServerName www.apache.org:81
ServerAlias httpd.apache.org internal_dev
ServerAdmin [EMAIL PROTECTED]
ErrorLog logs/error.log
TransferLog logs/access.log
SMTP On # like with mod_dav (dav on)


so reusing existing command, then this main an user of www.apache.org

lets call him

[EMAIL PROTECTED]
that the following addresse point to the same.
[EMAIL PROTECTED]
[EMAIL PROTECTED]

this seems to be more logical to me.


Personally I think this is too much reuse of configuration in a  
context that may not make sense to a user or admin. Either way, conf  
like that is irrelevant to core mod_smtpd.

-rian


Re: [PATCH] mod_disk_cache: change handling of varied contents

2005-07-20 Thread Akins, Brian



On 7/20/05 11:25 AM, "Paul Querna" <[EMAIL PROTECTED]> wrote:

> If a URI is varied, all variations will be stored underneath a new
> .header.vary/ directory.

Looks good for starters.

Good idea.

I would like a way to override some varies.  For example, in a reverse proxy
situation, you may vary on "User-Agent" header for gzip stuff.  However, you
really only care whether the user-agent can do gzip or not, you do not want
to store a different version for every browser.

May be something like this in config:

VaryValue User-Agent gzip

Where gzip is an environment value set by SetEnv if or something similar.


This may have been discussed before.




Re: [VOTE] libapreq2-2.06-dev-rc4

2005-07-20 Thread Philip M. Gollucci

Max Kellermann wrote:


I did a quick test on FreeBSD, without the perl glue. The build fails
with the following message:

Making all in module
Making all in apache2
make: don't know how to make all-local. Stop
*** Error code 1

It turns out that the generated Makefile.in contains:
 

I'll second that... I know it caught me the first time too, and out of 
habbit I take make instead of gmake.
It is however specified in the docs.  Maybe Makefile.am should generate 
a Makefile that checks what make its using if on FreeBSD ?


--
END 
-

   What doesn't kill us can only make us stronger.
  Nothing is impossible.

Philip M. Gollucci ([EMAIL PROTECTED]) 301.254.5198
Consultant / http://p6m7g8.net/Resume/resume.shtml
Senior Developer / Liquidity Services, Inc.
http://www.liquidityservicesinc.com
   http://www.liquidation.com
   http://www.uksurplus.com
   http://www.govliquidation.com
   http://www.gowholesale.com




[PATCH] mod_disk_cache: change handling of varied contents

2005-07-20 Thread Paul Querna
The attached patch changes how we store the contents of a varied URI.

If a URI is varied, all variations will be stored underneath a new
.header.vary/ directory.

This enables future tools, such as the ability to easily delete a URI
from the cache, without scanning the entire tree, just to find the
possible varied versions.

The code was written pretty quickly, and I would love some feedback both
on the idea, and the hacky way I did it :)

-Paul
Index: modules/cache/mod_disk_cache.c
===
--- modules/cache/mod_disk_cache.c  (revision 219914)
+++ modules/cache/mod_disk_cache.c  (working copy)
@@ -50,8 +50,8 @@
  *   CRLF
  */
 
-#define VARY_FORMAT_VERSION 1
-#define DISK_FORMAT_VERSION 2
+#define VARY_FORMAT_VERSION 3
+#define DISK_FORMAT_VERSION 4
 
 typedef struct {
 /* Indicates the format of the header struct stored on-disk. */
@@ -76,6 +76,7 @@
 typedef struct disk_cache_object {
 const char *root;/* the location of the cache directory */
 char *tempfile;/* temp file tohold the content */
+const char *prefix;
 const char *datafile;/* name of file where the data will go */
 const char *hdrsfile;/* name of file where the hdrs will go */
 const char *hashfile;/* Computed hash key for this URI */
@@ -124,6 +125,8 @@
  */
 #define CACHE_HEADER_SUFFIX ".header"
 #define CACHE_DATA_SUFFIX   ".data"
+#define CACHE_VDIR_SUFFIX   ".vary"
+
 static char *header_file(apr_pool_t *p, disk_cache_conf *conf,
  disk_cache_object_t *dobj, const char *name)
 {
@@ -131,8 +134,15 @@
 dobj->hashfile = ap_cache_generate_name(p, conf->dirlevels, 
 conf->dirlength, name);
 }
-return apr_pstrcat(p, conf->cache_root, "/", dobj->hashfile,
-   CACHE_HEADER_SUFFIX, NULL);
+
+if (dobj->prefix) {
+return apr_pstrcat(p, dobj->prefix, CACHE_VDIR_SUFFIX, "/",
+   dobj->hashfile, CACHE_HEADER_SUFFIX, NULL);
+ }
+ else {
+return apr_pstrcat(p, conf->cache_root, "/", dobj->hashfile,
+   CACHE_HEADER_SUFFIX, NULL);
+ }
 }
 
 static char *data_file(apr_pool_t *p, disk_cache_conf *conf,
@@ -142,8 +152,15 @@
 dobj->hashfile = ap_cache_generate_name(p, conf->dirlevels, 
 conf->dirlength, name);
 }
-return apr_pstrcat(p, conf->cache_root, "/", dobj->hashfile,
-   CACHE_DATA_SUFFIX, NULL);
+
+if (dobj->prefix) {
+return apr_pstrcat(p, dobj->prefix, CACHE_VDIR_SUFFIX, "/",
+   dobj->hashfile, CACHE_DATA_SUFFIX, NULL);
+ }
+ else {
+return apr_pstrcat(p, conf->cache_root, "/", dobj->hashfile,
+   CACHE_DATA_SUFFIX, NULL);
+ }
 }
 
 static void mkdir_structure(disk_cache_conf *conf, const char *file, 
apr_pool_t *pool)
@@ -352,6 +369,7 @@
 obj->key = apr_pstrdup(r->pool, key);
 
 dobj->name = obj->key;
+dobj->prefix = NULL;
 dobj->datafile = data_file(r->pool, conf, dobj, key);
 dobj->hdrsfile = header_file(r->pool, conf, dobj, key);
 dobj->tempfile = apr_pstrcat(r->pool, conf->cache_root, AP_TEMPFILE, NULL);
@@ -393,6 +411,8 @@
 info = &(obj->info);
 
 /* Open the headers file */
+dobj->prefix = NULL;
+
 dobj->hdrsfile = header_file(r->pool, conf, dobj, key);
 flags = APR_READ|APR_BINARY|APR_BUFFERED;
 rc = apr_file_open(&dobj->hfd, dobj->hdrsfile, flags, 0, r->pool);
@@ -428,6 +448,7 @@
 nkey = regen_key(r->pool, r->headers_in, varray, key);
 
 dobj->hashfile = NULL;
+dobj->prefix = dobj->hdrsfile;
 dobj->hdrsfile = header_file(r->pool, conf, dobj, nkey);
 
 flags = APR_READ|APR_BINARY|APR_BUFFERED;
@@ -784,6 +805,7 @@
 
 dobj->tempfile = apr_pstrcat(r->pool, conf->cache_root, 
AP_TEMPFILE, NULL);
 tmp = regen_key(r->pool, r->headers_in, varray, dobj->name);
+dobj->prefix = dobj->hdrsfile;
 dobj->hashfile = NULL;
 dobj->datafile = data_file(r->pool, conf, dobj, tmp);
 dobj->hdrsfile = header_file(r->pool, conf, dobj, tmp);


Re: mod-cache-requestor plan

2005-07-20 Thread Graham Leggett

Parin Shah wrote:


2. how mod-cache-requester can generate the sub request just to reload
the content in the cache.


Look inside mod_include - it uses subrequests to be able to embed pages 
within other pages.


Regards,
Graham
--


Re: Initial mod_smtpd code.

2005-07-20 Thread Jem Berkes
> Overall blacklists aren't that effective and cause a lot of false
> positives.  They may make sense in the case of something like
> SpamAssassin which uses a blacklist in conjunction with other false
> positives,  but by themselves they really aren't a responsible way of
> dealing with the spam problem.  I think it's better to discourage "worst
> practices" than to sucumb to plugin mania.

Blocklists aren't fundamentally broken, they are a tool which can be used 
properly or misused (just like many other tools).

Many admins choose to maintain their own DNSBLs for one reason or another. 
It may be a way to control relay access based on their own subscriber IP 
addressess. At my site we keep a record of IPs that have persistently 
abused our site over the past few days.

i.e. DNSBL != (SPEWS or MAPS or whatever)




Re: Initial mod_smtpd code.

2005-07-20 Thread Paul A Houle

Jem Berkes wrote:



I could also start work on a mod_smtpd_dnsbl if the mentors feel that is 
worthwhile? This would look up a connecting IP address against a blacklist 
and return a descriptive string to mod_smtpd if the client should be 
rejected with an error: "550 5.7.1 Email rejected because 127.0.0.2 is 
listed by sbl-xbl.spamhaus.org"


I'd also like to include support for RHSBL, a newer type of listing by 
domain names from the envelope sender address. That's used by a growing 
number of projects.
 

   Overall blacklists aren't that effective and cause a lot of false 
positives.  They may make sense in the case of something like 
SpamAssassin which uses a blacklist in conjunction with other false 
positives,  but by themselves they really aren't a responsible way of 
dealing with the spam problem.  I think it's better to discourage "worst 
practices" than to sucumb to plugin mania.


httpd-1.3 patchlets

2005-07-20 Thread Sander Temme

Two very small patches against 1.3.

First one, make ab default to the highest SSL version available:

Index: src/support/ab.c
===
--- src/support/ab.c(revision 125243)
+++ src/support/ab.c(working copy)
@@ -1655,7 +1655,7 @@

 #ifdef USE_SSL
 SSL_library_init();
-if (!(ctx = SSL_CTX_new(SSLv2_client_method( {
+if (!(ctx = SSL_CTX_new(SSLv23_client_method( {
fprintf(stderr, "Could not init SSL CTX: ");
ERR_print_errors_fp(stderr);
exit(1);

Secondly, a patch that keeps --without-execstrip from stripping the  
httpd binary:


Index: configure
===
--- configure   (revision 219524)
+++ configure   (working copy)
@@ -927,6 +927,8 @@
 ;;
 --without-execstrip)
 iflags_program=`echo "$iflags_program" | sed -e 's/-s//'`
+iflags_core=`echo "$iflags_core" | sed -e 's/-S//' -e 's/ 
\"-S\"//'`
+iflags_dso=`echo "$iflags_dso" | sed -e 's/-S//' -e 's/ 
\"-S\"//'`

 ;;
 --suexec-caller=*)
 suexec_caller="$apc_optarg"

There is a special case for Darwin in configure that makes the httpd  
binary get stripped even if --without-execstrip is specified. This  
stops that from happening, so --without-execstrip leaves all binaries  
unstripped. I think this adheres to the principle of least astonishment.


Let me know if you can fudge that in. (:

Thanks,

S.

--
[EMAIL PROTECTED]  http://www.temme.net/sander/
PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF



--
[EMAIL PROTECTED]  http://www.temme.net/sander/
PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF



Re: Apache for win64

2005-07-20 Thread Gopikrishnan Sidhardhan
Tried building it.  Went on for some time, with lots of warnings like 
"conversion from size_t to DWORD: possible loss of data".  Then the 
build broke with "fatal error LNK1112: module machine type 'AMD64' 
conflicts with target machine type 'X86'".


Any ideas, anyone?

Thanks,
--Gopi

Jorge Schrauwen wrote:


No x64 binaries,
But the win32 source should work fine.

Jorge

- Original Message -
From: Gopikrishnan Sidhardhan <[EMAIL PROTECTED]>
To: dev@httpd.apache.org
Sent: Wed, 20 Jul 2005 11:54:43 +0200
Subject: Apache for win64


 


Hi,

Does anybody know if there is an Apache binary installer for Win64 
somewhere?  If not, does the win32 source work for win64 as well out of 
the box?


Thanks,
--Gopi

   



 





Re: Apache for win64

2005-07-20 Thread Jorge Schrauwen
No x64 binaries,
But the win32 source should work fine.

Jorge

- Original Message -
From: Gopikrishnan Sidhardhan <[EMAIL PROTECTED]>
To: dev@httpd.apache.org
Sent: Wed, 20 Jul 2005 11:54:43 +0200
Subject: Apache for win64


> Hi,
> 
> Does anybody know if there is an Apache binary installer for Win64 
> somewhere?  If not, does the win32 source work for win64 as well out of 
> the box?
> 
> Thanks,
> --Gopi
> 



Apache for win64

2005-07-20 Thread Gopikrishnan Sidhardhan

Hi,

Does anybody know if there is an Apache binary installer for Win64 
somewhere?  If not, does the win32 source work for win64 as well out of 
the box?


Thanks,
--Gopi


RE: mod-cache-requestor plan

2005-07-20 Thread Sergio Leonardi
Hi I can just tell you something on point #2.
In my opinion mod-cache-requester should pass in the regeneration request
what a normal user should pass to the system (e.g. cookies, header variables
and so on) because a portion of these data can be relevant in order to
generate the page correctly.
mod-cache currently keeps track of HTTP response (header and body), I think
the best is to keep track of HTTP request too in order to re-run a copy of
it to regenerate the page.
Does it makes sense?

Sergio

-Original Message-
From: Parin Shah [mailto:[EMAIL PROTECTED] 
Sent: mercoledì 20 luglio 2005 8.34
To: dev@httpd.apache.org
Subject: Re: mod-cache-requestor plan

Hi All,

We are now almost at consesus about this new mod-cache-requester
module's mechanism. and now I believe its good time to start
implementing the module.

But before I could do that, I need some help from you guys.

- I am now comfortable with mod-cache, mod-mem-cache, cache_storage.c,
cache_util.c etc.

- But still not too sure how to implement couple of things.

1. How to start the new thread/process for mod-cache-requester when
server start. any similar piece of code would help me a lot.

2. how mod-cache-requester can generate the sub request just to reload
the content in the cache.

3. In current scheme, whenever mod-cache-requester pulls first entry
from pqueue ('refresh' queue) it re-requests it to reload. now by the
time this re-request is done, page might actually have been expired
and removed from cache. in such case should mod-cache reload it or
should wait for next legitimate request.

Your thoughts on any/all on these issues would be really helpful.

Thanks
Parin.

On 7/19/05, Ian Holsman <[EMAIL PROTECTED]> wrote:
> Parin Shah wrote:
> >>you should be using a mix of
> >>
> >># requests
> >>last access time
> >>cost of reproducing the request.
> >>
> >
> >
> > Just to double check, we would insert entry into the 'refresh queue'
> > only if the page is requested and the page is soon-to-be-expired. once
> > it is in the queue we would use above parameters to calculate the
> > priority. Is this correct? or let me know If I have mistaken it.
> >
> yep.
> thats the idea.
> refresh the most-popular pages first.
> 
> >
> >>see memcache_gdsf_algorithm() in mod_mem_cache.c for an implementation
> >>of this, which assumes 'length' of request is related to the cost of
> >>reproducing the request.
> >>
> >>the priority queue implementation is sitting in mod_mem_cache, and could
> >>be used to implement the 'refresh' queue I would think.
> >>
> >
> > I feel comfortable with mod-cache and mod-mem-cache code now. but we
> > also need to start new thread/process for mod-cache-requester when
> > server starts. I am not too sure how we could implement it. any
> > pointers to the similar piece of code would be really helpful to me.
> >
> I don't have any code which does this to share with you (others might
> know of some).
> 
> 
> > Thanks,
> > Parin.
> >
> --Ian
> 
>