RE: Regarding Apache 2.2.11 src compilation

2009-02-11 Thread Pooja Maheshwari
Thanks Bob for the reply and apxs win32 pointer.

I again checked at link http://httpd.apache.org/download.cgi and found that the 
2.2.11 nossl  openssl (both) binaries DONOT contain lib and include folders at 
all. Do I need to manually copy the stuff from apache 2.2.11 build or is there 
a working win32 version available?

Also the sources are giving compilation problems which after few configuration 
changes now give warnings on embed.manifest file.

Thanks,
Pooja

-Original Message-
From: Bob Ionescu [mailto:bobsie...@googlemail.com]
Sent: Monday, February 09, 2009 9:18 PM
To: modules-dev@httpd.apache.org
Subject: Re: Regarding Apache 2.2.11 src compilation

2009/2/6 Pooja Maheshwari pooja.maheshw...@impetus.co.in:
 2.   The Apache 2.2.11 win32 installer doesn't contain the desired 
 include  lib directories. Is it a known issue? Or please point me to a good 
 latest release + sources.

The binary from http://httpd.apache.org/download.cgi should contain
the folders include and lib; only the mod_rewrite.h header isn't
exported in Makefile.win in 2.2.

 3.   Some good quick links to get hands on apache module development in C 
 on windows.

Not directly related but a win version of apxs can be found on
http://perl.apache.org/dist/win32-bin/apxs_win32.tar.gz

Bob

* Meet us at Hall 2/Booth 2C111 at the Mobile World Congress, Barcelona, Feb 
16-19, 2009.
* Attend the qLabs webinar on Test Case Prioritization on Feb 20, 2009. Visit 
www.impetus.com for details.

Impetus is the winner of the Economic Times Intel Smart Workplace Awards 2008 
and the CNBC emerging India 2008.

NOTE: This message may contain information that is confidential, proprietary, 
privileged or otherwise protected by law. The message is intended solely for 
the named addressee. If received in error, please destroy and notify the 
sender. Any use of this email is prohibited when received in error. Impetus 
does not represent, warrant and/or guarantee, that the integrity of this 
communication has been maintained nor that the communication is free of errors, 
virus, interception or interference.


Re: Regarding Apache 2.2.11 src compilation

2009-02-11 Thread Bob Ionescu
2009/2/11 Pooja Maheshwari pooja.maheshw...@impetus.co.in:
 I again checked at link http://httpd.apache.org/download.cgi and found that 
 the 2.2.11 nossl  openssl (both) binaries DONOT contain lib and include 
 folders at all.

I'm not sure if we're talking about the same thing, but extracting the
apache_2.2.11-win32-x86-no_ssl.msi with

msiexec /a c:\apache_2.2.11-win32-x86-no_ssl.msi /qn TARGETDIR=c:\apache

and 'dir' for c:\apache\program files\Apache Software Foundation\Apache2.2

returned the folders include and lib:

15.159 ABOUT_APACHE.txt
DIR  bin
DIR  cgi-bin
93.835 CHANGES.txt
DIR  conf
DIR  error
DIR  htdocs
DIR  icons
DIR  include
 4.835 INSTALL.txt
DIR  lib
36.833 LICENSE.txt
DIR  manual
DIR  modules
 1.323 NOTICE.txt
 1.650 README-win32.txt
 6.094 README.txt

Bob


RE: cache POST requests

2009-02-11 Thread Houser, Rick
 then when the redirect request comes back to the app server, recognize
a  hash is in it, and have it pull the content for that hash, and then
 apache subsequently would cache based on that URL with the hash in it.
 MIGHT be work the extra request and hashing time/storage.

Why go back to the app server?  Just put this where Apache can access
the output directly, enable mod_expires, and you should be good to go.
Nobody said it had to be a hash, either.

In any case, I really can't respond to this further.  If you still need
help, you have some basic web development research to do first.  I
really don't see anything about your problem that requires creating or
modifying a module, either.


Thanks,

Rick Houser
Auto-Owners Insurance
Systems Support
(517)703-2580

-Original Message-
From: Anthony J. Biacco [mailto:abia...@formatdynamics.com] 
Sent: Tuesday, February 10, 2009 4:53 PM
To: modules-dev@httpd.apache.org
Subject: RE: cache POST requests

Ok, then the /URL/1 part becomes the problem for me. I can make the GET
redirect request I send back to have the same key pairs in it to
retrieve the same content and cache it, but again, then the redirect GET
is longer than 2k (or however long the POST content was, just in the GET
format), and I run into the IE truncate problem. I'd have to construct a
URL that's:
1. = 2k and 2. Has enough uniqueness that no 2 gets for different
content are the same. 3. Has some way of tieing that get url into the
same POST content.

Something like, POST the content, have the app server MD5 hash the
content (which if it's large, like 1MB put a strain on the app-server),
put the content and hash somewhere (app server, db, memcached), respond
with the redirect GET url including the hash in it, then when the
redirect request comes back to the app server, recognize a hash is in
it, and have it pull the content for that hash, and then apache
subsequently would cache based on that URL with the hash in it.
MIGHT be work the extra request and hashing time/storage.

-Tony
---
Manager, IT Operations
Format Dynamics, Inc.
303-573-1800x27
abia...@formatdynamics.com
http://www.formatdynamics.com


-Original Message-
From: Houser, Rick [mailto:houser.r...@aoins.com]
Sent: Tuesday, February 10, 2009 2:24 PM
To: modules-dev@httpd.apache.org
Subject: RE: cache POST requests

Is this a little clearer?  Notice how the Get request and post response
are both tiny.  This also opens up a whole slew of other possibilities
now that you have a per-request URL to access.


Current (as I understand it):

- POST (DOC file #1, 800KB)
- 200 OKAY (PDF file 600KB - non-cacheable, and substantial usability
problems)

Alternative (post, redirect, get):

- POST (DOC file #1, 800KB)
- REDIRECT FOR GET /URL/1 ( 1KB) (non-cacheable)
- GET /URL/1 ( 1KB)
- 200 OKAY (PDF file 600KB - easily cacheable, options for bookmarking,
etc.)



Thanks,

Rick Houser
Auto-Owners Insurance
Systems Support
(517)703-2580

-Original Message-
From: Anthony J. Biacco [mailto:abia...@formatdynamics.com]
Sent: Tuesday, February 10, 2009 3:46 PM
To: modules-dev@httpd.apache.org
Subject: RE: cache POST requests

I did mean requests, yes. We run a content reformatting service using
Tomcat, so in reality the responses are large also, because nearly the
same content (formatted differently) is sent back.
Another problem I found with large GETs is that IE will truncation them
if they are 2k or larger. Now, if that is pre- rendering engine or in
the actual engine, I don't know? If it's pre then maybe the limit
wouldn't be affected a redirect? That gets a little off-topic.

Thanx,

-Tony
---
Manager, IT Operations
Format Dynamics, Inc.
303-573-1800x27
abia...@formatdynamics.com
http://www.formatdynamics.com


-Original Message-
From: Houser, Rick [mailto:houser.r...@aoins.com]
Sent: Tuesday, February 10, 2009 12:20 PM
To: modules-dev@httpd.apache.org
Subject: RE: cache POST requests

You mean post REQUESTS, not RESPONSES, correct?  GET requests shouldn't
be very large, but it's not all that uncommon to have GET responses
larger than 1GB (local LANS, etc.).  Accept all the incomming data on a
post (which could be 1+MB file attachments, etc.), generate a unique
URL, and redirect the user there to fetch the result.


Thanks,

Rick Houser
Auto-Owners Insurance
Systems Support
(517)703-2580

-Original Message-
From: Anthony J. Biacco [mailto:abia...@formatdynamics.com]
Sent: Tuesday, February 10, 2009 1:52 PM
To: modules-dev@httpd.apache.org
Subject: RE: cache POST requests

I read that for the 1.0 spec, but thought for the 1.1 it was possible
with the proper expiration headers. Although I do understand the keying
problem.
My problem is that my POSTs vary wildly in size from 5k to over a meg,
and avg. out to about 45k. Being that GETs in apache by default are
limited to 8k, I'll get a 414 error, so I'm not sure where I can turn to
cache this. I suppose I can up the 

APR's DBM outside APR

2009-02-11 Thread Arturo 'Buanzo' Busleiman
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

Hi! I've tried to open DBM files created via APR code using Python, to no 
success. Any suggestions?

- --
Arturo Buanzo Busleiman / Arturo Busleiman @ 4:900/107
Independent Linux and Security Consultant - SANS - OISSG - OWASP
http://www.buanzo.com.ar/pro/eng.html
Mailing List Archives at http://archiver.mailfighter.net
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJkuBxAlpOsGhXcE0RCh41AJ4pMVfgFRKLecNuie0aoZLAYi1PRgCeN9KD
5VRobnfhf8a1p3jHjedLuVY=
=q3yq
-END PGP SIGNATURE-


Re: WELCOME to modules-dev@httpd.apache.org

2009-02-11 Thread Eric Covener
On Wed, Feb 11, 2009 at 1:18 PM, dave man...@gmail.com wrote:
 acfg and bcfg are the arguments to the merge calback. cfg is the result that
 the merge callback returns
 ...
 merge_server{acfg: 0x2b45d35e79d0bcfg:0x2b45dc2385f0cfg:
 0x2b45dc26fff0}
 merge_dir{acfg: 0x2b45d35e79e8bcfg:0x2b45dc2385d8cfg:
 0x2b45dc270458}
 child_init{pid: 2800cfg:0x2b45d35e79d0server:
 0x2b45d355f968} -- recieving the acfg from the merge_server, not the return
 value of the merge_server
 create new
 handler{pid: 2800cfg:0x2b45dc26fff0server:
 0x2b45dc2361b8}  -- recieving the return value of the merge_server
 create new

is this from passing r-server? Are you sure your request was mapped
to a virtualhost?

-- 
Eric Covener
cove...@gmail.com


Re: Where is srclib/apr-util/xml/Makefile.in ?

2009-02-11 Thread Ravindra
Please ignore my message, this file is not really needed when
--with-expat=builtin is issued.

- Ravindra

On Wed, Feb 11, 2009 at 11:16 AM, Ravindra kravin...@gmail.com wrote:
 Hi,

 When I untar 2.2.10 or 2.2.11, I don't see
 srclib/apr-util/xml/Makefile.in. Has it been removed intentionally ?
 Or, is it a bug ?
 I'm trying to build 2.2.10 with builtin xml/expat.

 If there is any work around for this, please let me know.

 Thanks in advance !

 - Ravindra



Re: CacheIgnoreHeaders not working correctly

2009-02-11 Thread Lars Eilebrecht
Ruediger Pluem wrote:

 http://svn.apache.org/viewvc?view=revrevision=649162
 http://svn.apache.org/viewvc?view=revrevision=649791

Hmm ... I'm not sure I understand the logic in this one:

CACHE_DECLARE(apr_table_t *)ap_cache_cacheable_headers_out(request_rec * r)
{
apr_table_t *headers_out;

headers_out = apr_table_overlay(r-pool, r-headers_out,
r-err_headers_out);

apr_table_clear(r-err_headers_out);

headers_out = ap_cache_cacheable_headers(r-pool, r-headers_out,
  r-server);

if (!apr_table_get(headers_out, Content-Type)
 r-content_type) {
apr_table_setn(headers_out, Content-Type,
   ap_make_content_type(r, r-content_type));
}

return headers_out;
}
 

It merges r-headers_out and r-err_headers_out into headers_out,
then clears r-err_headers_out (?), and then ap_cache_cacheable_headers()
gets called with r-headers_out instead of headers_out?

ciao...
-- 
Lars Eilebrecht
l...@eilebrecht.net



RE: cache POST requests

2009-02-11 Thread Houser, Rick
 Also becomes more of a problem when my page's JS would have to know
for subsequent requests how to get the cached version, and not simply do
a PRG again, because it would not know if a cached version existed.

Just check for the existence of a file with the matching date and hash.
If it's missing, Apacher will display a 404 for you.


 Even if I sent a probing GET request pre-all reformatting requests,
the JS would not have the hash.

Unnecessary, your hash should be inside the GET URL itself.  Including a
SHA1sum and date into the URL should easily fit within 2k without any
difficulty.


 And now I'd be doing 3 requests for every 1 I was doing beforehand.

Only two requests needed, but if you had a connection reset of something
more than halfway through, you could save bandwidth, as GET supports
range based retrievals and you don't need to send the massive request
again.



Thanks,

Rick Houser
Auto-Owners Insurance
Systems Support
(517)703-2580

-Original Message-
From: Anthony J. Biacco [mailto:abia...@formatdynamics.com] 
Sent: Tuesday, February 10, 2009 5:11 PM
To: modules-...@httpd.apache.org
Subject: RE: cache POST requests

Also becomes more of a problem when my page's JS would have to know for
subsequent requests how to get the cached version, and not simply do a
PRG again, because it would not know if a cached version existed. Even
if I sent a probing GET request pre-all reformatting requests, the JS
would not have the hash. And now I'd be doing 3 requests for every 1 I
was doing beforehand.

-Tony
---
Manager, IT Operations
Format Dynamics, Inc.
303-573-1800x27
abia...@formatdynamics.com
http://www.formatdynamics.com


-Original Message-
From: Anthony J. Biacco [mailto:abia...@formatdynamics.com]
Sent: Tuesday, February 10, 2009 2:53 PM
To: modules-...@httpd.apache.org
Subject: RE: cache POST requests

Ok, then the /URL/1 part becomes the problem for me. I can make the GET
redirect request I send back to have the same key pairs in it to
retrieve the same content and cache it, but again, then the redirect GET
is longer than 2k (or however long the POST content was, just in the GET
format), and I run into the IE truncate problem. I'd have to construct a
URL that's:
1. = 2k and 2. Has enough uniqueness that no 2 gets for different
content are the same. 3. Has some way of tieing that get url into the
same POST content.

Something like, POST the content, have the app server MD5 hash the
content (which if it's large, like 1MB put a strain on the app-server),
put the content and hash somewhere (app server, db, memcached), respond
with the redirect GET url including the hash in it, then when the
redirect request comes back to the app server, recognize a hash is in
it, and have it pull the content for that hash, and then apache
subsequently would cache based on that URL with the hash in it.
MIGHT be work the extra request and hashing time/storage.

-Tony
---
Manager, IT Operations
Format Dynamics, Inc.
303-573-1800x27
abia...@formatdynamics.com
http://www.formatdynamics.com


-Original Message-
From: Houser, Rick [mailto:houser.r...@aoins.com]
Sent: Tuesday, February 10, 2009 2:24 PM
To: modules-...@httpd.apache.org
Subject: RE: cache POST requests

Is this a little clearer?  Notice how the Get request and post response
are both tiny.  This also opens up a whole slew of other possibilities
now that you have a per-request URL to access.


Current (as I understand it):

- POST (DOC file #1, 800KB)
- 200 OKAY (PDF file 600KB - non-cacheable, and substantial usability
problems)

Alternative (post, redirect, get):

- POST (DOC file #1, 800KB)
- REDIRECT FOR GET /URL/1 ( 1KB) (non-cacheable)
- GET /URL/1 ( 1KB)
- 200 OKAY (PDF file 600KB - easily cacheable, options for bookmarking,
etc.)



Thanks,

Rick Houser
Auto-Owners Insurance
Systems Support
(517)703-2580

-Original Message-
From: Anthony J. Biacco [mailto:abia...@formatdynamics.com]
Sent: Tuesday, February 10, 2009 3:46 PM
To: modules-...@httpd.apache.org
Subject: RE: cache POST requests

I did mean requests, yes. We run a content reformatting service using
Tomcat, so in reality the responses are large also, because nearly the
same content (formatted differently) is sent back.
Another problem I found with large GETs is that IE will truncation them
if they are 2k or larger. Now, if that is pre- rendering engine or in
the actual engine, I don't know? If it's pre then maybe the limit
wouldn't be affected a redirect? That gets a little off-topic.

Thanx,

-Tony
---
Manager, IT Operations
Format Dynamics, Inc.
303-573-1800x27
abia...@formatdynamics.com
http://www.formatdynamics.com


-Original Message-
From: Houser, Rick [mailto:houser.r...@aoins.com]
Sent: Tuesday, February 10, 2009 12:20 PM
To: modules-...@httpd.apache.org
Subject: RE: cache POST requests

You mean post REQUESTS, not RESPONSES, correct?  GET requests shouldn't
be very large, 

Re: Documentation request for review

2009-02-11 Thread Vincent Deffontaines

Dan Poirier wrote:

Lars Eilebrecht l...@eilebrecht.net writes:


Vincent Deffontaines wrote on 2009-02-08 13:20:23:

While reviewing Lucien's french translation for the trunk performance 
tuning guide (misc/perf-tuning.xml), it has come to my understanding 
that this document contains extremely old, and probably outdated, 
information.

Yes, this page is really *really* outdated.
IMHO we should consider removing it or at least adding a note that
the stuff is outdated.


If it's badly outdated, we should either fix it or remove it.  The net
has too much outdated information on it already :-)  The outdated page
would still be in subversion if anyone wants to work on it later.

That said, it looks to me as if much of the information there is still
relevant, such as the Run-time Configuration section.  It seems worth
preserving.



Then here is my suggestion :
We can keep this page, and remove these sections totally :
accept Serialization - multiple sockets
accept Serialization - single socket
Lingering Close
Scoreboard File
Appendix: Detailed Analysis of a Trace

The rest of the page seems accurate enough for me.
I can do it if you guys confirm that is OK for you.

Vincent


french fixes.

2009-02-11 Thread Oden Eriksson
Hello.

I think this has come up before but I can't recall when.

In Mandriva french users found some errors in the error files. I have patched 
apache for years for this. Please apply.


-- 
Regards // Oden Eriksson


This email has been processed by SmoothZap - www.smoothwall.net
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_BAD_GATEWAY.html.var httpd-2.2.2/docs/error/HTTP_BAD_GATEWAY.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_BAD_GATEWAY.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_BAD_GATEWAY.html.var	2006-05-12 07:26:57.628343088 +0200
@@ -74,7 +74,7 @@
 Content-type: text/html; charset=ISO-8859-1
 Body:--fr--
 !--#set var=CONTENT_LANGUAGE value=fr
---!--#set var=TITLE value=Gateway incorrecte!
+--!--#set var=TITLE value=Passerelle incorrecte !
 --!--#include virtual=include/top.html --
 
 Le serveur proxy a reccedil;u une reacute;ponse
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_BAD_REQUEST.html.var httpd-2.2.2/docs/error/HTTP_BAD_REQUEST.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_BAD_REQUEST.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_BAD_REQUEST.html.var	2006-05-12 07:27:26.960823575 +0200
@@ -54,7 +54,7 @@
 Content-type: text/html; charset=ISO-8859-1
 Body:--fr--
 !--#set var=CONTENT_LANGUAGE value=fr
---!--#set var=TITLE value=Demande incorrecte!
+--!--#set var=TITLE value=Demande incorrecte !
 --!--#include virtual=include/top.html --
 
 Votre navigateur (ou votre proxy) a envoyeacute;
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_FORBIDDEN.html.var httpd-2.2.2/docs/error/HTTP_FORBIDDEN.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_FORBIDDEN.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_FORBIDDEN.html.var	2006-05-12 07:27:54.366731971 +0200
@@ -95,7 +95,7 @@
 Content-type: text/html; charset=ISO-8859-1
 Body:--fr--
 !--#set var=CONTENT_LANGUAGE value=fr
---!--#set var=TITLE value=Accegrave;s interdit!
+--!--#set var=TITLE value=Accegrave;s interdit !
 --!--#include virtual=include/top.html --
 
   !--#if expr=$REDIRECT_URL = /\/$/ --
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_GONE.html.var httpd-2.2.2/docs/error/HTTP_GONE.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_GONE.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_GONE.html.var	2006-05-12 07:28:22.403499854 +0200
@@ -107,7 +107,7 @@
 Content-type: text/html; charset=ISO-8859-1
 Body:--fr--
 !--#set var=CONTENT_LANGUAGE value=fr
---!--#set var=TITLE value=Cette ressource n'existe plus!
+--!--#set var=TITLE value=Cette ressource n'existe plus !
 --!--#include virtual=include/top.html --
 
 L'URL demandeacute;e n'est plus accessible sur ce serveur et il
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_INTERNAL_SERVER_ERROR.html.var httpd-2.2.2/docs/error/HTTP_INTERNAL_SERVER_ERROR.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_INTERNAL_SERVER_ERROR.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_INTERNAL_SERVER_ERROR.html.var	2006-05-12 07:28:44.138668285 +0200
@@ -117,7 +117,7 @@
 Content-type: text/html; charset=ISO-8859-1
 Body:--fr--
 !--#set var=CONTENT_LANGUAGE value=fr
---!--#set var=TITLE value=Erreur du serveur!
+--!--#set var=TITLE value=Erreur du serveur !
 --!--#include virtual=include/top.html --
 
   !--#if expr=$REDIRECT_ERROR_NOTES --
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_LENGTH_REQUIRED.html.var httpd-2.2.2/docs/error/HTTP_LENGTH_REQUIRED.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_LENGTH_REQUIRED.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_LENGTH_REQUIRED.html.var	2006-05-12 07:30:20.503245183 +0200
@@ -56,7 +56,7 @@
 Content-type: text/html; charset=ISO-8859-1
 Body:--fr--
 !--#set var=CONTENT_LANGUAGE value=fr
---!--#set var=TITLE value=Longueur du contenu illeacute;gal!
+--!--#set var=TITLE value=Longueur du contenu illeacute;gale !
 --!--#include virtual=include/top.html --
 
 Une requecirc;te utilisant la meacute;thode !--#echo
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_METHOD_NOT_ALLOWED.html.var httpd-2.2.2/docs/error/HTTP_METHOD_NOT_ALLOWED.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_METHOD_NOT_ALLOWED.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_METHOD_NOT_ALLOWED.html.var	2006-05-12 07:30:43.606108660 +0200
@@ -55,7 +55,7 @@
 Content-type: text/html; charset=ISO-8859-1
 Body:--fr--
 !--#set var=CONTENT_LANGUAGE value=fr
---!--#set var=TITLE value=Meacute;thode interdite!
+--!--#set var=TITLE value=Meacute;thode interdite !
 --!--#include virtual=include/top.html --
 
 La meacute;thode !--#echo var=REDIRECT_REQUEST_METHOD --
diff -Naur httpd-2.2.2.orig/docs/error/HTTP_NOT_FOUND.html.var httpd-2.2.2/docs/error/HTTP_NOT_FOUND.html.var
--- httpd-2.2.2.orig/docs/error/HTTP_NOT_FOUND.html.var	2005-11-13 14:22:28.0 +0100
+++ httpd-2.2.2/docs/error/HTTP_NOT_FOUND.html.var	2006-05-12 07:31:03.736632851 +0200
@@ -113,7 

Re: WELCOME to modules-...@httpd.apache.org

2009-02-11 Thread dave
On Wed, Feb 11, 2009 at 02:16, Joe Lewis j...@joe-lewis.com wrote:



 I understand - you are using both directory AND server side configs.
  directory configs do not get created until a request.  And a merge should
 never return the same structure, meaning you should get new configs.  Even
 the directory configs don't get created until the request comes in.  In the
 handler, try setting two distinct variables, one to the server side and one
 to the directory config, and you should definitely see a difference.

 Well done!
 Joe



Well, sort of. I think I can hack it to fix the problem now, but I still
don't understand why the problem is occurring. I don't actually have any
directory configs, they're all virtuat-host-level configs (unless those
qualify as directory configs?) When I output the results of my merge, I see
the server-merge occur, followed by the child_init, but the child_init does
not receive the results of server-merge. This is simplest to show with the
end of the output:


acfg and bcfg are the arguments to the merge calback. cfg is the result that
the merge callback returns
...
merge_server{acfg: 0x2b45d35e79d0bcfg:0x2b45dc2385f0cfg:
0x2b45dc26fff0}
merge_dir{acfg: 0x2b45d35e79e8bcfg:0x2b45dc2385d8cfg:
0x2b45dc270458}
child_init{pid: 2800cfg:0x2b45d35e79d0server:
0x2b45d355f968} -- recieving the acfg from the merge_server, not the return
value of the merge_server
create new
handler{pid: 2800cfg:0x2b45dc26fff0server:
0x2b45dc2361b8}  -- recieving the return value of the merge_server
create new


Is this the way it is supposed to work?


-dave
man...@gmail.com


Re: WELCOME to modules-...@httpd.apache.org

2009-02-11 Thread dave
On Wed, Feb 11, 2009 at 13:21, Eric Covener cove...@gmail.com wrote:

 On Wed, Feb 11, 2009 at 1:18 PM, dave man...@gmail.com wrote:
  acfg and bcfg are the arguments to the merge calback. cfg is the result
 that
  the merge callback returns
  ...
  merge_server{acfg: 0x2b45d35e79d0bcfg:0x2b45dc2385f0cfg:
  0x2b45dc26fff0}
  merge_dir{acfg: 0x2b45d35e79e8bcfg:0x2b45dc2385d8cfg:
  0x2b45dc270458}
  child_init{pid: 2800cfg:0x2b45d35e79d0server:
  0x2b45d355f968} -- recieving the acfg from the merge_server, not the
 return
  value of the merge_server
  create new
  handler{pid: 2800cfg:0x2b45dc26fff0server:
  0x2b45dc2361b8}  -- recieving the return value of the merge_server
  create new

 is this from passing r-server? Are you sure your request was mapped
 to a virtualhost?

 --
 Eric Covener
 cove...@gmail.com


It's definitely setup as a virtual host.


I have this in my child_init:

static void my_child_init(apr_pool_t *p, server_rec *s) {
printf(child_init\t{pid: %d\tcfg:%p\t\tserver: %p}\n, getpid(),
ap_get_module_config(s-module_config, my_module), s);

//...
}

My handler:

static int my_handler(request_rec *r) {
//...
printf(handler\t\t{pid: %d\tcfg:%p\t\tserver: %p}\n, getpid(),
ap_get_module_config(r-server-module_config, my_module), r-server);
//...
}

And my merge_server:

static void *my_merge_server_config(apr_pool_t *p, void *base, void *add) {
my_config *cfg = (my_config *)apr_pcalloc(p, sizeof(my_config));
//...

printf(merge_server\t{acfg: %p\tbcfg:%p\tcfg: %p}\n, base, add, cfg);

return (void *)cfg;
}


Here was the full output of  my debug code if its of any use:

server_config{pid: 2800cfg:0x2b45d35e0ac0server: 0x2b45d3562568}
dir_config{pid: 2800cfg:0x2b45d35e0ad8path: (null)}
dir_config{pid: 2800cfg:0x2b45dc2365c8path: (null)}
server_config{pid: 2800cfg:0x2b45dc2365e0server: 0x2b45dc2341a8}
mapper{pid: 2800cfg:0x2b45dc2365c8cmd_parms: 0x7fffd77e4cd0}
merge_server{acfg: 0x2b45d35e0ac0bcfg:0x2b45dc2365e0cfg:
0x2b45dc237e30}
merge_dir{acfg: 0x2b45d35e0ad8bcfg:0x2b45dc2365c8cfg:
0x2b45dc238298}
server_config{pid: 2800cfg:0x2b45d35e79d0server: 0x2b45d355f968}
dir_config{pid: 2800cfg:0x2b45d35e79e8path: (null)}
dir_config{pid: 2800cfg:0x2b45dc2385d8path: (null)}
server_config{pid: 2800cfg:0x2b45dc2385f0server: 0x2b45dc2361b8}
mapper{pid: 2800cfg:0x2b45dc2385d8cmd_parms: 0x7fffd77e4cd0}
merge_server{acfg: 0x2b45d35e79d0bcfg:0x2b45dc2385f0cfg:
0x2b45dc26fff0}
merge_dir{acfg: 0x2b45d35e79e8bcfg:0x2b45dc2385d8cfg:
0x2b45dc270458}
child_init{pid: 2800cfg:0x2b45d35e79d0server:
0x2b45d355f968}
create new
handler{pid: 2800cfg:0x2b45dc26fff0server:
0x2b45dc2361b8}
create new


-dave
man...@gmail.com


Re: WELCOME to modules-...@httpd.apache.org

2009-02-11 Thread dave
On Wed, Feb 11, 2009 at 13:21, Eric Covener cove...@gmail.com wrote:

 On Wed, Feb 11, 2009 at 1:18 PM, dave man...@gmail.com wrote:
  acfg and bcfg are the arguments to the merge calback. cfg is the result
 that
  the merge callback returns
  ...
  merge_server{acfg: 0x2b45d35e79d0bcfg:0x2b45dc2385f0cfg:
  0x2b45dc26fff0}
  merge_dir{acfg: 0x2b45d35e79e8bcfg:0x2b45dc2385d8cfg:
  0x2b45dc270458}
  child_init{pid: 2800cfg:0x2b45d35e79d0server:
  0x2b45d355f968} -- recieving the acfg from the merge_server, not the
 return
  value of the merge_server
  create new
  handler{pid: 2800cfg:0x2b45dc26fff0server:
  0x2b45dc2361b8}  -- recieving the return value of the merge_server
  create new

 is this from passing r-server? Are you sure your request was mapped
 to a virtualhost?

 --
 Eric Covener
 cove...@gmail.com



Eric, I think your question sent me down the correct line of reasoning...

Even though my request is on a virtual host, apache does not fork individual
processes for each host. Thus the child_init gets called with the main
server config, but the virtual host's server config is set before child_init
is called. Knowing this, that would explain the problem. Frustrating, but
explainable. I can hack around that assuming my explanation is correct.


-dave
man...@gmail.com


Re: CacheIgnoreHeaders not working correctly

2009-02-11 Thread Ruediger Pluem


On 02/11/2009 02:10 PM, Lars Eilebrecht wrote:
 Ruediger Pluem wrote:
 
 http://svn.apache.org/viewvc?view=revrevision=649162
 http://svn.apache.org/viewvc?view=revrevision=649791
 
 Hmm ... I'm not sure I understand the logic in this one:
 
 CACHE_DECLARE(apr_table_t *)ap_cache_cacheable_headers_out(request_rec * r)
 {
 apr_table_t *headers_out;
 
 headers_out = apr_table_overlay(r-pool, r-headers_out,
 r-err_headers_out);
 
 apr_table_clear(r-err_headers_out);
 
 headers_out = ap_cache_cacheable_headers(r-pool, r-headers_out,
   r-server);
 
 if (!apr_table_get(headers_out, Content-Type)
  r-content_type) {
 apr_table_setn(headers_out, Content-Type,
ap_make_content_type(r, r-content_type));
 }
 
 return headers_out;
 }
  
 
 It merges r-headers_out and r-err_headers_out into headers_out,
 then clears r-err_headers_out (?), and then ap_cache_cacheable_headers()
 gets called with r-headers_out instead of headers_out?

Missed this one :-).

http://svn.apache.org/viewvc?view=revrevision=649793

Regards

RĂ¼diger


Re: [summary] accept mod_fcgid codebase into httpd project

2009-02-11 Thread Roy T. Fielding

On Jan 27, 2009, at 9:44 AM, Chris Darroch wrote:

   The httpd-mod_fcgid.xml file is my first whack at the IP clearance
template.


  I renamed this .xml.utf8 this morning because I realized it has some
non-ASCII UTF-8 character sequences in it.  I don't know if those will
pass through the Incubator's XML-to-HTML transformation smoothly;  
if not,

they could probably be removed.


I ended up fixing all website generation to utf-8 -- I am surprised
that it lasted this long with just iso-8859-1.


4) The code package is a checkout of the CVS trunk from SourceForge;
   all I've done is insert LICENSE and NOTICE files, add AL 2.0  
license
   text to all .c, .h, .rc, and .mk files (following the httpd  
example)

   and prune out some small text and CVS files.


  Assuming the Incubator IP clearance review passes, I'd suggest that
we import the code into SVN by starting not with this temporary  
package,

but with a cvs2svn export of the SourceForge commit history.  The
relicensing can then follow as a single subsequent commit.  Sound OK?


Yes, that is what I prefer as well.  All paperwork is done, so please
let us know when you have an export.  I (or one of the other svnadmins)
will have to massage it a bit to prefix the sourceforge ids, so just
point us to the dump file when you have it ready.

Roy



Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread Kevac Marko
Now for every exported function we have pair of functions that accepts
pool_name and old one, which is just wrapper:



DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open_pool(apr_pool_t *pool, server_rec *s,
const char *pool_name);
DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open(apr_pool_t *pool, server_rec *s);

APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_open_pool, (apr_pool_t*,
server_rec*, const char*));
APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_open, (apr_pool_t*, server_rec*));



DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open(apr_pool_t *pool, server_rec *s)
{
return ap_dbd_open_pool(pool, s, DBD_DEFAULT_POOL_NAME);
}

In httpd.conf you can create named pool inside DBDPool pool_name or
without. In second case pool_name is DBD_DEFAULT_POOL_NAME.

Thus old functions and old configuration is preserved.

What so you think?

Patch is ready, but it needs some testing before posting.


Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread Brian Akins
On 2/11/09 4:29 PM, Kevac Marko ma...@kevac.org wrote:


 What so you think?
 
 Patch is ready, but it needs some testing before posting.

+1

I was looking to do the same thing to mod_memcache (which should be imported
into trunk, IMO...)





Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread Kevac Marko
On Thu, Feb 12, 2009 at 12:43 AM, Brian Akins br...@akins.org wrote:

 I was looking to do the same thing to mod_memcache (which should be imported
 into trunk, IMO...)

kni...@juffin:~/micex/git/apache$ tree modules/memcache/
modules/memcache/
|-- SConscript
|-- mod_memcache.c
`-- mod_memcache.h

Same as mod_dbd :-)

-- 
Marko Kevac


Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread Nick Kew
On Thu, 12 Feb 2009 00:29:59 +0300
Kevac Marko ma...@kevac.org wrote:

 In httpd.conf you can create named pool inside DBDPool pool_name or
 without. In second case pool_name is DBD_DEFAULT_POOL_NAME.
 
 Thus old functions and old configuration is preserved.
 
 What so you think?
 
 Patch is ready, but it needs some testing before posting.

Sounds OK in principle for trunk.  If you want to post a patch
against trunk, I'll try and find the time to review it.

-- 
Nick Kew

Application Development with Apache - the Apache Modules Book
http://www.apachetutor.org/


Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread Graham Leggett

Kevac Marko wrote:


Thus old functions and old configuration is preserved.

What so you think?


That sounds to me like it would be safe to backport such a thing to 
v2.2. +1.


Regards,
Graham
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread Graham Leggett

Brian Akins wrote:


I was looking to do the same thing to mod_memcache (which should be imported
into trunk, IMO...)


Would it make sense for mod_memcache to become a provider beneath 
mod_socache, or am I missing something?


Regards,
Graham
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread M. Brian Akins


On Feb 11, 2009, at 6:22 PM, Graham Leggett wrote:


Would it make sense for mod_memcache to become a provider beneath  
mod_socache, or am I missing something?


mod_memcache really just provides the config glue for apr_memcache  
so that every module that wants to use apr_memcache doesn't have to  
write all the config glue themselves.  Yeah, it could probably add  
some socache hooks as well. I'm adding some Lua glue right now.   
mod_memcache is already Apache licensed.




Re: [PATCH] mod_dbd with more than one pool

2009-02-11 Thread Brian McCallister
I am in favor of this for 2.3/2.4 as well -- it is functionality that
I have wanted (not enough to do, though...) for a while now.

-Brian

On Fri, Jan 30, 2009 at 6:20 PM, Graham Leggett minf...@sharp.fm wrote:
 Kevac Marko wrote:

 Once again I want to propose patch for mod_dbd module. This patch make
 possible to use more than one database pool.

 One of the things I needed to do earlier today was determine whether mod_dbd
 could support more than one database pool, this patch answers that question.

 A definite +1 for httpd v2.3/2.4.

 API is only slightly changed (new argument 'pool name' added).

 I am looking forward to comments and instructions how to add this to
 mainline http-2.2.x.

 If you can find a way to achieve this without the ABI changing, then it can
 be backported to v2.2. Otherwise, it would be another reason to move on to
 v2.4.

 Regards,
 Graham
 --