Skip Menu |

This queue is for tickets about the CGI-Simple CPAN distribution.

Report information
The Basics
Id: 11896
Status: resolved
Priority: 0/
Queue: CGI-Simple

People
Owner: Nobody in particular
Requestors: jpritikin@pobox.com (no email address)
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.077
Fixed in: (no value)



Subject: parameters missing with latest mod_perl
Apache/2.0.53 (Debian GNU/Linux) mod_perl/1.999.20 Perl/v5.8.4 CGI::Simple 0.077 There's something wrong with the mod_perl glue. I'm trying to respond to a simple form but instead of parameters, I only see an Apache::RequestRec object. There must have been some recent change in the mod_perl API? [Tue Mar 15 22:02:06 2005] -e: <pre>$VAR1 = bless( { [Tue Mar 15 22:02:06 2005] -e: '.parameters' =&gt; [ [Tue Mar 15 22:02:06 2005] -e: 'Apache::RequestRec' [Tue Mar 15 22:02:06 2005] -e: ], [Tue Mar 15 22:02:06 2005] -e: '.crlf' =&gt; ' [Tue Mar 15 22:02:06 2005] -e: ', [Tue Mar 15 22:02:06 2005] -e: '.mod_perl' =&gt; 2, [Tue Mar 15 22:02:06 2005] -e: '.globals' =&gt; { [Tue Mar 15 22:02:06 2005] -e: 'DEBUG' =&gt; 0,[Tue Mar 15 22:02:06 2005] -e: 'NO_UNDEF_PARAMS' =&gt; 0, [Tue Mar 15 22:02:06 2005] -e: 'NO_NULL' =&gt; 1, [Tue Mar 15 22:02:06 2005] -e: 'FATAL' =&gt; -1, [Tue Mar 15 22:02:06 2005] -e: 'USE_PARAM_SEMICOLONS' =&gt; 1, [Tue Mar 15 22:02:06 2005] -e: 'DISABLE_UPLOADS' =&gt; 1, [Tue Mar 15 22:02:06 2005] -e: 'USE_CGI_PM_DEFAULTS' =&gt; 0, [Tue Mar 15 22:02:06 2005] -e: 'NPH' =&gt; 0, [Tue Mar 15 22:02:06 2005] -e: 'POST_MAX' =&gt; 8192, [Tue Mar 15 22:02:06 2005] -e: 'HEADERS_ONCE' =&gt; 0 [Tue Mar 15 22:02:06 2005] -e: }, [Tue Mar 15 22:02:06 2005] -e: 'Apache::RequestRec' =&gt; [ [Tue Mar 15 22:02:06 2005] -e: 'SCALAR(0x866f8b0)' [Tue Mar 15 22:02:06 2005] -e: ], [Tue Mar 15 22:02:06 2005] -e: '.fieldnames' =&gt; { [Tue Mar 15 22:02:06 2005] -e: 'Apache::RequestRec' =&gt; 1 [Tue Mar 15 22:02:06 2005] -e: }, [Tue Mar 15 22:02:06 2005] -e: '.cookies' =&gt; { [Tue Mar 15 22:02:06 2005] -e: 'OHL_ID' =&gt; bless( { [Tue Mar 15 22:02:06 2005] -e: 'value' =&gt; [ [Tue Mar 15 22:02:06 2005] -e: '24' [Tue Mar 15 22:02:06 2005] -e: ], [Tue Mar 15 22:02:06 2005] -e: 'name' =&gt; 'OHL_ID', [Tue Mar 15 22:02:06 2005] -e: 'path' =&gt; '/' [Tue Mar 15 22:02:06 2005] -e: }, 'CGI::Simple::Cookie' ) [Tue Mar 15 22:02:06 2005] -e: }, [Tue Mar 15 22:02:06 2005] -e: '.header_printed' =&gt; 1 [Tue Mar 15 22:02:06 2005] -e: }, 'CGI::Simple' );
Subject: POST parameters not on STDIN with latest mod_perl
From: jpritikin [...] pobox.com
[guest - Tue Mar 15 22:05:37 2005]: It seems that mod_perl no longer provides POST multipart/form-data on STDIN. You must read it with Apache->request->read. I copied some code from the latest CGI.pm. The attached patch works for me.
Download cg
application/octet-stream 4.3k

Message body not shown because it is not plain text.

From: HOWARS [...] cpan.org
I can confirm the same issue, but in addition, if you feed read/sysread a length that is longer than the total size of the file it will not properly fetch the file. I corrected this by checking how much of $length was actually left to retrieve before attempting a read/sysread and only reading that much. Seems to work so far.