Subject: | Use of XML::SAX::PurePerl when uid != euid produces PerlIO insecure dependency @ line 22 error |
The following code produces an ensecure dependency error in PerlIO.pm when uid != euid. I opened ticket 28500 with perl.org, but they suggested opening a ticket against the package that is the root cause. We are running the sample below using Perl 5.8.0, and XML::SAX::PurePerl 0.9 (# $Id: PurePerl.pm,v 1.15 2002/02/05 17:33:52 matt Exp $)
Code that fails:
#!/bin/perl
use XML::Filter::BufferText;
use XML::SAX::PurePerl;
use Carp;
$SIG{__DIE__} = \&Carp::confess;
my $filter = XML::Filter::BufferText->new();
my $parser = XML::SAX::PurePerl->new(Handler => $filter);
$parser->parse_file(\*STDIN);
Back trace from Carp::confess:
Insecure dependency in eval while running setuid at /opt/perl58/lib/5.8.0/PerlIO.pm line 22.
PerlIO::import('PerlIO','encoding') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl/Reader/UnicodeExt.pm line 16
XML::SAX::PurePerl::Reader::BEGIN() called at /opt/perl58/lib/5.8.0/PerlIO.pm line 0
eval {...} called at /opt/perl58/lib/5.8.0/PerlIO.pm line 0
XML::SAX::PurePerl::Reader::switch_encoding_stream('GLOB(0x11b1bc)','utf-8') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl/Reader/Stream.pm line 71
XML::SAX::PurePerl::Reader::Stream::set_encoding('XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)','utf-8') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl/XMLDecl.pm line 120
XML::SAX::PurePerl::EncodingDecl('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl/XMLDecl.pm line 23
XML::SAX::PurePerl::XMLDecl('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 142
XML::SAX::PurePerl::prolog('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 129
XML::SAX::PurePerl::document('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 102
XML::SAX::PurePerl::_parse('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 57
XML::SAX::PurePerl::_parse_bytestream('XML::SAX::PurePerl=HASH(0x137210)','GLOB(0x11b1bc)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/Base.pm line 2299
XML::SAX::Base::parse('XML::SAX::PurePerl=HASH(0x137210)','HASH(0x137330)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/Base.pm line 2322
XML::SAX::Base::parse_file('XML::SAX::PurePerl=HASH(0x137210)','GLOB(0x11b1bc)') called at /tmp/zdrs/z.pl line 13
BEGIN failed--compilation aborted.
XML::SAX::PurePerl::Reader::switch_encoding_stream('GLOB(0x11b1bc)','utf-8') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl/Reader/Stream.pm line 71
XML::SAX::PurePerl::Reader::Stream::set_encoding('XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)','utf-8') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl/XMLDecl.pm line 120
XML::SAX::PurePerl::EncodingDecl('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl/XMLDecl.pm line 23
XML::SAX::PurePerl::XMLDecl('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 142
XML::SAX::PurePerl::prolog('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 129
XML::SAX::PurePerl::document('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 102
XML::SAX::PurePerl::_parse('XML::SAX::PurePerl=HASH(0x137210)','XML::SAX::PurePerl::Reader::Stream=ARRAY(0x36d58c)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/PurePerl.pm line 57
XML::SAX::PurePerl::_parse_bytestream('XML::SAX::PurePerl=HASH(0x137210)','GLOB(0x11b1bc)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/Base.pm line 2299
XML::SAX::Base::parse('XML::SAX::PurePerl=HASH(0x137210)','HASH(0x137330)') called at /opt/perl58/lib/site_perl/5.8.0/XML/SAX/Base.pm line 2322
XML::SAX::Base::parse_file('XML::SAX::PurePerl=HASH(0x137210)','GLOB(0x11b1bc)') called at /tmp/zdrs/z.pl line 13