use Apache2::Upload; $req = Apache2::Request->new($r); $upload = $req->upload("foo"); $size = $upload->size; # three methods to get at the upload's contents ... slurp, fh, io $upload->slurp($slurp_data); read $upload->fh, $fh_data, $size; ok $slurp_data eq $fh_data; my $io = $upload->io; print while <$io>; #### [Wed Sep 16 22:23:32 2009] [error] [client ::1] dyld: lazy symbol binding failed: Symbol not found: _modperl_xs_sv2request_rec [Wed Sep 16 22:23:32 2009] [error] [client ::1] Referenced from: /Library/Perl/5.8.8/darwin-thread-multi-2level/auto/APR/Request/Apache2/Apache2.bundle [Wed Sep 16 22:23:32 2009] [error] [client ::1] Expected in: dynamic lookup [Wed Sep 16 22:23:32 2009] [error] [client ::1] [Wed Sep 16 22:23:32 2009] [error] [client ::1] dyld: Symbol not found: _modperl_xs_sv2request_rec [Wed Sep 16 22:23:32 2009] [error] [client ::1] Referenced from: /Library/Perl/5.8.8/darwin-thread-multi-2level/auto/APR/Request/Apache2/Apache2.bundle [Wed Sep 16 22:23:32 2009] [error] [client ::1] Expected in: dynamic lookup [Wed Sep 16 22:23:32 2009] [error] [client ::1] [Wed Sep 16 22:23:32 2009] [error] [client ::1] Premature end of script headers: test.cgi