Linux cpanel2.daytoncreative.net 2.6.32-754.29.2.el6.x86_64 #1 SMP Tue May 12 17:39:04 UTC 2020 x86_64
Apache/2.4.43 (cPanel) OpenSSL/1.1.1g mod_bwlimited/1.4
Server IP : 70.62.220.67 & Your IP : 216.73.216.193
Domains :
Cant Read [ /etc/named.conf ]
User : michaelgreg
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
log /
perl-5.20.2 /
t /
io /
Delete
Unzip
Name
Size
Permission
Date
Action
argv.t
3.92
KB
-r--r--r--
2014-12-27 11:49
binmode.t
1.02
KB
-r--r--r--
2014-12-27 11:49
bom.t
329
B
-r--r--r--
2014-12-27 11:49
closepid.t
1.26
KB
-r--r--r--
2014-12-27 11:49
crlf.t
2.45
KB
-r--r--r--
2014-12-27 11:49
crlf_through.t
152
B
-r--r--r--
2014-12-27 11:49
data.t
1.5
KB
-r--r--r--
2014-12-27 11:49
defout.t
1.09
KB
-r--r--r--
2014-12-27 11:49
dup.t
3.09
KB
-r--r--r--
2014-12-27 11:49
eintr.t
3.65
KB
-r--r--r--
2015-01-12 20:14
eintr_print.t
2.48
KB
-r--r--r--
2014-12-27 11:49
errno.t
1.12
KB
-r--r--r--
2014-12-27 11:49
errnosig.t
746
B
-r--r--r--
2014-12-27 11:49
fflush.t
3.25
KB
-r--r--r--
2014-12-27 11:49
fs.t
12.97
KB
-r--r--r--
2014-12-27 11:49
inplace.t
1.83
KB
-r--r--r--
2014-12-27 11:49
iofile.t
644
B
-r--r--r--
2014-12-27 11:49
iprefix.t
707
B
-r--r--r--
2014-12-27 11:49
layers.t
6.37
KB
-r--r--r--
2014-12-27 11:49
nargv.t
1.16
KB
-r--r--r--
2014-12-27 11:49
open.t
14.56
KB
-r--r--r--
2014-12-27 11:49
openpid.t
2.39
KB
-r--r--r--
2014-12-27 11:49
perlio.t
5.73
KB
-r--r--r--
2014-12-27 11:49
perlio_fail.t
1.06
KB
-r--r--r--
2014-12-27 11:49
perlio_leaks.t
675
B
-r--r--r--
2014-12-27 11:49
perlio_open.t
756
B
-r--r--r--
2014-12-27 11:49
pipe.t
5.9
KB
-r--r--r--
2014-12-27 11:49
print.t
1.41
KB
-r--r--r--
2014-12-27 11:49
pvbm.t
2.39
KB
-r--r--r--
2014-12-27 11:49
read.t
523
B
-r--r--r--
2014-12-27 11:49
say.t
1.05
KB
-r--r--r--
2014-12-27 11:49
sem.t
1.78
KB
-r--r--r--
2014-12-27 11:49
shm.t
2.56
KB
-r--r--r--
2014-12-27 11:49
socket.t
3.51
KB
-r--r--r--
2014-12-27 11:49
tell.t
4.94
KB
-r--r--r--
2014-12-27 11:49
through.t
4.52
KB
-r--r--r--
2014-12-27 11:49
utf8.t
9.28
KB
-r--r--r--
2014-12-27 11:49
Save
Rename
#!./perl # If a read or write is interrupted by a signal, Perl will call the # signal handler and then attempt to restart the call. If the handler does # something nasty like close the handle or pop layers, make sure that the # read/write handles this gracefully (for some definition of 'graceful': # principally, don't segfault). BEGIN { chdir 't' if -d 't'; @INC = '../lib'; } use warnings; use strict; use Config; require './test.pl'; my $piped; eval { pipe my $in, my $out; $piped = 1; }; if (!$piped) { skip_all('pipe not implemented'); exit 0; } unless (exists $Config{'d_alarm'}) { skip_all('alarm not implemented'); exit 0; } # XXX for some reason the stdio layer doesn't seem to interrupt # write system call when the alarm triggers. This makes the tests # hang. if (exists $ENV{PERLIO} && $ENV{PERLIO} =~ /stdio/ ) { skip_all('stdio not supported for this script'); exit 0; } # on Win32, alarm() won't interrupt the read/write call. # Similar issues with VMS. # On FreeBSD, writes to pipes of 8192 bytes or more use a mechanism # that is not interruptible (see perl #85842 and #84688). # "close during print" also hangs on Solaris 8 (but not 10 or 11). # # Also skip on release builds, to avoid other possibly problematic # platforms my ($osmajmin) = $Config{osvers} =~ /^(\d+\.\d+)/; if ($^O eq 'VMS' || $^O eq 'MSWin32' || $^O eq 'cygwin' || $^O =~ /freebsd/ || $^O eq 'midnightbsd' || ($^O eq 'solaris' && $Config{osvers} eq '2.8') || $^O eq 'nto' || ($^O eq 'darwin' && $osmajmin < 9) || ((int($]*1000) & 1) == 0) ) { skip_all('various portability issues'); exit 0; } my ($in, $out, $st, $sigst, $buf); plan(tests => 10); # make two handles that will always block sub fresh_io { undef $in; undef $out; # use fresh handles each time pipe $in, $out; $sigst = ""; } $SIG{PIPE} = 'IGNORE'; # close during read fresh_io; $SIG{ALRM} = sub { $sigst = close($in) ? "ok" : "nok" }; alarm(1); $st = read($in, $buf, 1); alarm(0); is($sigst, 'ok', 'read/close: sig handler close status'); ok(!$st, 'read/close: read status'); ok(!close($in), 'read/close: close status'); # die during read fresh_io; $SIG{ALRM} = sub { die }; alarm(1); $st = eval { read($in, $buf, 1) }; alarm(0); ok(!$st, 'read/die: read status'); ok(close($in), 'read/die: close status'); # This used to be 1_000_000, but on Linux/ppc64 (POWER7) this kept # consistently failing. At exactly 0x100000 it started passing # again. We're hoping this number is bigger than any pipe buffer. my $surely_this_arbitrary_number_is_fine = 0x100000; # close during print fresh_io; $SIG{ALRM} = sub { $sigst = close($out) ? "ok" : "nok" }; $buf = "a" x $surely_this_arbitrary_number_is_fine . "\n"; select $out; $| = 1; select STDOUT; alarm(1); $st = print $out $buf; alarm(0); is($sigst, 'nok', 'print/close: sig handler close status'); ok(!$st, 'print/close: print status'); ok(!close($out), 'print/close: close status'); # die during print fresh_io; $SIG{ALRM} = sub { die }; $buf = "a" x $surely_this_arbitrary_number_is_fine . "\n"; select $out; $| = 1; select STDOUT; alarm(1); $st = eval { print $out $buf }; alarm(0); ok(!$st, 'print/die: print status'); # the close will hang since there's data to flush, so use alarm alarm(1); ok(!eval {close($out)}, 'print/die: close status'); alarm(0); # close during close # Apparently there's nothing in standard Linux that can cause an # EINTR in close(2); but run the code below just in case it does on some # platform, just to see if it segfaults. fresh_io; $SIG{ALRM} = sub { $sigst = close($in) ? "ok" : "nok" }; alarm(1); close $in; alarm(0); # die during close fresh_io; $SIG{ALRM} = sub { die }; alarm(1); eval { close $in }; alarm(0); # vim: ts=4 sts=4 sw=4: