NAME
Strict::Perl - Perl module to restrict old/unsafe constructs
SYNOPSIS
use Strict::Perl 2015.07; # must version, must match
DESCRIPTION
Strict::Perl provides a restricted scripting environment excluding old/unsafe
constructs, on both modern Perl and traditional Perl.
Strict::Perl works in concert with Modern::Open and Fake::Our if those are used
in your script.
Version specify is required when use Strict::Perl, like;
use Strict::Perl 2015.07;
It's die if specified version doesn't match Strict::Perl's version.
On Perl 5.010001 or later, Strict::Perl works as;
use strict;
use warnings qw(FATAL all);
use Fatal # by compatible routine in Strict::Perl
qw(
seek sysseek
dbmclose dbmopen
binmode close chmod chown fcntl flock ioctl open sysopen truncate
chdir closedir opendir link mkdir readlink rename rmdir symlink
pipe
msgctl msgget msgrcv msgsnd
semctl semget semop
shmctl shmget shmread
accept bind connect getsockopt listen recv send setsockopt shutdown socketpair
fork
);
use autodie qw(
read sysread syswrite
fileno
);
Prohibited Keywords, Special Variables, and Operator are;
goto redo until foreach
format write formline
msgctl msgget msgrcv msgsnd
semctl semget semop
shmctl shmget shmread shmwrite
given when
$ARRAY_BASE $[
$OFMT $#
@F
$^H
$OUTPUT_FIELD_SEPARATOR $OFS $,
$OUTPUT_RECORD_SEPARATOR $ORS $\
$LIST_SEPARATOR $"
$SUBSCRIPT_SEPARATOR $SUBSEP $;
$MULTILINE_MATCHING $*
$PREMATCH $`
$MATCH $&
$POSTMATCH $'
$FORMAT_PAGE_NUMBER $%
$FORMAT_LINES_PER_PAGE $=
$FORMAT_LINES_LEFT $-
$FORMAT_NAME $~
$FORMAT_TOP_NAME $^
$FORMAT_LINE_BREAK_CHARACTERS $:
$FORMAT_FORMFEED $^L
$ACCUMULATOR $^A
~~ (smartmatch)
Prohibited modules in script are;
Thread threads encoding Switch
Must Keyword in your script is;
VERSION
Please see POD document for other Perl version and more information.
INSTALLATION
1. Copy Strict/Perl.pm to @INC directory.
SEE ALSO
ina - CPAN
http://search.cpan.org/~ina/
BackPAN - A Complete History of CPAN
http://backpan.perl.org/authors/id/I/IN/INA/