/usr/share/perl5/File/Policy/Default.pm is in libfile-policy-perl 1.005-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | ###############################################################################
# Purpose : Default (unrestricted) File I/O policies
# Author : John Alden
# Created : March 2005
# CVS : $Id: Default.pm,v 1.6 2005/05/18 15:57:28 johna Exp $
###############################################################################
package File::Policy::Default;
use strict;
use File::Spec::Functions;
use Carp;
use vars qw($VERSION @EXPORT_OK %EXPORT_TAGS @ISA);
@ISA = qw(Exporter);
@EXPORT_OK = qw(get_temp_dir get_log_dir check_safe);
%EXPORT_TAGS = ('all' => \@EXPORT_OK);
$VERSION = sprintf"%d.%03d", q$Revision: 1.6 $ =~ /: (\d+)\.(\d+)/;
sub get_temp_dir {
return $ENV{TEMP} || File::Spec::Functions::tmpdir();
}
sub get_log_dir {
return $ENV{LOGDIR} || File::Spec::Functions::curdir();
}
sub check_safe {
my ($name, $mode) = @_;
croak("mode must be r or w") unless($mode eq 'r' || $mode eq 'w');
return 1;
}
1;
=head1 NAME
File::Policy::Default - Default policy for file I/O functions
=head1 SYNOPSIS
use File::Policy;
use File::Policy qw/check_safe/; # to import a specific subroutine
use File::Policy qw/:all/; # to import all subroutines
#Checking I/O policy
check_safe($filename, 'r');
check_safe($filename, 'w');
#Portable directory locations
$logdir = get_log_dir();
$tmpdir = get_temp_dir();
=head1 DESCRIPTION
This defines the default (unrestricted) policy for file I/O with modules such as File::Slurp::WithinPolicy.
You may replace this default policy with one for your organisation.
=head1 FUNCTIONS
=over 4
=item check_safe
check_safe( FILENAME , MODE );
Checks a filename is safe - dies if not. MODE is r (read) or w (write).
Default is no restrictions on file I/O.
=item get_temp_dir
$temporary_directory = get_temp_dir();
Returns the path to temporary directory from the TEMP environment variable or File::Spec::Functions::tmpdir().
Note that any return value will have been cleared of a trailing slash.
=item get_log_dir
$log_directory = get_log_dir();
Returns the path to log directory from the LOGDIR environment variable or the current directory.
Note that any return value will have been cleared of a trailing slash.
=back
=head1 VERSION
$Revision: 1.6 $ on $Date: 2005/05/18 15:57:28 $ by $Author: johna $
=head1 AUTHOR
John Alden <cpan _at_ bbc _dot_ co _dot_ uk>
=head1 COPYRIGHT
(c) BBC 2005. This program is free software; you can redistribute it and/or modify it under the GNU GPL.
See the file COPYING in this distribution, or http://www.gnu.org/licenses/gpl.txt
=cut
|