CC: | jpeacock [...] rowman.com, andreas.koenig.gmwojprw [...] franz.ak.mind.de |
Subject: | Safe.pm fails miserably with some modules, notably version.pm |
Transferring this ticket from
https://rt.perl.org/rt3/Ticket/Display.html?id=37713, where it was
originally reported in 2005.:
#############
This is a bug report for perl from k@k75.linux.bogus,
generated with the help of perlbug 1.35 running under perl v5.9.3.
-----------------------------------------------------------------
[Please enter your report here]
I only demonstrate POSIX and version.pm here, other modules also fail
miserably within Safe.pm, even when no opcode restriction is made. I
run my examples with bleadperl@26142. Do not even try with maint or
anything before 25416! I had perl 5.8.7 run into an endless loop with
a similar example.
perl -le '
use Safe;
use Opcode;
my $comp = Safe->new;
my $opset = Opcode::full_opset;
$comp->permit($opset);
$comp->reval("use version; \$VERSION = qv(q{1.0.3}); print \$VERSION");
print $@ if $@;
'
Undefined subroutine &version::qv called at (eval 2) line 1.
perl -le '
use Safe;
use Opcode;
my $comp = Safe->new;
my $opset = Opcode::full_opset;
$comp->permit($opset);
$comp->reval("use UNIVERSAL;require POSIX");
print $@ if $@;
'
Can't locate object method "isa" via package "POSIX::SigRt" at
/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142/lib/5.9.3/base.pm
line 74.
BEGIN failed--compilation aborted at
/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142/lib/5.9.3/i686-linux-64int/POSIX.pm
line 64.
Compilation failed in require at (eval 2) line 3.
[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags:
category=core
severity=high
---
Site configuration information for perl v5.9.3:
Configured by k at Wed Nov 16 22:16:32 CET 2005.
Summary of my perl5 (revision 5 version 9 subversion 3 patch 24148)
configuration:
Platform:
osname=linux, osvers=2.6.11-xen0, archname=i686-linux-64int
uname='linux k75 2.6.11-xen0 #5 sun jun 19 11:50:51 cest 2005 i686
gnulinux '
config_args='-Dprefix=/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142
-Dinstallusrbinperl=n -Uversiononly -Doptimize=-g -des -Duse64bitint
-Dusedevel'
hint=recommended, useposix=true, d_sigaction=define
useithreads=undef, usemultiplicity=undef
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=undef, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-DDEBUGGING -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64',
optimize='-g',
cppflags='-DDEBUGGING -fno-strict-aliasing -pipe
-Wdeclaration-after-statement -I/usr/local/include'
ccversion='', gccversion='4.0.3 20051023 (prerelease) (Debian 4.0.2-3)',
gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='cc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.3.5.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.3.5'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'
Locally applied patches:
DEVEL24148
patchaperlup: --upto 26142
---
@INC for perl v5.9.3:
/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142/lib/5.9.3/i686-linux-64int
/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142/lib/5.9.3
/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142/lib/site_perl/5.9.3/i686-linux-64int
/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142/lib/site_perl/5.9.3
/home/src/perl/repoperls/installed-perls/perl/psqmAbF/perl-5.8.0@26142/lib/site_perl
.
---
Environment for perl v5.9.3:
HOME=/home/k
LANG=C
LANGUAGE (unset)
LD_LIBRARY_PATH (unset)
LOGDIR (unset)
PATH=/home/k/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/perl/bin:/usr/X11/bin:/sbin:/usr/sbin
PERL_BADLANG (unset)
SHELL=/usr/bin/zsh