summaryrefslogtreecommitdiff
path: root/t/op/taint.t
diff options
context:
space:
mode:
Diffstat (limited to 't/op/taint.t')
-rwxr-xr-xt/op/taint.t17
1 files changed, 15 insertions, 2 deletions
diff --git a/t/op/taint.t b/t/op/taint.t
index 1e3d3964c2..2958a37b87 100755
--- a/t/op/taint.t
+++ b/t/op/taint.t
@@ -19,6 +19,8 @@ use Config;
# just because Errno possibly failing.
eval { require Errno; import Errno };
+use vars qw($ipcsysv); # did we manage to load IPC::SysV?
+
BEGIN {
if ($^O eq 'VMS' && !defined($Config{d_setenv})) {
$ENV{PATH} = $ENV{PATH};
@@ -26,8 +28,11 @@ BEGIN {
}
if ($Config{'extensions'} =~ /\bIPC\/SysV\b/
&& ($Config{d_shm} || $Config{d_msg})) {
- require IPC::SysV;
- IPC::SysV->import(qw(IPC_PRIVATE IPC_RMID IPC_CREAT S_IRWXU));
+ eval { require IPC::SysV };
+ unless ($@) {
+ $ipcsysv++;
+ IPC::SysV->import(qw(IPC_PRIVATE IPC_RMID IPC_CREAT S_IRWXU));
+ }
}
}
@@ -613,6 +618,10 @@ else {
# test shmread
{
+ unless ($ipcsysv) {
+ print "ok 150 # skipped: no IPC::SysV\n";
+ last;
+ }
if ($Config{'extensions'} =~ /\bIPC\/SysV\b/ && $Config{d_shm}) {
no strict 'subs';
my $sent = "foobar";
@@ -647,6 +656,10 @@ else {
# test msgrcv
{
+ unless ($ipcsysv) {
+ print "ok 151 # skipped: no IPC::SysV\n";
+ last;
+ }
if ($Config{'extensions'} =~ /\bIPC\/SysV\b/ && $Config{d_msg}) {
no strict 'subs';
my $id = msgget(IPC_PRIVATE, IPC_CREAT | S_IRWXU);