Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Joe Orton
On Fri, Oct 09, 2009 at 09:41:32PM -, Graham Leggett wrote:
> --- httpd/httpd/trunk/modules/dav/main/mod_dav.h (original)
> +++ httpd/httpd/trunk/modules/dav/main/mod_dav.h Fri Oct  9 21:41:31 2009
> @@ -1940,6 +1940,12 @@
>  ** then this field may be used. In most cases, it will just be NULL.
>  */
>  void *ctx;
> +
> +/* return request record */
> +request_rec * (*get_request_rec)(const dav_resource *resource);
> +
> +/* return path */
> +const char * (*get_pathname)(const dav_resource *resource);
>  };
>  

What is a "pathname" in this context? A URI path?  A filesystem path?  
If the latter, what is get_pathname supposed to do for a non-fs-backed 
repository provider?

(Also - compare and contrast how all the rest of the comments in this 
structure are descriptive phrases and start with capital letters and 
everything)

Regards, Joe


Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Joe Orton
On Sat, Oct 10, 2009 at 10:04:57AM +0200, Ruediger Pluem wrote:
> On 10/09/2009 11:41 PM, minf...@apache.org wrote:
> > ==
> > --- httpd/httpd/trunk/modules/dav/fs/repos.c (original)
> > +++ httpd/httpd/trunk/modules/dav/fs/repos.c Fri Oct  9 21:41:31 2009
> 
> > @@ -1816,6 +1823,9 @@
> >  dav_fs_remove_resource,
> >  dav_fs_walk,
> >  dav_fs_getetag,
> > +dav_fs_get_request_rec,
> > +dav_fs_pathname,
> > +NULL
> 
> This creates the following warning:
> 
> repos.c:1827: warning: initialization from incompatible pointer type

Plus the dav_fs_get_request_rec prototype needs to be moved up.

/local/asf/httpd-trunk/modules/dav/fs/repos.c:214: warning: no previous 
prototype for ‘dav_fs_get_request_rec’



Re: mod_fcgid POST broken if FcgiAuthorizer is run

2009-10-12 Thread Barry Scott

Jeff Trawick wrote:

Variation number three:

As with your patch, it remembers to add the eos bucket to the brigade
of data sent to the app.  As with my earlier patch, it doesn't send
the trailing FCGI_STDIN record.

In the spec (http://www.fastcgi.com/devkit/doc/fcgi-spec.html#S6.3),
there's no mention of FCGI_STDIN for an FCGI_AUTHORIZER.  I
double-checked that mod_fcgid.c strips any CONTENT_LENGTH when calling
the authorizer, which the spec does call for.
  
I won't be shocked if it still fails for you; in that case I think we

need to try to understand exactly why the trailing FCGI_STDIN record
is needed.
  

Our fastcgi code was expecting FCGI_STDIN.
As you point out the spec does not need or allow FCGI_STDIN for an 
authorizer.


I have fixed this bug in our fastcgi code. Now your original patch works 
for me now.


Barry



Re: mod_fcgid POST broken if FcgiAuthorizer is run

2009-10-12 Thread Barry Scott

Jeff Trawick wrote:

On Fri, Oct 9, 2009 at 3:30 PM, Jeff Trawick  wrote:
  

...


Silly me.  Chris's patch at
http://people.apache.org/~chrisd/patches/mod_fcgid_auth/mod_fcgid-1auth-trunk.patch
handles this, and it does send a trailing FCGI_STDIN record to an
authorizer.

Chris, AYT
I wonder if other fastcgi implementation made the same bad assumption 
about FCGI_STDIN

always being sent as ours did.

FYI: The other change I made to our fastcgi was to parse out multiple 
values from FCGI_PARAMS
records. mod_fastcgi sends one name-value pair in a FCGI_PARAMS record 
and sends as
many FCGI_PARAMS records as it needs to to send the environment. Where 
as mod_fcgid sends

multiple name-value pairs in asingle FCGI_PARAMS record.

Barry



Re: mod_fcgid POST broken if FcgiAuthorizer is run

2009-10-12 Thread Barry Scott

Jeff Trawick wrote:

On Fri, Oct 9, 2009 at 1:26 PM, Barry Scott  wrote:
  


One test that needs doing is to have a Responder and an Authorizer running
for the same request. I'll see if I can do that test for you next week with
the pieces
I have.



Chris Darroch has a patch for that, which is a small part of

http://people.apache.org/~chrisd/patches/mod_fcgid_auth/mod_fcgid-1auth-trunk.patch

which applies to the old mod_fcgid 2.2 but which he has submitted here
for inclusion.  If you get stuck, look in there at some of the checks
for role == responder, one or more of which are for the
responder+authorizer-on-same-request issue.

  


I'll hold off on testing this until Chris' patches are available in trunk.
(I don't need this to work today, but I will need it later in the year
expect)

Barry



Re: mod_fcgid POST broken if FcgiAuthorizer is run

2009-10-12 Thread Jeff Trawick
On Mon, Oct 12, 2009 at 5:51 AM, Barry Scott  wrote:
> Jeff Trawick wrote:
>>
>> On Fri, Oct 9, 2009 at 3:30 PM, Jeff Trawick  wrote:
>>
>
> ...
>>
>> Silly me.  Chris's patch at
>>
>> http://people.apache.org/~chrisd/patches/mod_fcgid_auth/mod_fcgid-1auth-trunk.patch
>> handles this, and it does send a trailing FCGI_STDIN record to an
>> authorizer.
>>
>> Chris, AYT
>
> I wonder if other fastcgi implementation made the same bad assumption about
> FCGI_STDIN
> always being sent as ours did.
>
> FYI: The other change I made to our fastcgi was to parse out multiple values
> from FCGI_PARAMS
> records. mod_fastcgi sends one name-value pair in a FCGI_PARAMS record and
> sends as
> many FCGI_PARAMS records as it needs to to send the environment. Where as
> mod_fcgid sends
> multiple name-value pairs in asingle FCGI_PARAMS record.

Thanks for all the info.

I'm inclined to commit what we think is proper for FCGI_STDIN on
FCGI_AUTHORIZER and then see if it absolutely has to be adjusted later
once other issues with FCGI_AUTHORIZER are cleared up and we see a
variety of implementations being tested with it.

(I'll go with patch 3, which adds the eos bucket to the brigade.)


Re: problem with build on AIX 6.1

2009-10-12 Thread Niklas Edmundsson

On Wed, 7 Oct 2009, Michael Felt wrote:


Would you care to comment on a preference for CC definition when using XL
compilers. I am leaning towards xlc.


I've had a long standing problem with CC=xlc optimizing away some 
crucial part of the accept-loop in httpd, so it wouldn't process 
connections. The workaround has been to use CC=cc. Haven't tried 
CC=xlc or xlc_r with the recent patchsets of xlc/vac 9/10 though, so 
this might just be me emitting stale noise. You'll notice if you hit 
this issue ;)


And yes, everything Jeff stated is of course correct.

/Nikke
--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 Niklas Edmundsson, Admin @ {acc,hpc2n}.umu.se  | ni...@acc.umu.se
---
 RETIREMENT: When you stop living at work and start working at life.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


Re: problem with build on AIX 6.1

2009-10-12 Thread Michael Felt
You mean it would not accept any connections, or just some?

On Mon, Oct 12, 2009 at 2:00 PM, Niklas Edmundsson  wrote:

> On Wed, 7 Oct 2009, Michael Felt wrote:
>
>  Would you care to comment on a preference for CC definition when using XL
>> compilers. I am leaning towards xlc.
>>
>
> I've had a long standing problem with CC=xlc optimizing away some crucial
> part of the accept-loop in httpd, so it wouldn't process connections. The
> workaround has been to use CC=cc. Haven't tried CC=xlc or xlc_r with the
> recent patchsets of xlc/vac 9/10 though, so this might just be me emitting
> stale noise. You'll notice if you hit this issue ;)
>
> And yes, everything Jeff stated is of course correct.
>
> /Nikke
> --
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>  Niklas Edmundsson, Admin @ {acc,hpc2n}.umu.se  | ni...@acc.umu.se
> ---
>  RETIREMENT: When you stop living at work and start working at life.
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>


Re: Making a binary distribution package... for AIX

2009-10-12 Thread Michael Felt
I just ran the build/binbuild.sh script - unchanged. Never had it respond
with a LIBPATH like this before.

In any case, without expat installed the build/binbuild.sh script failed -
cannot find expat.

For the next test I downloaded, compiled, and make installed expat to
/usr/local (actually /usr/local is a symbolic link to /data/local and I am
beginning to think that some of these tools are reacting to the symbolic
link in some way).

On Fri, Oct 9, 2009 at 10:51 PM, Rainer Jung wrote:

> On 09.10.2009 00:39, Michael Felt wrote:
> > In case the question is not obvious - why is the code not finding it's
> > own expat.h file? Is it not suppossed to - meaning install the expat
> > package?
>
> Yes, it should.
>
> > On Thu, Oct 8, 2009 at 6:11 PM, Michael Felt  > > wrote:
> >
> > ok. build/binbuild.sh is the starting point it seems - and I get an
> > error.
> >
> > /bin/sh /data/prj/httpd-2.2.14/srclib/apr/libtool --silent
> > --mode=compile cc -qlanglvl=extc89 -g -qHALT=E   -DHAVE_CONFIG_H
> > -U__STR__ -D_THREAD_SAFE -D_LARGEFILE64_SOURCE
> > -I/data/prj/httpd-2.2.14/srclib/apr-util/include
> > -I/data/prj/httpd-2.2.14/srclib/apr-util/include/private
> > -I/data/prj/httpd-2.2.14/srclib/apr/include
> > -I/data/prj/httpd-2.2.14/srclib/apr-util/xml/expat/include  -o
> > xml/apr_xml.lo -c xml/apr_xml.c && touch xml/apr_xml.lo
> > "xml/apr_xml.c", line 35.10: 1506-296 (S) #include file 
> > not found.
> > "xml/apr_xml.c", line 66.5: 1506-046 (S) Syntax error.
> > "xml/apr_xml.c", line 67.10: 1506-007 (S) "enum XML_Error" is
> undefined.
> > "xml/apr_xml.c", line 344.28: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 345.13: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 364.60: 1506-277 (S) Syntax error: possible
> > missing ')' or ','?
> > "xml/apr_xml.c", line 381.13: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 382.17: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 390.29: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 391.35: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 392.41: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 404.35: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 414.17: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 418.36: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > "xml/apr_xml.c", line 422.55: 1506-022 (S) "xp" is not a member of
> > "struct apr_xml_parser".
> > make[3]: *** [xml/apr_xml.lo] Error 1
> > make[3]: Leaving directory `/data/prj/httpd-2.2.14/srclib/apr-util'
> > make[2]: *** [all-recursive] Error 1
> > make[2]: Leaving directory `/data/prj/httpd-2.2.14/srclib/apr-util'
> > make[1]: *** [all-recursive] Error 1
> > make[1]: Leaving directory `/data/prj/httpd-2.2.14/srclib'
> > make: *** [all-recursive] Error 1
> > ERROR: Failed to build Apache. See "build.log" for details.
>
>  When I do a build (not on AIX), then configure produces an output line
>
> setting APRUTIL_INCLUDES to
> "-I/my/apache/build/dir/srclib/apr-util/xml/expat/lib"
>
> and later
>
> setting EXTRA_INCLUDES to "-I$(top_builddir)/srclib/pcre -I.
> ...
> -I/my/apache/build/dir/srclib/apr/include
> -I/my/apache/build/dir/srclib/apr-util/include
> -I/my/apache/build/dir/srclib/apr-util/xml/expat/lib
> ..."
>
> Then when doing the make,
>
> /usr/bin/ksh /my/apache/build/dir/srclib/apr/libtool --silent
> --mode=compile
> ...
> -I/my/apache/build/dir/srclib/apr-util/include
> -I/my/apache/build/dir/srclib/apr-util/include/private
> -I/my/apache/build/dir/srclib/apr/include
> -I/my/apache/build/dir/srclib/apr-util/xml/expat/lib  -o xml/apr_xml.lo
> -c xml/apr_xml.c && touch xml/apr_xml.lo
>
> So the path -I/my/apache/build/dir/srclib/apr-util/xml/expat/lib is
> correct and the header file gets found.
>
> In your snippet there is a
> -I/data/prj/httpd-2.2.14/srclib/apr-util/xml/expat/include which is
> wrong. Did you give explicit instructions to configure where to find
> expat? You don't need to.
>

Reminder: I ran build/binbuild.sh unmodified from the 2.2.14 distribution.


>
> > mich...@x054:[/data/prj/httpd-2.2.14]find . -name expat.h
> > ./srclib/apr-util/xml/expat.h
> >
> > mich...@x054:[/data/prj/httpd-2.2.14]find . -name apr_xml.c
> > ./srclib/apr-util/xml/apr_xml.c
> >
> > mich...@x054:[/data/prj/httpd-2.2.14]find / -fstype jfs2 -name
> expat.h
> > /data/prj/httpd-2.2.14/srclib/apr-util/xml/expat/lib/expat.h
> > /data/prj/Python-2.6.3/Modules/expat/ex

Re: svn commit: r823794 - in /httpd/httpd/trunk: CHANGES server/mpm/config.m4

2009-10-12 Thread Jeff Trawick
On Sat, Oct 10, 2009 at 1:32 AM,   wrote:
> Author: takashi
> Date: Sat Oct 10 05:32:37 2009
> New Revision: 823794
>
> URL: http://svn.apache.org/viewvc?rev=823794&view=rev
> Log:
> configure: Fix THREADED_MPMS so that mod_cgid is
> enabled again for worker MPM.
>
> Modified:
>    httpd/httpd/trunk/CHANGES

The last release (2.3.2 alpha) wasn't affected by this problem, so
there is no need to mention the fix in CHANGES.


Re: Making a binary distribution package... for AIX

2009-10-12 Thread Michael Felt
OK. It is probably something really really simple - but as I am trying to be
guided by what is already there I am trying to do a build using paramters
similar to the build/binbuild.sh.

/configure --enable-layout=Apache --enable-mods-shared=most
--enable-modules=most --enable-static-support

although I wonder why this choice for --enable-static-support

When configure and make finish I get:
mich...@x054:[/data/prj/httpd-2.2.14]./httpd
-l
Compiled in modules:
  core.c
  prefork.c
  http_core.c
  mod_so.c

mich...@x054:[/data/prj/httpd-2.2.14]./httpd -t
[Mon Oct 12 18:43:58 2009] [warn] module headers_module is already loaded,
skipping
Syntax error on line 69 of /usr/local/apache2/conf/httpd.conf:
Invalid command 'AddHandler', perhaps misspelled or defined by a module not
included in the server configuration

and in httpd.conf - I have:

LoadModule php5_modulemodules/libphp5.so
AddHandler php5-script php

What mod should I enable, besides "most". Maybe "most" should include it by
default. Or have I disabled it via the --enable-static-support.

Normally I have used:
mich...@x054:[/data/prj/httpd-2.2.14]cat ../http_configure
./configure --prefix=/usr/local/apache2 \
--enable-module=so \
--enable-module=unique_id \
--enable-module=usertrack \
--enable-module=vhost_alias \
--enable-rewrite=shared \
--enable-speling=shared \
--enable-digest=shared \
--enable-cgi=shared \
--enable-headers=shared \
--enable-info=shared \
--enable-log_forensic=shared \
--enable-proxy=shared \
--enable-proxy-connect=shared \
--enable-proxy-ftp=shared \
--enable-proxy-http=shared \
--enable-proxy-ajp=shared \
--enable-proxy-balancer=shared \
--with-z=/data/prj/zlib-1.2.3

And AddHandler has just worked. So I am a bit confused.


On Mon, Oct 12, 2009 at 6:34 PM, Michael Felt  wrote:

> I just ran the build/binbuild.sh script - unchanged. Never had it respond
> with a LIBPATH like this before.
>
> In any case, without expat installed the build/binbuild.sh script failed -
> cannot find expat.
>
> For the next test I downloaded, compiled, and make installed expat to
> /usr/local (actually /usr/local is a symbolic link to /data/local and I am
> beginning to think that some of these tools are reacting to the symbolic
> link in some way).
>
> On Fri, Oct 9, 2009 at 10:51 PM, Rainer Jung wrote:
>
>> On 09.10.2009 00:39, Michael Felt wrote:
>> > In case the question is not obvious - why is the code not finding it's
>> > own expat.h file? Is it not suppossed to - meaning install the expat
>> > package?
>>
>> Yes, it should.
>>
>> > On Thu, Oct 8, 2009 at 6:11 PM, Michael Felt > > > wrote:
>> >
>> > ok. build/binbuild.sh is the starting point it seems - and I get an
>> > error.
>> >
>> > /bin/sh /data/prj/httpd-2.2.14/srclib/apr/libtool --silent
>> > --mode=compile cc -qlanglvl=extc89 -g -qHALT=E   -DHAVE_CONFIG_H
>> > -U__STR__ -D_THREAD_SAFE -D_LARGEFILE64_SOURCE
>> > -I/data/prj/httpd-2.2.14/srclib/apr-util/include
>> > -I/data/prj/httpd-2.2.14/srclib/apr-util/include/private
>> > -I/data/prj/httpd-2.2.14/srclib/apr/include
>> > -I/data/prj/httpd-2.2.14/srclib/apr-util/xml/expat/include  -o
>> > xml/apr_xml.lo -c xml/apr_xml.c && touch xml/apr_xml.lo
>> > "xml/apr_xml.c", line 35.10: 1506-296 (S) #include file 
>> > not found.
>> > "xml/apr_xml.c", line 66.5: 1506-046 (S) Syntax error.
>> > "xml/apr_xml.c", line 67.10: 1506-007 (S) "enum XML_Error" is
>> undefined.
>> > "xml/apr_xml.c", line 344.28: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 345.13: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 364.60: 1506-277 (S) Syntax error: possible
>> > missing ')' or ','?
>> > "xml/apr_xml.c", line 381.13: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 382.17: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 390.29: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 391.35: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 392.41: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 404.35: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 414.17: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 418.36: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > "xml/apr_xml.c", line 422.55: 1506-022 (S) "xp" is not a member of
>> > "struct apr_xml_parser".
>> > make[3]: *** [xml/apr_xml.lo] Error 1
>> > make[3]: Leaving directory `/data/prj/httpd-2.2.14/srclib/apr-util'
>> > make[2]: *** [all-recursive] Error 1
>> > make[2]: Leaving director

Re: mod_fcgid: Problem serving binary content with Apache 2.2.13 - PHP 5.2.9

2009-10-12 Thread Jeff Trawick
On Sun, Oct 11, 2009 at 6:16 AM, Marcus Merz  wrote:
> Is this issue solved in 2.3.4?

no


Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Brian J. France




On Oct 10, 2009, at 4:04 AM, Ruediger Pluem wrote:

On 10/09/2009 11:41 PM, minf...@apache.org wrote:

Author: minfrin
Date: Fri Oct  9 21:41:31 2009
New Revision: 823703

URL: http://svn.apache.org/viewvc?rev=823703&view=rev
Log:
mod_dav: Provide a mechanism to obtain the request_rec and pathname
from the dav_resource.
Submitted by: Jari Urpalainen ,
 Brian France 

Modified:
   httpd/httpd/trunk/CHANGES
   httpd/httpd/trunk/modules/dav/fs/repos.c
   httpd/httpd/trunk/modules/dav/main/mod_dav.h




Modified: httpd/httpd/trunk/modules/dav/fs/repos.c
URL: 
http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/dav/fs/repos.c?rev=823703&r1=823702&r2=823703&view=diff
=
=
=
=
=
=
=
=
=
=
--- httpd/httpd/trunk/modules/dav/fs/repos.c (original)
+++ httpd/httpd/trunk/modules/dav/fs/repos.c Fri Oct  9 21:41:31 2009



@@ -1816,6 +1823,9 @@
dav_fs_remove_resource,
dav_fs_walk,
dav_fs_getetag,
+dav_fs_get_request_rec,
+dav_fs_pathname,
+NULL


This creates the following warning:

repos.c:1827: warning: initialization from incompatible pointer type

I assume the order of the arguments is wrong and needs to be

NULL,
dav_fs_get_request_rec,
dav_fs_pathname

instead. See below in the snipped from mod_dav.h:



Modified: httpd/httpd/trunk/modules/dav/main/mod_dav.h
URL: 
http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/dav/main/mod_dav.h?rev=823703&r1=823702&r2=823703&view=diff
=
=
=
=
=
=
=
=
=
=
--- httpd/httpd/trunk/modules/dav/main/mod_dav.h (original)
+++ httpd/httpd/trunk/modules/dav/main/mod_dav.h Fri Oct  9  
21:41:31 2009

@@ -1940,6 +1940,12 @@
** then this field may be used. In most cases, it will just be  
NULL.

*/
void *ctx;
+
+/* return request record */
+request_rec * (*get_request_rec)(const dav_resource *resource);
+
+/* return path */
+const char * (*get_pathname)(const dav_resource *resource);
};



Below is a patch to fix the bad struct declaration, sorry about that.   
I missed it on the binary compatibility conversion.


Brian

Index: modules/dav/fs/repos.c
===
--- modules/dav/fs/repos.c  (revision 824480)
+++ modules/dav/fs/repos.c  (working copy)
@@ -1823,9 +1823,9 @@
 dav_fs_remove_resource,
 dav_fs_walk,
 dav_fs_getetag,
+NULL,
 dav_fs_get_request_rec,
-dav_fs_pathname,
-NULL
+dav_fs_pathname
 };

 static dav_prop_insert dav_fs_insert_prop(const dav_resource  
*resource,





Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Brian J. France


On Oct 12, 2009, at 3:58 AM, Joe Orton wrote:


On Sat, Oct 10, 2009 at 10:04:57AM +0200, Ruediger Pluem wrote:

On 10/09/2009 11:41 PM, minf...@apache.org wrote:

=
=
=
=
=
=
=
=
=
=

--- httpd/httpd/trunk/modules/dav/fs/repos.c (original)
+++ httpd/httpd/trunk/modules/dav/fs/repos.c Fri Oct  9 21:41:31  
2009



@@ -1816,6 +1823,9 @@
dav_fs_remove_resource,
dav_fs_walk,
dav_fs_getetag,
+dav_fs_get_request_rec,
+dav_fs_pathname,
+NULL


This creates the following warning:

repos.c:1827: warning: initialization from incompatible pointer type


Plus the dav_fs_get_request_rec prototype needs to be moved up.

/local/asf/httpd-trunk/modules/dav/fs/repos.c:214: warning: no  
previous

prototype for ‘dav_fs_get_request_rec’



I don't know why that warning is happening. dav_fs_get_request_rec is  
defined on line 214 and used in the struct on line 1827.


Brian

Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Brian J. France


On Oct 12, 2009, at 3:57 AM, Joe Orton wrote:


On Fri, Oct 09, 2009 at 09:41:32PM -, Graham Leggett wrote:

--- httpd/httpd/trunk/modules/dav/main/mod_dav.h (original)
+++ httpd/httpd/trunk/modules/dav/main/mod_dav.h Fri Oct  9  
21:41:31 2009

@@ -1940,6 +1940,12 @@
** then this field may be used. In most cases, it will just be  
NULL.

*/
void *ctx;
+
+/* return request record */
+request_rec * (*get_request_rec)(const dav_resource *resource);
+
+/* return path */
+const char * (*get_pathname)(const dav_resource *resource);
};



What is a "pathname" in this context? A URI path?  A filesystem path?
If the latter, what is get_pathname supposed to do for a non-fs-backed
repository provider?



That I don't know, it could use bogus paths.  I haven't gone down the  
path of creating a new mod_dav_fs module, so I don't know exactly how  
it would work.




(Also - compare and contrast how all the rest of the comments in this
structure are descriptive phrases and start with capital letters and
everything)


Patch below fixes up the comments for the new functions.

Index: modules/dav/main/mod_dav.h
===
--- modules/dav/main/mod_dav.h  (revision 824480)
+++ modules/dav/main/mod_dav.h  (working copy)
@@ -1941,10 +1941,10 @@
 */
 void *ctx;

-/* return request record */
+/* Get the request rec for a resource */
 request_rec * (*get_request_rec)(const dav_resource *resource);

-/* return path */
+/* Get the pathname for a resource */
 const char * (*get_pathname)(const dav_resource *resource);
 };




Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Ruediger Pluem


On 10/12/2009 10:17 PM, Brian J. France wrote:
> 
> On Oct 12, 2009, at 3:58 AM, Joe Orton wrote:
> 
>> On Sat, Oct 10, 2009 at 10:04:57AM +0200, Ruediger Pluem wrote:
>>> On 10/09/2009 11:41 PM, minf...@apache.org wrote:
 =
 =
 =
 =
 =
 =
 =
 =
 =
 =
 
 --- httpd/httpd/trunk/modules/dav/fs/repos.c (original)
 +++ httpd/httpd/trunk/modules/dav/fs/repos.c Fri Oct  9 21:41:31 2009
>>>
 @@ -1816,6 +1823,9 @@
 dav_fs_remove_resource,
 dav_fs_walk,
 dav_fs_getetag,
 +dav_fs_get_request_rec,
 +dav_fs_pathname,
 +NULL
>>>
>>> This creates the following warning:
>>>
>>> repos.c:1827: warning: initialization from incompatible pointer type
>>
>> Plus the dav_fs_get_request_rec prototype needs to be moved up.
>>
>> /local/asf/httpd-trunk/modules/dav/fs/repos.c:214: warning: no previous
>> prototype for ‘dav_fs_get_request_rec’
> 
> 
> I don't know why that warning is happening. dav_fs_get_request_rec is
> defined on line 214 and used in the struct on line 1827.

I guess because there is no prototype defined in repos.h like for 
dav_fs_pathname.
Furthermore I guess Joe didn't like that *ctx is no longer at the end of the 
struct.
I assume you did this to stay backportable, but IMHO this cannot be backported
anyway since adding fields to this struct and using them would cause
"old" providers that don't provide them when registering to possibly segfault.


Regards

Rüdiger


Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Joe Orton
On Mon, Oct 12, 2009 at 04:23:59PM -0400, Brian J. France wrote:
> On Oct 12, 2009, at 3:57 AM, Joe Orton wrote:
>> On Fri, Oct 09, 2009 at 09:41:32PM -, Graham Leggett wrote:
>>> --- httpd/httpd/trunk/modules/dav/main/mod_dav.h (original)
>>> +++ httpd/httpd/trunk/modules/dav/main/mod_dav.h Fri Oct  9 21:41:31 
>>> +
>>> +/* return request record */
>>> +request_rec * (*get_request_rec)(const dav_resource *resource);
>>> +
>>> +/* return path */
>>> +const char * (*get_pathname)(const dav_resource *resource);
>>> };
>>>
>>
>> What is a "pathname" in this context? A URI path?  A filesystem path?
>> If the latter, what is get_pathname supposed to do for a non-fs-backed
>> repository provider?
>
>
> That I don't know, it could use bogus paths.  I haven't gone down the  
> path of creating a new mod_dav_fs module, so I don't know exactly how it 
> would work.

Well, there needs to be some API contract specified so that repos 
backends can implement it.  

So: why does the resource abstraction need to be extended to return the 
filesystem path?  What will mod_dav use it for?

Regards, Joe


Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Joe Orton
On Mon, Oct 12, 2009 at 04:17:00PM -0400, Brian J. France wrote:
> On Oct 12, 2009, at 3:58 AM, Joe Orton wrote:
>> On Sat, Oct 10, 2009 at 10:04:57AM +0200, Ruediger Pluem wrote:
>>> This creates the following warning:
>>>
>>> repos.c:1827: warning: initialization from incompatible pointer type
>>
>> Plus the dav_fs_get_request_rec prototype needs to be moved up.
>>
>> /local/asf/httpd-trunk/modules/dav/fs/repos.c:214: warning: no  
>> previous
>> prototype for ‘dav_fs_get_request_rec’
>
> I don't know why that warning is happening. dav_fs_get_request_rec is  
> defined on line 214 and used in the struct on line 1827.

Sorry, my mistake, it's not a positioning problem - the function needs 
to be made static.


Re: mod_fcgid: Problem serving binary content with Apache 2.2.13 - PHP 5.2.9

2009-10-12 Thread Jeff Trawick
On Mon, Oct 12, 2009 at 4:14 PM, Jeff Trawick  wrote:
> On Sun, Oct 11, 2009 at 6:16 AM, Marcus Merz  wrote:
>> Is this issue solved in 2.3.4?
>
> no

BTW, I'm sorry I haven't followed up to your last couple of posts.  I
should be honest with you:  All that Plesk-generated config and/or
attempts to interject tweaks to that config makes my head explode.
Maybe somebody else here has the time and will power to dig through
it.

My general thoughts: I don't think mod_fcgid's processing can be
compared to mod_php's in any meaningful way.  Instead, it should be
compared to mod_cgi's (mod_cgid's).  FastCGI is essentially CGI, but
with the request information passed over in a way that allows the
script to handle multiple requests without exiting.  mod_cgi and
mod_fcgid should pass the same request environment variables to the
CGI/FastCGI application, and in fact they use the same core httpd code
to build that information.  (The notable exception is when
FcgidFixPathInfo is turned on, in which case mod_fcgid modifies one of
the request environment variables I can't say if/when exactly that
helps.)

Good luck!


Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Brian J. France


On Oct 12, 2009, at 4:38 PM, Joe Orton wrote:


On Mon, Oct 12, 2009 at 04:23:59PM -0400, Brian J. France wrote:

On Oct 12, 2009, at 3:57 AM, Joe Orton wrote:

On Fri, Oct 09, 2009 at 09:41:32PM -, Graham Leggett wrote:

--- httpd/httpd/trunk/modules/dav/main/mod_dav.h (original)
+++ httpd/httpd/trunk/modules/dav/main/mod_dav.h Fri Oct  9  
21:41:31

+
+/* return request record */
+request_rec * (*get_request_rec)(const dav_resource  
*resource);

+
+/* return path */
+const char * (*get_pathname)(const dav_resource *resource);
};



What is a "pathname" in this context? A URI path?  A filesystem  
path?
If the latter, what is get_pathname supposed to do for a non-fs- 
backed

repository provider?



That I don't know, it could use bogus paths.  I haven't gone down the
path of creating a new mod_dav_fs module, so I don't know exactly  
how it

would work.


Well, there needs to be some API contract specified so that repos
backends can implement it.

So: why does the resource abstraction need to be extended to return  
the

filesystem path?  What will mod_dav use it for?



mod_dav_acl would use the filename to validate the acls.  Like I said,  
I don't know if get_pathname is needed or we should just use r- 
>filename and make sure a mod_dav_fs_db module updated it.


Brian



Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Brian J. France


On Oct 12, 2009, at 4:39 PM, Joe Orton wrote:


On Mon, Oct 12, 2009 at 04:17:00PM -0400, Brian J. France wrote:

On Oct 12, 2009, at 3:58 AM, Joe Orton wrote:

On Sat, Oct 10, 2009 at 10:04:57AM +0200, Ruediger Pluem wrote:

This creates the following warning:

repos.c:1827: warning: initialization from incompatible pointer  
type


Plus the dav_fs_get_request_rec prototype needs to be moved up.

/local/asf/httpd-trunk/modules/dav/fs/repos.c:214: warning: no
previous
prototype for ‘dav_fs_get_request_rec’


I don't know why that warning is happening. dav_fs_get_request_rec is
defined on line 214 and used in the struct on line 1827.


Sorry, my mistake, it's not a positioning problem - the function needs
to be made static.


Updated patch:

Index: modules/dav/fs/repos.c
===
--- modules/dav/fs/repos.c  (revision 824480)
+++ modules/dav/fs/repos.c  (working copy)
@@ -211,7 +211,7 @@
 **
 ** PRIVATE REPOSITORY FUNCTIONS
 */
-request_rec *dav_fs_get_request_rec(const dav_resource *resource)
+status request_rec *dav_fs_get_request_rec(const dav_resource  
*resource)

 {
 return resource->info->r;
 }
@@ -1823,9 +1823,9 @@
 dav_fs_remove_resource,
 dav_fs_walk,
 dav_fs_getetag,
+NULL,
 dav_fs_get_request_rec,
-dav_fs_pathname,
-NULL
+dav_fs_pathname
 };

 static dav_prop_insert dav_fs_insert_prop(const dav_resource  
*resource,






Re: svn commit: r823703 - in /httpd/httpd/trunk: CHANGES modules/dav/fs/repos.c modules/dav/main/mod_dav.h

2009-10-12 Thread Brian J. France


On Oct 12, 2009, at 5:15 PM, Brian J. France wrote:



On Oct 12, 2009, at 4:39 PM, Joe Orton wrote:


On Mon, Oct 12, 2009 at 04:17:00PM -0400, Brian J. France wrote:

On Oct 12, 2009, at 3:58 AM, Joe Orton wrote:

On Sat, Oct 10, 2009 at 10:04:57AM +0200, Ruediger Pluem wrote:

This creates the following warning:

repos.c:1827: warning: initialization from incompatible pointer  
type


Plus the dav_fs_get_request_rec prototype needs to be moved up.

/local/asf/httpd-trunk/modules/dav/fs/repos.c:214: warning: no
previous
prototype for ‘dav_fs_get_request_rec’


I don't know why that warning is happening. dav_fs_get_request_rec  
is

defined on line 214 and used in the struct on line 1827.


Sorry, my mistake, it's not a positioning problem - the function  
needs

to be made static.


Updated patch:



Scratch that, here is a patch:

Index: modules/dav/fs/repos.c
===
--- modules/dav/fs/repos.c  (revision 824480)
+++ modules/dav/fs/repos.c  (working copy)
@@ -211,7 +211,7 @@
 **
 ** PRIVATE REPOSITORY FUNCTIONS
 */
-request_rec *dav_fs_get_request_rec(const dav_resource *resource)
+static request_rec *dav_fs_get_request_rec(const dav_resource  
*resource)

 {
 return resource->info->r;
 }
@@ -1823,9 +1823,9 @@
 dav_fs_remove_resource,
 dav_fs_walk,
 dav_fs_getetag,
+NULL,
 dav_fs_get_request_rec,
-dav_fs_pathname,
-NULL
+dav_fs_pathname
 };

 static dav_prop_insert dav_fs_insert_prop(const dav_resource  
*resource,