Re: make test hangs

2004-08-12 Thread William Fulmer
I did find some discussion of old HP-UX patches that fixed problems with
stat calls that some of HP's apps had.  There are no particulars and
none pertain to system libraries, so they were no help.  The issue here
may be that I'm a relative novice when it comes to C/C++ programming. 
For instance,  where does the magic happen that masks all of perls stat
calls to stat64 when you compile with LFS support?  Some of the info out
there may contain the answer, but I can't see it for lack of this
knowledge.  

I'm also wondering if the problem is not the actually call to stat64,
which looks like it returns the requested info, but whatever comes next.
 That last line of the trace bothers me:

[5889] In
user-mode.[running]

Very uninformative.  Any guesses as to the meaning?  

One of the other things that has been bothering me is that when I built
MP2 with perl 5.8.2, I couldn't get it to work without useshrlib
defined.   For perl 5.6.2, perl won't even compile successfully if you
define this option.  It tries to run miniperl during the compile and
that hangs with a trace ending in the same mysterious line.  The
frustration thing about that is that LFS does not seem to affect this
particular problem.  I'm left wondering if perhaps the real problem here
is that these two scenarios are trying to dynamically load libraries
that don't lend themselves to dynamic loading (e.g. libpthread.sl)  I
eliminated the usual culprits such as pthread and libcl.sl and of course
there are no helpful messages to point at something else.

I do see warnings about a symbol _attribute_ being defined again and
internal linking will occur, but as I said before, I don't know enough
about C to know if that has any significance at all.

Any thought on these?

---
Will Fulmer
Database Administrator
Northampton Community College
Bethlehem, PA

 Stas Bekman [EMAIL PROTECTED] 8/11/2004 10:29:05 PM 
William Fulmer wrote:
 We need to back up a bit.  I tried something different just for
giggles
 because I thought we might be on the wrong track with setuid.  I
wrote a
 little script that this
 
 #!/bin/bash
 /usr/opt/httpd-2.0.49/bin/httpd -d t -f conf/httpd.conf  -DAPACHE2
 -DONE_PROCESS -DNO_DETATCH  stdout 21 
 tusc -p -f -v -o strace $!
 
 after running the script I went to a browser and hit
 http://cars-l:8529/TestAPI__request_rec 
 
 The strace looks quite different this way (and the process does not
 exit).  Turns out the setuid thing was the falt of my tusc command
being
 setuid. (Sorry.  insert sheepish look here)
 
 Trace from this latest test is more what I expected to see:
[...]

stat64(/opt/local/wrfopt/build/mod_perl-1.99_14/t/response/TestAPI/request_rec.pm,
 0x6ff66648) = 0
 st_dev: 64 0x05
 st_ino: 171526
st_mode: S_IFREG|0644
   st_nlink: 1
st_rdev: 0
st_size: 2503
 st_blksize: 8192
  st_blocks: 1
 st_uid: 1073741829
 st_gid: 27549760
   st_atime: Tue Aug 10 16:50:28 2004
   st_mtime: Fri Apr 18 02:18:58 2003
   st_ctime: Mon Aug  9 20:40:52 2004

 Hangs at this point.
 
 The compile with no LFS:
[...]
 Blows right by the call to stat no problem.  Get output in the
browser
 say Ok to all 42 tests.
 
 The only notable difference being the call to stat as opposed to
 stat64.

Excellent. So you've almost nailed it, William! Now try to see if there

are any discussions on the web re: stat vs. stat64, e.g.:
http://www.google.ca/search?hl=frie=UTF-8q=stat+stat64+hangsbtnG=Recherchermeta=

may be some more keywords should be added, like your platform name...

-- 
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org 
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com 
http://modperlbook.org http://apache.org   http://ticketmaster.com

-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



RE: Proxying access to restricted information

2004-08-12 Thread Dan Horne
Thanks for your suggestion.

I know nothing about mod_perl 2, and will look at the documentation today. I
do have a couple of questions:

1. Is Apache 2 and mod_perl 2 stable? It may be a silly question, as they've
been around for a while, but we've been an Apache v1 shop, and I've never
used mod_perl v2 at all. Heck, I've only played with mp v1 in my own time
2. Because I have to justify my investigative time to the boss, I need to
know that what I want to do is possible, namely: providing a reverse proxy
to an existing website, where the proxy will programmatically allow users
through depending on their access rights. It's due to this authentication
requirement that I can't use mod_rewrite by itself

Dan

-Original Message-
From: Stas Bekman [mailto:[EMAIL PROTECTED] 
Sent: Thursday, 12 August 2004 5:07 p.m.
To: Dan Horne
Cc: [EMAIL PROTECTED]
Subject: Re: Proxying access to restricted information


Dan Horne wrote:
 Following on from this, it seems that the PerlTransHandler looked like 
 my best bet, but it doesn't seem to be able to alter the hostname 
 (please correct me if there is a way to do this, as I struggled with 
 it so far)
 
 I guess mod_rewrite allows the hostname to be altered, but I need to 
 intercept the request and perform access checks, and I don't know if I 
 can do this before mod_rewrite kicks in during the request lifecycle.

With mod_perl 2, you can use
http://search.cpan.org/dist/Apache-Filter-HTTPHeadersFixup/
which is perfect for proxying as it does the work long before 
mod_rewrite kicks in. This module is a connection level filter.

-- 
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com




--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Re: Proxying access to restricted information

2004-08-12 Thread Aaron Ross
Hi Dan,
We are using mod_auth_tkt to solve the problem of having backend servers 
handle authentication, but front end reverse proxies handle access control.

Here's a link: http://www.openfusion.com.au/labs/mod_auth_tkt/
There are a couple other variation out there as well.
HTH, Aaron
Dan Horne wrote:
Thanks for your suggestion.
I know nothing about mod_perl 2, and will look at the documentation today. I
do have a couple of questions:
1. Is Apache 2 and mod_perl 2 stable? It may be a silly question, as they've
been around for a while, but we've been an Apache v1 shop, and I've never
used mod_perl v2 at all. Heck, I've only played with mp v1 in my own time
2. Because I have to justify my investigative time to the boss, I need to
know that what I want to do is possible, namely: providing a reverse proxy
to an existing website, where the proxy will programmatically allow users
through depending on their access rights. It's due to this authentication
requirement that I can't use mod_rewrite by itself
Dan
-Original Message-
From: Stas Bekman [mailto:[EMAIL PROTECTED] 
Sent: Thursday, 12 August 2004 5:07 p.m.
To: Dan Horne
Cc: [EMAIL PROTECTED]
Subject: Re: Proxying access to restricted information

Dan Horne wrote:
Following on from this, it seems that the PerlTransHandler looked like 
my best bet, but it doesn't seem to be able to alter the hostname 
(please correct me if there is a way to do this, as I struggled with 
it so far)

I guess mod_rewrite allows the hostname to be altered, but I need to 
intercept the request and perform access checks, and I don't know if I 
can do this before mod_rewrite kicks in during the request lifecycle.

With mod_perl 2, you can use
http://search.cpan.org/dist/Apache-Filter-HTTPHeadersFixup/
which is perfect for proxying as it does the work long before 
mod_rewrite kicks in. This module is a connection level filter.

--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html


RE: Proxying access to restricted information

2004-08-12 Thread Perrin Harkins
On Thu, 2004-08-12 at 14:26, Dan Horne wrote:
 1. Is Apache 2 and mod_perl 2 stable?

It has a very solid test suite and is in use in production by a growing
number of people.  I think it's past the point where you should be
worried about stability.  The major issue would just be learning the
APIs that have changed.

However, as Aaron pointed out, mod_auth_tkt is a much better solution
for your problem.

- Perrin


-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Re: Proxying access to restricted information

2004-08-12 Thread Stas Bekman
Perrin Harkins wrote:
However, as Aaron pointed out, mod_auth_tkt is a much better solution
for your problem.
It seems to be using mod_cgi to do that? If that's the case, then it 
probably can't beat modperl:

quote
mod_auth_tkt is a lightweight cookie-based authentication module for 
Apache 1.3.x, written in C. It implements a single-signon framework that 
works across multiple apache instances and multiple machines. The actual 
authentication is done by a user-supplied CGI or script in whatever
   ^^^
language you like (examples are provided in Perl), meaning you can 
authenticate against any kind of user repository you can access 
(password files, ldap, databases, etc.)
/quote

no?
--
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html


Re: make test hangs

2004-08-12 Thread Stas Bekman
William Fulmer wrote:
I did find some discussion of old HP-UX patches that fixed problems with
stat calls that some of HP's apps had.  There are no particulars and
none pertain to system libraries, so they were no help.  The issue here
may be that I'm a relative novice when it comes to C/C++ programming. 
For instance,  where does the magic happen that masks all of perls stat
calls to stat64 when you compile with LFS support?  Some of the info out
there may contain the answer, but I can't see it for lack of this
knowledge.  
It happens during Perl compilation, where depending on compilation 
flags, either stat or stat64 is chosen.

I'm also wondering if the problem is not the actually call to stat64,
which looks like it returns the requested info, but whatever comes next.
 That last line of the trace bothers me:
[5889] In
user-mode.[running]
Very uninformative.  Any guesses as to the meaning?  
Not really.
One of the other things that has been bothering me is that when I built
MP2 with perl 5.8.2, I couldn't get it to work without useshrlib
defined.   For perl 5.6.2, perl won't even compile successfully if you
define this option.  It tries to run miniperl during the compile and
that hangs with a trace ending in the same mysterious line.  The
frustration thing about that is that LFS does not seem to affect this
particular problem.  I'm left wondering if perhaps the real problem here
is that these two scenarios are trying to dynamically load libraries
that don't lend themselves to dynamic loading (e.g. libpthread.sl)  I
eliminated the usual culprits such as pthread and libcl.sl and of course
there are no helpful messages to point at something else.
I do see warnings about a symbol _attribute_ being defined again and
internal linking will occur, but as I said before, I don't know enough
about C to know if that has any significance at all.
Any thought on these?
All I can say that these aren't really mod_perl problems per se, even 
though they prevent you from using mod_perl. They are all OS level 
issues. You need to find someone who groks your platform's specifics and 
can advise us on using the right compile/linking flags to get things 
working.

HP-UX is not the only platform mod_perl has a problem with. We have 
issues with AIX and other platforms. We have Randy Kobes and Steve Hay 
who do a great work handling the win32 build (which won't be possible 
w/o having an inhouse expert). The rest of us develop and familiar with 
Linux. We get random help for other platforms. Ideally what we need is 
to have an expert on those platforms Apache and Perl are running on to 
get mod_perl to run.

I apologize for not being much of help with the problems you are having, 
William.

--
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html


Re: Proxying access to restricted information

2004-08-12 Thread Perrin Harkins
On Thu, 2004-08-12 at 15:22, Stas Bekman wrote:
 Perrin Harkins wrote:
 
  However, as Aaron pointed out, mod_auth_tkt is a much better solution
  for your problem.
 
 It seems to be using mod_cgi to do that?

No.  It's a C module.  You send the actual cookie from your application
after the user logs in.  Their example is a CGI or servlet, but you can
use literally anything.  The cookie is a ticket saying that this person
is verified to be in group X.  All that mod_auth_tkt does is read the
cookie and use it to check against a list of groups with access to
specific sections of the site.

- Perrin


-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Re: Proxying access to restricted information

2004-08-12 Thread Stas Bekman
Perrin Harkins wrote:
On Thu, 2004-08-12 at 15:22, Stas Bekman wrote:
Perrin Harkins wrote:

However, as Aaron pointed out, mod_auth_tkt is a much better solution
for your problem.
It seems to be using mod_cgi to do that?

No.  It's a C module.  You send the actual cookie from your application
after the user logs in.  Their example is a CGI or servlet, but you can
use literally anything.  The cookie is a ticket saying that this person
is verified to be in group X.  All that mod_auth_tkt does is read the
cookie and use it to check against a list of groups with access to
specific sections of the site.
Great then. Their description is a bit misleading :)
Thanks Perrin
--
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html


Re: make test hangs

2004-08-12 Thread William Fulmer
I understand.  I've already appealed to a perl.HPUX list to no avail. 
I've only been dealing with HP-UX myself for about a year now (mostly
Linux and Solaris before this).  I agree though.  This is most likely
not a problem with mod_perl itself, but rather some interaction with
perl 5.6 and HP-UX.  I may return with other questions if I decide to
pursue the non LFS install (which at least completes the make test with
failed tests rather than hanging).

I will post the particulars if I ever track down this particular
bugaboo.

Thanks for your time.

---
Will Fulmer
Database Administrator
Northampton Community College
Bethlehem, PA

 Stas Bekman [EMAIL PROTECTED] 8/12/2004 3:32:49 PM 
William Fulmer wrote:
 I did find some discussion of old HP-UX patches that fixed problems
with
 stat calls that some of HP's apps had.  There are no particulars and
 none pertain to system libraries, so they were no help.  The issue
here
 may be that I'm a relative novice when it comes to C/C++ programming.

 For instance,  where does the magic happen that masks all of perls
stat
 calls to stat64 when you compile with LFS support?  Some of the info
out
 there may contain the answer, but I can't see it for lack of this
 knowledge.  

It happens during Perl compilation, where depending on compilation 
flags, either stat or stat64 is chosen.

 I'm also wondering if the problem is not the actually call to
stat64,
 which looks like it returns the requested info, but whatever comes
next.
  That last line of the trace bothers me:
 
 [5889] In

user-mode.[running]
 
 Very uninformative.  Any guesses as to the meaning?  

Not really.

 One of the other things that has been bothering me is that when I
built
 MP2 with perl 5.8.2, I couldn't get it to work without useshrlib
 defined.   For perl 5.6.2, perl won't even compile successfully if
you
 define this option.  It tries to run miniperl during the compile and
 that hangs with a trace ending in the same mysterious line.  The
 frustration thing about that is that LFS does not seem to affect
this
 particular problem.  I'm left wondering if perhaps the real problem
here
 is that these two scenarios are trying to dynamically load libraries
 that don't lend themselves to dynamic loading (e.g. libpthread.sl) 
I
 eliminated the usual culprits such as pthread and libcl.sl and of
course
 there are no helpful messages to point at something else.
 
 I do see warnings about a symbol _attribute_ being defined again and
 internal linking will occur, but as I said before, I don't know
enough
 about C to know if that has any significance at all.
 
 Any thought on these?

All I can say that these aren't really mod_perl problems per se, even 
though they prevent you from using mod_perl. They are all OS level 
issues. You need to find someone who groks your platform's specifics
and 
can advise us on using the right compile/linking flags to get things 
working.

HP-UX is not the only platform mod_perl has a problem with. We have 
issues with AIX and other platforms. We have Randy Kobes and Steve Hay

who do a great work handling the win32 build (which won't be possible 
w/o having an inhouse expert). The rest of us develop and familiar with

Linux. We get random help for other platforms. Ideally what we need is

to have an expert on those platforms Apache and Perl are running on to

get mod_perl to run.

I apologize for not being much of help with the problems you are
having, 
William.

-- 
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org 
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com 
http://modperlbook.org http://apache.org   http://ticketmaster.com

-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



[OT] printing docs on perl.apache.org

2004-08-12 Thread allan juul
hello

we'd like the pages on perl.apache.org to print prettier while the screen 
rendering should look as always, so we made a few changes that hopefully didn't 
mess anything up.

we have only semi-tested this feature and would like a broader 
browser/platform matrix experience before commiting the change

please try this URL 
  
  http://www.bullitt.suite.dk/dst_html/

and verify that:

1) the screen rendering is as good as the corresponding page on 
perl.apache.org 

2) printing a page (or print previewing a page) from your browser looks 
simple and contain only the relevant documentation (no menus, logos etc.)



please email any feedback to

  lambretta at inet.uni2.dk
  

thanks
./allan

-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



[OT] printing docs on perl.apache.org

2004-08-12 Thread allan juul
hello

we'd like the pages on perl.apache.org to print prettier while the screen 
rendering should look as always, so we made a few changes that hopefully didn't 
mess anything up.

we have only semi-tested this feature and would like a broader 
browser/platform matrix experience before commiting the change

please try this URL 
  
  http://www.bullitt.suite.dk/dst_html/

and verify that:

1) the screen rendering is as good as the corresponding page on 
perl.apache.org 

2) printing a page (or print previewing a page) from your browser looks 
simple and contain only the relevant documentation (no menus, logos etc.)



please email any feedback to

  lambretta at inet.uni2.dk
  

thanks
./allan

-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



libapreq and filters

2004-08-12 Thread dorian taylor
suppose i wanted to significantly alter the structure of a POST
request via Apache::Request, but i wanted to re-inject the request
body back into the input bucket brigade to be processed by a later
module? i'm thinking something like this:

POST from client

Apache::Request-based handler   consumes request body entirely
  creates document based on POSTdata
  changes request method to PUT
  inserts new document back into stream

mod_put_takes document to be PUT and PUTs it somewhere

is this kind of thing possible in any way?

.dorian

-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Re: libapreq and filters

2004-08-12 Thread Stas Bekman
dorian taylor wrote:
suppose i wanted to significantly alter the structure of a POST
request via Apache::Request, but i wanted to re-inject the request
body back into the input bucket brigade to be processed by a later
module? i'm thinking something like this:
POST from client
Apache::Request-based handler   consumes request body entirely
creates document based on POSTdata
changes request method to PUT
inserts new document back into stream
mod_put_takes document to be PUT and PUTs it somewhere
is this kind of thing possible in any way?
Use a subrequest?
--
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html


RE: Apache::SubProcess build problem

2004-08-12 Thread Tom Murphy

Resurrecting an old one here, but I am running into the same issue.  Has
anyone successfully ported Apache::SubProcess to work with Perl 5.8.x and
MP1?  If not, a pointer to anything that will help with the transition.  

Thanks,

Tom Murphy

 -Original Message-
 From: Stas Bekman [mailto:[EMAIL PROTECTED]
 Sent: Tuesday, November 25, 2003 3:12 PM
 To: Rafael Garcia-Suarez
 Cc: [EMAIL PROTECTED]
 Subject: Re: Apache::SubProcess build problem
 
 
 Rafael Garcia-Suarez wrote:
  I can't build Apache::SubProcess 0.03 on AIX 5.2 with perl 5.8.2,
  mod_perl 1.29 and apache 1.3.29. The error (pasted below) 
 puzzles me ;
  any clues ?
  
  
  $ make 
  cp SubProcess.pm blib/lib/Apache/SubProcess.pm
  /opt/hexaflux/perl/bin/perl -e 'use 
 ExtUtils::Mksymlists;  Mksymlists(NAME = 
 Apache::SubProcess, DL_FUNCS = {  }, FUNCLIST = [], 
 DL_VARS = []);'
  /opt/hexaflux/perl/bin/perl 
 /opt/hexaflux/perl/lib/5.8.2/ExtUtils/xsubpp  -typemap 
 /opt/hexaflux/perl/lib/5.8.2/ExtUtils/typemap -typemap 
 /opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/typemap
   SubProcess.xs  SubProcess.xsc  mv SubProcess.xsc SubProcess.c
  cc -c  
 -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
 de 
 -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
 de/modules/perl 
 -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
 de/include 
 -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
 de/regex 
 -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
 de/os/unix  -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE 
 -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -DNO_LOCALE 
 -q32 -D_LARGE_FILES -qlonglong -O-DVERSION=\0.03\  
 -DXS_VERSION=\0.03\  
 -I/opt/hexaflux/perl/lib/5.8.2/aix/CORE  -g SubProcess.c
  SubProcess.xs, line 15.28: 1506-280 (W) Function argument 
 assignment between types struct _PerlIO** and struct 
 {...}* is not allowed.
  SubProcess.xs, line 19.18: 1506-068 (W) Operation between 
 types struct {...}* and struct _PerlIO** is not allowed.
  SubProcess.xs, line 36.26: 1506-068 (W) Operation between 
 types struct _PerlIO** and struct {...}* is not allowed.
  SubProcess.xs, line 40.26: 1506-068 (W) Operation between 
 types struct _PerlIO** and struct {...}* is not allowed.
  SubProcess.xs, line 137.25: 1506-280 (W) Function 
 argument assignment between types struct {...}* and struct 
 _PerlIO** is not allowed.
  Running Mkbootstrap for Apache::SubProcess ()
 
 It seems that that module needs to be updated to support 
 5.8.x IO, I get 
 similar problems:
 
 perl-5.8.2 Makefile.PL  make
 Writing Makefile for Apache::SubProcess
 cc -c 
 -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
 ache/include 
 -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
 ache/include/modules/perl 
 -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
 ache/include/include 
 -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
 ache/include/regex 
 -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
 ache/include/os/unix 
 -DDEBUGGING -fno-strict-aliasing -I/usr/local/include 
 -D_LARGEFILE_SOURCE 
 -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -g   -DVERSION=\0.03\ 
 -DXS_VERSION=\0.03\ -fpic 
 -I/home/stas/perl/5.8.2/lib/5.8.2/i686-linux/CORE  -g SubProcess.c
 SubProcess.xs: In function `io_dup':
 SubProcess.xs:15: warning: passing arg 1 of `Perl_PerlIO_fileno' from 
 incompatible pointer type
 SubProcess.xs:19: warning: assignment from incompatible pointer type
 SubProcess.xs: In function `io_hook':
 SubProcess.xs:36: warning: assignment from incompatible pointer type
 SubProcess.xs:40: warning: assignment from incompatible pointer type
 SubProcess.xs: In function `XS_Apache_pfclose':
 SubProcess.xs:137: warning: passing arg 2 of `ap_pfclose' 
 from incompatible 
 pointer type
 Running Mkbootstrap for Apache::SubProcess ()
 chmod 644 SubProcess.bs
 rm -f blib/arch/auto/Apache/SubProcess/SubProcess.so
 LD_RUN_PATH= cc  -shared -L/usr/local/lib SubProcess.o  -o 
 blib/arch/auto/Apache/SubProcess/SubProcess.so
 chmod 755 blib/arch/auto/Apache/SubProcess/SubProcess.so
 cp SubProcess.bs blib/arch/auto/Apache/SubProcess/SubProcess.bs
 chmod 644 blib/arch/auto/Apache/SubProcess/SubProcess.bs
 
 It builds fine with 5.6.x. I ported it to mp2 (it's now part 
 of the core), so 
 I guess parts can be re-used from there. I had to reimplement 
 the IO part for 
 5.8+.
 
  chmod 644 SubProcess.bs
  rm -f blib/arch/auto/Apache/SubProcess/SubProcess.so
  LD_RUN_PATH= ld  -bhalt:4 -bM:SRE 
 -bI:/opt/hexaflux/perl/lib/5.8.2/aix/CORE/perl.exp 
 -bE:SubProcess.exp -bnoentry -lc SubProcess.o  -o 
 blib/arch/auto/Apache/SubProcess/SubProcess.so  
  ld: 0711-317 ERROR: Undefined symbol: .sv2request_rec
  ld: 0711-317 ERROR: Undefined symbol: .ap_cleanup_for_exec
  ld: 0711-317 ERROR: Undefined symbol: .ap_pfclose
  ld: 0711-317 ERROR: Undefined symbol: .ap_create_environment
  ld: 

Modperl and Distance Education

2004-08-12 Thread Alfred Vahau






Hi,
Are there any major distance education sites powered by modperl
technology?
I work for a University with 7 campuses scattered around the country.
Provision of distance
education through online access to teaching material and academic
transcripts are among the long
term goals of the university.

I find it challenging to develop a site to meet the university's
requirements. It has been proposed
that I consider Java or PHP applications to develop the site to include
online directory for all
staff and students connected to the university. However, I am confident
that I can meet the same
objectives using modperl technology. Somewhere I think I can use
Bricolage or Mason and I am
wondering whether these are appropriate technologies to consider. Or
are there other applications of
modperl relating to delivery of distance education that I am not aware
of.

Coming from a traditional Unix background in connection with academic
research, I turned to Perl in
2000 to survive in an environment dominated by Windows operating
system. I continue to work on my
own Breeze Project
for which an early account was posted on the Oreilly site in 2002.
Since then I have
been following developments and have tested modperl and apache on trial
basis.

Any pointers to help in broadening my options would be highly
appreciated.

Many thanks in advance,

Alfred Vahau
Director
Information Technology Services
University of Papua New Guinea
Information Resources Centre












Re: [OT] printing docs on perl.apache.org

2004-08-12 Thread Stas Bekman
allan juul wrote:
hello
we'd like the pages on perl.apache.org to print prettier while the screen 
rendering should look as always, so we made a few changes that hopefully didn't 
mess anything up.

we have only semi-tested this feature and would like a broader 
browser/platform matrix experience before commiting the change

please try this URL 
  
  http://www.bullitt.suite.dk/dst_html/

and verify that:

1) the screen rendering is as good as the corresponding page on 
perl.apache.org 

2) printing a page (or print previewing a page) from your browser looks 
simple and contain only the relevant documentation (no menus, logos etc.)
Looks great on linux, tried: mozilla, lynx and links
Great work, Allan!
--
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html


RE: Proxying access to restricted information

2004-08-12 Thread Dan Horne
Thanks for everyone's responses. I managed to get this working in principle
by:

1) using mod_proxy and mod_rewite to create the proxy through to the server.
2) PerlAuth* handlers to determine user access

Thanks

Dan

-Original Message-
From: Dan Horne [mailto:[EMAIL PROTECTED] 
Sent: Friday, 13 August 2004 6:27 a.m.
To: 'Stas Bekman'
Cc: [EMAIL PROTECTED]
Subject: RE: Proxying access to restricted information


Thanks for your suggestion.

I know nothing about mod_perl 2, and will look at the documentation today. I
do have a couple of questions:

1. Is Apache 2 and mod_perl 2 stable? It may be a silly question, as they've
been around for a while, but we've been an Apache v1 shop, and I've never
used mod_perl v2 at all. Heck, I've only played with mp v1 in my own time 2.
Because I have to justify my investigative time to the boss, I need to know
that what I want to do is possible, namely: providing a reverse proxy to an
existing website, where the proxy will programmatically allow users through
depending on their access rights. It's due to this authentication
requirement that I can't use mod_rewrite by itself

Dan

-Original Message-
From: Stas Bekman [mailto:[EMAIL PROTECTED] 
Sent: Thursday, 12 August 2004 5:07 p.m.
To: Dan Horne
Cc: [EMAIL PROTECTED]
Subject: Re: Proxying access to restricted information


Dan Horne wrote:
 Following on from this, it seems that the PerlTransHandler looked like
 my best bet, but it doesn't seem to be able to alter the hostname 
 (please correct me if there is a way to do this, as I struggled with 
 it so far)
 
 I guess mod_rewrite allows the hostname to be altered, but I need to
 intercept the request and perform access checks, and I don't know if I 
 can do this before mod_rewrite kicks in during the request lifecycle.

With mod_perl 2, you can use
http://search.cpan.org/dist/Apache-Filter-HTTPHeadersFixup/
which is perfect for proxying as it does the work long before 
mod_rewrite kicks in. This module is a connection level filter.

-- 
__
Stas BekmanJAm_pH -- Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide --- http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com




-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html





--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Re: [OT] printing docs on perl.apache.org

2004-08-12 Thread Philippe M. Chiasson
Stas Bekman wrote:
allan juul wrote:
hello
we'd like the pages on perl.apache.org to print prettier while the 
screen rendering should look as always, so we made a few changes that 
hopefully didn't mess anything up.

we have only semi-tested this feature and would like a broader 
browser/platform matrix experience before commiting the change

please try this URL http://www.bullitt.suite.dk/dst_html/
and verify that:
1) the screen rendering is as good as the corresponding page 
on perl.apache.org 2) printing a page (or print previewing a 
page) from your browser looks simple and contain only the relevant 
documentation (no menus, logos etc.)

Looks great on linux, tried: mozilla, lynx and links
Looks great on firefox too!
Great work, Allan!



signature.asc
Description: OpenPGP digital signature


cvs commit: modperl-2.0/todo release

2004-08-12 Thread stas
stas2004/08/11 23:13:56

  Modified:todo release
  Log:
  typo
  
  Revision  ChangesPath
  1.44  +1 -1  modperl-2.0/todo/release
  
  Index: release
  ===
  RCS file: /home/cvs/modperl-2.0/todo/release,v
  retrieving revision 1.43
  retrieving revision 1.44
  diff -u -u -r1.43 -r1.44
  --- release   12 Aug 2004 06:13:28 -  1.43
  +++ release   12 Aug 2004 06:13:56 -  1.44
  @@ -25,7 +25,7 @@
 above example, we can check that the pool object doesn't have the
 TEMP flag on.
   
  -  but that does really solve the problem. So we aren't sure how to
  +  but that doesn't really solve the problem. So we aren't sure how to
 deal with that.
   
   * $bb-cleanup segfaults (originally in TestProtocol::echo_bbs2
  
  
  


cvs commit: modperl-2.0/t/response/TestAPI command.pm

2004-08-12 Thread geoff
geoff   2004/08/12 07:28:01

  Modified:t/response/TestAPI command.pm
  Log:
  PerlHandler only works in mp1 compat mode - use PerlResponseHandler
  
  Revision  ChangesPath
  1.3   +1 -1  modperl-2.0/t/response/TestAPI/command.pm
  
  Index: command.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/response/TestAPI/command.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- command.pm11 Aug 2004 00:15:39 -  1.2
  +++ command.pm12 Aug 2004 14:28:00 -  1.3
  @@ -28,7 +28,7 @@
   ok UNIVERSAL::isa($cmd, 'Apache::Command');
   
   while ($cmd) {
  -if ($cmd-name eq 'PerlHandler') {
  +if ($cmd-name eq 'PerlResponseHandler') {
   ok t_cmp($cmd-args_how, Apache::ITERATE, 'args_how');
   ok t_cmp($cmd-errmsg, qr/Subroutine name/, 'errmsg');
   ok t_cmp($cmd-req_override, Apache::OR_ALL, 'req_override');
  
  
  


Re: cvs commit: modperl-2.0/t/response/TestAPI command.pm

2004-08-12 Thread Philippe M. Chiasson
[EMAIL PROTECTED] wrote:
geoff   2004/08/12 07:28:01
  Modified:t/response/TestAPI command.pm
  Log:
  PerlHandler only works in mp1 compat mode - use PerlResponseHandler
Oups! Guess you caught it with your nightlies ?
Thanks geoff!
  Revision  ChangesPath
  1.3   +1 -1  modperl-2.0/t/response/TestAPI/command.pm
  
  Index: command.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/response/TestAPI/command.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- command.pm	11 Aug 2004 00:15:39 -	1.2
  +++ command.pm	12 Aug 2004 14:28:00 -	1.3
  @@ -28,7 +28,7 @@
   ok UNIVERSAL::isa($cmd, 'Apache::Command');
   
   while ($cmd) {
  -if ($cmd-name eq 'PerlHandler') {
  +if ($cmd-name eq 'PerlResponseHandler') {
   ok t_cmp($cmd-args_how, Apache::ITERATE, 'args_how');
   ok t_cmp($cmd-errmsg, qr/Subroutine name/, 'errmsg');
   ok t_cmp($cmd-req_override, Apache::OR_ALL, 'req_override');
  
  
  

--

Philippe M. Chiasson m/gozer\@(apache|cpan|ectoplasm)\.org/ GPG KeyID : 88C3A5A5
http://gozer.ectoplasm.org/ F9BF E0C2 480E 7680 1AE5 3631 CB32 A107 88C3A5A5


signature.asc
Description: OpenPGP digital signature


cvs commit: modperl-2.0/t/conf modperl_extra.pl

2004-08-12 Thread stas
stas2004/08/12 16:38:03

  Modified:ModPerl-Registry/t/conf modperl_extra_startup.pl
   src/modules/perl modperl_error.c
   t/conf   modperl_extra.pl
  Log:
  add a proper workaround for the requiring file when ERRSV is true within
  nested eval_sv. Thanks to Dave Mitchell for finding out that bug in perl
  (and solving it in  perl Change 23209)
  
  Revision  ChangesPath
  1.20  +0 -3  modperl-2.0/ModPerl-Registry/t/conf/modperl_extra_startup.pl
  
  Index: modperl_extra_startup.pl
  ===
  RCS file: /home/cvs/modperl-2.0/ModPerl-Registry/t/conf/modperl_extra_startup.pl,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -u -r1.19 -r1.20
  --- modperl_extra_startup.pl  16 Jul 2004 22:43:11 -  1.19
  +++ modperl_extra_startup.pl  12 Aug 2004 23:38:02 -  1.20
  @@ -1,9 +1,6 @@
   use strict;
   use warnings FATAL = 'all';
   
  -# XXX: temp workaround for t/filter/TestFilter/in_error.pm
  -use APR::Error;
  -
   use ModPerl::RegistryLoader ();
   
   use Apache::ServerRec ();
  
  
  
  1.5   +20 -4 modperl-2.0/src/modules/perl/modperl_error.c
  
  Index: modperl_error.c
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_error.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -u -r1.4 -r1.5
  --- modperl_error.c   8 Jul 2004 06:59:38 -   1.4
  +++ modperl_error.c   12 Aug 2004 23:38:02 -  1.5
  @@ -43,6 +43,16 @@
   return Perl_form(aTHX_ %s, ptr);
   }
   
  +
  +/* modperl_croak notes: under -T we can't really do anything when die
  + * was called in the stacked eval_sv (which is the case when a
  + * response handler calls a filter handler and that filter calls die
  + * ). for example trying to require a file in modperl_croak(), will
  + * cause 'panic: POPSTACK' and the process will exit. Dave fixed that
  + * in perl Change 23209 by [EMAIL PROTECTED] on 2004/08/09 19:48:57,
  + * which will hopefully appear in perl 5.8.6.
  + */
  +
   /* croak with $@ as a APR::Error object
*   rc   - set to apr_status_t value
*   file - set to the callers filename
  @@ -53,14 +63,20 @@
   {
   HV *stash;
   HV *data;
  -
  -/* XXX: it'd be nice to arrange for it to load early */
  -/* XXX: temp loaded from startup.pl
  +int is_tainted = PL_tainted;
  +
  +/* see the explanation above */
  +if (is_tainted) {
  +TAINT_NOT;
  +}
   Perl_require_pv(aTHX_ APR/Error.pm);
  +if (is_tainted) {
  +TAINT;
  +}
  +
   if (SvTRUE(ERRSV)) {
   Perl_croak(aTHX_ %s, SvPV_nolen(ERRSV));   
   }
  -*/
   
   stash = gv_stashpvn(APR::Error, 10, FALSE);
   data = newHV();
  
  
  
  1.60  +0 -3  modperl-2.0/t/conf/modperl_extra.pl
  
  Index: modperl_extra.pl
  ===
  RCS file: /home/cvs/modperl-2.0/t/conf/modperl_extra.pl,v
  retrieving revision 1.59
  retrieving revision 1.60
  diff -u -u -r1.59 -r1.60
  --- modperl_extra.pl  24 Jul 2004 07:27:03 -  1.59
  +++ modperl_extra.pl  12 Aug 2004 23:38:02 -  1.60
  @@ -7,9 +7,6 @@
   
   use Apache2 ();
   
  -# XXX: temp workaround for t/filter/TestFilter/in_error.pm
  -use APR::Error;
  -
   use Apache::ServerRec ();
   use Apache::ServerUtil ();
   use Apache::Process ();
  
  
  


cvs commit: modperl-2.0/xs/tables/current/Apache ConstantsTable.pm

2004-08-12 Thread gozer
gozer   2004/08/12 17:13:18

  Modified:lib/Apache ParseSource.pm
   xs/tables/current/Apache ConstantsTable.pm
  Log:
  I should not have added the context constants manually, but rather
  made sure ParseSource.pm would pick them up.
  
  Revision  ChangesPath
  1.59  +1 -0  modperl-2.0/lib/Apache/ParseSource.pm
  
  Index: ParseSource.pm
  ===
  RCS file: /home/cvs/modperl-2.0/lib/Apache/ParseSource.pm,v
  retrieving revision 1.58
  retrieving revision 1.59
  diff -u -r1.58 -r1.59
  --- ParseSource.pm12 Jul 2004 08:14:27 -  1.58
  +++ ParseSource.pm13 Aug 2004 00:13:17 -  1.59
  @@ -233,6 +233,7 @@
   Apache = {
   common = [qw{OK DECLINED DONE}],
   config = [qw{DECLINE_CMD}],
  +context= [qw(NOT_IN_ GLOBAL_ONLY)],
   http   = [qw{HTTP_}],
   log= [qw(APLOG_)],
   methods= [qw{M_ METHODS}],
  
  
  
  1.42  +10 -10modperl-2.0/xs/tables/current/Apache/ConstantsTable.pm
  
  Index: ConstantsTable.pm
  ===
  RCS file: /home/cvs/modperl-2.0/xs/tables/current/Apache/ConstantsTable.pm,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- ConstantsTable.pm 11 Aug 2004 22:49:15 -  1.41
  +++ ConstantsTable.pm 13 Aug 2004 00:13:18 -  1.42
  @@ -2,7 +2,7 @@
   
   # !!
   # ! WARNING: generated by Apache::ParseSource/0.02
  -# !  Mon May  3 13:30:11 2004
  +# !  Thu Aug 12 17:10:15 2004
   # !  do NOT edit, any changes will be lost !
   # !!
   
  @@ -56,15 +56,6 @@
 'OPT_MULTI',
 'OPT_ALL'
   ],
  -'context' = [
  -  'NOT_IN_VIRTUALHOST',
  -  'NOT_IN_LIMIT',
  -  'NOT_IN_DIRECTORY',
  -  'NOT_IN_LOCATION',
  -  'NOT_IN_FILES',
  -  'NOT_IN_DIR_LOC_FILE',
  -  'GLOBAL_ONLY',
  -],
   'mpmq' = [
 'AP_MPMQ_NOT_SUPPORTED',
 'AP_MPMQ_STATIC',
  @@ -194,6 +185,15 @@
 'AP_FTYPE_TRANSCODE',
 'AP_FTYPE_CONNECTION',
 'AP_FTYPE_NETWORK'
  +],
  +'context' = [
  +  'NOT_IN_VIRTUALHOST',
  +  'NOT_IN_LIMIT',
  +  'NOT_IN_DIRECTORY',
  +  'NOT_IN_LOCATION',
  +  'NOT_IN_FILES',
  +  'NOT_IN_DIR_LOC_FILE',
  +  'GLOBAL_ONLY'
   ],
   'conn_keepalive' = [
 'AP_CONN_UNKNOWN',
  
  
  


cvs commit: modperl-2.0 Changes

2004-08-12 Thread stas
stas2004/08/12 18:41:35

  Modified:src/modules/perl modperl_bucket.c
   t/lib/TestAPRlib bucket.pm
   .Changes
  Log:
  Fix a bug in APR::Bucket-new when a passed argument was of type
  PADTMP
  
  Revision  ChangesPath
  1.12  +17 -8 modperl-2.0/src/modules/perl/modperl_bucket.c
  
  Index: modperl_bucket.c
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_bucket.c,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -u -r1.11 -r1.12
  --- modperl_bucket.c  13 Jun 2004 05:39:09 -  1.11
  +++ modperl_bucket.c  13 Aug 2004 01:41:35 -  1.12
  @@ -85,22 +85,31 @@
   svbucket = (modperl_bucket_sv_t *)malloc(sizeof(*svbucket));
   
   bucket = apr_bucket_shared_make(bucket, svbucket, offset, len);
  +if (!bucket) {
  +free(svbucket);
  +return NULL;
  +}
   
   /* XXX: need to deal with PerlInterpScope */
   #ifdef USE_ITHREADS
   svbucket-perl = aTHX;
   #endif
  -svbucket-sv = sv;
   
  -if (!bucket) {
  -free(svbucket);
  -return NULL;
  +/* PADTMP SVs belong to perl and can't be stored away, since perl
  + * is going to reuse them, so we have no choice but to copy the
  + * data away, before storing sv */
  +if (SvPADTMP(sv)) {
  +STRLEN len;
  +char *pv = SvPV(sv, len);
  +svbucket-sv = newSVpvn(pv, len);
   }
  -
  -(void)SvREFCNT_inc(svbucket-sv);
  -
  +else {
  +svbucket-sv = sv;
  +(void)SvREFCNT_inc(svbucket-sv);
  +}
  +
   MP_TRACE_f(MP_FUNC, sv=0x%lx, refcnt=%d\n,
  -   (unsigned long)sv, SvREFCNT(sv));
  +   (unsigned long)svbucket-sv, SvREFCNT(svbucket-sv));
   
   bucket-type = modperl_bucket_sv_type;
   bucket-free = free;
  
  
  
  1.2   +52 -1 modperl-2.0/t/lib/TestAPRlib/bucket.pm
  
  Index: bucket.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/lib/TestAPRlib/bucket.pm,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -u -r1.1 -r1.2
  --- bucket.pm 15 Jul 2004 15:25:36 -  1.1
  +++ bucket.pm 13 Aug 2004 01:41:35 -  1.2
  @@ -12,7 +12,7 @@
   use APR::BucketType ();
   
   sub num_of_tests {
  -return 11;
  +return 13;
   }
   
   sub test {
  @@ -70,6 +70,57 @@
qr/the length argument can't be bigger than the total/,
'new($data, $offset, $len_too_big)');
   }
  +
  +# modification of the source variable, affects the data
  +# inside the bucket
  +{
  +my $data = A x 10;
  +my $orig = $data;
  +my $b = APR::Bucket-new($data);
  +$data =~ s/^//;
  +$b-read(my $read);
  +ok !t_cmp($read, $orig,
  + data inside the bucket should get affected by  .
  + the changes to the Perl variable it's created from);
  +}
  +
  +
  +# APR::Bucket-new() with the argument PADTMP (which happens when
  +# some function is re-entered) and the same SV is passed to
  +# different buckets, which must be detected and copied away.
  +{
  +my @buckets = ();
  +my @data  = qw(ABCD EF);
  +my @received = ();
  +for my $str (@data) {
  +my $b = func($str);
  +push @buckets, $b;
  +}
  +
  +# the creating of buckets and reading from them is done
  +# separately on purpose
  +for my $b (@buckets) {
  +$b-read(my $out);
  +push @received, $out;
  +#Devel::Peek::Dump $out;
  +}
  +
  +# here we used to get: two pv: ef\0d\0, ef\0, as you can see
  +# the first bucket had corrupted data.
  +my @expected = map { lc } @data;
  +ok t_cmp [EMAIL PROTECTED], [EMAIL PROTECTED], new(PADTMP SV);
  +
  +# this function will pass the same SV to new(), causing two
  +# buckets point to the same SV, and having the latest bucket's
  +# data override the previous one
  +sub func {
  +my $data = shift;
  +return APR::Bucket-new(lc $data);
  +}
  +
  +}
  +
  +
   
   # remove
   {
  
  
  
  1.443 +3 -0  modperl-2.0/Changes
  
  Index: Changes
  ===
  RCS file: /home/cvs/modperl-2.0/Changes,v
  retrieving revision 1.442
  retrieving revision 1.443
  diff -u -u -r1.442 -r1.443
  --- Changes   12 Aug 2004 06:40:45 -  1.442
  +++ Changes   13 Aug 2004 01:41:35 -  1.443
  @@ -12,6 +12,9 @@
   
   =item 1.99_15-dev
   
  +Fix a bug in APR::Bucket-new when a passed argument was of type
  +PADTMP [Stas]
  +
   Apache::Connection changes [Stas, Fred Moyer fred /about/
   taperfriendlymusic.org]
   - readwrite = 

cvs commit: modperl-2.0/src/modules/perl modperl_error.c

2004-08-12 Thread stas
stas2004/08/12 18:49:54

  Modified:src/modules/perl modperl_error.c
  Log:
  more comments
  
  Revision  ChangesPath
  1.6   +2 -1  modperl-2.0/src/modules/perl/modperl_error.c
  
  Index: modperl_error.c
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_error.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -u -r1.5 -r1.6
  --- modperl_error.c   12 Aug 2004 23:38:02 -  1.5
  +++ modperl_error.c   13 Aug 2004 01:49:54 -  1.6
  @@ -50,7 +50,8 @@
* ). for example trying to require a file in modperl_croak(), will
* cause 'panic: POPSTACK' and the process will exit. Dave fixed that
* in perl Change 23209 by [EMAIL PROTECTED] on 2004/08/09 19:48:57,
  - * which will hopefully appear in perl 5.8.6.
  + * which will hopefully appear in perl 5.8.6. for now workaround this
  + * perl bug by setting the taint mode off for the APR/Error loading.
*/
   
   /* croak with $@ as a APR::Error object
  
  
  


cvs commit: modperl-2.0/t/api custom_response.t

2004-08-12 Thread stas
stas2004/08/12 18:56:49

  Modified:t/apicustom_response.t
  Log:
  needs binmode to succeed on Win32
  Submitted by: Markus Wichitill [EMAIL PROTECTED]
  
  Revision  ChangesPath
  1.3   +1 -1  modperl-2.0/t/api/custom_response.t
  
  Index: custom_response.t
  ===
  RCS file: /home/cvs/modperl-2.0/t/api/custom_response.t,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -u -r1.2 -r1.3
  --- custom_response.t 3 Aug 2004 16:22:44 -   1.2
  +++ custom_response.t 13 Aug 2004 01:56:49 -  1.3
  @@ -20,7 +20,7 @@
   qw(api custom_response.txt);
   
   open my $fh, $file or die Can't open $file: $!;
  -my $data = do { local $/; $fh };
  +my $data = do { binmode $fh; local $/; $fh };
   close $fh;
   
   plan tests = 4, need_lwp;
  
  
  


cvs commit: modperl-2.0/t/response/TestAPI conn_rec.pm

2004-08-12 Thread stas
stas2004/08/12 19:01:47

  Modified:t/response/TestAPI conn_rec.pm
  Log:
  $c-id could be zero
  
  Revision  ChangesPath
  1.14  +2 -1  modperl-2.0/t/response/TestAPI/conn_rec.pm
  
  Index: conn_rec.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/response/TestAPI/conn_rec.pm,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -u -r1.13 -r1.14
  --- conn_rec.pm   12 Aug 2004 06:45:53 -  1.13
  +++ conn_rec.pm   13 Aug 2004 02:01:46 -  1.14
  @@ -48,7 +48,8 @@
   
   ok $c-local_host || 1;
   
  -ok $c-id;
  +t_debug id, ($c-id == 0 ? zero : $c-id);
  +ok $c-id || 1;
   
   ok $c-notes;
   
  
  
  


cvs commit: modperl-2.0/t/response/TestAPI conn_rec.pm

2004-08-12 Thread stas
stas2004/08/12 19:06:02

  Modified:t/response/TestAPI conn_rec.pm
  Log:
  add space
  
  Revision  ChangesPath
  1.15  +1 -1  modperl-2.0/t/response/TestAPI/conn_rec.pm
  
  Index: conn_rec.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/response/TestAPI/conn_rec.pm,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -u -r1.14 -r1.15
  --- conn_rec.pm   13 Aug 2004 02:01:46 -  1.14
  +++ conn_rec.pm   13 Aug 2004 02:06:02 -  1.15
  @@ -48,7 +48,7 @@
   
   ok $c-local_host || 1;
   
  -t_debug id, ($c-id == 0 ? zero : $c-id);
  +t_debug id , ($c-id == 0 ? zero : $c-id);
   ok $c-id || 1;
   
   ok $c-notes;
  
  
  


cvs commit: modperl-2.0/xs/maps apache_structures.map

2004-08-12 Thread gozer
gozer   2004/08/12 21:42:37

  Modified:.Changes
   xs/maps  apache_structures.map
  Log:
  Apache::CmdParms changes
  - readwrite = readonly:
  override, limited, directive, pool, temp_pool, server, path,
  cmd, context, err_directive
  
  - removed: limited_xmethods, xlimited, config_file, err_directive
  
  Revision  ChangesPath
  1.444 +7 -0  modperl-2.0/Changes
  
  Index: Changes
  ===
  RCS file: /home/cvs/modperl-2.0/Changes,v
  retrieving revision 1.443
  retrieving revision 1.444
  diff -u -r1.443 -r1.444
  --- Changes   13 Aug 2004 01:41:35 -  1.443
  +++ Changes   13 Aug 2004 04:42:37 -  1.444
  @@ -12,6 +12,13 @@
   
   =item 1.99_15-dev
   
  +Apache::CmdParms changes [Gozer]
  +- readwrite = readonly:
  +override, limited, directive, pool, temp_pool, server, path,
  +cmd, context, err_directive
  +
  +- removed: limited_xmethods, xlimited, config_file, err_directive
  +
   Fix a bug in APR::Bucket-new when a passed argument was of type
   PADTMP [Stas]
   
  
  
  
  1.43  +13 -13modperl-2.0/xs/maps/apache_structures.map
  
  Index: apache_structures.map
  ===
  RCS file: /home/cvs/modperl-2.0/xs/maps/apache_structures.map,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- apache_structures.map 12 Aug 2004 06:40:45 -  1.42
  +++ apache_structures.map 13 Aug 2004 04:42:37 -  1.43
  @@ -233,19 +233,19 @@
   
   cmd_parms
   -  info
  -   override
  -   limited
  -   limited_xmethods
  -   xlimited
  -   config_file
  -   directive
  -   pool
  -   temp_pool
  -   server
  -   path
  -   cmd
  -   context
  -   err_directive
  +  override
  +  limited
  +!  limited_xmethods
  +!  xlimited
  +!  config_file
  +  directive
  +  pool
  +  temp_pool
  +  server
  +  path
  +  cmd
  +  context
  +!  err_directive
   /cmd_parms
   
   !ap_mgmt_item_t
  
  
  


cvs commit: modperl-2.0/t/response/TestDirective cmdparms.pm perlloadmodule4.pm

2004-08-12 Thread gozer
gozer   2004/08/12 22:27:11

  Modified:t/response/TestDirective cmdparms.pm perlloadmodule4.pm
  Log:
  Move test for Apache::CmdParms out of perlloadmodule4 and along with all
  the other Apache::CmdParms tests in directive/cmdparms
  
  Revision  ChangesPath
  1.2   +6 -3  modperl-2.0/t/response/TestDirective/cmdparms.pm
  
  Index: cmdparms.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/response/TestDirective/cmdparms.pm,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- cmdparms.pm   13 Aug 2004 04:35:09 -  1.1
  +++ cmdparms.pm   13 Aug 2004 05:27:11 -  1.2
  @@ -21,6 +21,7 @@
   OR_LIMIT
   OR_OPTIONS
   RSRC_CONF
  +NOT_IN_LOCATION
   );
   
   use constant KEY = TestCmdParms;
  @@ -52,6 +53,7 @@
   foreach my $method (@methods) {
   $srv_cfg-{$args}{$method} = $parms-$method();
   }
  +$srv_cfg-{$args}{check_ctx} = 
$parms-check_cmd_context(Apache::NOT_IN_LOCATION);
   }
   
   sub get_config {
  @@ -62,10 +64,10 @@
   ### response handler ###
   sub handler : method {
   my ($self, $r) = @_;
  -
  +my $override; 
   my $srv_cfg = $self-get_config($r-server);
   
  -plan $r, tests = 4 + ( 8 * keys(%$srv_cfg) );
  +plan $r, tests = 6 + ( 8 * keys(%$srv_cfg) );
   
   foreach my $cfg (values %$srv_cfg) {
   ok t_cmp (ref($cfg-{cmd}), 'Apache::Command', 'cmd');
  @@ -87,6 +89,7 @@
   
   ok t_cmp ($vhost-{override}, $override, 'override');
   ok t_cmp ($vhost-{path}, undef, 'path');
  +ok t_cmp ($vhost-{check_ctx}, undef, 'check_cmd_ctx');
   
   my $loc = $srv_cfg-{Location};
   
  @@ -99,7 +102,7 @@
   
   ok t_cmp ($loc-{override}, $override, 'override');
   ok t_cmp ($loc-{path}, '/TestDirective__cmdparms', 'path');
  -
  +ok t_cmp ($loc-{check_ctx}, KEY . ' cannot occur within Location section', 
'check_cmd_ctx');
   return Apache::OK;
   }
   
  
  
  
  1.7   +2 -7  modperl-2.0/t/response/TestDirective/perlloadmodule4.pm
  
  Index: perlloadmodule4.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/response/TestDirective/perlloadmodule4.pm,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- perlloadmodule4.pm11 Aug 2004 23:03:18 -  1.6
  +++ perlloadmodule4.pm13 Aug 2004 05:27:11 -  1.7
  @@ -22,7 +22,7 @@
   use Apache::Module ();
   use Apache::ServerUtil ();
   
  -use Apache::Const -compile = qw(OK NOT_IN_LOCATION);
  +use Apache::Const -compile = qw(OK);
   
   use constant KEY = MyTest4;
   
  @@ -32,8 +32,6 @@
   my($self, $parms, $arg) = @_;
   $self-{+KEY} = $arg;
   
  -$self-{KEY.'-Error'} = $parms-check_cmd_context(Apache::NOT_IN_LOCATION);
  -
   unless ($parms-path) {
   my $srv_cfg = Apache::Module-get_config($self, $parms-server);
   $srv_cfg-{+KEY} = $arg;
  @@ -66,7 +64,7 @@
   my $dir_cfg = get_config($s, $r-per_dir_config);
   my $srv_cfg = get_config($s);
   
  -plan $r, tests = 5;
  +plan $r, tests = 3;
   
   ok $s-is_virtual;
   
  @@ -74,9 +72,6 @@
   
   ok t_cmp($srv_cfg-{+KEY}, Vhost, Section);
   
  -ok t_cmp($dir_cfg-{KEY.'-Error'}, KEY .  cannot occur within Location 
section, check_cmd_context);
  -ok t_cmp($srv_cfg-{KEY.'-Error'}, undef, check_cmd_context);
  -
   return Apache::OK;
   }