Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.119
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
x86_64-linux-gnu /
perl-base /
Delete
Unzip
Name
Size
Permission
Date
Action
Carp
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
Exporter
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
File
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
Getopt
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
Hash
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
IO
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
IPC
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
List
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
Scalar
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
Text
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
Tie
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
auto
[ DIR ]
drwxrwxrwx
2017-06-01 17:09
unicore
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
warnings
[ DIR ]
drwxrwxrwx
2020-08-24 23:41
AutoLoader.pm
5.36
KB
-rwxrwxrwx
2020-06-20 19:33
Carp.pm
19.67
KB
-rwxrwxrwx
2020-06-20 19:33
Config.pm
3.25
KB
-rwxrwxrwx
2020-06-20 19:33
Config_git.pl
409
B
-rwxrwxrwx
2020-06-20 19:33
Config_heavy.pl
49.46
KB
-rwxrwxrwx
2020-06-20 19:33
Cwd.pm
18.11
KB
-rwxrwxrwx
2020-06-20 19:33
DynaLoader.pm
10.21
KB
-rwxrwxrwx
2020-06-20 19:33
Errno.pm
4.77
KB
-rwxrwxrwx
2020-06-20 19:33
Exporter.pm
2.31
KB
-rwxrwxrwx
2020-06-20 19:33
Fcntl.pm
2.11
KB
-rwxrwxrwx
2020-06-20 19:33
FileHandle.pm
2.06
KB
-rwxrwxrwx
2020-06-20 19:33
IO.pm
472
B
-rwxrwxrwx
2020-06-20 19:33
POSIX.pm
19.41
KB
-rwxrwxrwx
2020-06-20 19:33
SelectSaver.pm
344
B
-rwxrwxrwx
2020-06-20 19:33
Socket.pm
13.24
KB
-rwxrwxrwx
2020-06-20 19:33
Symbol.pm
2.05
KB
-rwxrwxrwx
2020-06-20 19:33
XSLoader.pm
3.81
KB
-rwxrwxrwx
2020-06-20 19:33
attributes.pm
2.95
KB
-rwxrwxrwx
2020-06-20 19:33
base.pm
8.72
KB
-rwxrwxrwx
2020-06-20 19:33
bytes.pm
447
B
-rwxrwxrwx
2020-06-20 19:33
bytes_heavy.pl
758
B
-rwxrwxrwx
2020-06-20 19:33
constant.pm
5.6
KB
-rwxrwxrwx
2020-06-20 19:33
feature.pm
4.21
KB
-rwxrwxrwx
2020-06-20 19:33
fields.pm
4.9
KB
-rwxrwxrwx
2020-06-20 19:33
integer.pm
172
B
-rwxrwxrwx
2020-06-20 19:33
lib.pm
2.23
KB
-rwxrwxrwx
2020-06-20 19:33
locale.pm
3.34
KB
-rwxrwxrwx
2020-06-20 19:33
overload.pm
4.36
KB
-rwxrwxrwx
2020-06-20 19:33
overloading.pm
964
B
-rwxrwxrwx
2020-06-20 19:33
parent.pm
479
B
-rwxrwxrwx
2020-06-20 19:33
re.pm
8.44
KB
-rwxrwxrwx
2020-06-20 19:33
strict.pm
1.57
KB
-rwxrwxrwx
2020-06-20 19:33
utf8.pm
342
B
-rwxrwxrwx
2020-06-20 19:33
utf8_heavy.pl
30.87
KB
-rwxrwxrwx
2020-06-20 19:33
vars.pm
1.12
KB
-rwxrwxrwx
2020-06-20 19:33
warnings.pm
21.13
KB
-rwxrwxrwx
2020-06-20 19:33
Save
Rename
package constant; use 5.008; use strict; use warnings::register; our $VERSION = '1.33'; our %declared; #======================================================================= # Some names are evil choices. my %keywords = map +($_, 1), qw{ BEGIN INIT CHECK END DESTROY AUTOLOAD }; $keywords{UNITCHECK}++ if $] > 5.009; my %forced_into_main = map +($_, 1), qw{ STDIN STDOUT STDERR ARGV ARGVOUT ENV INC SIG }; my %forbidden = (%keywords, %forced_into_main); my $normal_constant_name = qr/^_?[^\W_0-9]\w*\z/; my $tolerable = qr/^[A-Za-z_]\w*\z/; my $boolean = qr/^[01]?\z/; BEGIN { # We'd like to do use constant _CAN_PCS => $] > 5.009002 # but that's a bit tricky before we load the constant module :-) # By doing this, we save several run time checks for *every* call # to import. my $const = $] > 5.009002; my $downgrade = $] < 5.015004; # && $] >= 5.008 my $constarray = exists &_make_const; if ($const) { Internals::SvREADONLY($const, 1); Internals::SvREADONLY($downgrade, 1); $constant::{_CAN_PCS} = \$const; $constant::{_DOWNGRADE} = \$downgrade; $constant::{_CAN_PCS_FOR_ARRAY} = \$constarray; } else { no strict 'refs'; *{"_CAN_PCS"} = sub () {$const}; *{"_DOWNGRADE"} = sub () { $downgrade }; *{"_CAN_PCS_FOR_ARRAY"} = sub () { $constarray }; } } #======================================================================= # import() - import symbols into user's namespace # # What we actually do is define a function in the caller's namespace # which returns the value. The function we create will normally # be inlined as a constant, thereby avoiding further sub calling # overhead. #======================================================================= sub import { my $class = shift; return unless @_; # Ignore 'use constant;' my $constants; my $multiple = ref $_[0]; my $caller = caller; my $flush_mro; my $symtab; if (_CAN_PCS) { no strict 'refs'; $symtab = \%{$caller . '::'}; }; if ( $multiple ) { if (ref $_[0] ne 'HASH') { require Carp; Carp::croak("Invalid reference type '".ref(shift)."' not 'HASH'"); } $constants = shift; } else { unless (defined $_[0]) { require Carp; Carp::croak("Can't use undef as constant name"); } $constants->{+shift} = undef; } foreach my $name ( keys %$constants ) { my $pkg; my $symtab = $symtab; my $orig_name = $name; if ($name =~ s/(.*)(?:::|')(?=.)//s) { $pkg = $1; if (_CAN_PCS && $pkg ne $caller) { no strict 'refs'; $symtab = \%{$pkg . '::'}; } } else { $pkg = $caller; } # Normal constant name if ($name =~ $normal_constant_name and !$forbidden{$name}) { # Everything is okay # Name forced into main, but we're not in main. Fatal. } elsif ($forced_into_main{$name} and $pkg ne 'main') { require Carp; Carp::croak("Constant name '$name' is forced into main::"); # Starts with double underscore. Fatal. } elsif ($name =~ /^__/) { require Carp; Carp::croak("Constant name '$name' begins with '__'"); # Maybe the name is tolerable } elsif ($name =~ $tolerable) { # Then we'll warn only if you've asked for warnings if (warnings::enabled()) { if ($keywords{$name}) { warnings::warn("Constant name '$name' is a Perl keyword"); } elsif ($forced_into_main{$name}) { warnings::warn("Constant name '$name' is " . "forced into package main::"); } } # Looks like a boolean # use constant FRED == fred; } elsif ($name =~ $boolean) { require Carp; if (@_) { Carp::croak("Constant name '$name' is invalid"); } else { Carp::croak("Constant name looks like boolean value"); } } else { # Must have bad characters require Carp; Carp::croak("Constant name '$name' has invalid characters"); } { no strict 'refs'; my $full_name = "${pkg}::$name"; $declared{$full_name}++; if ($multiple || @_ == 1) { my $scalar = $multiple ? $constants->{$orig_name} : $_[0]; if (_DOWNGRADE) { # for 5.8 to 5.14 # Work around perl bug #31991: Sub names (actually glob # names in general) ignore the UTF8 flag. So we have to # turn it off to get the "right" symbol table entry. utf8::is_utf8 $name and utf8::encode $name; } # The constant serves to optimise this entire block out on # 5.8 and earlier. if (_CAN_PCS) { # Use a reference as a proxy for a constant subroutine. # If this is not a glob yet, it saves space. If it is # a glob, we must still create it this way to get the # right internal flags set, as constants are distinct # from subroutines created with sub(){...}. # The check in Perl_ck_rvconst knows that inlinable # constants from cv_const_sv are read only. So we have to: Internals::SvREADONLY($scalar, 1); if (!exists $symtab->{$name}) { $symtab->{$name} = \$scalar; ++$flush_mro->{$pkg}; } else { local $constant::{_dummy} = \$scalar; *$full_name = \&{"_dummy"}; } } else { *$full_name = sub () { $scalar }; } } elsif (@_) { my @list = @_; if (_CAN_PCS_FOR_ARRAY) { _make_const($list[$_]) for 0..$#list; _make_const(@list); if (!exists $symtab->{$name}) { $symtab->{$name} = \@list; $flush_mro->{$pkg}++; } else { local $constant::{_dummy} = \@list; *$full_name = \&{"_dummy"}; } } else { *$full_name = sub () { @list }; } } else { *$full_name = sub () { }; } } } # Flush the cache exactly once if we make any direct symbol table changes. if (_CAN_PCS && $flush_mro) { mro::method_changed_in($_) for keys %$flush_mro; } } 1; __END__