use strict;
BEGIN {
- our $VERSION = '0.73';
+ our $VERSION = '0.77';
require XSLoader;
XSLoader::load(__PACKAGE__, $VERSION);
}
sub OPEN {
- $_[0]->CLOSE;
- if (@_ == 2) {
- return open($_[0], $_[1]);
- } else {
- my $rc;
- eval("$rc = open($_[0], $_[1], $_[2])");
- die $@ if $@;
- return $rc;
- }
+ require Carp;
+ Carp::croak(q/Operation 'OPEN' not supported on FCGI::Stream handle/);
+}
+
+sub SEEK {
+ require Carp;
+ Carp::croak(q/Operation 'SEEK' not supported on FCGI::Stream handle/);
}
-# Some things (e.g. IPC::Run) use fileno to determine if a filehandle is open,
-# so we return a defined, but meaningless value. (-1 being the error return
-# value from the syscall in c, meaning it can never be a valid fd no)
-# Probably a better alternative would be to return the fcgi stream fd.
-sub FILENO { -1 }
+sub TELL {
+ require Carp;
+ Carp::croak(q/Operation 'TELL' not supported on FCGI::Stream handle/);
+}
+
+sub TIEHANDLE {
+ require Carp;
+ Carp::croak(q/Operation 'TIEHANDLE' not supported on FCGI::Stream handle/);
+}
1;
=back
-=HEAD1 LIMITATIONS
+=head1 LIMITATIONS
FCGI.pm isn't Unicode aware, only characters within the range 0x00-0xFF are
supported. Attempts to output strings containing characters above 0xFF results